What began as a simple update to add 2 new features, ended up taking 16 weeks, and becoming the biggest update I will most likely ever put out,
Update 4.0.0 - The Anniversary Update
Combat System 4.0
Yes I know; I skipped Combat System 3.0. Except I actually didn't. Combat System 3.0 was my attempt to just enhance the old system, but that failed miserably, so I rebuilt the ENTIRE Combat System. So what was changed?
Removed Cards
These were never implemented properly. I added them with the intention of balancing them or adding more features to them, but then as I worked on overhauling combat I realized they weren't just imbalanced, they were game breaking. So I decided to pull them from the game completely.
Hit & Evasion
Defense no longer subtracts the Damage you receive. Instead, it determines if the Attack hit in the first place. This removes the duplication Defense had with the Stoneskin potion.
That means your Attack can now Miss. Weapons give you the largest HitChance boost, with your Level in the Attack Style giving you the next largest boost. Armor will give some boosts, but also penalties for using the wrong armor. It's not enough to outright kill mixing and matching gear types, but it's enough to make there be a real tradeoff for wearing the wrong armor type.
New Weapons & Dual Wielding Weapons
That's right! There are now 12 weapons, and 7 new weapons. For those wondering why that math doesn't add up since there were previously only 3 weapons? The Axe and Pickaxe are now able to be equipped in the Weapon slot. So what are these new weapons?
Melee Weapons: Dagger, Heavy Sword, WarHammer
Ranged Weapons: LongBow, CrossBow
Magic Weapons: Wand, BattleStaff
Along with those new weapons comes Dual Wielding certain weapons, but also weapons that use BOTH the Weapon and OffHand slots.
Unified Arrows
Arrows are now ONLY defined by which Arrow Tip is on them. No more "Redwood Steel Arrows", just "Steel Arrows". This makes it infinitely simpler for Ranged users when looting the dungeon.
HitSplat Colors Unified
Originally the color was for which AttackStyle you were hit with. Now, it's just Red for Hits and Blue for Misses. The idea here is that I can use those other colors for more status effects (Poison for Green, Frost for Cyan, etc.)
Gear HotSwapping
There are now 2 new Equipment Slots; Backup Weapon and Backup OffHand. Once either slot is filled, pressing "H" will swap to your backup items, while your equipped items will now become the backup items.
New Movement System
This is actually my favorite part of this update I think.
Enemy AI Overhaul
Enemy AI got an overhaul for the new Combat Mechanics, but even before that happened, I had already changed how Pathfinding worked for them. Instead of them dumbly just tracking to the player in a straight line, I changed it so they now path around walls to the player. This means when line-of-sight is lost, they still chase now. The only way to disable them chasing you, is to get far enough way.
Player Click/Tap-to-Move
I realized since I added Pathfinding for Enemies, I could also add it for the Player and add a second movement system. This took a LOT of work, but I'm very happy with where it's at. You can now click or tap anywhere in the world, and your player will move to the closest valid location. This also comes with a new "Sprint Toggle" on the Stamina Bar. If using Click-to-Move, tapping the Stamina Bar will enable "Auto-Sprint" which will have your stamina drain, refill to a point, then start sprinting again. This also ties directly into the next feature...
Removed Exhaustion from Sprinting
Since the new Click/Tap-to-Move system uses a Sprint Toggle instead of holding Shift, it suddenly meant that Exhaustion was always being triggered by that system, which seemed unfair. So I pulled Exhaustion from both systems.
Auto-Actions
You no longer need to hold down to perform actions. Now you can just click/tap whatever you want to interact with once, and it'll lock on and perform that action for you. This means Mining, Woodcutting, and Combat are now much less taxing on your fingers.
Crafting Overhaul
It wasn't just Combat that got fixed, but Crafting too.
Item Deconstruction & Gear Upgrading
These were the original features for this update. Deconstruction allows you to break down gear and get materials back from it, while Upgrading allows you to slot Trims and Gems into existing gear pieces.
Unified Crafting Bench
No more "Smithing Table" and "Crafting Table". It's not just the "Crafting Bench", and it holds Smithing, Crafting, Deconstruction, and Upgrading all in one spot.
I also
Mystery Materials Renamed & Material Recolors
Mystery was meant to just be a placeholder name for the last material, because I couldn't come up with one. But it got REALLY annoying working around there being both a Mystery Metal and a Mystery Wood. So I've not split them into their own materials:
Mystery Metal = Azurite
Mystery Wood = Mystic
Along with that change, I also recolored Iron, Silver, and Obsidian. Iron is more Navy Blue than pure Grey now, Silver got a small blue tint as well, but on the lighter side, and Obsidian was made a lighter purple.
Remove Trim Restrictions
Now ANY Metal Trim can be applied to Any Metal. That means you can trim a Bronze Sword with Bronze now, or a Steel Chestplate with Steel.
Rebuilt Translations
As I looked back at some of the translation files to add the new ones, I spotted a LOT of inconsistent translations, so I decided to fix that.
New Glossary Translation System
Instead of blankly letting the Translation LLM translate every string, I decided to create a Glossary of terms, which created a set of building blocks for me. With a bit of code, I was able to turn "Sword" and "Bronze" into the term for "Bronze Sword" in every supported language. This means small, simple phrases can be built using code, while the longer strings (Journal Entries, Conversations, etc.) are now what get AI Translated. This new system means only about 40% of the game is AI translated, instead of the previous 100%.
New Translation LLM
For those curious, I switched from TranslateGemma 27B, to Riva Translate 4B from Nvidia. It's seems to be a more literal translation, which hopefully means a better translation.
Temporarily Pulled Japanese Translations
Because of how literal the new model is, most of my strings don't translate cleanly, or even at all, in Japanese. So that means Japanese is going to have to be much more of a "Hand Translated" language. I am slowly working on that, but each translation file is near 3000 lines, so that's a lot of text to have to hand translate, but I am going to do it.
Save System 3.0
Since I was already doing save breaking things in this update, I figured it only made sense to completely rebuild the save system while I did it.
JSON Based Save System
Instead of a Text File storing raw variables in encoded text, I decided to switch JSON. It made it easier to edit the Settings file outside of the game if necessary, but it also means I can potentially upgrade any JSON save to a new Save System if necessary in the future.
Previous Saves Are Incompatible
The game will also tell you this, but any .txt save file, or a save file without the version: 3.0 tag, will not even attempt to load.
Converting Previous Saves
Because of the newly editable JSON save system, this means it's possible to convert old saves, but it's a manual process if you choose to do it. To do this, you must:
Create a new Dummy Save inside the game
Open it and the old save you want to transfer in a Text Editor
Adjust the values in the JSON file to match those inside the Text File
Some values in the old .txt files will not be visible, because I was directly saving variables into them, so they don't show up in UTF-8 Text Files.
Changes
Rebuilt Scenes
A lot of scenes got rebuilt. In truth, nearly every scene was touched in some capacity. This was to make it so the new Movement System could work cleanly. I had to increase the size of the tiles themself, so that meant the scenes needed to be changed so they weren't too big now.
Some UI scenes also got tweaked because of the removal of Cards, or just to make them flow and look better.
No More Loading Screens
Because of the newly rebuilt scenes, a lot of them became smaller in file size. This means they're now an almost instant load (Some transitions took as long as 3 seconds in testing), which means I don't need to call the Loading Screen anymore, and can just instantly switch to the scene you're moving into.
New XP Curve
The old curve was... punishing to say the least. You needed to perform WAY too many actions to reach the maximum level, which dragged the progression of the game down to a brutal grind. On top of that, the Hardcore XP Curve has been separated out from the Classic XP Curve. Hardcore is now MUCH faster to level up which matches the pace of Hardcore mode better.
Cotton
This feature is the single most important feature in this update. Cotton is now an alternative to Torn Cloth, which means Magic Robes are now fully craftable without having to step foot inside the Dungeon itself. You'll find Cotton sprinkled around the Forest.
New Dungeon Loot Generation
Loot Generation is now faster, and comes with new Loot Chest Types. These types are "Gear Chests", "Material Chests", "Potion Chests", and so on. I'll also be adding more chest types as time goes on.
Changed Gear Selection in Player Creation
Now instead of just choosing between Melee, Ranged, and Magic, you can also choose which Weapon you want to begin with. It is still a "Class Based" choice, so if you choose Magic, you can only choose between Magic Weapons.
Performance Enhancements
The Physics Engine will now run on a Separate Thread from the Main Thread. This means Multi-Thread CPUs should get a decent performance boost from this change.
But it's not just FPS that should get better, so should RAM usage. Instead of destroying and rebuilding Inventory buttons, I tweaked the code to allow me to simply update them instead. This means no more leftover objects that weren't correctly freed or deleted sitting in RAM.
Decreased File Size
A few things contributed to this, but the most important was the removal of a lot of unused Sound Effects, TileMaps, Sprite Textures, and old Scenes. In short it's about a 15% file size DECREASE. I'm very proud of this change.
Bug Fixes
Normally I'd post every single bug fix, but this update log is already very long, so I'm not going to. Instead, I'll just simply say this; A LOT of bugs got fixed. If you had a problem with something previously, it was most likely fixed, either as a true bug fix, or as part of one of the above overhauls. But as always, any bugs you do find, please let me know so I can fix them.
