Profile Image

Nir Yomtov

An ever-so-curious Game Developer with a passion for creating polished experiences_
Interested in Gameplay & Graphics Programming, A.I, UI/UX and the way they all tie together to form experiences that leave a lasting impression

Fallout 4 Demake - Half-Life 1 Mod

Download Unavailable

  • C++
  • Hammer Editor
  • Milkshape3D
  • Photoshop
Key Takeaways (What have I learned?)

Working With An Undocumented Codebase

The GoldSrc engine is old and undocumented, with many hidden dependancies and long compile times. When implementing new features, I adopted a positive mindset - breaking things was my path to learning. When something broke in a novel way, I actively chose to become curious instead of frustrated, listened to music as the engine compiled, and eventually got through all of the roadblocks.

Subtitle & Font Drawing System

I created my own Font Drawing system and used it for the subtitle in the game, it utilizes the engine ability to draw sprites, and a sprite sheet of the different characters is being accessed to convert text from Map Editor Entities or C++ classes into subtitles in game.

Overcoming Engine Limitations

The GoldSrc engine is 25 years old and has many limitations, for example it only supports an 8bit format of 256 colors per image, and sprites were meant to be black and white and color controlled by the engine. I used the entire 256 colors pallete for individual colored sprites like the items in the inventory bar and made my own fade in & out effects for UI text such as "Location discovered" or "New Quest" UI messages, the same as they function in Fallout 4.

Dialogue System

I recreated the Fallout 4 dialogue system with a choice wheel branching into multiple branches. I integrated it with Half-Life's file save format, so that you can save your game mid dialogue and return to the same spot. In addition, I implemented the ability to mark a point in a converstaion as important, so if you walk away while talking to an NPC, when you approach them again, the converstaion will continue from that same point.

Created My Own Stimpack Model & Animations

I recreated the stimpack (health item) based on Fallout 2 concept art, and made my own healing animation for injecting it into player's hand based on reference from Fallout 4 gameplay.

Creating New Entities

I learned about how to use Valve's entity system to create new placeable entities and create new gameplay possibilites using the Hammer Editor.

Next Steps (Given the chance, what would I improve?)

Dialogue Editor

Creating dialogue involves using the Hammer Map Editor and placing entities for each choice. Instead I would like to create a visual UI with Python or C++ that helps creates and manages dialogues and quests. Fortunately, the Half-Life 1 map format is text based and you can export/inject entities with ease, so this would be easily doable.

Create More Content & Involve The Community

All of the game's systems are already in place, so I would like to create a vertical slice that represents how all the systems come together - have a few quests with multiple brancing outcomes and some cinematic set pieces to release this to the modding community and have them take over.