Yeah it has been a long week. Sigh.
Character model is setup, just have a few animations that need to be tweaked to get things finalized. Here's a brief overview of what the character model / script is capable of (at least at this point). All of these are going to be available as 3ds max / bip files / fbx models and are implemented in the script as of this writing. A few other details are waiting to be implemented in the script as well, which I'll explain below.
(if you are interested, I've described these in a bit more detail as I was working on them over at
www.combatspecops.com and am providing ongoing development notes as I work on additional features / functionality)
1) complete separation of lower body / upper body animations / motions. This means that you have a single set of idle / walk / run motions for lower body and the weapon / no-weapon motions for upper body are handled seperately.
2) stand / crouch / prone animation trees, with seperate lower / upper body motions for stand / crouch poses. prone is the simplest currently and is a full body motion for the most part.
3) look up-down / lean left-right motion blending - characters in 3rd (and first) person will point their weapons where they are looking, and can lean left / right as desired, similar to many fps type games. Still have to tweak the camera when leaning, but the core functionality is done.
4) unique camera positions / targets when crouching / prone & standing - so as you change stances, the camera adjusts positions
5) possibility of unique camera angles on a per-weapon basis - want to force the player into first person for a specific weapon? no problems. force them to 3rd person for another? no problems. The complete set of character camera controller settings properties are available and can be overriden for each weapon and when unarmed.
6) ladder support - full ladder support is implemented and super easy to use. characters can optionally hide their weapons when they get onto ladders, and re-equip them when they get to the top, that type of thing (for more realistic type of games).
7) jump / fall / fall hard motions - the animations I have currently are kinda sucky, but i'm working on some improved ones. If you fall for from too high, the character will do a dive roll landing, that type of thing. I don't have fall damage implemented yet, but that's easy enough to add and will be done at some point.
8) flashlights - the light can be located either in the player opr or on a per-weapon basis. the weapon-based ones are the cooler of the two, and move / animate with the weapon as it moves.
9) droppable weapons - weapons can be picked up / dropped and remember how much ammo they had when you dropped them
10) hide / put away weapons - currently C:SO has some stealthy / splinter cell style gameplay elements, so having the ability to put your weapons away was required. Switching / stowing weapons changes the camera controller as well, so the game can switch from the 'free look' camera view to an over the shoulder view as desired (for example).
11) dynamic DOF - the weapons script can also manipulate the depth of field filter based on what the character is looking at as well. This is still a work in progress (as is the DoF filter itself), but it's a starting point at least and hopefully will demonstrate the fundamentals of how you can implement scripts that manipulate the filters in realtime.
12) sprite-based names - characters can have a name displayed above their head, which is useful for many types of games. This goes for both the player character as well as any AI characters that you might have in your game.
---------------
All of these things are both optional and configurable - so you can customize how you want the character system and gameplay for your game to behave .
---------------
some things that still remain to be done:
1) grenades - throwing grenades is a multi-step animation / motion tree that requires a few unique / seperate motions. It's on my list to do, hopefully will have it done soon (since the game needs it ;)
2) seperate motions for single handed weapons like pistols - currently the animations are pretty exclusively 2-handed weapons (rifles etc). Hopefully once I explain how to setup the motions this would be easy enough to figure out though.
3) enabling / disabling filters on the fly (night vision / etc)
4) dynamic motions (go from running to crouching and do a power slide, dive rolls, that type of thing). These are more game-specific though, but will be exposed in a generic fashion like all of the above is.
5) better animations / another pass - my first focus has been simply getting the core fundamentals implemented and functional. Phase 2 is doing another pass to improve the animations themselves. I'll more than likely continue to provide updated BIP libraries of animations for everyone as things progress though (and definitely will have updated FBX versions) for those that will be interested in updating their animations as things continue along.
-----------------
My current project is working on the AI for a project I'm finishing up, so there may be a few other character script enhancements that I'll have implemented shortly as well that are AI-specific (taunts / various other similar things), but this is very much in the preliminary stage.
Using the simple bad guy controller and the character script, I have gameplay in the works with upwards of 100 badguys active at one time running at very reasonable / framerates - so even though the character script and system are becoming more complex, feature-wise, performance is holding up nicely as well.
The AI controller and character script are also fully integrated into the traffic manager now as well, so you can use the traffic system to control / manage the spawning of enemies in your maps - which can make for some exciting / random ai behaviors. Instead of manually placing enemies, simply let the engine handle the randomness and every single time you play the game, things will be different.
The project I'm working on as well has a seperate 'director' script that controls where the AI get spawned and can dynamically adjust spawning locations on the fly as well, so you can control where / how the gameplay flow progresses. It's pretty cool ;}
So yeah. lots of stuff in the works, and all of it will be in your hands very, very soon.