Oreblood Peak
Oreblood Peak is a roguelite dungeon crawler game where you play as a dwarf decending into the caverns below Oreblood Peak in search of the elusive Oreblood, a magical material that can be used to forge new upgrades to your character.
I made it from scratch in C++ without an engine using the SDL2 library. I decided to use SDL2 instead of WinAPI (what I used for Snake.exe) because SDL2 can be compiled to most platforms, whereas WinAPI can only be compiled to Windows. It is a work in progress passion project that I hope to complete by early 2026.
Snake.exe
One day I decided I wanted to try to make a game from scratch in C++ without any game engine. I wanted to start with something simple as a proof of concept. I decided to recreate the classic Snake game using WinAPI, which is a C++ library that allows you to interface with the Windows operating system and compile to a Windows .exe file.
Cole's Cellular Automaton

Click here to try out my cellular automaton!
I was inspired by Conway's Game of Life and wanted to make my own cellular automaton with my own set of rules. For information about what a cellular automaton is, check out the wikipedia page here.
Like Conway's Game of Life, my cells can be in one of 2 states: alive, or dead.
A cell's neighborhood is composed of 4 leaves (labeled with 1, 2, 3, and 4). 0s are ignored cells, and C is the cell whose neighborhood we are looking at.
0 0 1 0 0
0 0 1 0 0
4 4 C 2 2
0 0 3 0 0
0 0 3 0 0
Leaves can be in 1 of 3 states, depending on the number of live cells it contains:
- Unpopulated: The leaf has exactly 0 live cells
- Semi Populated: The leaf has exactly 1 live cell
- Fully Populated: The leaf has exactly 2 live cells
Rules (inspired by Conway's Game of Life):
- Live Cells
- Overpopulation: A live cell with any fully populated leaves dies.
- Underpopulation: A live cell with 0 semi populated leaves dies.
- Survival: A live cell with any semi populated leaves stays alive.
- Dead Cells
- Reproduction: A dead cell with exactly 2 semi populated leaves becomes alive.
I coded the program in C++ with SDL2 and compiled it to web assembly using emscripten so it could be easily run in the browser.
After I finished the basic program I played around with it a bunch by making random chaotic shapes and seeing how they would evolve over time. I discovered many interesting properties and configurations. I added the 9 most interesting configurations I found as presets that can be loaded in with the number keys. My favorite find was a stable cycle that has 81 unique states before returning back to the original state.
Contact me
Email: colepropach@gmail.com
Phone Number: (408) 908-0944
LinkedIn: https://www.linkedin.com/in/cole-propach-330138257
GitHub: github.com/cole-propach