1.7 KiB
1.7 KiB
Example Mod
A bworld mod. The format is described in MODS.md at the root of the bworld repo.
Files
| Path | What it's for |
|---|---|
manifest.json |
The mod's id, name, version, dependencies and scripts. |
blocks/*.json |
One block per file. Blocks get an item form with the same id unless "item": false. |
items/*.json |
Items that aren't a block's item form. |
recipes/*.json |
shaped crafting, furnace smelting and fuel. |
textures/*.png |
16×16 textures, named example_mod:<file name>. |
worldgen/ores.json |
Ores to generate (optional, not included here). |
scripts/server.ts |
Game logic: block components, commands, events. Never sent to players. |
scripts/client.ts |
Sent to players: custom screens, HUD, keybinds. |
scripts/worldgen.ts |
Terrain features. Runs on the server and every client and must be deterministic. |
CREDITS.md |
Licenses and thanks, shown on the About page. |
Delete what you don't use, including its entry in manifest.json.
Checking it
From the bworld repo:
deno task check-mods
This validates the manifest and every data file, checks that the ids, textures and items you refer to exist, and typechecks the scripts.