This project has helped me learn more and more about not only game design but properly making use of prebuilt assets, with rigging, texturing and guiding user experience. I have also published the game on itch.io.
https://crosstar.itch.io/monster
walkthrough
My show reel for this will have been uploaded in my show reels tab.
The people who have played it so far enjoy it a lot and I hope that that continues with any others who decide to play it.
This week was spent implementing more of the narrative elements of my game and a shader to help evoke that ‘older’ game aesthetic I am trying to use. I got the code of the shader from https://godotshaders.com/shader/vhs-and-crt-monitor-effect/. As shaders are something I have interest in in future I’d like to research to build my own but currently I do not have the time.
For the narrative elements I made four different ‘title card’ style images that would be shown to the player before starting the game, when they quit the game, when they defeat the creature and when the creature defeats them.
Monster DefeatedMonster WonQuittingStart
I also worked on adding sound to the game which was mostly comprised off copyright free swishes and nature sounds that I retrieved off of Youtube and edited them in Premiere Pro. I still need to implement a player injured noise and a creature injured noise to help with feedback to the player. I also had some classmates play the game and from that worked on some AI pathfinding bugs that they discovered and exploited.
As I had gotten a lot done for the group project last week this week I was capable of spending a majority of my time on my personal project and have made significant progress! This week I have managed to:
Texture my weapon and my creature
Add a sleeping and wake up animation to the creature
Add hit flash so there is visual feedback on striking it
When the creature attacks it stops moving to give player’s time to reposition
Used assets to make the arena more visually appear like a forest
Re-adjust lighting to make a more evocative atmosphere
Overall the progress this week in my personal project has made me very happy and given me hope that I will be able to add some of the original narrative I had planned to the game that I had thought I would no longer have the time to implement it!
The most difficult part of this week was the creature animations as I am still getting used to understanding the tools at my disposal in Godot and on occasion ended up causing issues for myself by overwriting reset points which messed up all my previously made animations. I was able to quickly identify and solve the issue!
This week was a major leap forward in my project! Having concluded with my animations that I needed for my game and finished implementation of a game over, winner and retry functionality! With all that implemented it is at this point a fully functioning video game! Getting this far has certainly made me quite proud! The implementation of everything is…not the best. Lots of repeated code, variables needing to be updated in multiple places so in regards to its coding it could be improved and refactorized significantly. However as this is not the focus of my personal project it is not something I think I will be doing, at least for the foreseeable future. I also managed to implement a basic AI for the enemy to seek the player out and attack them! I met and exceeded my expectations for this week!
I had some struggles implementing the game over screens as after their implementation the mouse movement no longer functioned. After some research online though I discovered that when implementing a 2D screen on a 3D environment in the way I had done it would result in the mouse inputs being ignored. Luckily the same thing that told me that issue told me there was just a simple variable in the settings of the 2D nodes to change and then everything worked out fine! Next week I will spend it implementing some polish like texturing the models I have made and adding a hit flash so the player is more aware of when they make contact with the enemy.
For this week I had two goals in mind. Complete the player’s health system so I could actually have the player lose the game and make the attack and walking cycle of the enemy that I have. This did not work out necessarily in the way I had hoped. While I did get an HP system and a walk cycle I have not yet implemented an attack animation for the creature. I still in future need to sort out the UVs and texture the weapon and the monster. I have however developed a hurt box that when it interacts with the player will take HP away from them and tested it to function properly to detect a player’s death. I am very close to having a function prototype for the game!
Next week I need to make the attack animation and implement a basic AI for the monster to seek out and attack the player!
After last week where I spent it modelling a sword and implementing other systems this week was spent solely on developing the ‘final boss’ enemy of my game. Starting off with a base cat model that maya includes I modified it to get closer to a reference image I am using for the creature.
https://www.pinterest.com/pin/287737863680951214/
After making the model and creating a mouth on it the next major step was sorting out it’s rigging and painting the weights. This was a decently relaxing process as painting weights is simple and directly relevant. With it I was able to rig the model up and import it into Godot where I could now, when I choose to, animate it! With that in place next week should be spent getting a health system for the player sorted alongside the ability for enemies to damage the player. If time is there I can also start on its AI.
This week I had originally planned to model the sword the player would use and begin modelling the final boss enemy as I would want to as quickly as possible see about rigging it and see how that would transfer properly into Godot however other commitments prevented me from doing so. While I was able to create and implement the sword.
Sticking with the idea of emulating the older ‘retro’ aspects of the game I have stuck with a very simple model in terms of topology. Though I have made it a bit more complex than needed by adding damaged portions directly onto the model which I will emphasize later with texture work.
This week I actually began development on my game, following various tutorials online and things I have left over I have set up the basic bones of the player’s gameplay implementing movement, aiming and sword swinging. Alongside that I have implemented hit detection for the player’s weapon so when they strike it registers as hitting the enemy.
Gameplay showcase
The enemy hits can be seen below where it merely prints out a text that the enemy has been struck.
As can be seen the world is currently just a test ground in order to properly test out the currently implemented features. By next week I would want to have set up HP for both the player and the enemy and implement killing an enemy and the player, IE implementation of simple combat AI. Afterwards would be focusing on the development of a sword and enemy model with rigging and animation.
An example of the current script work in the game. Currently only the player is scripted.
While so far things are going quite well since there are plenty of tutorials online for Godot I do have to speed up my development a bit to properly anticipate any issues with the porting of Maya to Godot that could occur and leave myself room for improvement.
My personal project that I wish to develop this semester is a small game. After the collaborative project last semester I felt a real joy in creating an interactive experience that my fellow students also seemed to really have fun with playing after it was done.
My idea for this game is to make a small ‘combat’ game where you fight a boss creature and upon its defeat you win the game. The boss will be difficult so if you struggle to beat it you can opt to fight 4 smaller minibosses that are in the area to defeat and gain upgrades to make the boss fight easier. To give a better idea of the layout of the game I made this mock up of the map.
We had to present our projects to our classmates so I made a power point presentation
My plan is to focus on creating the boss models, rigging and animation as that’s a field I’d like to explore more and develop into a career as I think I’d like to take my skills into the games industry. As I have already developed a game following my chosen engine’s, godot, provided tutorial I already have a good idea of what my plan is.
I will first build the basic game structure. As its a first person game I do not need to worry about creating a player model. So next week I will focus on the implementation of player movement and player attack. Afterwards on creating monster AI and attack. Once I have the boss and and player attacks handled with death and respawn I will create the models.