Làm game HTML trên máy với amp
amp là bộ công cụ miễn phí của appmienphi: tạo game từ mẫu, chạy thử ngay trên máy với bảng xếp hạng, lưu dữ liệu, phòng chơi cùng bạn bè — y như khi game đã đăng — rồi đóng gói 1 lệnh để đăng lên appmienphi.com.
Quy trình 4 bước
Tải amp, tạo game
1 file amp.py, 1 lệnh create là có game mẫu chạy được.
Chạy thử trên máy
start mở game trong trình duyệt, sửa file là trang tự tải lại.
Thử nhiều người
multiplayer mở nhiều cửa sổ, mỗi cửa sổ là 1 người chơi.
Đóng gói & đăng
pack kiểm tra như lúc duyệt và nén ra file .zip để đăng.
Bạn cần gì?
- Python 3.8 trở lên. macOS và Linux có sẵn (gõ
python3 --versionđể xem). Windows tải ở python.org, khi cài nhớ tick “Add Python to PATH”, rồi dùng lệnhpythonthay chopython3. - Một trình soạn code bất kỳ (VS Code, Notepad++...) và trình duyệt Chrome, Edge hoặc Firefox.
- Không cần cài Node, không cần tài khoản để chạy thử. Chỉ lúc đăng game mới cần đăng nhập appmienphi.
1. Tải amp và tạo game
Mở Terminal (Windows: PowerShell), vào thư mục bạn muốn để game, rồi chạy:
curl -O https://be.appmienphi.com/sdk/amp.py
python3 amp.py create hung-sao --title "Hứng sao"
Trên Windows (PowerShell) gõ curl.exe thay cho curl và python thay cho python3. Hoặc mở thẳng link be.appmienphi.com/sdk/amp.py để tải file về.
Lần đầu chạy, amp tự tải bộ mẫu game về máy. Có 2 mẫu:
basic(mặc định) — game 1 người “Hứng sao”: bấm ngôi sao trong 30 giây, lưu kỷ lục, gửi điểm lên bảng xếp hạng.multiplayer— game “Số bí mật” chơi cùng bạn bè: tạo phòng, gửi link mời, mọi người chọn bí mật 1 số, lật cùng lúc. Tạo bằngpython3 amp.py create so-bi-mat -t multiplayer.
Thư mục game là HTML/CSS/JS bình thường: index.html, css/game.css, js/game.js. Sửa thoải mái — mẫu chỉ là điểm khởi đầu.
2. Chạy thử trên máy
python3 amp.py start hung-sao
Trình duyệt mở http://localhost:5173/. Mỗi lần bạn lưu file, trang tự tải lại. Góc dưới trái có nút 🛠 DEV (chỉ có khi chạy bằng amp, không có trong game đã đăng).
Điểm hay nhất: game dùng đúng SDK thật của appmienphi. Thẻ <script src="https://be.appmienphi.com/sdk/appdata.js"> trong index.html được amp tự trỏ về máy chủ giả lập trên máy bạn, nên mọi tính năng chạy y như khi game đã đăng:
| Tính năng | Code trong game |
|---|---|
| Lưu dữ liệu (kỷ lục, tiến độ...) | AppData.get("thanh-tich", {}), AppData.set(...) |
| Gửi điểm lên bảng xếp hạng | AppData.submitScore(120, { board: "main" }) |
| Xem bảng xếp hạng | AppData.leaderboard({ board: "main", limit: 10 }) |
| Phòng chơi cùng bạn bè | AppData.rooms.create(), rooms.join("ABC123"), rooms.open(id, onChange) |
Khi game cần đăng nhập (gửi điểm, lưu cloud, tạo phòng), thay vì cửa sổ Google/Facebook, amp hiện trang chọn người chơi giả — tự đăng nhập sau 2 giây.
3. Thử chơi nhiều người
Game có phòng chơi thì cần ít nhất 2 người để thử. Không cần 2 máy:
python3 amp.py multiplayer so-bi-mat --players 2
amp mở 2 cửa sổ ở 2 cổng (5173, 5174). Trình duyệt coi đó là 2 trang khác nhau nên mỗi cửa sổ là 1 người chơi riêng, không lẫn đăng nhập hay dữ liệu. Tạo phòng ở cửa sổ 1, bấm Mời bạn — link mời tự mở bằng người chơi kế tiếp, vào phòng ngay.
Cần 3–4 người? Đổi --players 4. Mỗi thay đổi trong phòng đến các cửa sổ khác gần như tức thì, giống hệt trên appmienphi.com.
Bảng điều khiển: xem và chỉnh mọi dữ liệu
Mở http://localhost:5173/_amp/ (hoặc nút 🛠 DEV → Bảng điều khiển) để:
- Xem dữ liệu từng người chơi đã lưu (JSON, ảnh), xoá để thử lại từ đầu.
- Đổi gói cloud của người chơi: dùng thử, trả phí, hoặc hết hạn — để xem game báo lỗi có dễ hiểu không.
- Thêm 15 điểm giả vào bảng xếp hạng để xem giao diện khi bảng dài, hoặc xoá bảng.
- Xem phòng đang mở: ai online, ai đã chọn, trạng thái chung (state) và kết quả lượt (reveal).
Thích dùng dòng lệnh? Cũng có:
python3 amp.py leaderboard # xem bảng xếp hạng
python3 amp.py leaderboard seed -c 20 # thêm 20 điểm giả
python3 amp.py storage -p 2 # dữ liệu cloud của người chơi 2
python3 amp.py storage get thanh-tich # xem 1 tài liệu JSON
Dữ liệu giả lập nằm trong thư mục .appmienphi/ trong game (không bị đưa vào gói khi đăng). Xoá thư mục này là làm lại từ đầu.
4. Đóng gói và đăng lên appmienphi
python3 amp.py pack hung-sao
pack kiểm tra game theo đúng luật appmienphi dùng khi nhận gói, rồi nén ra dist/hung-sao.zip. Có lỗi thì báo rõ file nào, sửa thế nào — không phải đợi tải lên mới biết.
Gói hợp lệ gồm:
- File
.html,.css,.js, cóindex.htmlở ngoài cùng. - Ảnh
.png .jpg .webp .gif .svg .ico, mỗi ảnh dưới 2MB (nên dùng .webp cho nhẹ). - Âm thanh
.mp3, mỗi file dưới 5MB. Nhạc .wav, .ogg, .m4a thì chuyển sang .mp3 trước. - Tối đa 200 file, file zip dưới 20MB.
Cuối cùng vào trang Đăng app, chọn file zip vừa tạo, điền mô tả và gửi duyệt — xem thêm cách đăng app miễn phí. Game dùng phòng chơi thì nhớ giữ dòng <meta name="appmienphi:rooms" content="true"> trong index.html để trang game hiện nút “Chơi với bạn bè” (pack sẽ nhắc nếu thiếu).
Câu hỏi thường gặp
Cổng 5173 đang bận? Thêm --port 6000 vào lệnh start hoặc multiplayer.
Muốn thử lại như người mới vào game? Bấm 🛠 DEV → “Xoá dữ liệu máy này”: xoá dữ liệu lưu trên máy và phiên đăng nhập của cửa sổ đó.
Lấy bản amp mới nhất? Chạy python3 amp.py update — cập nhật amp, mẫu game và SDK.
Điểm trên bảng xếp hạng lúc chạy thử có lên appmienphi.com không? Không. Mọi thứ khi chạy bằng amp chỉ nằm trên máy bạn; game chỉ dùng dữ liệu thật sau khi được đăng và duyệt.