Shiny Gen / Blog

Cách làm game Game Boy Advance thật bằng AI (và chơi trên máy thật)

Ngôn ngữ khác: English · Español · Deutsch · Français · Português · Italiano · Nederlands · Svenska · Norsk · Bahasa Indonesia · Türkçe · Polski · Русский · 日本語 · 한국어 · 繁體中文

Để làm game Game Boy Advance bằng AI, hãy mở Shiny Gen (trên trình duyệt tại shinygen.ai/play, hoặc ứng dụng trên iPhone, iPad và Android), bắt đầu một game mới, chọn Engine GBA và mô tả game bạn muốn. Agent AI sẽ viết game, biên dịch thành một cartridge GBA thật, tự chơi để tìm và sửa lỗi, rồi bạn tải về ROM .gba, việc này cần một lần mua bất kỳ, từ gói khởi đầu $2.99. ROM chạy được trên trình giả lập GBA và trên Game Boy Advance thật qua flash cart.

Hướng dẫn này đi qua từng bước, sau đó nói về những loại game làm tốt, các giới hạn thật sự và những câu hỏi hay gặp nhất.

Engine GBA là gì

Engine GBA là engine do chúng tôi tự viết, biên dịch các game mới từ yêu cầu của bạn. Nó không phải trình giả lập và không phải trình nạp ROM: các engine GBA, GBC, N64, GameCube và DS biên dịch game bạn làm trong Shiny Gen, và không chạy được ROM thương mại hay ROM của bên thứ ba.

Game của bạn được viết bằng một ngôn ngữ nhỏ giống C (file là main.sgba). Shiny Gen biên dịch nó thành mã máy ARM ngay trên thiết bị của bạn, đóng gói hình ảnh và âm thanh vào cartridge, rồi chạy chính cartridge đó. Không có bản xem trước riêng: game bạn chơi trong ứng dụng chính là cartridge.

Bạn cần gì

Từng bước

1. Bắt đầu game mới và chọn engine GBA

Nhấn nút +. Trong Agent trong ứng dụng, chọn Mới. Màn hình tiếp theo yêu cầu bạn Chọn engine: chọn Engine GBA.

Một game GBA mới mở ra trong trình chỉnh sửa. Nó cố ý bắt đầu là một cartridge trống, với init() trống (chạy một lần) và frame() (chạy sáu mươi lần mỗi giây), để agent xây đúng thứ bạn mô tả thay vì sửa một mẫu bạn không yêu cầu.

Màn hình Chọn engine trong Shiny Gen, liệt kê Godot Engine, Engine GBA, Engine GBC, Engine N64, Engine GameCube và Engine DS.
Màn hình thứ hai của + Mới: chọn Engine GBA để có cartridge Game Boy Advance.

2. Mô tả game

Mở thẻ Agent ở cuối trình chỉnh sửa và gõ điều bạn muốn trong phần Trò chuyện. Một tin nhắn đầu tiên hữu ích sẽ nói đây là loại game gì, người chơi làm gì, cách điều khiển (GBA có D-pad, A, B, L, R, Start và Select), mục tiêu và phong cách hình ảnh.

Ví dụ: "Làm một game phiêu lưu nhìn từ trên xuống trên GBA. Một chú cáo khám phá khu rừng, trò chuyện với dân làng trong hộp thoại và thu thập năm chiếc đèn lồng. D-pad để di chuyển, A để nói chuyện, Start để tạm dừng. Lưu tiến trình khi người chơi nghỉ bên đống lửa trại."

Nút bên cạnh ô soạn tin dùng để chọn mô hình, và agent tích hợp được tính phí theo mức dùng thực tế bằng ngọc.

3. Xem agent xây và kiểm thử game

Agent biết nó đang làm một cartridge. Nó đọc tài liệu ngôn ngữ cho GBA, viết code và build. Nếu build lỗi, trình biên dịch sẽ nói lỗi gì và ở đâu (dòng, cột và nên viết gì thay vào), và agent sửa lại. Sau đó nó tự chơi game:

  1. Chạy cartridge và đọc báo cáo build, bao gồm cartridge đã đầy bao nhiêu.
  2. Chụp màn hình 240 x 160 để kiểm tra thứ thật sự được vẽ ra.
  3. Bấm phím (A, B, L, R, Start, Select và D-pad) để chơi thứ nó vừa làm.
  4. Đọc lại các giá trị mà game báo ra, để biết chắc nhân vật đã di chuyển hay điểm đã tăng thay vì đoán.
  5. Sửa chỗ hỏng và làm lại.

Nó cũng có thể tạo hình ảnh và âm thanh: sprite, hình nền và nhạc, được đưa vào cartridge theo tên. Tạo tài nguyên sẽ tốn ngọc.

4. Thay đổi game bằng cách trò chuyện

Khi phiên bản đầu tiên chạy được, cứ tiếp tục trong cùng cuộc trò chuyện. Yêu cầu nhỏ và cụ thể là tốt nhất: "Thêm màn hình tiêu đề", "Biến khu vực thứ hai thành hang động với màu tối hơn", "Hộp thoại vẫn mở sau khi tôi đi khỏi; hãy đóng nó lại." Hãy nói điều bạn đã thấy thay vì đoán nguyên nhân; agent có thể tái hiện lỗi bằng cách chơi game.

Bạn cũng có thể mở phần Mã và tự sửa main.sgba. Sửa code bằng tay không tốn gì, và mỗi lần build sẽ thay cartridge mới vào mà không mất file lưu của bạn.

5. Chơi trong ứng dụng

Game chạy ngay trong trình chỉnh sửa và từ thẻ game của bạn. Trên điện thoại hoặc máy tính bảng, nút điều khiển hiện trên màn hình: D-pad bên trái, A và B bên phải, L, R, Start và Select xung quanh. Trên máy tính, bạn chơi bằng bàn phím: phím mũi tên, Z cho A, X cho B, A và S cho L và R, Enter cho Start và Shift cho Select. Tay cầm chơi game cũng dùng được, và bạn có thể đổi nút trong phần cài đặt tay cầm.

Game lưu vào file lưu pin của riêng nó, giống như một cartridge, nên bạn có thể thoát ra rồi quay lại đúng chỗ cũ.

Shiny Monsters Advance đang chạy trong Chrome tại shinygen.ai: một phòng ngủ pixel-art với người chơi, một cái bàn và một người phụ nữ lớn tuổi, cùng hộp thoại ghi ROSA: Morning, Kit! Nell came by while you were asleep.
Shiny Monsters Advance, một trong các game GBA của chúng tôi, chạy trong Chrome tại shinygen.ai. Mọi khung hình đều do cartridge vẽ.

6. Tải ROM về

Nhấn Chia sẻ, rồi Export .gba ROM. Việc xuất ROM cần một lần mua bất kỳ, từ gói khởi đầu $2.99; nút này hiện cho mọi chủ sở hữu, và nếu chưa mua thì nó sẽ đưa bạn đến cửa hàng. Nút này có cho các game bạn sở hữu.

Trước khi đưa file cho bạn, Shiny Gen build lại cartridge nếu có gì thay đổi, rồi khởi động nó trong một trình giả lập mới và kiểm tra rằng nó chạy lên. Bạn nhận được file .gba mang tên game của bạn. ROM mở đầu bằng một màn hình chào ngắn của Shiny Gen, và không chứa file lưu của bạn, nên bản bạn đưa cho người khác sẽ bắt đầu từ đầu.

File được lưu ở đâu tùy vào thiết bị: tải về bình thường trên trình duyệt, và bảng Lưu vào Tệp trong ứng dụng iPhone và iPad. Ứng dụng Android chưa lưu được file; hãy mở game tại shinygen.ai trên trình duyệt của điện thoại hoặc máy tính để tải về, việc này cần cùng một lần mua đó.

Cửa sổ Share Your Game Publicly trong Shiny Gen cho một game GBA: Share Permissions (Disabled, Play Only, Play and Duplicate) và nút Export .gba ROM, cần một lần mua bất kỳ.
Chia sẻ, rồi Export .gba ROM. Xuất ROM cần một lần mua bất kỳ, từ $2.99.

7. Chơi trên máy thật

Flash cart là một cartridge GBA có khe thẻ nhớ thay vì một game cố định. Bạn chép file ROM vào thẻ, và khi bật máy, cart sẽ hiện menu các game đó. Chúng tôi đã chơi các ROM làm theo cách này trên Game Boy Advance thật và Nintendo DS Lite, kể cả file lưu.

Các bước chung (hướng dẫn của cart bạn có các bước chính xác):

  1. Chép file .gba vào thẻ SD hoặc microSD của cart. Một số cart cần có file hệ thống riêng trên thẻ trước.
  2. Cắm thẻ vào cart và cắm cart vào Game Boy Advance.
  3. Bật máy và chọn game của bạn từ menu của cart.

Một số cart hỏi kiểu lưu cho từng game. ROM của chúng tôi dùng kiểu lưu flash 128 KB (1 Mbit) và ghi rõ điều đó bên trong ROM, đây là cách flash cart và trình giả lập thường tự nhận ra. Nếu cart hỏi, hãy chọn 128 KB hoặc 1M flash. Khi đó việc lưu trên cart hoạt động như trên cartridge gốc.

Để chơi mà không cần máy thật, trình giả lập GBA nào cũng mở được file: ví dụ mGBA trên máy tính, hoặc Delta trên iPhone.

Những loại game làm tốt

Các game GBA trong danh mục của chúng tôi cho thấy phạm vi có thể làm. Bạn có thể chơi miễn phí tất cả trên trình duyệt, và remix bất kỳ game nào thành bản của riêng bạn để chỉnh sửa cùng agent:

Shiny Kart Advance ở vạch bắt đầu: tám chiếc kart trên đường đua pixel-art xoay theo phối cảnh, một cối xay gió phía sau băng rôn START, LAP 1/3, đồng hồ và bản đồ đường đua.
Shiny Kart Advance, game đua kart GBA với đường đua Mode 7, chạy trên trình duyệt.

Nhìn chung, game hợp với cỗ máy sẽ làm tốt nhất: phiêu lưu và RPG nhìn từ trên xuống, game đi cảnh, giải đố, bắn súng, đua xe trên mặt đường xoay, và bất cứ thứ gì dựng từ tile và sprite. Engine hỗ trợ lớp nền cuộn, sprite xoay và phóng to thu nhỏ, hiệu ứng trong suốt, hộp thoại, nhạc và hiệu ứng âm thanh.

Giới hạn

Engine GBA bị giới hạn như máy thật, và vài thứ chưa được làm:

Các engine retro khác

GBA là một trong năm engine retro chúng tôi viết, và tất cả hoạt động giống nhau: chọn engine, mô tả game, và agent xây rồi kiểm thử nó. GBC tạo ROM Game Boy Color, N64 tạo ROM N64, GameCube tạo file .dol và DS tạo file .nds hai màn hình, và xuất bất kỳ loại nào cũng cần cùng một lần mua đó, từ $2.99. Nếu bạn muốn game 2D hoặc 3D hiện đại, engine Godot là lựa chọn thứ sáu trên cùng màn hình đó. Xem Shiny Gen so với các công cụ làm game AI khác.

Câu hỏi thường gặp

AI có làm được game Game Boy Advance không?

Có. Trong Shiny Gen, bạn chọn engine GBA và mô tả game; agent AI viết code, biên dịch một cartridge GBA thật, chơi bằng phím để tìm lỗi và sửa chúng. Bạn có thể tải ROM .gba sau một lần mua bất kỳ, từ $2.99.

Đó có phải ROM GBA thật không?

Có. Đó là một file ảnh cartridge .gba chuẩn, biên dịch thành mã máy ARM, với header cartridge hợp lệ. Shiny Gen khởi động mọi ROM trong một trình giả lập mới trước khi đưa cho bạn, và chúng tôi đã chơi các ROM này, kể cả file lưu, trên Game Boy Advance thật và DS Lite qua flash cart.

Nó có chạy được Pokemon hay các ROM thương mại khác không?

Không. Engine GBA không phải trình giả lập và không phải trình nạp ROM. Nó biên dịch game mới bạn làm trong Shiny Gen và không chạy được ROM thương mại hay ROM của bên thứ ba.

Mình có cần biết lập trình không?

Không. Bạn mô tả game và agent viết rồi kiểm thử code. Nếu muốn, bạn có thể đọc và sửa code trong phần Mã; sửa bằng tay không tốn gì.

Mình có bán được game GBA mình làm không?

Có. Bạn sở hữu thứ bạn làm ra, và Shiny Gen không chia doanh thu (Điều khoản dịch vụ, mục 4). Bạn có thể bán chính file ROM; xuất nó cần một lần mua bất kỳ, từ $2.99.

ROM chạy được trên thiết bị nào?

Trình giả lập GBA, như mGBA trên máy tính hoặc Delta trên iPhone, và máy thật qua flash cart. Chúng tôi đã thử trên Game Boy Advance và Nintendo DS Lite, kể cả file lưu, và nó sẽ chạy trên mọi máy console hay máy cầm tay chơi được cartridge GBA, như Game Boy Advance SP.

Mình nên chọn kiểu lưu nào trên flash cart?

Flash 128 KB (1 Mbit). ROM có khai báo điều này, nên cart và trình giả lập thường tự nhận mà không cần hỏi.

Có miễn phí không?

Làm, chơi và chia sẻ game là miễn phí. Tạo nội dung bằng AI và agent tích hợp dùng ngọc, và tài khoản mới được tặng ngọc miễn phí. Tải ROM cần một lần mua bất kỳ, từ gói khởi đầu $2.99. Danh sách đầy đủ có trên trang bảng giá.

Bắt đầu game GBA mới

Mở Shiny Gen với một băng GBA mới, trống. Cần tài khoản miễn phí để làm game.

Một số trang mà bài viết này liên kết đến là tiếng Anh.

Cập nhật lần cuối: 24 tháng 10, 2026