Commit Graph

  • 80b4faf940 Added a screen size parameters to the fragviewer. master Zed A. Shaw 2025-04-11 11:44:33 -0400
  • 576110ea44 Fragviewer can now load a sprite from my sprite list and then apply shaders to it. Zed A. Shaw 2025-04-10 23:42:45 -0400
  • 724d3edb61 Wrote my own quick and dirty fragment shader viewer. Zed A. Shaw 2025-04-09 23:59:09 -0400
  • b5d93399d5 Converted the buttons to reflect the actions you can take. Zed A. Shaw 2025-04-08 14:36:51 -0400
  • d7e9944e58 Change the buttons to text for development until I can get the icons/art. Zed A. Shaw 2025-04-08 13:01:56 -0400
  • e11a374d26 No need to compile arena anymore. Zed A. Shaw 2025-04-08 13:01:37 -0400
  • 5a3b567fd1 Solve a problem where if you give a name for cell and the name doesn't exist you get a crash during world query in GUECS. Zed A. Shaw 2025-04-08 13:01:24 -0400
  • 0e2f213871 Added in a new art for a 'gold savior' and refined the battle engine more but it's not quite what I want. Zed A. Shaw 2025-04-07 14:02:32 -0400
  • ca328e10dc Rework the source so that battle is in its own thing to work on. Zed A. Shaw 2025-04-07 10:35:30 -0400
  • e6a8a8b338 Fixed the map so that it shows directional arrows instead of a compass. Zed A. Shaw 2025-04-06 23:29:25 -0400
  • c7c48658bd Lots of dumb little edits to sort out what I'm aiming at. I'll next clean out most of this in a refactor. Zed A. Shaw 2025-04-06 15:32:19 -0400
  • 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. Zed A. Shaw 2025-04-06 00:45:51 -0400
  • e18aeaf05c Bring back a simple blood splatter texture. Zed A. Shaw 2025-04-05 17:48:24 -0400
  • b832bbd78a Fixed how sprites/textures are loaded so tehy default to frame 0 of any multi-frame textures. Zed A. Shaw 2025-04-05 17:17:26 -0400
  • 6d73c87c4e Debug UI now has little icons for each enemy and can spawn any enemy. Also I forgot the files. Zed A. Shaw 2025-04-05 12:25:34 -0400
  • 07ce8a4148 New debug_ui that shows perf data, other debug info, and allows spawning enemies. Zed A. Shaw 2025-04-05 12:09:19 -0400
  • 4f090159ab Started working on this 'arena tester' tool that would let me load an enemy and test them, but then realized I could just make it so I can spawn enemies in the game. I'm keeping the arena around as it will be useful later as a scriptable testing tool, but for now just spawn and test. Zed A. Shaw 2025-04-04 12:45:55 -0400
  • b6c1eba1b3 Actually I can just use the ai::distance_to_goal function on the fit_sort to sort by cost and distance. Zed A. Shaw 2025-04-03 10:25:41 -0400
  • 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. Zed A. Shaw 2025-04-03 10:14:50 -0400
  • 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. Zed A. Shaw 2025-04-01 13:48:59 -0400
  • 52f45e1d45 Mostly fixed up but I have to figure out why cost on actions isn't changing the priority. Zed A. Shaw 2025-03-31 13:51:27 -0400
  • 862d8b4d81 Now have a cycle and repeated action mitigation technique in the AI algorithm called 'delete shit you've seen'. Zed A. Shaw 2025-03-31 11:27:48 -0400
  • 6fa7b0a418 Accidentally committed code during testing. Zed A. Shaw 2025-03-30 13:41:43 -0400
  • 0ebc60793a Brought back the closed_set to avoid visiting nodes already handled. Zed A. Shaw 2025-03-30 12:55:59 -0400
  • 922fbeba0e AI now follows the A* algorithm more closely by using a separate priority queue from the open_set. Zed A. Shaw 2025-03-30 12:37:34 -0400
  • 72951f308f Converted almost everything to use wstring so that it works better with SFML and the unicode/utf8 usage in the system. Zed A. Shaw 2025-03-28 12:40:46 -0400
  • 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. Zed A. Shaw 2025-03-26 13:34:52 -0400
  • da273cbee6 Refactored rituals so they can be used in different situations. Zed A. Shaw 2025-03-24 12:30:58 -0400
  • 5af9a6664e Have a few basic monochrome test items and the first little leather pouches on the 'tool belt'. Zed A. Shaw 2025-03-23 11:34:50 -0400
  • d7ff7d6acf Map view now displays a simple status message, more to come. Zed A. Shaw 2025-03-23 00:25:11 -0400
  • 6fe343d82d Bad commit previously, but not minimap updates. Zed A. Shaw 2025-03-23 00:06:16 -0400
  • 322797f787 Now have a full map and a mini map, but I think the mini map will stop rendering sometimes. Zed A. Shaw 2025-03-23 00:04:23 -0400
  • 193d97eb48 Bring over the dbg.h to see if it's usefule. Zed A. Shaw 2025-03-22 23:21:12 -0400
  • 2e79cf8781 Map is way better and components::Tile is _vastly_ improved by switching to a wchar_t on display and letting nlohmann::json auto convert it for me. Zed A. Shaw 2025-03-22 02:10:56 -0400
  • 2b57552152 Not the greatest but this is kind of what I want for the map. Zed A. Shaw 2025-03-21 11:12:04 -0400
  • 6c9016eb0f After some prototyping I have what I think I want for the map. Just a simple piece of paper you take out that has the ASCII map on it. Zed A. Shaw 2025-03-21 02:51:02 -0400
  • acbf384e2a Fixed some of the easing functions but still not sure with RAT_GIANT doesn't move. Zed A. Shaw 2025-03-20 04:25:15 -0400
  • a53f81715d Have a basic map prototype gui working. Zed A. Shaw 2025-03-20 04:13:22 -0400
  • 8b3573b01d Basic Ritual crafting UI is prototyped, so next step is to create some items and refine the UI with a possible FSM to keep it organized. Zed A. Shaw 2025-03-20 03:25:35 -0400
  • 1aa6674e42 Created a nice utility library for doing animations, and used it in the ritual crafting UI. Zed A. Shaw 2025-03-20 01:10:01 -0400
  • 0a40135f5d Throw in the distance to mess with it later. Zed A. Shaw 2025-03-19 22:34:56 -0400
  • 65c9e4b0c6 Initially implemented 'ritual blanket' UI for the crafting of rituals in combat. Zed A. Shaw 2025-03-19 22:10:17 -0400
  • 263b7741f6 The ritual UI is now in its own thing, but not hooked up yet. Zed A. Shaw 2025-03-19 00:48:43 -0400
  • f1cc9f86c1 Very early prototype of the ritual crafting UI, but it needs its own thing. Zed A. Shaw 2025-03-19 00:14:43 -0400
  • a6d83db20c Fixed up dbc.cpp so now just use it everywhere. I next need to find a way to pass that to format automatically. Zed A. Shaw 2025-03-17 23:53:58 -0400
  • 2baa044695 Final little fixes for testing. Zed A. Shaw 2025-03-17 23:36:14 -0400
  • 5ed8196c80 Brought line numbers back for the dbc.cpp logging stuff. May not work in clang because of the bug they have (had?). Zed A. Shaw 2025-03-17 23:16:51 -0400
  • 0efb17371b Now have a simple stats test. Zed A. Shaw 2025-03-17 22:56:18 -0400
  • 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. Zed A. Shaw 2025-03-17 15:23:47 -0400
  • 113a4a3b3e Now have a coverage report. Zed A. Shaw 2025-03-17 00:21:27 -0400
  • c4611c0138 Right before coverage destroys everything. Zed A. Shaw 2025-03-16 23:17:43 -0400
  • 1d2968f826 Move the ritual stuff to the combat namespace. Zed A. Shaw 2025-03-16 13:46:40 -0400
  • 49531ba148 Rituals are more or less sorted out in theory, and they helped find a cycle in the GOAP algorithm that I'm detecting/preventing. Zed A. Shaw 2025-03-16 13:34:38 -0400
  • 8368d2e751 Prep for the next cleaning quality cycle. Zed A. Shaw 2025-03-16 10:26:54 -0400
  • 15bb69624b Rituals now work mostly how I want, and even prototyped the idea of a cursed item giving you a debuff and also boosting damage more. Zed A. Shaw 2025-03-16 00:46:24 -0400
  • eeea3c794f The basic idea of using GOAP to figure out if combined items will produce a valid ritual, and what kind of things the ritual does, mostly works. Zed A. Shaw 2025-03-15 23:39:54 -0400
  • 7984540c0c Added a check to see if a found state is already in a closed_set so I can skip it. Zed A. Shaw 2025-03-15 22:57:09 -0400
  • 63f032ff12 BREAKING: First idea for the combat system but there's a bug in goap where I'm not removing closed parts or something like that. Zed A. Shaw 2025-03-15 22:30:10 -0400
  • 75db188dc6 AI is now mostly working. Enemies will attack the player, and some of them are marked as not tough so they'll run away when they get low health. Zed A. Shaw 2025-03-15 11:43:46 -0400
  • c4e01775bc Enemies will now get scared when their health is low. Zed A. Shaw 2025-03-15 10:45:27 -0400
  • 00f76dfb34 Need to tag the events with their number for debugging. Zed A. Shaw 2025-03-15 10:45:07 -0400
  • 2815375836 Test now can work the enemy AI to prototype behavior. Zed A. Shaw 2025-03-14 23:48:03 -0400
  • db5a371766 Moving some stuff around before writing a test to confirm the EntityAI. Zed A. Shaw 2025-03-14 22:39:08 -0400
  • f3e157a0f7 Enemy AI is now prototyped and can find the player and attack them. Zed A. Shaw 2025-03-14 13:41:22 -0400
  • ad71631809 Enemies and now using the GOAP AI to decide when to attack the player, but it's very rough right now. I need to sort out how to store the AI states and use them in the System. Zed A. Shaw 2025-03-14 11:14:25 -0400
  • 77f2e94515 Figuring out something weird about the Pathing::random_walk code. Zed A. Shaw 2025-03-13 23:03:14 -0400
  • ee804581a8 Autowalker is working way better and now I have a plan for using the AI in the System. Zed A. Shaw 2025-03-13 13:44:42 -0400
  • 0623170dbc Autowalker AI now knows when it has items, and knows it should find healing, but it's not working quite yet. Zed A. Shaw 2025-03-12 13:56:05 -0400
  • d15c9b12fd Autowalker is now using the GOAP AI system and works way better. Still quite a lot of jank in the code but that'll get removed over time. Next thing is being able to detect when its near an item/enemy and properly react. Zed A. Shaw 2025-03-12 12:15:21 -0400
  • ff81c78d13 The autowalker now uses the GOAP AI system to walk the map and do its thing. The code needs a big cleanup, so I might just do a full rewrite based on what I know now. Zed A. Shaw 2025-03-12 00:41:40 -0400
  • fc66d221d4 Now have the ability to do partial solutions that will create potential paths to the goal, and a test that runs the scripts from plans in different scenarios. Also, this ai_debug thing needs some work. Zed A. Shaw 2025-03-11 15:33:14 -0400
  • 3f83d3f0bb A bit more cleanup to avoid duplicate testing and to separate the GOAP algorithm code from the little AI Manager thing. Zed A. Shaw 2025-03-11 10:57:29 -0400
  • b2c1b220ac ai.cpp now has a nice easy to use API for loading and running the GOAP things. Zed A. Shaw 2025-03-11 00:32:11 -0400
  • a079f882df Quick renaming of stuff to be more generic as 'AI'. Now maybe I can get some sweet sweet investor money. Zed A. Shaw 2025-03-10 22:30:56 -0400
  • 9d6dc2f5dd Now can load action specs from JSON. Zed A. Shaw 2025-03-10 14:07:31 -0400
  • 3d8a2d4342 GOAP now uses only bit operations to do its thing. Zed A. Shaw 2025-03-10 12:13:08 -0400
  • 01525388ec GOAP is now working in a basic way, time to clean it up. Zed A. Shaw 2025-03-10 11:06:26 -0400
  • 2992193447 GOAP is now matching cppGOAP but needs a serious cleanup. Zed A. Shaw 2025-03-10 00:42:59 -0400
  • 15c2efc415 A barely working GOAP now, but need to confirm it's on par with other libraries. Zed A. Shaw 2025-03-09 23:40:15 -0400
  • a34e2cd475 GOAP is structured but not working yet. Zed A. Shaw 2025-03-09 14:05:53 -0400
  • a34becdaeb A simple A* pathing function that works on maps, but I'll be changing it to do the GOAP pathing. Zed A. Shaw 2025-03-08 23:23:29 -0500
  • 73b0600039 Quick notes on the linux build. Zed A. Shaw 2025-03-06 23:51:18 -0500
  • b68fd249ca Catch a system error that OSX's SFML produces since it's at the end and looks like just a cleanup mistake. Zed A. Shaw 2025-03-06 22:22:42 -0500
  • b7948f8154 Build is working on both OSX and Windows. Now for linux. Zed A. Shaw 2025-03-06 20:22:51 -0500
  • e1f9942da3 Mostly working OSX build options, but it crashes on close with a thread error. Zed A. Shaw 2025-03-06 14:11:12 -0500
  • 28b900e4ff Finally created an installer so people can try the game. version-0.1 Zed A. Shaw 2025-03-05 13:39:38 -0500
  • 5c815cf755 Played with UI layouts but keeping this for now. Fixed up config so it has keys() and now we load a boss per level. Zed A. Shaw 2025-03-05 01:01:36 -0500
  • 281a7f687a Can now mark json/components with std::optional and then they can be null/false to disable them. Zed A. Shaw 2025-03-04 23:06:46 -0500
  • 243b4c2663 Basic ability to create a 'stage' for a boss fight, which is a thing in front the boss animates behind. Zed A. Shaw 2025-03-04 22:16:47 -0500
  • 8b414c13e6 Animations now can have a stationary option which tries to keep them 'in place' while growing, effectively removing the forward motion. Zed A. Shaw 2025-03-04 12:12:27 -0500
  • eb8fb82837 BossFightUI now loads out of LevelManager and is treated like a normal level. This also adds a prototype for a different kind of 'stationary' boss to prototype its motions. Zed A. Shaw 2025-03-04 09:31:15 -0500
  • 6e8aa48332 BossFightUI now gets everything from a world and will be implemented like the rest of the game, but as a mini game. Zed A. Shaw 2025-03-03 12:44:26 -0500
  • ca18422930 BossFightUI is not managed by the level manager since it is kind of a new level, just with a different mini game. Zed A. Shaw 2025-03-03 11:15:49 -0500
  • a3f6ba3c03 Refactored the bossfight_ui so it will work with any description of a boss fight. Zed A. Shaw 2025-03-02 12:36:08 -0500
  • 43835da88f Bosses and other enemies now have a 2 frame animation, the first boss the Rat King now screams at you and attacks. Zed A. Shaw 2025-03-01 13:41:42 -0500
  • b3b8cbbeee Started to set things up so that the boss fight UI can load enemies and configs out of the components setup. Zed A. Shaw 2025-03-01 00:46:40 -0500
  • 033358749f Animations now have an easing/ease_rate setting that will do a dynamic scaling effect on them during the animation sequence. Zed A. Shaw 2025-03-01 00:24:19 -0500
  • 6e363ba78d Found the test that crashed sometimes but also had to just rip out all of the throws testing in DBC because catch2 can't get it right. Zed A. Shaw 2025-02-28 22:29:25 -0500
  • e020f25dd1 Move the compass to the left so that enemies don't have N on their head. Zed A. Shaw 2025-02-28 13:34:48 -0500
  • 2d790c5986 Boss fight looking better, but I need to get this bounce animation in the main game fights. Zed A. Shaw 2025-02-28 13:03:13 -0500