Page 1 of 1

Pacify Foe rather than Restrain Foe

Posted: Fri Mar 08, 2019 12:25 am
by Kamer
Is there way to keep enemies from attacking the play? Pacifying enemies with speech skills will keep the enemies active in dungeons. If you run into a few too many enemies and run back for help, a pacified bandit will attack back. I read someone that by pacifying enemies it will put the on the players "Team". I can't remember where I read that though. Restraining enemies though only keeps them none active instead of interacting with other monsters. Is restraining an enemy the only way still to keep them from attacking the player? I'm asking because I'd like to create allies during a quest.

Re: Pacify Foe rather than Restrain Foe

Posted: Tue Mar 12, 2019 10:11 pm
by Interkarma
Pacify (spell effect) and "restrain foe" (quest action) both operate the same way in back-end by setting enemyMotor.IsHostile=false. This just prevents them from attacking player, it doesn't place them on player's "team" as far as the enemy infighting system works.

It's definitely possible to create a custom quest action for spawning allies, but the problem right now is that enemy infighting is an optional setting. This means quest would not function as expected for users that have enemy infighting disabled.

It's probably best to create an overarching "player ally" flag exposed to quest system and respected by base AI that cannot be accidentally toggled off.

Re: Pacify Foe rather than Restrain Foe

Posted: Wed Mar 13, 2019 12:09 am
by Kamer
Interkarma wrote: Tue Mar 12, 2019 10:11 pm Pacify (spell effect) and "restrain foe" (quest action) both operate the same way in back-end by setting enemyMotor.IsHostile=false. This just prevents them from attacking player, it doesn't place them on player's "team" as far as the enemy infighting system works.

It's definitely possible to create a custom quest action for spawning allies, but the problem right now is that enemy infighting is an optional setting. This means quest would not function as expected for users that have enemy infighting disabled.

It's probably best to create an overarching "player ally" flag exposed to quest system and respected by base AI that cannot be accidentally toggled off.
So that would be on your end then? What' I'm trying to do with Warm Ashes is just a mob spawn. It's a bit immersion breaking when you have friendly knights sit around and not help the player if they were attacked by an enemy. I'm also sure it would open up many possibilities with quests and their variety.

Re: Pacify Foe rather than Restrain Foe

Posted: Wed Mar 13, 2019 1:54 am
by Interkarma
Agreed, it would be awesome. All the raw ingredients are there right now, they just have to be remixed into core and made available to quest system.

It's probably also necessary to roll some of enemy infighting back into core so they can still fight for player if allied to them. Right now enemy infighting is tied to an option users can disable.

Re: Pacify Foe rather than Restrain Foe

Posted: Fri Apr 12, 2019 3:55 am
by Kamer
Interkarma wrote: Tue Mar 12, 2019 10:11 pm Pacify (spell effect) and "restrain foe" (quest action) both operate the same way in back-end
You know, it just occurred to me that quest enemies are separate from your standard enemy. Enemies that Spawn and Enemies that spawn by a quest both seem to ignore each other. I know I wanted a "Allied" type function for quests but I doubt it would work out like it is currently. Quest enemies seem to always ignore each other as well. I figure this is to prevent enemy infighting with each other when they are both assigned to a quest. I do wonder if in the future that if we get this option, if quest enemies could infight with other creatures who aren't involved with the quest as well.

Maybe treat all quests as its own individual group of people? Also for quest enemies and normal enemies to infight as they should with the option enabled?

Re: Pacify Foe rather than Restrain Foe

Posted: Fri Apr 12, 2019 4:00 am
by Jay_H
The difficulty there is that quest enemies could fight with other spawns in a dungeon. You could just barely enter the dungeon and then get a message, "You have slain the Nightblade." without doing anything. Until we can prevent that, I don't see it being compatible with Daggerfall.

Re: Pacify Foe rather than Restrain Foe

Posted: Fri Apr 12, 2019 6:17 am
by jayhova
Wouldn't it be cool if when you pacified a foe you could then ask directions

Re: Pacify Foe rather than Restrain Foe

Posted: Fri Apr 12, 2019 8:59 am
by Kamer
I think send/create foe should be able to infight. Guard foes can be ignored.

EDIT: City Guards should at the very least be able to kill quest enemies as they did in classic as well.

Re: Pacify Foe rather than Restrain Foe

Posted: Sun Apr 21, 2019 11:43 pm
by Kamer
Any word on if quest commands like send/create foe can operate differently than Guard foes? I don't necessarily need "Allies" though having the flag would be an excellent addition. I'd just like the send/create foes to not be protected from other in-game unrelated enemies. As I said before, even Guards in the original game killed sent/created foes that would chase the player. Guard foes should always be protected as they are always key to quests. Sent/created foes normally are just roadblocks for the player that shouldn't have that protection from world enemies or other quest related enemies.