Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lets-all-be-stupid-forever/circuit-artist
Circuit Artist is a digital circuit drawing and simulation game.
https://github.com/lets-all-be-stupid-forever/circuit-artist
c drawing educational game game-development indiegame logic-gates lua nand paint pixelart-game puzzle raylib sandbox-game simulation
Last synced: 5 days ago
JSON representation
Circuit Artist is a digital circuit drawing and simulation game.
- Host: GitHub
- URL: https://github.com/lets-all-be-stupid-forever/circuit-artist
- Owner: lets-all-be-stupid-forever
- License: gpl-3.0
- Created: 2024-09-10T22:29:24.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-10-25T14:07:33.000Z (about 2 months ago)
- Last Synced: 2024-10-30T06:58:31.318Z (about 2 months ago)
- Topics: c, drawing, educational, game, game-development, indiegame, logic-gates, lua, nand, paint, pixelart-game, puzzle, raylib, sandbox-game, simulation
- Language: C
- Homepage: https://store.steampowered.com/app/3139580/Circuit_Artist
- Size: 1.57 MB
- Stars: 233
- Watchers: 5
- Forks: 7
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![logo](assets/logo2.png)
Circuit Artist is a digital circuit drawing and simulation game. Circuits are images. You can play in sandbox mode or solve puzzles. You can use lua to interact with your circuit.
- [web demo on itch.io](https://lets-all-be-stupid-foreva.itch.io/circuit-artist-demo) (it's a bit laggy)
- [discord](https://discord.gg/McpSTEW5jU)
- [steam](https://store.steampowered.com/app/3139580/Circuit_Artist/)Made with [raylib](https://www.raylib.com/).
## Game Rules
- Little pixel triangles are NANDs.
- Black pixels are background.
- Everything else is a wire.## Screenshots
![screenshot1](assets/screenshot1.png)
![screenshot2](assets/screenshot2.png)
![screenshot3](assets/screenshot3.png)
![screenshot4](assets/screenshot4.png)
## Building
Compiles in Windows, Linux and Mac.
- Need to build within the `build/` directory (or something within the root directory so it can access `luasrc/` and `asset/` folder)
- You need to compile `LuaJIT/`. You can see the instructions [here](https://luajit.org/install.html). The binaries will go to the `LuaJIT/src` folder. In MAC it seems you need to install it too. In linux I've managed to make it work with a symbolic link from `build/`. In Windows it worked directly with the cmake directives ( if it doesnt for you mind that it might be something related to link path).
- In linux it might complain that it can't find `libraylib.so`, that's because linux won't look for libraries in the directory it is in, you can fix with it `LD_LIBRARY_PATH=$PWD ./ca` until we find a cleaner solution.
- By default OPENMP is off, you might want to activate in the `OPENMP` cmake option.The Linux and MAC versions are not stable yet: they compile but have some divergences from windows version.
### Clone, compile, run on Linux
```
git clone https://github.com/lets-all-be-stupid-forever/circuit-artist.git
cd circuit-artist/
git submodule init
git submodule update
mkdir build
cd build/
cmake ..
make -C ../LuaJIT/
make
ln -s ../LuaJIT/src/libluajit.so libluajit-5.1.so.2
LD_LIBRARY_PATH=$PWD ./ca
```## License
GPLv3. See LICENSE file. For dependencies, see `third_party` folder.