Cách làm game từ template: 7 bước cho người mới bắt đầu
Từ lúc chọn template đến một game mang tên bạn: những file cần mở, thay đổi nào làm trước, và cách kiểm thử, đưa lên host hoặc đóng gói thành app.

Cách nhanh nhất để người mới làm game là bắt đầu từ một game đã hoàn thiện. Chọn một template game, chơi bản demo, đọc tài liệu hướng dẫn, rồi sửa chữ, hình ảnh và màn chơi theo từng file, kiểm thử sau mỗi lần sửa, cho đến khi game là của bạn. Sau đó bạn đưa thư mục game lên một website hoặc đóng gói thành app. Không phải học engine trước, không phải bắt đầu từ trang trắng.
Bài hướng dẫn này đi theo con đường đó qua bảy bước, với tên file thật lấy từ trang sản phẩm và tài liệu của chính các template của chúng tôi, để bạn thấy "sửa màn chơi" trông ra sao trước khi mua bất cứ thứ gì. Bài viết dành cho người chưa từng phát hành game: giáo viên, người làm marketing, lập trình viên web lần đầu thử làm game. Bước nào cần Node.js hoặc trình soạn thảo code, chúng tôi sẽ nói rõ.
Cách làm game từ template: bảy bước
- Chọn một template gần với game bạn muốn.
- Chơi demo cho đến khi nắm rõ mọi màn hình.
- Đọc tài liệu hướng dẫn và tìm các file được nhắc đến.
- Sửa chữ và ngôn ngữ.
- Thay hình ảnh và thương hiệu.
- Sửa màn chơi, từ vựng hoặc luật chơi.
- Kiểm thử, rồi đưa game lên host hoặc đóng gói thành app.
Thứ tự rất quan trọng. Sửa chữ là an toàn nhất, nên bạn bắt đầu từ đó để hiểu cách các file hoạt động. Luật chơi để cuối cùng vì chúng có thể làm hỏng game theo những cách phải một thời gian mới nhận ra.
Xem các template game để bắt đầu
Bước 1: chọn template gần với ý tưởng của bạn
Template chỉ tiết kiệm thời gian khi bạn giữ lại phần lớn nội dung của nó. Muốn làm game chữ thì bắt đầu từ game chữ; biến một game bóng đá thành game đố vui là viết lại, không còn là việc của template. Ba câu hỏi sẽ giúp thu hẹp lựa chọn.
- Người chơi làm gì? Chạm ghép cặp, vẽ chữ, ngắm bắn, sắp xếp mảnh. Chọn template có hành động cốt lõi trùng khớp.
- Bạn sẽ sửa nó thế nào? Có phiên bản cho phép sửa phần lớn trong một file cấu hình; có phiên bản là dự án TypeScript bạn phải build lại. Trang sản phẩm ghi rõ là loại nào.
- Game sẽ chạy ở đâu? Mọi phiên bản của chúng tôi đều chạy từ một website tĩnh. App native và việc phát hành lên cửa hàng không có trong phiên bản nào.
Giá niêm yết trong cửa hàng của chúng tôi từ 5 đến 59 đô la Mỹ, và mỗi trang sản phẩm đều có demo trực tiếp cùng một danh sách "Không bao gồm trong phiên bản này". Hãy đọc danh sách đó kỹ như đọc phần tính năng.
Bước 2: chơi demo như một người kiểm thử
Hãy chơi demo nửa tiếng, không phải hai phút. Mở mọi menu, qua một màn, thua một màn, đổi ngôn ngữ, tải lại trang và kiểm tra tiến trình còn đó không. Ghi lại mọi màn hình và mọi đoạn chữ bạn thấy. Danh sách đó là bản đồ cho các bước sau: mỗi mục trong đó nằm ở đâu đó trong các file.
Hãy chơi cả trên điện thoại. Nếu người chơi của bạn dùng điện thoại, bản demo trên điện thoại mới là phép thử thật của template, không phải bản demo trên laptop.
Chơi thử demo Tenguin, game ghép cặp số
Bước 3: mở gói và đọc tài liệu hướng dẫn
Template là một thư mục, không phải chương trình để cài đặt. Trong các gói của chúng tôi, bạn sẽ thấy cùng những phần sau, được mô tả trên từng trang sản phẩm:
- game/: game sẵn sàng đưa lên host, gồm index.html, hình ảnh, âm thanh và font chữ. Đây là phần được đưa lên mạng.
- Source code: mã nguồn dễ đọc mà bạn chỉnh sửa. Ở một số phiên bản như Ricopop, các file trong game/ chính là mã nguồn, không cần bước build. Ở phiên bản khác như Gridspark, có một thư mục mã nguồn riêng mà bạn build lại vào game/.
- Tài liệu: một bản hướng dẫn có hình minh họa. Tài liệu của Gridspark gồm cài đặt, tùy biến, 20 câu hỏi thường gặp và xử lý sự cố; Ricopop và Zabum còn kèm file START-HERE.txt.
- THIRD-PARTY-LICENSES: thông báo bản quyền của font chữ và thư viện. Điều khoản của chúng tôi yêu cầu bạn giữ chúng cùng sản phẩm.
Đọc chương cài đặt và tùy biến trong tài liệu trước khi động vào bất cứ thứ gì. Các chương đó nêu tên file, và mỗi thay đổi bên dưới đều bắt đầu từ một trong những cái tên ấy.
Bước 4: sửa chữ và ngôn ngữ trước
Sửa chữ giúp bạn hiểu cấu trúc file mà ít rủi ro. Ví dụ thật từ các trang sản phẩm của chúng tôi:
- Gridspark: chữ trên giao diện nằm trong src/locales.js.
- Pinloop, Trimora và Twirldrop: chữ giao diện nằm trong i18n.ts, còn brand.ts chứa tên game.
- Bodoku: chữ nằm trong các từ điển src/i18n, và trang sản phẩm nhắc bạn giữ nguyên các placeholder nội suy.
- Golazo: chữ nằm trong các từ điển ngôn ngữ, còn đội bóng nằm trong teams.js.
Placeholder là cái bẫy. Một dòng như "Level {n} complete" cần giữ nguyên {n} ở mọi ngôn ngữ. Hãy sửa chữ xung quanh, đừng bao giờ sửa dấu ngoặc.
Ngôn ngữ cũng là một phần của lựa chọn. Phần lớn phiên bản của chúng tôi có 14 ngôn ngữ giao diện; Letter River, Plop và Zabum có 3. Bỏ bớt một ngôn ngữ dễ hơn thêm vào, và thêm một ngôn ngữ nghĩa là dịch mọi dòng, không chỉ menu.
Bước 5: thay hình ảnh và thương hiệu
Giấy phép cho phép white label: bạn có thể thay tên và logo Polar Games bằng của mình, đồng thời sửa code, hình ảnh và âm thanh bên trong sản phẩm. Cách làm tùy theo phiên bản.
- Tenguin: phần lớn cài đặt nằm trong một file, tenguin.config.js, đặt cạnh index.html: tiêu đề, đường dẫn logo, màu nhấn, ngôn ngữ mặc định, phần thưởng và giá. Sửa một giá trị, tải file lên, tải lại trang. Không cần build.
- Bodoku và Frogdoku: hình ảnh được khai báo trong src/art/manifest.ts.
- Pinloop: brand.ts chứa tiêu đề, màu sắc, 30 mục tiêu và 12 phông nền; âm thanh và nhạc nằm trong public/audio.
- Ricopop: nhạc và hiệu ứng là các file MP3 bạn có thể thay, còn ricopop.config.js điều khiển màn hình chạm để bắt đầu và nút toàn màn hình.
Giữ nguyên kích thước và định dạng ảnh của file bạn thay. Một logo rộng gấp đôi bản gốc sẽ đẩy lệch menu theo những cách mà code không lường trước.
Xem Pinloop và file brand.ts của nó
Bước 6: sửa màn chơi, từ vựng hoặc luật chơi
Đây là lúc game của bạn thôi giống bản sao của mọi người khác. Đây cũng là lúc các công cụ kiểm thử giúp ích nhiều nhất.
- Ricopop: 50 màn chơi là các bản đồ dạng chữ trong src/levels.js. Công cụ tùy chọn node tools/validate.mjs kiểm tra rằng mọi màn vẫn có thể thắng sau khi bạn sửa bản đồ.
- Letter River: từ và gợi ý nằm trong source/words/en.js, pt.js và es.js, còn phần tạo câu đố nằm trong source/js/levels.js. node test/check.js kiểm tra danh sách từ và 80 màn chơi của mỗi ngôn ngữ.
- Deepforge: các phòng, cuốc chim, cân bằng và chữ nằm trong source/src/data/chambers.ts.
- Gridspark: hằng số luật chơi và bảng màu nằm trong src/config.js, còn luật giải đố nằm trong game.js, board.js, generator.js và shapes.js.
Luật chơi là thay đổi rủi ro nhất. Mỗi lần chỉ đổi một con số, chơi ba ván, rồi mới đổi số tiếp theo. Nếu game có cảm giác sai sai, quay lại bản "original" và so sánh.
Xem Letter River, game đố chữ có danh sách từ chỉnh sửa được
Bước 7: kiểm thử, rồi đưa lên host hoặc đóng gói
Kiểm thử trên server cục bộ, đừng nhấp đúp
Nhiều trang sản phẩm của chúng tôi nói rõ rằng game không chạy từ file://, tức địa chỉ bạn nhận được khi nhấp đúp vào index.html. Hãy kiểm thử qua một web server cục bộ: nhiều trình soạn thảo code có sẵn, và bộ công cụ dành cho lập trình viên (tùy chọn) của Ricopop cũng có. Các phiên bản viết bằng TypeScript cần Node.js để build lại: ví dụ Gridspark chạy npm test và npm run build để chép các file chơi được vào game/; Pinloop build ra dist/, rồi bạn chép vào game/.
Đưa lên host
Tải nội dung của game/ lên bất kỳ host tĩnh HTTP(S) nào. Các phiên bản của chúng tôi không cần PHP hay cơ sở dữ liệu để chơi; Zabum và Ricopop có bảng xếp hạng PHP tùy chọn, mặc định tắt. Giữ mọi thư mục cạnh index.html, đúng như tài liệu hướng dẫn.
Hoặc đóng gói thành app
Các công cụ như Capacitor đặt một game web vào trong dự án Android hoặc iOS. Trang hướng dẫn bắt đầu của Capacitor yêu cầu một thư mục chứa các file web đã build, có index.html ở gốc, thêm nền tảng bằng npx cap add android và npx cap add ios, rồi chép file bằng npx cap sync. Đó là bước vượt quá tuần đầu tiên của người mới, và không phiên bản nào của chúng tôi kèm bản build native hay phát hành lên cửa hàng; chúng tôi báo giá phần việc đó riêng.
- Mọi màn hình trong danh sách ở bước 2 đều hiển thị chữ và hình ảnh của bạn.
- Tiến trình vẫn còn sau khi tải lại trang.
- Game chạy trên điện thoại, đúng hướng màn hình bạn mong muốn.
- Các thông báo THIRD-PARTY-LICENSES vẫn nằm cùng các file.
- Bạn giải thích được mình đã đổi gì, theo từng file.
Giấy phép cho phép bạn làm gì với game của mình
Mỗi lần mua mang lại một giấy phép vĩnh viễn, không độc quyền cho một sản phẩm cuối, của bạn hoặc của một khách hàng. Người chơi có thể truy cập miễn phí hoặc qua hình thức kiếm tiền bằng quảng cáo. Bạn được sửa code, hình ảnh và âm thanh, và thay tên cùng logo của chúng tôi. Bạn không được bán lại hay chia sẻ riêng template, code hoặc tài nguyên của nó dưới dạng template, bộ kit hay gói tài nguyên. Hỗ trợ kéo dài 6 tháng, hoặc 12 tháng nếu gia hạn, bao gồm việc cài đặt và sử dụng các file được cung cấp cùng các lỗi tái hiện được. Tùy biến và tính năng mới là dịch vụ riêng, được báo giá trước khi bắt tay vào làm.
Đọc toàn bộ điều khoản giấy phép
Câu hỏi thường gặp
Không biết lập trình có làm game được không?
Bạn có thể đổi rất nhiều thứ mà không cần code: chữ, màu sắc, hình ảnh và một số cài đặt nằm trong các file thông thường. Tenguin gom phần lớn cài đặt vào một file cấu hình. Sửa luật chơi hoặc màn chơi ở phiên bản TypeScript thì cần biết đọc code cơ bản và có Node.js để build lại.
Tôi cần cài những gì?
Với các phiên bản không có bước build như Ricopop và Golazo, một trình soạn thảo code và một trình duyệt là đủ. Phiên bản TypeScript cần Node.js và npm để build lại; mỗi trang sản phẩm ghi rõ phiên bản cần dùng.
Tôi có được bán hoặc phát hành game làm từ template không?
Bạn có thể phát hành nó như một sản phẩm cuối, cho bạn hoặc cho một khách hàng, chơi miễn phí hoặc có quảng cáo. Bạn không được bán lại riêng template hay code của nó. Với app trả phí hoặc mua hàng trong app, hãy hỏi chúng tôi trước.
Vì sao mở index.html thì game chỉ hiện trang trắng?
Thường là vì file được mở từ file://. Hãy chạy game từ một web server cục bộ hoặc tải lên host, như tài liệu hướng dẫn mô tả.
Mất bao lâu?
Tùy bạn đổi bao nhiêu. Chữ và logo có thể mất một ngày; màn chơi mới, hình ảnh và luật chơi lâu hơn. Bắt đầu với chữ, phát hành một bản thử, rồi thêm phần còn lại theo từng đợt.
Bắt đầu với một game
Chọn một template, chơi demo nửa tiếng và đọc chương tùy biến trong tài liệu. Nếu các file được nhắc đến trông như thứ bạn sửa được, bạn đã tìm ra điểm xuất phát. Nếu muốn chúng tôi sửa giúp, hãy gửi template và danh sách thay đổi, chúng tôi sẽ gửi lại báo giá.
