I have completed my senior project course, and am soon moving on to my final semester at Wilmington University. I’ve put together a Trailer of the game for you to check out. I wish I could say I plan on putting more polish on this game for a release, but I just got a job in Baltimore, Maryland. Full time classes and a work schedule won’t leave much time for a side project.
I’ve made a lot of progress, but there’s still more to do. Every time I came to make a new post, I was thinking to myself that “I just need to finish [this] up” or “This doesn’t look quite right yet.” I finally realize, that’s the point of this, to show the process.
Some of the big changes here are graphical. It’s finally starting to look like a game. The models and animations were taken from opengameart.org. I just don’t have the time to do the art I need. Also, they were hurriedly inserted. One of the many things I need to do is change up some code so I take advantage of Unity’s animation event system. It shouldn’t be difficulty, but I have more important things to work on right now.
Something finished after the video was made is the saving and loading feature, and the level select map. They work completely. Saving and loading is something that won’t make it into any web player builds for obvious reasons, but the game was never intended to be made for the web player.
I’ve begun to adopt Unity’s Navmesh and Pathfinder features. The big white blocks in the test level are there to show that off. Right now, the controls of both the player and the enemies use a combination of the two. The result is an effect that makes it look like characters enemies have little control over their own momentum. Additionally, some of the AI isn’t quite as polished as it needs to be. The rangers can get briefly stuck in little loops of ActCowardly() and ActAggresively() if the player is hiding around a corner.
I’m currently getting prepared to start making greybox level designs. Two features I want to add before that are enemy spawn points and friendly NPC interaction.
One question on my mind is, of the 13 acts of the game, how many individual levels do I want? One, two, or three. I need to work on my boss mechanics…
I’ve made several additions, and I’m really excited for this upcoming week. First, I’ll start with the obvious.
Main Menu and Inventory
When the game loads, your prompted with a main menu screen. The background graphics are all temporary and experimental. I really hate the way it turned out so far, but I’m working on other facets of the game right now.
I only put enough effort into the menu scene as to get its core functionality in place. That said, the two options in the main menu are to launch the test level or open the inventory. Crafting is not yet really implemented.
Finally, the GUI itself is called Necromancer. Despite the touch of class it added to the game, the issues I had setting up the GUI was not worth it. Until the next version of Unity’s GUI system comes around, I’ll be using GameObjects and an orthographic camera for any GUI more complicated than a menu.
Music and Sound
Special Abilities and Powers
The back-end code for the player and enemies to use powers that come with the player’s equipment is in place and functioning. A few changes are still in the works, but its working as expected for the most part.
The player now snaps to face enemies in front of him. Gameplay was too slippery before.
There are still a lot of things on the verge of being added, and things I need desperately need to tweak.
The damage mitigation formula is linear. I needs to be exponential with a limit on the amount of damage that can be absorbed by the armor. As it stands, Excellent armor can render the player invincible. Really, the stats in general need an overhaul and some standardization. It will also help make the tool-tips look prettier.
Like in traditional Beat ‘em ups, the enemies will flinch or be stunned when the player hits them. I think this will aid in the feeling that the player can avoid being hit. As it stands, that’s not really possible if the player wants to progress at a decent pace. On the other hand, I may just embrace that and throw it to the winds of my endurance recovery system.
I really want the player to be able to jump onto platforms of multiple heights, but I’m having issues with the CharacterController.isGrounded variable not staying TRUE, despite the player standing still on the ground. Additionally, the controls, as they are, are too slick. It’s too easy to accidentally run off a platform.
With the recent developments in the game, I found it prudent to update the design document. These are just two of the five design documents including the Master document, Art & Sound document, and Technical document. Here it is for your reading pleasure.
I’ve begun to focus my efforts on expanding the interface and inventory system. My work lately has been on the following aspects of the game.
- Random Item Generation
- Inventory Management
I didn’t have much to report in week four, but before I knew it I was all wrapped up in getting ready for the Philly Game Jam and recovering from the cold I got while I was there. A few weeks later, and here I am again. I’ll now report the progress I made before and since the game jam.
Now that my work for the two 3D courses is done with and the Philly Game Jam is behind me, I can redouble my efforts towards only two projects. The first project is my Senior Project. The second is the so far unannounced game my classmates and I are working on to submit to the IGF student showcase.
This weekend, I participated in the Philly Game Jam with two classmates (Jason Morano and Yanni Hajioannou), alongside nine other teams. It was run by the Philladelphia chapter of the IGDA. Three was the minimum number of team members to participate, so we were among the smallest of the groups.
I found this piece of stained glass work. I’m not sure if it’s a physical piece of art or a digital work. I brought it into Photoshop, cleaned up the grouting, and turned it into bump, normal, and diffuse maps.
This project was also an lesson in render time, and how to not use all my computer’s RAM to render a single still image.