Rest In Peace Cockroach, I knew you well...

I wouldn't recommend taking a dive down there - nasty.

Dangerous florescent liquids, my favorite!

Hi all!If you’re reading this then that means you are to some extent interested in the development of Tripmine’s two projects; Operation Black Mesa and Guard Duty! You may have noticed over the last few months some of our devs have been writing up about the work they are doing; from level designing and revamping environments, to the intricacies of creating props to fill the world with. This blog, however, as you may have guessed by the title, is about the implementation of new features, mechanics, and other miscellaneous tasks that come by the programming and engine development department. Before we get into all of that though, allow me to introduce myself.My name is Chris, although you may know me better (especially if you’re in the Portal community) by Tmast98. Working on passion projects and mods for the Source Engine is a long-time hobby of mine! Having worked as a level designer for previous projects, this was the role which I joined the team under, although as of late I have been working more heavily on the engine side of our two game’s development. I am currently getting an education in game programming and design at DigiPen Institute of Technology (also the school where some of the devs for Portal and Portal 2 came from as a fun fact). I joined Tripmine a year ago as of today, so while I'm not the longest standing member of the team, I have been around a bit.Now with introductions aside, let’s get into the meat of why you are here! This past month many of our team members have been working around the clock to try to get at least one new feature, asset, or mechanic implemented each day. Sort of a “May Madness” if you will. It would be a safe bet that due to how many time zones our developers are in that at any point in time there is at least one of us at work on the two games.From minor things like special decals plastered on the floor when you step on a cockroach instead of shooting it, to maximizing the use of the Source Engine’s often underutilized dynamic lighting system and implementing all new visual effects not seen in previous games or mods, the work can seem never-ending.When starting on a new feature, extending visual effects, or creating AI for the NPCs which roam Black Mesa’s halls, the process is fairly consistent. Whether in your head or another developer's, there is always a vision of what the final product of some aspect of the game should be. Starting with basic implementation to get a "bad but working" version of the feature working, it slowly progresses through our pipeline to receive polish from all the necessary disciplines within the team, evolving to create a full-fledged game ready feature, with bugs and oddities getting sorted out along the way. For our purposes, I will talk about the extended water effects we have added.Speaking with a level designer I was discussing what I could do to make their maps look even better through graphical effects, improved feedback, or any other things they could think of. After putting our minds together, we both agreed that the water effects of the engine are beginning to get a little dated. After looking through a few games to get references on the visual effects other games pull off we decided to go ahead and add dynamic motion blur and distortion while underwater, alongside a screen space effect of water in one’s eyes when rising out of any pool of water within either game. While the designer got to work on creating the textures needed to pull off the effects, I started working on actually implementing the interface into the source engine to allow for the effects he was creating to be displayed properly. After a late night staying up and working on this feature, it was implemented and ready to go for all maps to benefit off of.That is the type of work I like doing the most; work that positively impacts as many of the maps as possible. While there are things that need to be implemented to only support a single map such as bosses, to me the more rewarding things to create are those which make the project shine in the most places. Although a lot of the features added are minor enhancements, they begin to build up and create an entirely new work environment for our level designers, artists, and sound designers to work within. Another example of this would be the recently improved HEV chargers created for both Operation Black Mesa and Guard Duty.Again, this was the case of discussing with another developer what they felt could be enhanced or tweaked in order to enhance their maps and make the game feel all the bit more “unique”. While I went to work implementing the features requested by the designer (such as toggling skins, having dynamic lighting which would affect the view model and nearby world space, and some specific features needed for the Guard Duty maps), the designer went about creating an entirely new model which was a huge visual improvement from the previous iteration. With the newly implemented features and graphical improvements from the engine side, the brand new and highly detailed model, and the implementation of one of our sound designers audio clips, a significantly improved HEV charger was born, with dynamic lighting to boot!And that goes into one of the best parts of developing for Tripmine. We have a uniqueness in that all of our developers are proficient in not just one trade. From me being a level designer, programmer, and visual effects artist, to another team member being a 3D artist, weapons animator, and level designer; every team member can lend their skills in departments all across the board.Although these were simple additions to the game (don’t want to spoil all of our new stuff before we release!) I hope this blog allowed you some of the insight to my work as a programmer on these projects and team dynamics overall.Until next time,Chris “Tmast” Onorati