Jump to content
The Dark Mod Forums

Alarm: If and how?


Obsttorte

Evidence -> Alarm  

13 members have voted

  1. 1. How should AI react to minor evidences in respect to raising an alarm?

    • Count them and raise alarm if enough.
      2
    • Use weights.
      10
    • Choose randomly depending on specific evidence.
      0
    • Never raise an alarm because of minor evidences.
      1
    • I have another idea.
      0


Recommended Posts

Hi everyone.

 

I'm currently working on implementing the feature of ai raising an alarm. This means, if the is a sound_alarm entity in the map, the ai will run to the next alarm button to raise the alarm under specific circumstances.

 

At the current state civilians raise the alarm if:

  • They encounter an enemy
  • they get hit by a projectile (armed ai do this, too, if health drops below critical value)
  • if finding a dead body

However, there may be other cases in which you would expect an ai to raise the alarm. Something one can think of is, that ai becomes more and more suspicious when finding evidence of intruders, like missing loot, blood, unconscious persons or whatever. The question is how to handle this.

  1. Just count them. If the number of evidences is higher then a specific value, go raise the alarm.
  2. Weight the different events, so that an unconscious body pushes the ai more towards alarm raising then an open door. If the sum of the weights of the evidences reaches a certain value, raise the alarm.
  3. Make it random, where the chance of raising the alarm depends on the evidence found.
  4. Never raise the alarm because of such minor things.
  5. I have a completely different idea.

If you vote for the last option, please post here. :smile:

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

There is already a function for AI keeping track of suspicious events, and at a certain point they decide that there is sufficient evidence of an intruder. I suspect events are already weighted, though I don't know for sure.

Link to comment
Share on other sites

As far as I've seen it they are just counted, what would make the implementation of choice #1 the simplest, I guess. Anyways, it's more a question of what would make sense gameplay-wise.

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

I guess you could work it like this.

events are weighted using prime numbers, so low level events (light put out, missing small item) would have a weight of 1 or 2 while higher events like blood spots say 7 and major loot items a weight of 17 and you have a threshold of 23, so you count the weighted events and when the total goes over 23 the guard raises the alarm. this way you could trigger small events without the guard being alerted but when too much happens the guard rings the alarm.

You could have different threshold events where a certain number makes the guard suspicious, then go for the alarm when a higher threshold is reached.

Therefore you could make it seem more random on what a player has actually done before the alarm is raised, instead of counting something like 5 events all the time before a guard goes for the alarm.

Link to comment
Share on other sites

We have an existing counter for "evidence of intruders". Perhaps this can be used instead of introducing something new.

 

Here's the list of how much the counter goes up for different events. (No, I don't know why spotting an enemy is only +1.)

 

+1 - failed KO

+1 - spotted enemy

+2 - spotted weapon (broadhead sticking into something, noisemaker)

+1 - spotted something suspicious (fire arrow going by)

+1 - spotted a hanging rope

+3 - found a corpse

+1 - an item is missing

+2 - found someone unconscious

+1 - saw blood

+1 - an important light went out

+1 - something is broken

+1 - a door that's supposed to be closed is open

Link to comment
Share on other sites

The guards are getting to be too smart considering the heavy armor and helmets that should actually prevent them from hearing and blocking their vision.

They should be, heavier, lazier and slower and easier to escape from if they are armored.

In some of the newer mods I see they are more like well trained, see-in-the-dark Special Ops with uncanny hearing and awareness.

 

Most guards should just have batons (truncheons) as in the old days.

In fact, TDM devs, How about working on that angle and not have so many swords.?

Maybe ocassionally using just fists and brass knuckles.

 

Thieves shouldn't have swords anyway just daggers. Almost all the time I play I never use the sword it - seems silly that an agile thief would haul a clunky, noisy, shiny sword around along with all the other junk.

 

My 'perfect' thief would carry Cosh, dagger, bow, all the current arrows (altho' I rarely use most of them preferring just the rope and water).

and a large sack.

Link to comment
Share on other sites

Most guards should just have batons (truncheons) as in the old days.

In fact, TDM devs, How about working on that angle and not have so many swords.?

 

TDM takes place in a mythic-historic setting that ranges from the 17thC to the early 19thC. It was customary for guards to carry swords during most of that period.

 

As for the thief, we debated whether to give him a sword or dagger in the early days. I argued for the short sword for several reasons:

 

1. A short sword has more gameplay uses--you can bash things open with it, or parry in combat.

2. A short sword is significantly smaller than a bow, so the "wouldn't carry something so bulky" argument doesn't hold weight.

3. The thief is not just a burglar; he is an adventurer, tomb-raider and explorer as well. If you're going to risk fighting zombies, giant spiders or worse, you're going to want more than just a dagger.

Link to comment
Share on other sites

@ Springheel - Makes perfect to me, and it also relates to Thief 1/2 where the character has his sword with which to defend himself.

 

I voted for the "weights" option - I like the idea of a guard having enough of a player's pestering and deciding there is definitely something dangerous going on that justifies raising the alarm. Thats the most natural behaviour. If possible to set different values to graver evidence, so much the better, if not, randomization should be applied.

Link to comment
Share on other sites

Will this be on by default?

Alarm systems are place manually so that their location and effect should make sense.

 

This means there should be full mapper control over it, right?

 

Different maps may have different alarm effects, but usually one might expect and alarm bring in more guards from a barracks that are let loose in RIT networks.

 

Maybe it was best if the default alarm behavior was:

See player, find a corpse or body:

If unarmed, run to alarm

If armed and in good condition, fight. Otherwise get help using the alarm. If the guard was just next to an alarm switch, he could flip it if the intruder wasn't fighting him.

 

Cumulative suspicion based alarm could be switchable for certain AI, like guard captains and such, by spawnargs. The problem with cumulative system is that player might suddenly get an alarm without knowing why. If direct spotting of the player was the main requirement, there always was a clear understandable reason for the alarm: the player was seen and the player let the AI escape.

Clipper

-The mapper's best friend.

Link to comment
Share on other sites

We have an existing counter for "evidence of intruders". Perhaps this can be used instead of introducing something new.

 

Here's the list of how much the counter goes up for different events. (No, I don't know why spotting an enemy is only +1.)

 

+1 - failed KO

+1 - spotted enemy

+2 - spotted weapon (broadhead sticking into something, noisemaker)

+1 - spotted something suspicious (fire arrow going by)

+1 - spotted a hanging rope

+3 - found a corpse

+1 - an item is missing

+2 - found someone unconscious

+1 - saw blood

+1 - an important light went out

+1 - something is broken

+1 - a door that's supposed to be closed is open

That spotting enemies is only +1 isn't a big deal, as it will cause the ai to ring the alarms anyways. Same goes for dead bodies. It's okay that there are different values already, although it seems strange that finding blood for examle is counted the same as an open door. Anyways, I can use this system and say, go to alarm if about a certain value, while this value could be controllable via a spawnarg.

 

@Sotha: There is already a spawnarg "canRaiseAlarm", so you can disallow certain ai to raise an alarm.

 

I was also thinking about a dimishing effect, so that it also depends on the frequency of evidence seen whether or not an ai raises the alarm.

 

The behaviour of armed ai raising an alarm if the button is nearby makes sense, but is a bit trickier in the current code. I'll see what I can do.

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

(No, I don't know why spotting an enemy is only +1.)

 

How about failed KO? :P "Hmm, something just whacked me on the head from the shadows...I wonder if we have an intruder lurking about somewhere? If that happens two more times I'm going to get very suspicious."

 

A lot of those values don't make any sense to me.

Link to comment
Share on other sites

I voted for counting them like they do it with missing loot.

So if a vase is missing that's okay, if the silver spoons are missing too, then the ai gets suspicious and if the paintings are gone too then it could raise an alarm. I hope this value is accessable via spawnarg in DR then, so that each mapper can set his / her own likings for the height it rises with each evidence (like on the missing loot).

"Einen giftigen Trank aus Kräutern und Wurzeln für die närrischen Städter wollen wir brauen." - Text aus einem verlassenen Heidenlager

Link to comment
Share on other sites

But counting them may be a bit static or predictable. :smile:

 

Regarding the values grayman posted: Are these values used elsewhere, too? I mean are they fixed? If not this would be a good moment for changing them.

 

@Springheel: I have to take another look in the code, but my idea was that taking damage in any way will cause the ai to run for the alert button.

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

Regarding the values grayman posted: Are these values used elsewhere, too? I mean are they fixed? If not this would be a good moment for changing them.

 

They are used when determining how much (and when) certain events should raise an AI's alert level.

 

Also used for warnings barked from one AI to another.

 

They aren't used by the Mission Stats. Mission Stats gets its numbers from discreet events, not accumulations.

 

If the increments change, the code will need to be revisited to make sure AI alert levels aren't rising too fast or too slow.

Link to comment
Share on other sites

Yes, and that's what makes a good gameplay! :)

I agree that the ai should not act completely randomly. But on the other side, if you always use a fixed algorithm the players will sooner or later understand it and will use it against the ai. This is something that I think was quite sad about the first two thief parts. When I started playing them, I thought that the ai was extremely challenging. Nowadays, I think they are really stupid.

 

Obviously artificially intelligence as we know nowadays can never met with human brain power, but I guess we should make it as hard as possible for the players to see the routines behind their behaviour.

 

In other words, I guess something in the middle of completely static or deterministic and completely random is appropiate here. I guess it is also more realistic.

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

I understand your point. It's okay but please consider everytime you think about this: "It's a game - not reality. We play the game - we aren't the reality."

What I mean is that it's okay for a player to get behind ingame mechanics as he evolves while playing the game. He / she shoulnd't be clueless about the mechanics after playing that stuff years along, because if he / she (as a pro then) doesn't get it, the "noob" will be even more frustrated about not understanding what's going on here.

Plus the FMs are made by so manys different people, it's even hard for me to get behind game mechanics as every mapper sets up his stuff another way. That can be really frustrating - not challenging. So (imho) let's not make it even harder.

 

we should make it as hard as possible for the players to see the routines behind their behaviour.
is a sentence I don't like to hear because at some point you NEED to understand the rules (again imho) ;) Edited by SeriousToni

"Einen giftigen Trank aus Kräutern und Wurzeln für die närrischen Städter wollen wir brauen." - Text aus einem verlassenen Heidenlager

Link to comment
Share on other sites

 

 

They are used when determining how much (and when) certain events should raise an AI's alert level.

 

Also used for warnings barked from one AI to another.

 

That could be the explanation as to why AI's calls for help after spotting the player are perceived as light warnings by others nearby (not to mention possible sound propagation issues also suggested).

 

I can see no reason for a call for help to be treated as anything other than a full alert for anyone listening (thats propably also the whole point of help screams, gameplay wise), so that one should likely be increased...

Edited by RPGista
Link to comment
Share on other sites

That could be the explanation as to why AI's calls for help after spotting the player are perceived as light warnings by others nearby (not to mention possible sound propagation issues also suggested).

 

I can see no reason for a call for help to be treated as anything other than a full alert for anyone listening (thats propably also the whole point of help screams, gameplay wise), so that one should likely be increased...

 

Calls for help are specific AI->AI messages that aren't affected by the amount of evidence seen. The messages include information about where the help is needed, and usually result in AI starting a search in that area.

 

Warning messages between AI, on the other hand, are simply the passing of information that an event was observed. "Hey Robert! Keep an eye open because something's been stolen." That isn't going to make Robert run off and search the spot where the theft occurred. But it is going to raise his alert level a bit. If he's patrolling w/o a drawn weapon, maybe he'll draw his weapon.

Link to comment
Share on other sites

I understand your point. It's okay but please consider everytime you think about this: "It's a game - not reality. We play the game - we aren't the reality."

What I mean is that it's okay for a player to get behind ingame mechanics as he evolves while playing the game. He / she shoulnd't be clueless about the mechanics after playing that stuff years along, because if he / she (as a pro then) doesn't get it, the "noob" will be even more frustrated about not understanding what's going on here.

Plus the FMs are made by so manys different people, it's even hard for me to get behind game mechanics as every mapper sets up his stuff another way. That can be really frustrating - not challenging. So (imho) let's not make it even harder.

 

is a sentence I don't like to hear because at some point you NEED to understand the rules (again imho) ;)

I did not meant that the behaviour of the ai should be completely not understandable. The player should notice that after the ai has seen a certain amount of evidence, he is likely to call the alarm. But the exact algorithm shouldn't be too obvious. So instead of saying "three evidences and I call the alarm" one could say "3-5 evidences and I call the alarm". So the player has a certain amount of uncertainty.

 

This does not make the game harder, but a bit more believable. You should keep in mind that stolen loot is only recognized if there is an absence marker and open or unlocked doors only if specific spawnargs were set. And were are only talking about FM's that would actually use the alarm system. If the mapper concentrates these effects on really important things (that are noticable important to the player), I don't see a big problem here. :smile:

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

  • 2 weeks later...

I'm really impressed by the stuff that's going on with the Dark Mod... it really feels like a successor to the Dark engine. Anyway, my thoughts on alarms:

 

Weighted evidence is best, simply because something lke an open door is much more commonlpace and easily explained away (ex. a lazy servant left it ajar) than, say, being shot at.

 

I think that a diminishing effect for most evidence types is a good idea as well; it doens't make much sense for an AI to indefinitely be in a heightened state of alarm over an open door or a missing plate. And, IMO, unless a door has an externally visible lock they shouldn't check to see if it's unlocked unless they attempt to pass through it.

Link to comment
Share on other sites

I think weighting would be the best idea.

 

This way the Thief has to think carefully about how much disturbance they can make in a room/area, without having to worry too much about an AI raising the alarm over one or two minor infringements which could have been caused by anything other than an intruder.

 

Personally I think the main reason to raise alarm should be finding a dead body - this alone should give enough weighting for an AI to sound an alarm on it's own. Also an AI surviving a projectile should be enough for him to sound the alarm.

 

An unconscious body should give pretty high weighting, but not enough for the alarm to be sounded on its own - he could be sleeping on the job, or banged his head etc.

 

However - an unconscious body plus 2 minor infringements i.e door left open and the sound of fleeing footsteps or some missing loot should be enough to make the AI certain it was no accident.

 

On the subject of missing loot, it should not be enough ON ITS OWN to raise an alarm unless it is marked as important by the map author. For instance the Crown in the "Crown of Penitence" mission. It would be a little taxing if the AI decided to call a full scale alert over a couple of missing candlesticks and a drinking vessel.

Obviously it would be good if missing loot caused some suspicion, but it all depends on how the weighting system would be implemented. It may be a little drastic if AI count how many items are missing and gains weighting to raise the alarm for each item, as a room full of candlesticks or other minor value loot items like silver plates could unfairly trigger an AI to sound the alarm.

 

The best way for loot weighting to work (in my opinion), is once the AI notices an item missing - all missing loot within say 30 feet is noticed as missing (to prevent the AI going back into invetigation mode on loop for each item it sees), and the entire incident is counted as one minor infringement. During it's investigation, any other loot it notices missing will no longer count, and only other infringements - I.e bodies, doors etc will count towards weighting for sounding an alarm.

 

The other option is if you tie loot weighting to the items actual loot value. So if AI notices X amount of missing loot during one investigation phase it will be enough to to tip the alarm - however I feel this will have to be significantly high enough that the AI doesn't sound the alarm unless a dragons horde, or bank vault's worth of loot is robbed.

 

If you can tie the weighting into the difficulty settings, weighting can be made harsher for a tougher challenge or easier depending on the players specification.

Edited by Scope
-Scope
Link to comment
Share on other sites

I voted for weighted, as some things should make a guard more suspicious than others. A small silver plate that's missing might seem a bit odd, but seeing a blood stain on the carpet is going to cause a good deal more concern from the guard. Sure, it might be that one of the servants cut himself while doing his duties, but still, it's likely to get the guard's attention level raised up a fair bit.

 

And as to an earlier comment, yes, I think the Thief should have a short sword. In addition stealing things, he may have to fight off guards, strange creatures in the night, who knows what, and for that you had better have a sword. And Garrett always had one (Eidos sticking it's nose in doesn't count), and he's the ultimate expert on being a master thief in England. 8OP

Link to comment
Share on other sites

Sure, it might be that one of the servants cut himself while doing his duties

What duties are you referring to that could cause a servant to loose the same amount of blood as a guard who's getting shot by an arrow into his face. :D

 

EDIT: Thinking about it, I don't really wanna know! :ph34r:

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent Status Updates

    • Ansome

      Taking a break to alleviate burnout. In retrospect, I probably shouldn't have jumped into a map-making contest so quickly after just finishing another project and especially with my busy schedule, but I do believe I have something that the community will enjoy. No clue if I'll be able to finish it on time for the competition if I factor in a break, but I'd rather take my time and deliver something of quality rather than engage in development crunch or lose part of the map's soul to burnout.
      · 1 reply
    • Skaruts

      Working on an update for my mission By The Cookbook. If anyone that played it has any further bugs to report, please let me know.
      I posted more details about the update in the mission thread.
      · 1 reply
    • lucien

      being thankful for tdm is a good feeling
      · 0 replies
    • The Black Arrow

      Happy birthday to me!
      Yes, today's my birthday and as much as I want to play The Dark Mod, I won't until it's late Autumn, where it should be a bit chilly in my place and there's some wind too.
      For now, it's time to enjoy my birthday, if any of you want to play a great fan mission in my honour...Well that's asking too much, just play the mission because it's fun, not because of me, enjoy it yourself! 💪
      · 5 replies
    • nbohr1more

      New texture wiki article created: https://wiki.thedarkmod.com/index.php?title=Creating_textures_from_Ornate_Photos
      · 11 replies
×
×
  • Create New...