Pacify Foe rather than Restrain Foe

For all talk about quests. Creating, testing, bugs, and development progress.
Post Reply
User avatar
Kamer
Posts: 202
Joined: Mon Mar 05, 2018 9:26 pm

Pacify Foe rather than Restrain Foe

Post by Kamer » Fri Mar 08, 2019 12:25 am

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: 4019
Joined: Sun Mar 22, 2015 1:51 am

Re: Pacify Foe rather than Restrain Foe

Post by Interkarma » 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.

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

Re: Pacify Foe rather than Restrain Foe

Post by Kamer » Wed Mar 13, 2019 12:09 am

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: 4019
Joined: Sun Mar 22, 2015 1:51 am

Re: Pacify Foe rather than Restrain Foe

Post by Interkarma » Wed Mar 13, 2019 1:54 am

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.

Post Reply