Mineboy is an open source gameboy emulator designed for ComputerCraft. It uses a streaming server and client because the lua runtime in CC is slow.
- Install either docker and docker compose or NodeJS
- Clone this repository.
- Copy
.env.example
to.env
and edit with proper config vars.- If you are running Mineboy on a public server, you may want to secure the server with a password or prevent abuse from other players. Mineboy has a built-in security policy feature which can limit the number of connections. To use this feature, you must set the
SECURITY
environment variable or fill thesecurity.json
file with the following information:This will ensure that only two connections are allowed using that password/policy at any given time. Additionally, if you set a password, only users who know the password will be able to connect to the server. If the security policy configuration is nonexistant or[ { "name": "TestPolicy", "password": "testpassword", "connections": 2 } ]
[]
it will be unsecured.
- If you are running Mineboy on a public server, you may want to secure the server with a password or prevent abuse from other players. Mineboy has a built-in security policy feature which can limit the number of connections. To use this feature, you must set the
- Create
roms
folder with all GB/GBC roms. - Run the script
- For Node
- Run
npm install && npm build
to install dependencies. - Run
node dist/index.js
to run.
- Run
- For Docker (proffered for headless)
- Run
docker-compose up -d
- Run
- For Node
- Edit all clients
mineboy_config.lua
files with properhttpUrl
andwsUrl
settings.
- Run
pastebin run JubutEmL
and select the number with aclient
. - Edit
mineboy_config.lua
with proper config options. - Run
mineboy.lua
(rename tostartup
if you want to run this on startup).
- Make sure the computer you are installing this on has a wireless modem and
rednet
is enabled inmineboy_config.lua
- Run
pastebin run JubutEmL
and select the number withcontroller
. - Type the rednet ID in the controller (this will be printed on the client).