Ryan Feltrin part-1
Demo Release
A: Ryan Feltrin (A.I. and effects programming)
Q: Kunfu
Q: When and how did you get hooked up with Xatrix? I'm guessing it was through your Eraser bot work.
A: I started working for Xatrix towards the end of their work on the mission pack. My first task was to R&D new Kingpin tech, and produce a navigational system for general use.
My Eraser work was obviously a big factor. Although having built up a track record of sticking with projects through to the end was probably a big factor.
Q: Hows does your Eraser AI differ from Kingpins AI? Does Kingpin use the way point method? I mean do they have completely seperate ways of doing things?
A: The Eraser is in essence a totally different product, from both a gameplay and a technical standpoint. 'Bot' type AI and single-player character AI have totally different implementations, right from design through to the end behaviour.
Kingpin uses a hybrid of a node/waypoint and an area description method. In a similar way to that which Quake2 uses BSP as it's basis for rendering, but uses Portals to enhance that system, I adopted a similar approach to navigation. Navigational data is still collected from within the game, but it samples the environment as well as monitoring movements. So when an AI character wants to go somewhere, they can either look around to them to see how they should go about it, or if the information for that area is available in the navigational structures, it'll use that to do things much faster. It does the job, keeps dev time down, and game speed up.
Kingpin's AI is very interactive, and I've tried to make it as realistic as possible, whilst keeping it fun. The most obvious area of interactivity is the talking system. You basically have positive and negative talk keys, which will effect the way the character's relate to you. If you start talking trash from the start, then it's going to be tough from then on to re-gain that character's respect, and therefore getting information from them, or getting them to help you knock someone off will be tough (ie. it might cost you more).
In terms of the tactical AI, this is still evolving, but once again it is extremely different to the "run to closest weapon, kill or collect anything you can" type Bot AI. Most characters in Kingpin are just standing around talking, guarding a position or something before you get to them. So it's like you walk into this world where you are just another character roaming the streets. You could just join the others and spend your time chatting if you'd like. You might make some great friends, but obviously that's not what you'll have paid to see or do.
To get the ball rolling, you start with a lead pipe, and by walking around and collecting bits of information from the various characters, you'll find that there are ways of building up your arsenal, which gives you a much higher chance of getting out of the hell-hole that is Skidrow.
That just gives you an idea of the sorts of work we've put into creating a highly interactive AI sub-system. Ontop of that lies an intricate network of tactical routines, which allow AI characters to hide/retreat, find better positions to attack from, ducking and popping out from behind corners, running off to get backup, etc.
Q: Can you tells us about the 'moral' rating the characters have? How does this work?
A: The moral levels determine how each character reacts in these hide/retreat, get backup, etc scenarios. A character with a higher moral (shall we say, psychotic) is less likely to get scared at the first sound of gunfire and run away. That's not to say he'll just stand there and let you pump him full of lead, but if you see him flee, he's most likely found a better way of wiping you out.
Q: How do the characters interact with the player? Is it limited like Half-life?
A: Well, it's definately not unlimited, but the interactivety is definately at such a level that it's a big part of the game. You can start a fight just by saying the wrong thing about a certain bad-asses mother. In some cases just getting in someone's face for too long is enough to start hostilities.
Q: Is there any possabilty of seeing DM bots straight outta the box? If not, what about later in a patch?
A: This is something we'll have to look at down the line. It is such a huge task, that it would need to be really justified in order to spend several months developing them. As has been mentioned several times before, single player games these days require a huge amount of effort in order to be competitive, so maintaining a high level of single player and multiplayer gaming requires large teams and a fat budget. Right now we're doing the best we can to make the single player experience as good as it can be, without totally ignoring the multiplayer aspect. Bots is something that we'd look at adding once the multiplayer (human vs human) side of things was done and looking as cool as we're expecting it to be.
Q: How complete is the AI be in the demo? Has it been cut down in anyway?
A: The AI in the demo will be fundamentally complete for the content at that time. There may still be more scripted events and tweaks to various aspects as a result of user feedback, and more time to playtest the game, but I think you'll find it does the job, and gives you an indication of things to expect.
Q: Your also doing the effects programming too. What cool effects wizardry have you got up your sleeve?
A: Probably the best effects so far would be the Flamethrower and the Rocket/Grenade Explosions & Fireworks. Setting people onfire is a very rewarding experience also.
Some of the things I've added so-far include:
- Marking/Charring of BSP surfaces. So when a rocket explodes in a corner, all surfaces around the impact point have a charred look. Note that this doesn't use any sprites, or decals, so the speed loss is nil.
- Guarad Shading of characters. We've all seen this in the shots.
- New model format, so that characters are split into many parts, for more accurate hit-detection and pain skins. Also allows us to turn on/off individual parts of a model.
This was developed in conjunction with Rafael Paiz (Lead Programmer) and Barry Dempsey (3D Art Direction/Supervisor). - Specular Highlights on BSP surfaces. A subtle effect, but looks great in real-time. Note that this most likely will not be functional until after the demo release.
- Real-time (dynamic) sound reverb.
- Vehicles. Currently only the motorcycle and jetpack are being used. In terms of the motorcycle, think of MotoRacer with weapons.
Q: Can you explain what 'Procedural smoke and fire effects' are?
A: This is just the way of describing an effect created by generating a smoke or fire animation in real-time. The end result is you cut-down the texture memory used, and reduce the repititous look of animated textures.
Q:. Is there anything else you'd like to add?
A: I hope you enjoy the demo, as much as we enjoyed making it.