Hey! Due to vacation, it's been a few weeks since I've last posted anything. Time to change that! First, I'll start with some lesser features I've coded in:
- Caption background. Whenever a character talks, there is now a background behind the text making it easier to read.
- Sturdier creatures. You can push entities, and they can push you.
- DrawStringBordered method. Yea, I stopped using that. This was required for me to draw a colored border around text. Now that I have my own bordered fonts drawn (bitmap font style), I've made the change over. This gives a decent performance enhancement.
- Flickering lights. Animations are now smoother.
- Open soulgates. Any player-controlled creature can make use of a soulgate.
Like the other interfaces, this one behaves similarly. All items in your inventory that can be upgrades will appear here, and each one has a level. Each level has an ingredient requirement which will vary from item to item. Additionally, you can restore an item to it's previous state. This cannot be undone, and you won't get back the materials you used to improve the item.
I made some small but important improvements to pathfinding over the last few weeks. The biggest one is connected components. Basically, the algorithm searches through the map and finds areas that do not connect, then marks each section with a number. Suppose a creature decides to go to location X from location Y, but both areas are not blocked off! Without connected components, the pathfinder would search all tiles until there are no more to search then let the program know that no path was found. This is inefficient, and I've noticed a very visible lag. Instead, connected components comes to the rescue. Location X's section number is compared to Location Y's section number. If they match, a valid path can be found and vice versa.
Additionally, the path will not be completed if the character has not made any progress in three seconds. This should help with some doors that close.
Game Launcher Progress
For now, this will be for alpha testers. I don't know if I can make this work well with Steam, Humble Bundle, GOG, or Itch.io -- primarily for downloading the game files. The picture says a lot of what I have coded in so far. Changelog is downloaded from my website on program start. You can also download selected versions here, making it more convenient for you to update the game. The small selection box just above "Launch Game" is for selecting the downloaded version you wish to play.
Well, that's all I have for today. I'll see what I plan to do next! Still plenty of work to do, just gotta get back in the rhythm.
From Enckling, with love.