Monday, April 14, 2014

Raiders: A Lost Art - Prototype 02

Raiders: A Lost Art _Prototype v02
Released 04/13/2014

Download Available through Google Drive: HERE (Roughly 8MB/Zip Format)
----------
After a couple weeks of working out some of the major bugs in Raiders I finally released the second prototype. Unfortunately I had to strip some of the professions menu's, although the initial source code is still there. I simply didn't want to rewrite the crafting professions source code without also converting the inventory system over to work with the player save system. Once this is completed there will be no persistent script anymore and therefore I will be able to create a main menu system.

The process took longer than I wanted, but in the end I rewrote almost all of the scripts from the ground up, a task I felt was necessary for the systems to function properly and efficiently. I stripped thousands of lines of code from the main GUI script, and rewrote the remaining 2000 to utilize methods for every task. All of the characters now run off the same 200 lines of code, and only access the other code when the player calls on it. Not only does this reduce the strain on processing and memory, but it created a much more efficient way for players to interact with their characters without requiring any change confirmations. In prototype 01 you had to confirm every change that you desired to make by hitting a button in a separate menu; in prototype 02, changes are made instantly. I hoped that this would stop players from accidentally canceling changes they were making by pressing a different button before confirming the change.

One of the major discoveries I made while working with the GUI was finding a way to display a characters Health on the battle GUI based on which characters had been placed on the battlefield and in what order. I needed the health to be rendered in correlation to the character's information pane, and also be able to update accordingly. The way it works now is that the system registers which character was just placed, and then adds that characters placed clone as a specific object in an object array. Because the object is added to the array at the same integer location as the button, it is easy to pull the information from the object and have it render in the proper location. Much of this will be changed over time as my GUI improves to utilize character portraits and graphical buttons instead of text-based ones.

The enemy attack was another major discovery for me. Instead of using my normal cooldown timer based attack script that the characters use, I rewrote the AI script from the ground up. The enemy now chooses a target after 3 seconds of the fight starting and then attacks that target 9 seconds later. This process repeats using method invokes every 15 seconds. 3sec -> Target -> 12sec -> Attack -> 18sec -> Target -> 27sec and so on and so forth. The enemy now turns to face its target, and will also follow them as they move around the battlefield. This targeting system works off of a public method, and so a character could interfere with this targeting system and force the enemy to target them specifically. I thought this would make sense for tanks to be able to taunt the enemy, allowing healers to focus on a couple characters if the player was crafty enough.

I certainly made more changes than this and if you are interested in reading any of them you can check the download link provided. It not only includes access to the Raiders prototype 02, but it contains an online changelog where you can see a more detailed breakdown of all the updates the game has undergone this release, as well as any known bugs and a link to a form you can submit any bugs you may find while playing. I also gave a link to the Fusion Bunny Productions email address in case you simply want to leave feedback or have a non-bug related inquiry.

No comments:

Post a Comment