Mods
On ocasion I create mods for other games, mostly games I am a fan of personally that may have some degree of mod support. I use this chance to try to expand my skillst and learn new aspects of the industy first hand.
Some examples:
One of my first mods for the game Volcanoids, the Breaching Fist.
inspired by fallout’s power fist I wanted to try to bring into the game the idea of a powerful gauntlet, giving the player an altertative they could use to punch into drillships and other tougher targets. This also gave me a chance to try out animating a weapon for the first time.
First and formost when creating or contributing to any project the first step is to make sure that it can fit within established style and mechanics.
While the power fist works within the open world rpg world of fallout, some changes need to be made to translate it mechaincally into a different game as well as take into consideration its spot in the overall design.
First and foremost is how its obtained, used and kept functional. So as to adapt it to the other roster of weapons I made sure to make it so it required ammuniton.
This limitied its use to the player’s inventory space and balanced it against other tools that could do the same. Overall the damage ouput per inventory slot is less than others though more inmediate. In contrast to other tools though this one requires a wind up, maintaining the other melee options and the shotgun as the primary close combat tools for smaller enemies but outpacing them when its time to deal with larger threats.
I proposed and alternative to this, creating a different intro borrowing heavily from Fear and Hunger 2 Termina. In that scene the avatar of god explains to the character that you control their role in the events that are to follow.
Given the similar themes and contest that the main character in our game is forced to take part in, narratively it made a lot of sense for the main character to encounter a similar fate.
The result of this was a visually striking intro that resonated with the development team. The structure of this intro was made to place the player into the universe with as little dialogue as possible.
The events go as follows:
The player awakes on a tower surrounded by mist, they are told the controls but not given any directions or objectives. This places the player into the shoes of the protagonist, able to move but not understanding where or what they are currently doing.
Being surrounded by an unnatural fog and floating pieces of debris tells the player that wherever they are it is not a place in reality. They are allowed to explore and look around but can’t descend the tower.
The god then rises from the fog, showing themselves to the player and explaining to them why they are cursed to wander this dimension. Offering salvation if they pass their trials and opening a way out by bending the floating debris into a bridge for the player.
This allows the game to show 3 things at once: It showcases that the god comes from the fog demonstrating that it is as unknowable as the things the player can’t see within the depths of the fog.
The god’s speech contextualizes the main character’s journey as one of forced redemption a concept easy to understand by the players.
As the god bends the debris to their will it shows their control over the place they inhabit as well as show the goal for the player, the various mirrors found in the world.
Overall this was a hit with both players and the other members of the development team.
Some examples of minor tasks performed there:
Predictable heart attacks:
Within Dream Of Darkness one of the obstacles the player can encounter are floating hearts that once activated move around the scenario.
I had not interacted with them until our lead designer asked us to create a warning system for them. This was not that difficult, and since I had some extra time, I decided to look at other aspects of them that might need further work.
One of the issues with hearts was that the player was unable to predict where they would move to. This obstacle would kill the player if they touched it, but it was difficult to establish a pattern to the heart's movements.
To solve the issue, I learned how the plugin for their path worked and changed their code a bit to move their trails in front of the heart, acting as a marker for their direction.
My Lead’s reaction:
Bug hunting:
In this occasion, a programmer I worked with asked if I could look into a bug that eluded him. Apparently, if reloaded from a checkpoint (A system I made) the hearts would not kill a player.
I assumed that this would be my mistake and began by trying to find any possible errors within my code. After some testing, it seemed to work fine. The only option then was to do some digging in his code to try to find any possible hiccups in what he created. There was a conditional that fired incorrectly, this being inTutorial.
I then tried to find where that variable was changed, but the function had no references (It was not used within the code). It was used within a game event listener. This game event listener was not referenced within the script made to link the checkpoint system and his own.
I communicated this to him with some of the images you have seen and the bug was addressed in the next two days.