diff --git a/next-docs/pages/cli/worldgen.mdx b/next-docs/pages/cli/worldgen.mdx index de5da22651..e8b37e68a6 100644 --- a/next-docs/pages/cli/worldgen.mdx +++ b/next-docs/pages/cli/worldgen.mdx @@ -1 +1,34 @@ # mud worldgen + +Autogenerate the MUD World interface based on Systems registered in the World. + +Use the `System`s under `src`1 to generate the Solidity interface definitions for those `Systems` and put them in `src/codegen/world`. +Also, create `src/codegen/world/IWorld.sol` which imports all the `System` interfaces. + +(1) By default this is any file that ends with `...System.sol`, for example `IncrementSystem.sol`. +However, in the config file you can specify additional `System`s, under `systems`, as well as exclude files that end in `..System.sol`, by putting them under `excludeSystems`. + +## Sample usage + +```sh copy +pnpm mud worldgen +``` + +## Options + +These are the command line options you can specify on `mud worldgen`: + +| Option | Meaning | Type | Default value | +| -------------- | ------------------------------------------------------------- | ------- | --------------- | +| `--version` | Show version number | boolean | `false` | +| `--configPath` | Path to the config file | string | `mud.config.ts` | +| `--clean` | Clear the worldgen directory before generating new interfaces | boolean | `true` | +| `--help` | Show help | boolean | `false` | + +## Debugging + +To generate debug messages, use this command: + +```sh copy +export DEBUG=mud:common:codegen +```