EmperorSteele on 25/7/2013 at 16:27
So, there's like 4 or 5 separate script modules out there, so forgive me if I've overlooked something, but has anyone made a script for awakening and/or resurrecting defeated AI?
It's not something I need, but I was simply curious. It would certainly make gameplay more challenging if the player had to really hide the bodies to that they don't get woken up.
R Soul on 25/7/2013 at 17:13
I don't think there is, however a knocked out AI gets a number of properties and metaproperties, so in theory you could undo each change. Removing properties, or changing their values, and removing metaprops is perfectly doable, but I don't know if the AI would respond properly to those actions.
E.g. the State changes from Normal to Dead. That stops a lot of AI processing, but I don't know if changing it back to Normal would restart the processing.
There is also the issue of where the player leaves the AI. Most people hide bodies, so the AI could easily end up stuck, but with the player still able to see it.
It would also give player more incentive to kill, if the objectives did not forbid it.
kdau on 25/7/2013 at 17:49
The Watcher has mentioned an upcoming script that might help:
Quote Posted by The Watcher
Well, FWIW I've been working towards a replacement for the FireShadowEcology script that can be used for generic AI respawning and population control (with optional per-spawned AI respawn suppression depending on kill method).
If you only need to "wake" a generic AI (i.e. with no object-level differences from the archetype), you could just destroy the knocked-out one and spawn a replacement while the player is out of the room.
LarryG on 25/7/2013 at 19:48
Spawning is at a predetermined spawning site (i.e. where the marker with the script is, IIRC) so I don't think this is what is intended. A "resurrect" script that could be used like a spell that an AI casts on discovered unconscious / dead AIs would be very cool though.
EmperorSteele on 25/7/2013 at 20:38
I was just thinking something like Guard A is on patrol, see's a KO'd guard, then (animations permitting) shakes/slaps him and wakes him up. The both guards go on alert and look for you.
Maybe splice some existing sound files so the guards can actually say something like "Hey, are you all right?" Or "Hey, wake up!". (I'm pretty sure those exact words exist, but are followed by "No, no of course you're not all right, sorry!" and "damn, out cold..." respectively)
I don't have the tech know-how to even try to attempt this, and like I said, I don't have any specific need for it. Just thought it'd be cool =)
MysteryMan on 25/7/2013 at 21:08
Quote Posted by EmperorSteele
I was just thinking something like Guard A is on patrol, see's a KO'd guard, then (animations permitting) shakes/slaps him and wakes him up. The both guards go on alert and look for you.
Maybe splice some existing sound files so the guards can actually say something like "Hey, are you all right?" Or "Hey, wake up!". (I'm pretty sure those exact words exist, but are followed by "No, no of course you're not all right, sorry!" and "damn, out cold..." respectively)
I don't have the tech know-how to even try to attempt this, and like I said, I don't have any specific need for it. Just thought it'd be cool =)
Actually using an emitter would give the illusion of the ai waking up. I have done a little experimenting in this department, if anyone should like more info. Using aiasleep, and aiwakeup also work in conjunction with an emmitter. It would however be nice to have a "ChangeObject" script to use with a new metaproperty: "M-Resurrect",because who really knows when a guard is going to wake up, and in real life, he/they would not be unconcious, say for the hour or, hours that the player was in the game.
john9818a on 26/7/2013 at 15:21
When I tested this years ago the AI would stand back up after parameters were reverted back to "normal" but the AI would not perform motions in response to damage. Whatever happens at the start of a mission to get the AI processing started would have to be put into the script.
Coincidentally I was just thinking about this two days ago lol
Shadowspawn on 26/7/2013 at 16:28
I messed around heavily with this in "Lorgan's Web". Both Cudget and Lorgan were "resurrect-able" AI.
You pretty much have to replace the Knockout system. If the AI ever dies (i.e. normal knockout), you can't fix them. They remain broken forever. Even resetting their state to alive still leaves them unresponsive.
So, if you replace the knockout receptrons so that the AI goes to sleep, instead of dead, you have a chance.
When the AI "wakes" again, there are problems with it's position in the world. It tends to sink into the ground up to it's waist. I THINK making him walk will correct the positioning, but I can't remember. Maybe using one of the "get up" motions from the GMDB would also fix it.
When I did this stuff, we didn't have scripting yet (or it was in it's infancy). This probably wouldn't be too hard with current scripting capabilities.
Hope this helps.
The Watcher on 26/7/2013 at 18:05
Quote Posted by LarryG
Spawning is at a predetermined spawning site (i.e. where the marker with the script is, IIRC) so I don't think this is what is intended.
Yeeees, generally. But kdau's suggestion is a good one: there's no reason why I couldn't make the ecology script simply use the position of the dead AI as the spawn point for a new one, rather than a fixed location (or set of locations).
Yandros on 26/7/2013 at 18:23
A necromancer who walks around raising AI you've killed into zombies would be pretty wicked cool. :devil: