Pacify Foe rather than Restrain Foe

For all talk about quest development - creation, testing, and quest system.
Post Reply
User avatar
Kamer
Posts: 583
Joined: Mon Mar 05, 2018 9:26 pm

Pacify Foe rather than Restrain Foe

Post 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.

User avatar
Interkarma
Posts: 7236
Joined: Sun Mar 22, 2015 1:51 am

Re: Pacify Foe rather than Restrain Foe

Post 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.

User avatar
Kamer
Posts: 583
Joined: Mon Mar 05, 2018 9:26 pm

Re: Pacify Foe rather than Restrain Foe

Post 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.

User avatar
Interkarma
Posts: 7236
Joined: Sun Mar 22, 2015 1:51 am

Re: Pacify Foe rather than Restrain Foe

Post 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.

User avatar
Kamer
Posts: 583
Joined: Mon Mar 05, 2018 9:26 pm

Re: Pacify Foe rather than Restrain Foe

Post 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?

User avatar
Jay_H
Posts: 4062
Joined: Tue Aug 25, 2015 1:54 am
Contact:

Re: Pacify Foe rather than Restrain Foe

Post 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.

User avatar
jayhova
Posts: 923
Joined: Wed Jul 19, 2017 7:54 pm
Contact:

Re: Pacify Foe rather than Restrain Foe

Post by jayhova »

Wouldn't it be cool if when you pacified a foe you could then ask directions
Remember always 'What would Julian Do?'.

User avatar
Kamer
Posts: 583
Joined: Mon Mar 05, 2018 9:26 pm

Re: Pacify Foe rather than Restrain Foe

Post 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.

User avatar
Kamer
Posts: 583
Joined: Mon Mar 05, 2018 9:26 pm

Re: Pacify Foe rather than Restrain Foe

Post 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.

Post Reply