One the hardest to do in Game Development is maintain a Dev. Log. One, how you say “replace 500 line of crappy old performing code with 300 line of less crappy code for a mild performance increase” in way that is interesting to the reader. Two, after writing those 300 lines of code for maybe the fifth or sixth time, you sure do not feel like writing about it. Nevertheless, for the sake of accountability, this needs to be done.
Overview
In all honest, there have not be much done on the project to talk about. Most of the change are under the hood. Moreover, while you will be never see them, they will have a major effect on game play and development. First, I made some major changes on how I will be programming the project. Next, I have started working on the AI system while tweaking the character stats system. Finally, I have done a little of the story and game mode development.
Development Style
As stated in a previous blog post, I will not be continuing to use Unity ECS at this level of development. Based on time invest in the development of the ECS based Character Controller, developing using Unity ECS style, writing ECS native coding is not worth the time in the prototyping level of development. From here on out, all code will be wrote using Mono behavior and be rewritten as Unity ECS code if it make the cut to be in the final game.
Work in Progress
Enemy AI
This week I have started with a system I have struggled with in every game I have work on. The dreaded NPC AI. It only of few systems the affect the entire game. A good AI system can make or break an entire game based on how well the system operates.
So far, I have just barely broken the ice on the NPC system. NPCs can move about the map thru a step of waypoints or randomly selection point on the map within radius of the start point. In addition, NPC can detect if the player is within a given area and insight. Once the NPC has seen the player look enough, they will become suspicious and will search the area the player was seen. If the NPC clearly identifies the player, they will start to chase the player.
Finally, I have been rework the character stat system develop by BurgZergAcrade in the Hack and Slash Tutorial and combining it will stat application information based on Final Fantasy XV. Anyone who want to get into Unity3d Development should definitely check out this tut series.
Gameplay Element
Last but certain not less are the new additions to the Gameplay. Project Rebirth is a Hack and Slash Action RPG with magic use that takes place in a modern time period. One of the design problems I have since day one is how you do you tight fast pace hack and slash together with magic. I have been replaying my favorite Hack and Slash games to find some inspiration. Generally to use magic in a video, you have to have menu system where go in and selection the spell you want to use. This is slow and clunky system to use and severely breaks the flow of the game. In addition, unless game speed slows whenever the player open the menu, using magic penalizes the player for usage.
Right now, I have two possible solution, Magic attack map, similar to system used in Remember Me by Capcom and Dontnod Entertainment and Magic system used in Wizard of Legend. In system A, player will select spells to be auto launched after a given attack. This system speed up magic play, it would make comboing and chaining attack more difficult. In addition, a large UI system will is needed.
The second system I have in mind is a combination of the rogue like game Wizard of Legend and Dragon Age games. Each spell will have a specific animation. Player will map the spell to a button. The triggers will be used as modifiers to allow for more magic slot.
