Tuesday 13 August 2013

Tuesday Super Building Begins

What Floor Sir?

Today has been a pretty good day, with some cool new functionality demonstrated in the latest raw DarkAI prototype. As some of you DBP coders might know DarkAI uses containers to separate vertical slices of a scene to emulate a 3D environment.

The downside is that these containers cannot be connected together and effectively exist in isolation. My work today was to create a new sub-system to DarkAI which would build and administrate 'container bridge paths' which informed any AI entity where to go in order to cross over to a new container. Typically the scene is divided into about 20 containers, stacked vertically so that the terrain would be container zero, and the first floor of a building would be container one, and so on. For a cave system level, your terrain might be container five, with subterranean levels below.  

The current prototype offers up a new building template that has a door at the ground floor leading to some stairs to level one, and some ladders outside which go all the way to the roof on the third level.  Wish I could show you the screen shot but I am awaiting the professional 'developer art banner' as recommended by Rick.  Maybe tomorrow..

Explosion Floor Smoke

One of the small side projects for this evening will be to mock-up a smoke system that will hide the rather horrid sharp line often see when you place a vertical decal aligned to face the camera as it cuts the floor of the scene. 


It's only an idea of mine right now, but if it works, it should really improve the impression that the explosion we have for Reloaded is more 3D (without resorting to a true 3D particle explosion which would require DX11 and a LOT of graphics card grunt).

State Machine VS Real-Time Planning

I was sent a white paper on the AI system used in FEAR which was quite enlightening, and went about the problem of AI by creating a real-time reasoning system to figure out what AI entities should be doing at any time during the game.  

I see no problem implementing such a system, but it would take months to lay out and test, and that's before adding any in-game behaviors that fit our goals for Reloaded.  As it stands, I am pretty sure what I want to see from the AI at the moment, and have all the animations on standby ready to go in. Before I dive into a whole new approach, I want to complete the current plan and see if my ideas for a new and improved AI system works out.

I already have the AI entities hiding around corners, and navigating around large terrain features, and finding their way around multiple floors of a building. Paul is helping me work on new things such as diving for cover, jumping over low lying obstacles and perhaps a few more small tweaks.

Signing Off

While I wait for these new features to DarkAI, I might side track a little and tie in the current AI behaviors to the character animations so they appear smooth and connected, rather than disjointed and glitchy which can so easily be the case without careful consideration.

11 comments:

  1. A few quick questions. Is there still going to be a willow ninja character. That would be awesome if there is.

    i am very happy with your progress so far. As to the ai. As long as they don't stick fall through floor get stuck in doorways trying to pin point a direct line. Or do a basic walk to you while been shot to pieces I am happy.

    Question about script though. I have a lot of huds of my characters that flash up when near or spotted etc. Will we be able to do that type of thing still? If the ai is none negotiable

    I am still in awe. Just watched the waterfall bond did. Looks awesome. Cant wait. Hope we can do character choice like weapons to certain types and better advancements etc

    ReplyDelete
  2. No Ninja character that I am aware ;) I've decided not to add the 'fall through floor' feature this time, nor the get stuck in walls and walk infinitely through closed door modes, my early AI so far is pretty neat. My guy walks around terrain hills, enters buildings, climbs stairs, can see you on rooftops, and climb ladders to get you. It's great to see already!

    The type of script that pops up HUDs, triggers events and manages in-game variables will all remain for Reloaded and will be a very useful feature for the top FPI coder. The parts I am decoupling from the script system are the stuff you don't really want to script such as move, strafe left, move some more, look, rotate, e.t.c. These commands will still be there, but you won't need them with new directives like 'protect the player', 'get to high ground' and 'can jump through windows' :) Much better than a massive slow script which ever so slightly fails to deliver a professional result.

    Weapon Attributes will be something that gets looked at closely when it comes to the game play nuances, as I want to set up a complex form of 'rock, paper, scissors' that is customization enough that your games will have unique aspects to learn and apply in-game.

    Should be fun!

    ReplyDelete
  3. Hi Lee,

    I will refrain from one of my long posts in favour of a thumbs up and trust in you to give Reloaded some good decent AI which you seem to be on the case with.

    All sounds good to me.

    Personally though a great advocate in support of AI as everyone knows I am realistic in expectation.

    As long as it not an obvious dog of a system I suggest I at least will be happy.

    Thanks for the hard work so far and look forward to seeing some AI in action.

    :-)

    ReplyDelete
  4. dbpro is the real deal.. shame there is nothing bright in future about it.

    ReplyDelete
  5. One thing about FPSC I noticed that was a bit odd (perhaps just with the animations), was when an enemy shoots at you... and you are lower to the ground or higher to the ground, the characters arms and angle of his weapon do not tilt their gun towards you.

    When I make my character models I'll remember to include an animations for tilting the FIRESPOT limb; for shooting upwards and one for shooting downwards. Including tilting heads. Since we have commands to detect if a player is higher up or lower than the enemy.

    Perhaps anyone else working on models for Reloaded should consider these two animations. Its pretty strange seeing an enemy shooting forward and your 3 stories high still getting hit by a character who isnt even pointing a gun up at you.

    ReplyDelete
  6. Yes clearly when playing a game it is disconcerting and looks quite poor and unprofessional when an enemy at a different vertical level to the player say for example at the top of stairs or vice versa looks and aims straight ahead and shoots at the room level above or below the player and does not track the players vertical location at all when targeting the player. Its a fairly killer turn off. There have been AI systems at quite a low level engine standing in the past that have catered to do this right but not that many of them.

    Pie in the Sky's Game Creation System GCS way back around 1995 or there abouts together with the Plugin AI Next was probably the best AI system that has been seen in a lower end indie engine allowing a easy choice of applying in editor AI behaviours to characters of a fairly sophisticated nature providing for a variety of varying behaviors and also provided through the AI next plugin the ability for the game maker to edit the behaviour scripts and save them as new ones.

    On another note : As we will have improved Physics in Reloaded hopefully it will provide us with and Lee will kindly consider adding support to take account of "Flying" entities and with particular regard to enemies. E.G. a helicopter or stinging insect? which again having relevance to the vertical plane they occupy at any time may have some relevance too for the targeting angles.

    Enemies and game play relevant to more than the single level that the player resides upon obviously add quite a lot to a game as it adds a vertical dimension to active and action game play as well as a horizontal one and clearly that adds to the whole experience effectively giving the player a need to give consideration to a 360 degree environment.

    :-)

    ReplyDelete
  7. Some good considerations there, thanks for the refresher! Right now my mind is locked on getting a few features per day coded, and make sure they are robust enough for prime-time. Character arm and head limbs, flying entities and decoupled AI events have now been downloaded into my head. Let's hope it manifests as more features down the road ;)

    ReplyDelete
  8. Thanks for that.

    In a classic level I have a flying robotic disc kind of guard enemy which hurts the player on proximity. Ala Quake style V2 especially the masters of these things where there are a lot of flying enemies of various types it can attack the player from any position not having a path. The only problem is in classic with the physics available it can appear through walls which makes it even more difficult to know where its coming from.

    Flying (objects) can add a lot to game play scenarios as the player can be forced to have some care and stealth and a plan to win and not rush out into empty apparently spaces expecting enemies to be always standing on something solid otherwise you can get caught in a cross fire and hammered. You must be aware of things potentially hiding anywhere around the 360 degrees. High up on a building in any corner or at 6 inches from the ground or even below and behind the player. Sometimes its good to make the player have some caution and use his brains and makes for a greater variety of interesting game play.

    Anyway Yes we understand that getting the core AI is the priority and as said previously anything more is a bonus to making Reloaded and the games made with it even better - long term if need be.

    Someone said yesterday I believe that they would be happy if enemies don't fall through the level, get stuck in objects and so on - the basics and thats a great start being core related issues we would like improved.

    Yes stable core and basic things first that can be build upon further if and when is a good idea and the only way to go. Then my flyer wont hopefully move through walls in Reloaded :-)


    Again I have a helicopter in a level in classic which to keep it short could do with some help for many and perhaps obvious reasons.

    Without a better set of things inside the core, physics, pathfinding and so on obviously there would be no point in adding Flying entity support so putting in place conditions to potentially add such features in later is imperative to do first as you are doing.

    I guess there may be similarly things to consider for those who would like to see for instance dare I say it for adding support for entities other than enemies in the standard sense as characters moving through a level. e.g. Vehicles and or driveable vehicles which I am sure someone will get around to eventually.

    Clearly in an FPS engine the core requirement is FPS character enemies first of the walk around on the ground type or you don't have an FPS engine at all to add anything too.

    Getting AI characters (enemies) is the only priority therefore so I should be quite and let you get on with that.

    Thanks again.

    :-)

    ReplyDelete
  9. Ok
    You mentioned a female ninja on kickstarter that was all. So she gone to another guild.

    Another thing to ask about is moving traps and hurt zones etc and moving squash things they are in the dungeon pack but very dodgey on activation etc. Will you be aiming to make it boobytrap friendly. So indianna Jones traps will be new person friendly. Ie animated slow ceilings coming down etc. Just a thought

    ReplyDelete
  10. Thanks for the reminder ;) Might not be created immediately, but I've added them to Mark's Character List (including our melee wielding willow)!

    ReplyDelete
  11. Fantastic. Look forward to seeing a ninja guild of female's sneaking around the terrain. Them? Is that all kickstarter chas or willow and some traps of lethal cunning. Anyway looking forward to seeing a universe with character walking about. Maybe traders on the road and a pub filled with interesting dudes. My mind is aglow with whirling transient thoughts of reloaded and not stuck in doorways. :)

    ReplyDelete