NPC AI With Arrows

Started by nauta, February 15, 2016, 03:57:06 PM

I can't find it now, but rathustra (or someone) in a different context talked about how not very 'I' the AI is with respect to arrows.  I have to agree.  So maybe we can brainstorm simple solutions?

Here's a few I had (from simple to complex):

1. Flee Self.  If you fire at a mob, there's a chance (high) that it'll 'flee self'.  You might think: that's silly, I'll just go to the next room over and fire at it.  Well, yeah, it's not the most intelligent, but moving around with a bow out is dangerous to yourself, and if there are a lot of mobs, or limited visibility, this could create something of a challenge.

2. Fight or Flight.  If you fire at a mob, there's a chance that it'll flee self, but also a chance that it'll storm you, chasing you down.  This would be more codedly complex, but it would certainly put some risk in using your bow -- holding a bow means you can't hold a weapon or shield.

I'm -sure- there are a million caveats and qualifications, as well as ways in which people might use the proposals to cheat the AI -- but maybe this'll get some ideas tossed out there.
as IF you didn't just have them unconscious, naked, and helpless in the street 4 minutes ago

Quote from: nauta on February 15, 2016, 03:57:06 PM
I can't find it now, but rathustra (or someone) in a different context talked about how not very 'I' the AI is with respect to arrows.  I have to agree.  So maybe we can brainstorm simple solutions?

Here's a few I had (from simple to complex):

1. Flee Self.  If you fire at a mob, there's a chance (high) that it'll 'flee self'.  You might think: that's silly, I'll just go to the next room over and fire at it.  Well, yeah, it's not the most intelligent, but moving around with a bow out is dangerous to yourself, and if there are a lot of mobs, or limited visibility, this could create something of a challenge.

2. Fight or Flight.  If you fire at a mob, there's a chance that it'll flee self, but also a chance that it'll storm you, chasing you down.  This would be more codedly complex, but it would certainly put some risk in using your bow -- holding a bow means you can't hold a weapon or shield.

I'm -sure- there are a million caveats and qualifications, as well as ways in which people might use the proposals to cheat the AI -- but maybe this'll get some ideas tossed out there.


Who cares?

The number of mobs out there where archery is the preferred method of attack is very small.  I can only think of like, one mob that I routinely hunted using archery, because it was just too dangerous to try to solo.  And no, I'm not talking about spamming a mekillot with a dozen arrows.

Personally, if archery made mobs aggro you, I'd just use it to make the stupid wimpy auto-flee creatures aggro on me so I wouldn't have to wait until I branched throw or sneak to avoid having to run them down.

Archery is a PVP skill.  Let's just leave it at that.
Quote from: WarriorPoet
I play this game to pretend to chop muthafuckaz up with bone swords.
Quote from: SmuzI come to the GDB to roleplay being deep and wise.
Quote from: VanthSynthesis, you scare me a little bit.

I care. Mainly because it's jarring and strange to see.

Quote from: RogueGunslinger on February 15, 2016, 04:09:56 PM
I care. Mainly because it's jarring and strange to see.

It'd be a lot stranger to see a jozhal charge you in a murderous rage because you plinked its toe with a rock.

Also, it would theoretically be possible to do shit like...draw humanoid NPCs away from crim-code zones so you could murder them with impunity, draw NPC guards away from gates, cause people's mounts to flee away from them, etc. etc. etc.

By the time you run down every possible exploit to a seemingly simple code change like this, I imagine it becomes a fucking nightmare code-tangle with a metric shit-ton of retconning and double-checking old code and NPC behavior.

All because you couldn't just pretend that the first arrow to that duskhorn's leg crippled it, and that's why it's just sitting there letting you plink it to death.
Quote from: WarriorPoet
I play this game to pretend to chop muthafuckaz up with bone swords.
Quote from: SmuzI come to the GDB to roleplay being deep and wise.
Quote from: VanthSynthesis, you scare me a little bit.

Easy fix... wimpy npcs flee in a direction you aren't. Aggro NPCs have a % chance to run toward you.

I wanna say that once upon a time they did actually attack you after shooting at them.

Or I might be thinking of SoI back when it was a good game. ;D
<19:14:06> "Bushranger": Why is it always about sex with animals with you Jihelu?
<19:14:13> "Jihelu": IT's not always /with/ animals

Quote from: Delirium on February 15, 2016, 04:27:16 PM
Easy fix... wimpy npcs flee in a direction you aren't. Aggro NPCs have a % chance to run toward you.

Yeah.  With Fight or Flight, I'd imagine only aggro mobs would have a chance of chasing you down.

I agree, though, that option (2) -- Fight or Flight -- would be way more complicated than option (1) -- Flee Self.  For instance, how would the code know who fired the arrow? 

What -would- be kind of neat, would be for the creature to just have a look around, and, if aggro already, just chase down a randomly selected NPC/PC within two rooms.  You could do neat things, like trigger the tembo to attack your buddy by shooting an arrow at it as a gag.
as IF you didn't just have them unconscious, naked, and helpless in the street 4 minutes ago

Consider a command such as ... 'duck'. Which grounds a character, but making them nigh impossible to hit with an arrow? Make the NPCs do this automatically if they were hit by an arrow. Make shooting a 'ducked' character give lower skill gain upon failure. Make the NPCs automatically unduck if a PC enters the room.  Give major offense/defense penalties to ducked characters, make them unable to see further into other rooms maybe, and a delay on 'unducking' ?

Duck duck duck... goose tregil?

heh, sorry.

I think that's what the >hide command is for.

Just because it's codedly possible to instantly move huge distances by moving one room doesn't mean that's realism. It would be a far greater affront to realism if I could not shoot more than one arrow at someone from decent distance before they either ran out of range, or got in my face. Especially if my character is a desert elf or is on a swift mount.

This is taking the code too literally. Especially in an area of the game like wilderness rooms where things are necessarily abstracted to a degree, you have to let your imagination do some work.

I can think of three creatures I use archery on -- not counting super creatures like meks, horrors, etc.

I'm not counting auto-flee creatures because throw is far, far, far more practical and economical.

The time it takes to produce arrows in volume is heinous and the cost of buying arrows is completely impractical, to the point where hunting with a bow will never return a profit, no matter what you're hunting (except for PCs). The PvE applications of archery are already so limited that many 'House' hunters aren't even carrying around a bow and arrows if they aren't expecting or looking for some PvP because it's more efficient to leave them at home and bring another bag for loot instead.

These proposed changes would just further relegate archery to PvP scenarios.

No thanks.
Someone says, out of character:
     "Sorry, was a wolf outside, had to warn someone."

Quote from: Wastrel on July 05, 2013, 04:51:17 AMBUT NEERRRR IM A STEALTHY ASSASSIN HEMOTING. BUTBUTBUTBUTBUT. Shut. Up.

Maybe arrows should be cheaper.
Then again they'd have to make archery suck more to compensate.
So no pls

DERAIL..

Nauta.. buddy.. pal..

I think I can safely suggest the Ultima Online method of arrow accumulation.

Find dudes in the wastes, kill them.. take their arrows.

/DERAIL...