Commit graph

160 commits

Author SHA1 Message Date
Zed A. Shaw
0674908e49 Implemented an initial cut at the event router. Its job is to take the random events from SFML and translate them into nice clean orderly events to the Gui::FSM. 2025-06-04 12:19:24 -04:00
Zed A. Shaw
5c47a0151c Basic loot UI mostly working. Each time you open there's a torch and you can place it visually on any slot on your character. 2025-06-03 13:43:16 -04:00
Zed A. Shaw
4b34de2109 Initial loot UI works to load an item by its world entity ID. 2025-06-02 23:34:31 -04:00
Zed A. Shaw
f208ca946e Made the components module work like textures and sound so that there's just one constant map of components. 2025-06-02 23:33:59 -04:00
Zed A. Shaw
ab391aaa97 Have a plan for the new inventory and looting system, now have to implement it. Temporarily you can't pick anything up, but it will go away. 2025-06-02 00:58:16 -04:00
Zed A. Shaw
dc8648016d Refactor the way assets are laid out in the assets/ dir and then have a build script that can automatically pixelate/posterize images that I save, saving me tons of time. 2025-05-30 17:49:15 -04:00
Zed A. Shaw
3dc70c3af6 This implements base ambient lighting for tiles which helps with tiles like lava and ceiling lights. 2025-05-29 12:34:25 -04:00
Zed A. Shaw
931d9493d2 The raycaster can now pair a floor with a ceiling tile and to demonstrate this I have a blue light that shines on to a stone floor. I also played with just pixelating a regular image rather than painting it and honestly it looks better in a lot of ways. 2025-05-26 13:59:26 -04:00
Zed A. Shaw
3a745d492a Refactored out the tilemap since it was mostly doing nothing useful. 2025-05-25 11:39:43 -04:00
Zed A. Shaw
9dcc2036aa Trying a new 'glowing moss' texture to sort out how to make the raycaster alter the light of a surface that has its own light. 2025-05-24 00:47:44 -04:00
Zed A. Shaw
5f1a453fb4 Refactored the maze functions to be a builder that can do different things to the maze. Also when I hit p in the game it'll save the map to a file. This was extremely hard for no reason. 2025-05-21 13:56:53 -04:00
Zed A. Shaw
37715f05a5 Cleaned up maze and ready to use. 2025-05-20 10:32:20 -04:00
Zed A. Shaw
33cd490ed3 Playing with maze gen again. 2025-05-20 03:19:58 -04:00
Zed A. Shaw
a0b785cb2a Hunt-and-kill algorithm rocks. It handles everything I need for map gen, including spawn points, room placement, and the maze like map. 2025-05-19 01:40:23 -04:00
Zed A. Shaw
0f8e61797f Now using a hunt-and-kill maze algorithm. 2025-05-18 14:37:43 -04:00
Zed A. Shaw
7a0b2f988d Add a terrible maze generation algorithm to test if a maze style map looks/feels better. The walls are disabled so you can walk around. 2025-05-18 01:00:47 -04:00
Zed A. Shaw
0eb245d113 Working on a better character view. 2025-05-16 01:22:12 -04:00
Zed A. Shaw
dfc6aa08e9 Loot UI is now mostly formed, just need to get loot into it and make it work. 2025-05-14 11:49:09 -04:00
Zed A. Shaw
74a8599977 Fully converted to using the lel-guecs library externally now. 2025-05-13 02:48:39 -04:00
Zed A. Shaw
1780a758b3 Initial GUECS refactor is done, it's now on its own with no other dependencies, but now I need to trim it down to do only what it needs. 2025-05-04 11:56:30 -04:00
Zed A. Shaw
2ceab51c40 A really shitty ritual crafting UI is working but needs a big reshape. 2025-04-29 23:59:40 -04:00
Zed A. Shaw
14619558fa Better UI for the ritual crafting that almost works, but need to get the selected items to move down. Might need some state machine love soon. 2025-04-28 13:21:10 -04:00
Zed A. Shaw
bc557652ba The player now has some starting items to craft a first weapon, and it is craftable in the UI. 2025-04-26 13:18:43 -04:00
Zed A. Shaw
c8a8d2b1af You can now craft a single ritual from the blanket. 2025-04-26 02:51:13 -04:00
Zed A. Shaw
292711f91f Prep for the actually making ritual crafting work. 2025-04-26 02:21:59 -04:00
Zed A. Shaw
00c28f47eb Rituals are now being added a belt on the player in a temp function in LevelManager. 2025-04-24 12:27:29 -04:00
Zed A. Shaw
a70f11646a RitualBelt now has an API. 2025-04-24 03:32:20 -04:00
Zed A. Shaw
31b35b43eb Added the ritual belt first cut. 2025-04-24 03:06:31 -04:00
Zed A. Shaw
17d30e2ed2 Add a dump function and clean up some data. 2025-04-24 02:44:07 -04:00
Zed A. Shaw
a342c53b02 RitualEngine now uses the crafting results to create a description of the ritual's combat in a RitualAction struct. 2025-04-24 01:15:49 -04:00
Zed A. Shaw
19b9a4affd The reload mechanism for shaders is a bit better, but still to make them unique. 2025-04-14 13:16:19 -04:00
Zed A. Shaw
35ced58cc9 Shaders now are managed by a manger that can do hot reloading and it also will detect a bad shader and use an ERROR shader so you know it's busted visually. 2025-04-13 17:11:21 -04:00
Zed A. Shaw
0e2f213871 Added in a new art for a 'gold savior' and refined the battle engine more but it's not quite what I want. 2025-04-07 14:02:32 -04:00
Zed A. Shaw
ca328e10dc Rework the source so that battle is in its own thing to work on. 2025-04-07 10:35:30 -04:00
Zed A. Shaw
1f90367f51 Initial battle engine is now integrated in the systems so now I can finally get the turn based combat to work the way I envision. 2025-04-06 00:45:51 -04:00
Zed A. Shaw
b832bbd78a Fixed how sprites/textures are loaded so tehy default to frame 0 of any multi-frame textures. 2025-04-05 17:17:26 -04:00
Zed A. Shaw
c1aba2d5c8 This does a 'fit_sort' whenever the state is changed. fit_sort effectively sorts the actions by distance+cost so that the cost is actually present unlike the original algorithm. 2025-04-03 10:14:50 -04:00
Zed A. Shaw
c014e65c13 Gave up on trying to get the GOAP algorithm to correctly apply the cost structure to competing choices, and instead I take the resulting action list and simply find the next best one based on cost. 2025-04-01 13:48:59 -04:00
Zed A. Shaw
52f45e1d45 Mostly fixed up but I have to figure out why cost on actions isn't changing the priority. 2025-03-31 13:51:27 -04:00
Zed A. Shaw
862d8b4d81 Now have a cycle and repeated action mitigation technique in the AI algorithm called 'delete shit you've seen'. 2025-03-31 11:27:48 -04:00
Zed A. Shaw
922fbeba0e AI now follows the A* algorithm more closely by using a separate priority queue from the open_set. 2025-03-30 12:37:34 -04:00
Zed A. Shaw
72951f308f Converted almost everything to use wstring so that it works better with SFML and the unicode/utf8 usage in the system. 2025-03-28 12:40:46 -04:00
Zed A. Shaw
47c6bfd531 AI engine is working and I have a little BattleEngine going but the AI is working better than it should in systems.cpp. Need to find out why then make the BattleEngine avoid running entities that have END in action lists. 2025-03-26 13:34:52 -04:00
Zed A. Shaw
da273cbee6 Refactored rituals so they can be used in different situations. 2025-03-24 12:30:58 -04:00
Zed A. Shaw
1aa6674e42 Created a nice utility library for doing animations, and used it in the ritual crafting UI. 2025-03-20 01:10:01 -04:00
Zed A. Shaw
2baa044695 Final little fixes for testing. 2025-03-17 23:36:14 -04:00
Zed A. Shaw
5ed8196c80 Brought line numbers back for the dbc.cpp logging stuff. May not work in clang because of the bug they have (had?). 2025-03-17 23:16:51 -04:00
Zed A. Shaw
0efb17371b Now have a simple stats test. 2025-03-17 22:56:18 -04:00
Zed A. Shaw
d3158291f7 Did a full code coverage review and improved many of the tests and a bunch of code. I'll do one more final walk through all the code before getting back to work on the new combat system. 2025-03-17 15:23:47 -04:00
Zed A. Shaw
c4611c0138 Right before coverage destroys everything. 2025-03-16 23:17:43 -04:00