<< Back to Programming Forum   Search

Posts 1 - 5 of 5   
Mod Conflict issue : any way to get around it?: 2/12/2020 19:52:25


TBest 
Level 60
Report
Example game/settings : https://www.warzone.com/MultiPlayer?GameID=20809773

The game has two mods. Safe start and don't loose a territory. Both mods use the ServerAdvanceTurn Hook.

Safe start will skip the attack order on any non-neutrals. However, this skip is not passed on to the Don't loose a territory mod. Thus, the end result is a skipped attack and (if the attack would have been successful) an eliminated player from that skipped attack.

What I want is to have safe start mod run first. Skip the non-neutral attack(s). Then have Don't loose a territory run after the safe start mod has removed the non-neutral attack(s) from the order list. Is there any way to achieve this? *


*Of course one could make a 3rd mod that combines the two mods. But I would prefer a solution that resolves the mod conflict another way.
Mod Conflict issue : any way to get around it?: 2/13/2020 05:03:46

Fizzer 
Level 64

Warzone Creator
Report
I think the best solution is for "Don't lose a territory" to check territories at the start of the turn vs the end of the turn, to see what's actually lost, instead of looking at each attack. This would actually be better anyway, since it would correctly identify blockade cards as causing one to lose a territory, which it doesn't currently do.
Mod Conflict issue : any way to get around it?: 2/13/2020 21:10:19


TBest 
Level 60
Report
Yeah, good call: it sounds like the best solution for sure. Maybe I will fork dabo's mod and do it, seeing as he is M-less at the moment.
Mod Conflict issue : any way to get around it?: 2/14/2020 09:13:06


dabo1
Level 57
Report
The reason it is calculated in Server_AdvanceTurn_Order is that this way two players can not eliminate each other. If I would calculate in Server_AdvanceTurn_End it could happen that 2 players have successful attacks against each other and so eliminate each other. I guess a way to bypass the problem would be to not instantly eliminate a player when the enemy has a successful attack and wait for the next time Server_AdvanceTurn_Order (Server_AdvanceTurn_End for the last order) is called to check if the order made it into the history and only then eliminate the player.

And the reason it does not identify e.g. blockade cards is, that it is slightly stupid to eliminate oneself by playing a card.
Mod Conflict issue : any way to get around it?: 2/15/2020 09:26:41


TBest 
Level 60
Report
Hmm, in the end the best solution might be to make a 3rd mod combining the two other mods. Any other solution that I can think off comes with drawbacks and would not be mod conflict safe against other mods anyway.

(For example, using Commanders to check if an attack did occur successfully, possibly runs into conflicts with Connected Commanders)
Posts 1 - 5 of 5