https://github.com/chrismaltby/gb-studio
A quick and easy to use drag and drop retro game creator for your favourite handheld video game system
https://github.com/chrismaltby/gb-studio
Last synced: 4 months ago
JSON representation
A quick and easy to use drag and drop retro game creator for your favourite handheld video game system
- Host: GitHub
- URL: https://github.com/chrismaltby/gb-studio
- Owner: chrismaltby
- License: mit
- Created: 2019-04-17T13:14:32.000Z (about 7 years ago)
- Default Branch: develop
- Last Pushed: 2025-05-09T09:54:26.000Z (about 1 year ago)
- Last Synced: 2025-05-12T13:07:54.254Z (about 1 year ago)
- Language: TypeScript
- Homepage: https://www.gbstudio.dev
- Size: 172 MB
- Stars: 8,825
- Watchers: 126
- Forks: 499
- Open Issues: 675
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-translation - GB Studio
- StarryDivineSky - chrismaltby/gb-studio - studio 是一个专为复古掌机游戏开发设计的简易图形化工具,用户可通过拖拽操作快速制作 Game Boy 风格的像素游戏。该项目基于 Godot 引擎开发,支持 Game Boy、Game Boy Color 等经典掌机平台,同时兼容 NES、SNES 等其他复古游戏机的模拟器格式。其核心特色是提供直观的可视化编辑器,用户无需编写代码即可完成游戏开发,主要功能包括:1)瓷砖地图编辑器,支持自定义像素艺术场景;2)精灵图制作工具,可绘制角色和道具动画;3)声音设计模块,支持 PCM 音效和音乐轨道;4)事件脚本系统,通过拖拽逻辑节点实现游戏交互。工具链包含项目管理器、资源导入器和调试器,可一键导出为 ROM 文件。开发团队注重易用性,提供完整的中文文档和示例项目,适合新手快速上手。项目采用 MIT 开源协议,支持跨平台使用(Windows/macOS/Linux),社区活跃度高,持续更新新功能。对于希望体验复古游戏开发但缺乏编程经验的用户,gb-studio 提供了从零开始制作完整游戏的完整解决方案,同时为开发者保留了扩展接口,可自定义添加新功能模块。 (游戏 / 资源传输下载)
- awesome-rainmana - chrismaltby/gb-studio - A quick and easy to use drag and drop retro game creator for your favourite handheld video game system (TypeScript)
- awesome-game-engine-dev - GB Studio - Retro adventure game creator for _Game Boy_. (Game Engines / Specialty)
README
# GB Studio
[](https://github.com/chrismaltby/gb-studio/actions?query=branch%3Adevelop) [](https://chrismaltby.github.io/gb-studio/storybook) [](https://chrismaltby.github.io/gb-studio/coverage)
Copyright (c) 2019-2026 Chris Maltby, released under the [MIT license](https://opensource.org/licenses/MIT).
Patreon: [gbstudiodev](https://www.patreon.com/gbstudiodev)
Twitter: [@maltby](https://www.twitter.com/maltby)
Reddit: [/r/gbstudio](https://www.reddit.com/r/gbstudio)
Discord: [Join Chat](https://discord.gg/bxerKnc)
GB Studio is a quick and easy to use retro adventure game creator for Game Boy available for Mac, Linux and Windows.
For more information see the [GB Studio](https://www.gbstudio.dev) site

GB Studio consists of an [Electron](https://electronjs.org/) game builder application and a C based game engine using [GBDK](http://gbdk.sourceforge.net/).
## Installation
Download a release for your operating system from the [GB Studio Downloads](https://www.gbstudio.dev/download) page.
Or to run from source, clone this repo then:
- Install [NodeJS](https://nodejs.org/) (required version is given in [.nvmrc](.nvmrc))
```bash
> cd gb-studio
> corepack enable
> yarn
> npm run fetch-deps
> npm start
```
After checking out a new version you may also need to fetch dependencies again to ensure you have the latest version of GBVM + GBDK etc.
```bash
> cd gb-studio
> npm run fetch-deps
```
GB Studio currently uses Node 21.7.1. If you have [NVM](https://github.com/nvm-sh/nvm) installed you can use the included `.nvmrc` to switch to the supported Node version.
```bash
> cd gb-studio
> nvm use
```
## GB Studio CLI
Install GB Studio from source as above then
```bash
> npm run make:cli
> yarn link
# From any folder you can now run gb-studio-cli
> $(yarn bin gb-studio-cli) -V
4.1.2
> $(yarn bin gb-studio-cli) --help
```
### Update the CLI
Pull the latest code and run make:cli again, yarn link is only needed for the first run.
```bash
> npm run make:cli
```
### CLI Examples
- **Export Project**
```bash
> $(yarn bin gb-studio-cli) export path/to/project.gbsproj out/
```
Export GBDK project from gbsproj to out directory
- **Export Data**
```bash
> $(yarn bin gb-studio-cli) export -d path/to/project.gbsproj out/
```
Export only src/data and include/data from gbsproj to out directory
- **Make ROM**
```bash
> $(yarn bin gb-studio-cli) make:rom path/to/project.gbsproj out/game.gb
```
Make a ROM file from gbsproj
- **Make Pocket**
```bash
> $(yarn bin gb-studio-cli) make:pocket path/to/project.gbsproj out/game.pocket
```
Make a Pocket file from gbsproj
- **Make Web**
```bash
> $(yarn bin gb-studio-cli) make:web path/to/project.gbsproj out/
```
Make a Web build from gbsproj
## Documentation
[GB Studio Documentation](https://www.gbstudio.dev/docs)
## Note For Translators
If you'd like to help contribute new language localisations to GB Studio you can do so by submitting pull requests adding or updating the JSON files found here https://github.com/chrismaltby/gb-studio/tree/develop/src/lang
If you're looking to update an existing translation with content that is missing, there is a handy script that lists keys found in the English localisation that are not found and copies them to your localisation
```bash
npm run missing-translations lang
# e.g. npm run missing-translations de
# e.g. npm run missing-translations en-GB
```