So, for example, in your character screens, you can click on a button to use an ability. It also shows you usable items in your inventory. When you use something from that list, it asks for a target - as it should. Healing spell? Pick your target. As some items can be used on others in your party, it would show that target list each time. I wanted to change it, so that if you were using an item where it taught you a new ability - such as a spell - it would directly be used on your character.
So little things like that. Very small things, that make a good difference.
You can now drop things to delete them. Useful.
You now can't sell items with no value. That'll stop new players accidentally selling Guild Tokens they can useto buy some sweet starting equipment.
And of course creating the spells to fill out the first skill-tree for mages, which was the last one that was a bit lacking. As the mage skills are all unlocks rather than pure skills, I needed to have spells available for each unlocked skill at least. And that of course took longer than I wanted it to.
So, one last run about to make sure things were good. Crash. What? Okay, reload... run about.... Crash. What the hell? So, that started a six hour bug-hunt and then fix for what was going wrong. With fantastic unintended, but delightfully opportunistic results.
It turns out that processing new terrain was causing huge spikes in memory usage. They were very short term, so in the fractions of a second - but if I happened to process a bunch of these at the same time, it apparently was enough for it to crash out. I then did some heavy memory optimization of how that part of the code works. Test fire. Run about. No crashes. One of the other delightful things was that I noticed that some processing was being done at too high a priority - so I knocked that down to a background task, and the framerate was no loner impacted during world-load background tasks. I mean, super technical update.... but I feel like I've achieved a lot in the last few days - and especially this marathon today.

No comments:
Post a Comment