Alright, some stuff are getting final, giving me some time to do other things. (Rather than level design)
I will try from now on to post progress news more frequently, it's just not really my style, I prefer to choose very carefully what to release to the public than releasing any new thing that is being worked on.
Anyhow before I proceed to explain what's new with the mod, I'd like to explain why it has been delayed.
About 6 months ago a "Programmer" (who shall not be named) contacted me offering help, he had a very impressive portfolio and really seem to know what he was doing.
We have kept in touch during all this time and he had assured me that he would get to work on the features I had designed.
See, I designed programming features in a very detailed way, giving even ideas on how to proceed to implement the code, therefore facilitating the programmer's work, and this person appeared to be really confident that it would be done.
Time passed and, as I am pretty much the only person developing the MOD, managing 12 voice actors, a prop modeler, a music composer, while developing huge levels and beta testing can be very difficult.
So yeah I admit I might not have really kept close contact with him, but we talked at least once a week.
Anyhow, this programmer disappeared about a month ago, very luckily another Programmer who shall be named : Carlos "Charly" Sotelo, had contacted me to help me develop Underhell.
After I rejected his offer at first, since I still had hopes for the first programmer, I ultimately began working with him, starting from scratch, and I haven't been disappointed.
During the first 3 weeks, we have fixed numerous source engine glitches:
- Fixed the Sound code to allow sounds to stop/pause/resume/loop properly, allowing for a very flexible sound and music system.
- Added Dynamic RTT shadows, an improvement provided by Saul Rennison
- Fixed the env_projectedtexture's shadows, allowing more than one projected texture to be cast at once
- Fixed a glitch related to viewcontrols/teleporters that would get the wrong angles if player was teleported while a viewcontrol was active
- Implemented a simple Input system to various logic_entities, allowing multiple uses for each, instead of having to create one entity per value (env_message, env_global, env_hudhint)
- This fix removed around 200 entities from The House, allowing me to add new features.
- Added an "OnStopLooking" output to the trigger_look, this way the game can tell when the player starts looking at something, and also when he STOPS looking, which will be VERY practical for scare events.
- Increased the duration of the flares, and duplicated the entity to use for GlowSticks.
- The GlowStick light color changes according to the color of the skin, and it emits less light than the flare, but for twice the duration. Glowsticks do not ignite enemies on fire, while flares do.
- Added "skin" keyvalues and "model" keyvalues to various NPCs, allowing me to use multiple models/skins for one same NPC.
- Added multiple skins to the npc_citizen, and if one of the "Random heads" flags is checked, the skin is also randomized, therefore citizens have about a hundred different combinations of faces/clothing.
These fixes/implementations were done very quickly and allowed me to fix and optimize numerous levels; then we have begun adding new features (and the real fun began)
With some guidance from Hen, GuessMyName and eXeC (NightmareHouse 2 staff) I was able to implement bodygroups on main enemy models, and thanks to a very close modeling/programming collaboration between Charly and me, we were able to implement a very advanced Randomized Bodygroups and dismemberment system:
The model used in the screenshots above is the same, just with different variations of bodygroups/skin. These changes are not JUST visual, they also affect gameplay, where the Armor Type changes the enemy's resistance to damage in that area, and where the Helmet can be shot off, saving the enemy from a fatal headshot. Said helmet can later be picked up by the player, increasing his current armor state, therefore creating a dynamic item recovery bonus, if the player headshots the enemy. The head hitbox has been split into 2, allowing for a very accurate "helmet" or "face" bullet detection.
Every limb can be severed (arms and legs), the helmet can be shot off, and the head can be "blown off".
No need rolling heads for now, unless I had a machete...Mhm...
Some rare times, shooting arms off an enemy will not instantly kill him, but will make him drop his current weapon, and he might start running away from the action. Armless. YUMMY!
Blood and Ragdolls
While attempting to re-create many features from the SMOD, I do not intend to just "remake" SMOD, but to improve it and tailor it for the Game's purpose.
Therefore we have implemented a very realistic blood/ragdoll system, where each ragdoll is serverside and can be shot again (and even dismembered further), the player can also pick up limbs or body parts, and drag them around, creating a different a brand new "blood drop" decal type, which differs from the actual "blood hit" decal type. Sweet
Since the ragdolls are now actual entities, we are working on implementing an AI Detection system, so that Soldiers can "Detect" their fallen team mates, become alert, and investigate the area.
For optimization purposes, the game has a limit to the number of server side ragdoll, that will convert the oldest created ragdoll to client side if there are too many within the level.
Next on the To Do list, is to add a headshot effect that would create a parented tiny "gib" model to the head of the victim, therefore creating an illusion of a "deformed head"
Such a similar system was used in Red Dead Redemption, and I must say the effect is very convincing.
We are currently polishing/improving various similar systems and features, and will soon begin a whole new aspect of the code, that I won't reveal yet.
The use of the Orange Box allows for very advanced yet cheap to render particles effect.
Zoey Artyom, a very talented particle creator has re-created all Bullet Impact particles and Blood Particles, adding more "debris, sparks and smoke" for an overall more hectic effect during gunplay.
I made a vomiting particle effect, for when enemies would get their arms blown off, but it was buggy
Some of the particles also use a vector color replacement to use the color of the surface being shot, for enemies, it creates bits of "clothing" debris when they are shot, along with flesh debris and other effects.
Similar to SMOD, shooting a wall continuously will create thicker and thicker smoke particles, but where SMOD used a heavy particle system, we used the built in particle editor, which is much cheaper and effective.
Not only I have been hard at work on getting these models together (original models by valve), but a very good friend and famous modeler named Progsys (famous for his contributions on gamingmodels.de) has also accepted to work as a prop/weapon modeler for the mod. Yay!
While I would have wanted to remake every weapon so that each would be original, such an amount of work would take a very long time, therefore we have agreed to only remake weapons we weren't satisfied with, but we did agree on re-animating every weapon of the game, and creating new special animation types that will be implemented for special gameplay mechanics.
Seriously, a guy wanted to charge me 1000 bucks to remake all weapons...I would've paid if I could, but this is a mod not an indie game.
One of such is the "raising weapon" animation, that will play when the player gets too close to an obstacle, therefore blocking his ability to fire. Adds a lot of body awareness, it's pretty cool.
You can expect a few other surprises weapon wise, needless to say implementing all this will take some time, but since I won't be the one doing it, I can also focus on other things during that time.
Oh boy this is getting heavy (in a good way). The game has reached 2500 lines, and some lines for the ending of the Chapter are still missing, needless to say that this is a lot of talking, I can't even start to express how grateful I am to all the voice actors I have worked with (and am still working with) these guys are freaking awesome, and I hope you will enjoy their performance while playing the game.
Here's the cast (May change before release)
ARC Speakers: Danielle Mcrae <------------------------- Announcer in NH2, she's incredible
Benjamin : Joseph Bracken
Brandon : Brandon McKagan <----------------- His real name is the same as his character name...Funny?
Bryan : Tom Stoffel <------------------------------- Yes, it's the Music Composer...
Carl : Brandon Tran <---------------------------Seriously? Another Brandon?
Corporal : David Kingery <---------------------------- DR.Romero from NH2
Eric : Ian Wiese <-------------------------------- This guy is everywhere, and with good reason too.
Frank : General Trivium
Hector : Nathan Mubasher
Hermit : Tom Stoffel <------------------------------------------ My fav character in the game.
Inmates : Brandon Tran/Stig Finsen Sydtangen/Ian Wiese
Ito : Nathan Mubasher
Junior : Tom Stoffel
Malcolm : Phillip Marlowe <------------------------------------------ PlanetPhillip.com, anyone?
Matthew : Tassilo Egloffstein
Micheal : Joseph Bracken
News Reporter : Danielle Mcrae
Nurse : Danielle Mcrae
Soldiers : Brandon Tran/Stig Finsen Sydtangen/Ian Wiese/Nathan Mubasher/Mxthe
Survivors/Hostages/Cops/Swat : Brandon Tran/Stig Finsen Sydtangen/Danielle Mcrae/Mxthe
Terrance Mason : Joseph Bracken <------------------------- That's the waiting is hard guy
Thomas Hawkfield : Joseph Bracken <---------------------- Family name look familiar?
Todd : David Kingery
Tyronne : Nathan Mubasher
Warden : Nathan Mubasher
Still no date, but if thing keep going as they are, we will have a stable "Alpha" build of the engine sometime this month. From there it's only a matter of days/weeks until release. I just don't want to say any date yet, cause the pressure of a deadline can conflict with the quality of the work.
Thanks to all for your patience, I hope you have enjoyed reading this wall of text...