A Rogue style game in C++ which renders the ANSI terminal into an SFML graphics window.
Find a file
2024-10-26 19:47:40 -04:00
assets Make the changes for the new assets layout. 2024-10-02 16:59:30 -04:00
scratchpad Very basic collision and combat to work out the idea and a logging system on the left. 2024-10-25 20:49:11 -04:00
scripts A bit more cleanup, but still looking for more organization. 2024-10-16 23:15:56 -04:00
tests Refactor some code to have better naming and move Point and related point things into their own .hpp. 2024-10-26 18:26:42 -04:00
wraps Not sure why I didn't think of this before, but you can just copy all the .wrap files to another directory, and then instead of meson wrap install you just copy them to subprojects. That's how you lock the versions of dependencies. 2024-10-16 20:01:01 -04:00
.gitignore Ignore more irrelevant things. 2024-10-02 17:01:30 -04:00
.tarpit.json Ignore more irrelevant things. 2024-10-02 17:01:30 -04:00
.vimrc_proj Mostly working prototype that uses FTXUI to render to SFML and then plays a sound when you hit a wall. 2024-10-02 16:56:06 -04:00
collider.cpp Refactor some code to have better naming and move Point and related point things into their own .hpp. 2024-10-26 18:26:42 -04:00
collider.hpp Refactor some code to have better naming and move Point and related point things into their own .hpp. 2024-10-26 18:26:42 -04:00
components.hpp Implemented a simple collision hash table. 2024-10-25 22:31:09 -04:00
dbc.cpp Initial commit that has most of what I need. 2024-09-24 18:28:01 -04:00
dbc.hpp Initial commit that has most of what I need. 2024-09-24 18:28:01 -04:00
dinkyecs.hpp DinkyECS is now controlling the game and can handle multiple enemies easily. Next is to clean this up so it's not just one gross pile of code in the gui. 2024-10-16 15:01:53 -04:00
flecs.wrap Brought in FLECS to play with, tomorrow we learn it. 2024-10-05 18:15:14 -04:00
fsm.hpp Conver to using \ for member variables in classes. In structs just use the name. 2024-10-03 17:05:23 -04:00
gui.cpp Refactor some code to have better naming and move Point and related point things into their own .hpp. 2024-10-26 18:26:42 -04:00
gui.hpp A bit more caching and optimization then determine how to center glyphs in the center of the background if it fits. 2024-10-21 22:43:34 -04:00
LICENSE Initial commit 2024-09-25 00:10:33 +02:00
main.cpp Pulled most of the variables out so now I can carve out functions. 2024-10-02 18:14:54 -04:00
Makefile Cleaned up the map for more work. 2024-09-26 23:14:42 -04:00
map.cpp DinkyECS is now controlling the game and can handle multiple enemies easily. Next is to clean this up so it's not just one gross pile of code in the gui. 2024-10-16 15:01:53 -04:00
map.hpp Refactor some code to have better naming and move Point and related point things into their own .hpp. 2024-10-26 18:26:42 -04:00
meson.build Implemented a simple collision hash table. 2024-10-25 22:31:09 -04:00
point.hpp Refactor some code to have better naming and move Point and related point things into their own .hpp. 2024-10-26 18:26:42 -04:00
rand.cpp Just wrote my own entity system to figure it out. 2024-10-10 17:34:33 -04:00
rand.hpp Just wrote my own entity system to figure it out. 2024-10-10 17:34:33 -04:00
README.md Fixes to make it build on OSX with old gear. I have an ancient OSX laptop that uses Clang 14 and it actuall works there. Amazing. 2024-10-13 14:01:18 -04:00
status.txt Better unit test for the collision system. 2024-10-26 18:13:06 -04:00
systems.cpp Give the player first move advantage, but maybe this should be a setting on motion so that some enemies can beat the player. 2024-10-26 19:47:40 -04:00
systems.hpp Now using a simple collision map to track entities and then determine if they're near the player for attacking. 2024-10-26 04:33:23 -04:00

roguish

The next little game in the series where I make a fancy rogue game.

OSX Build Notes

  • Quite a bad experience. Need to install Python, cmake, meson, and ninja all which are in homebrew but if you don't use homebrew then this is a problem.
  • You need to run the .command script in Application/your python that updates the SSL certs.
  • You have to give iTerm access to your keystrokes...because wtf it already has them?
  • This points out a problem that I'm getting the keys using FTXUI but should either get them from SFML or connect FTXUI to SFML's keyboard input events instead.
  • Takes forever to load on older computers, and I've got no idea why SFML is like that. It seems the sound system is a pig that takes forever to load, so am I using it wrong?
  • No actually this first run delay seems to be related to the security feature that blocks keyboard access on iTerm, so probably fixing that would speed it up.