This is a WIP kinda-clone of CM2 in C.
The original is made in Roblox which limits the speed of the simulation enough to be exceeded.
We have no idea of computer graphics.
To contribute, look at CONTRIBUTING.md.
make run- If your IDE complains about includes, try
bear -- make.
Note
The currently selected block is painted with a red gradient
WASD to move around
Scroll wheel to change FOV
Left click to place/destroy/wire (depends on the mode)
| Keybind | |
|---|---|
| E | Go to next mode |
| Q | Change block |
| O | Toggle wireframe mode |
| R | Reset camera to 0, 0, 0 |
| Z | Save the world to SAVELOAD (from config.comm) filename |
| Modes | Info |
|---|---|
| BLOCK_PLACE | Place a block |
| WIRE_PLACE | Place a wire connection from block -> block |
| WIRE_DESTROY | Destroy a wire connection from block -> block |
| BLOCK_POKE | The block will be poked. For example, poking a Flipflop toggles it. |
When you are in wire mode:
- Left click to select the source block
- Go to the destination block
- Left click to select the destination block
- Now the source block is connected to the destination block.
Each time you start the game, it reads the file named config.comm
This file is in the res (resource) folder
You can also add comments to it using ;
Here are the specifications
| Parameter | Info |
|---|---|
| SKY_RT | Filename of the image for the right side of the skybox |
| SKY_LF | Filename of the image for the left side of the skybox |
| SKY_UP | Filename of the image for the top side of the skybox |
| SKY_DN | Filename of the image for the bottom side of the skybox |
| SKY_FT | Filename of the image for the front side of the skybox |
| SKY_BK | Filename of the image for the back side of the skybox |
| SAVELOAD | Native save file to load when starting the game |
| SAVETO | Filename of the native save file, the world is saved here pressing Z |
| CM2SAVE | A Circuit Maker 2 save to load when starting the game. Note that SAVELOAD loads the save first, then this. |
| CHUNK_AMOUNT_X | How much chunks to generate in the X axis at world generation |
| CHUNK_AMOUNT_Z | How much chunks to generate in the Z axis at world generation |