Author Topic: So TMP is gone. Are you enjoying all the new wars?  (Read 58187 times)

De-Legro

  • Honourable King
  • *****
  • Posts: 3838
    • View Profile
All right, simple enough.  A treaty cannot by definition occur during a turn change, so it'll make modifying the database rather trivial.

Each region has an encounter setting matrix that defines what happens if people, or troops are encountered by each realm at the turn change.  This is modified by the various treaty types during each round before the turn.  The matrix is actually multiple nested cells of arrays.

So for instance lets have three realms.  With only three regions.  I'll use matlab notation as its what I'm most familiar with.  {region ID; owner ID}{1,nobles(1);troops(2)}(1:3,1:3)

So we're in region 1 owned by realm 1 and we want to know if we should arrest a noble from realm 2  So we go
Code: [Select]
If {1,:}{1,1}(1,2}==1 then Arrest End  If its combat for the same then it's just {1,:}{1,1}(1,2)==1 Then Blligerancy=1
You can use this then to set the belligerancy of any troops who would then enter into combat.  You could even have it check who should be attacking and defending when setting that boolean.

To change a treaty you can then go through and look for regions that are owned by 1.
Code: [Select]
If {x,2}==realm ID then {x,1}{1,:}(1,2)=1 {x,1}{1,:}(2,1)=1 Lets say that 3 has a defense treaty with 1.  When 2 declares on 1 the code can check to see if there is a defense treaty between 1 and any other realm.  If a region changes hands at the turn change it simiply copies the encounter matrix of any already owned region by the conquering realm, no need to recalculate it.

Any similar scheme would work.  It's just a matter of doing encounters on a region by region basis.
[/code]

The code has always worked region by region, since the matter we are trying to solve affects the armies in a particular region. Its not a matter of treaties changing, its a matter of the number of differing treaties realms can have with each other, and with interpretations of those treaties. For example we need to define how defence treaties work with regards to conquest treaties. Should realms that have a defence treaty with you only defend against the "enemy" if the enemy is attack one of the regions specified in the conquest treaty? Should they defend any of your regions or should they engage the enemy whenever they find them.

Implementing isn't a huge deal, though implementing in a clean, efficient and easy to follow matter would be a bit more of a challenge. The problem has always been defining the outcome for every possible combination, then doing so again and again as more realms are added. This is why people get upset with the current system when they are forced to the sideline when they thought they would aid an ally, or end up involved in a battle they wanted no part in.
Previously of the De-Legro Family
Now of representation unknown.

loren

  • Noble Lord
  • ***
  • Posts: 454
  • I'm too old for this
    • View Profile
It seems rather clear to me that a defense treaty is only for defense, and should only defend against an enemy realm of that region.

So if you're in a neutral realm between two realms that are antagonistic towards one of your defense mates there is no battle.  If you want someone to help you run a conquest of a region you need to get them to declare it, not just assume it'll happen from a defense treaty.  I may want to help you defend against X, but I don't want to automatically help you fight y.

The only curious thing would be if passage rights attended to the only times when there is a peaceful encounter.  Personally I think two realms that aren't in direct conflict should be able to pass through neutral realms unhindered (given I think relations are tied to a region not to a realm).

Once its defined how they all work then its rather trivial.

vonGenf

  • Honourable King
  • *****
  • Posts: 2331
    • View Profile
It has to do with multiple treaties, conflict treaties, defence treaties and the like. The code to decide who attacked, who defended and who fought was complicated enough when you could only have one treaty with each realm.

The code could be set up to  so that troops have three possible state depending on the treaties: side with the attackers, side with the defenders, or be confused. If the are confused, they have a 1/3 chance of siding with either side or sitting it out. Make sure that the confused status of the troops is clearly indicated by the flavour text of the batte.

Realms who don't like this need only to stop writing contradictory treaties.
After all it's a roleplaying game.

Indirik

  • Exalted Emperor
  • ******
  • Posts: 10849
  • No pressure, no diamonds.
    • View Profile
At first I was like  ??? ...

But then I  was like ;D
If at first you don't succeed, don't take up skydiving.

GoldPanda

  • Mighty Duke
  • ****
  • Posts: 561
    • View Profile
The code could be set up to  so that troops have three possible state depending on the treaties: side with the attackers, side with the defenders, or be confused. If the are confused, they have a 1/3 chance of siding with either side or sitting it out. Make sure that the confused status of the troops is clearly indicated by the flavour text of the batte.

Realms who don't like this need only to stop writing contradictory treaties.

Speaking as someone who plays Generals and Marshals, that would just make me less likely to order attacks, because I can no longer predict whether my side would win the battle or not. Fewer attack orders = fewer battles = less fun for everyone.

It's always best to make the system consistent and predictable. I believe the current behavior for "confused" troops is to not participate in the battle. Why change it if it's not broken?

And before you say "just stop writing contradictory treaties then", keep in mind that you need two realms in order to have an alliance. Sometimes you don't have much choice in which realms to ally with. Sometimes those realms are ruled by nobles whose competence, intelligence, and judgement that you deplore in private. ;) On top of that, you have zero choice on whether another realm declares war on you, or attacks you while neutral. If an ally of an ally of an ally attacks my realm (crazy but I've seen it happen), figuring out what would happen when and where is hard enough already. Please don't introduce randomness on top of that.
------
qui audet vincit

egamma

  • Guest
GoldPanda,
That's exactly what they are discussing--how to make the new diplomacy less confusing and more predictable than the current system.

Indirik

  • Exalted Emperor
  • ******
  • Posts: 10849
  • No pressure, no diamonds.
    • View Profile
Speaking as someone who plays Generals and Marshals, that would just make me less likely to order attacks, because I can no longer predict whether my side would win the battle or not. Fewer attack orders = fewer battles = less fun for everyone.
If you want to make sure that your realm fights your enemies, then make sure your diplomacy is clear. Then you will know who you will fight, who you won't fight, who will fight on your side, and who will not.

Quote
It's always best to make the system consistent and predictable. I believe the current behavior for "confused" troops is to not participate in the battle. Why change it if it's not broken?
In some instances, it is broken. I've been involved in enough cases that the battle setup was absolutely *not* what it should have been, or what logic would have determined it would be. Yet according to the current system, later analysis determined that what happened was exactly what the code intended to happen. Even though it made no sense...

Quote
And before you say "just stop writing contradictory treaties then", keep in mind that you need two realms in order to have an alliance. Sometimes you don't have much choice in which realms to ally with. Sometimes those realms are ruled by nobles whose competence, intelligence, and judgement that you deplore in private. ;) On top of that, you have zero choice on whether another realm declares war on you, or attacks you while neutral. If an ally of an ally of an ally attacks my realm (crazy but I've seen it happen), figuring out what would happen when and where is hard enough already.
You are correct. You cannot control when and if someone else declares war on you. But you can control who you declare war on. And if you want to fight Evilstani, then declare war on Evilstani, and you will fight them. So, no you may not be able to keep everyone else's diplomacy clean, but you can keep yours clean.

Oh, and if your "allies" can't keep their diplomacy clean, then perhaps you need to steer clear of them. Or teach them how to do it right, too.
If at first you don't succeed, don't take up skydiving.

vonGenf

  • Honourable King
  • *****
  • Posts: 2331
    • View Profile
In some instances, it is broken. I've been involved in enough cases that the battle setup was absolutely *not* what it should have been, or what logic would have determined it would be. Yet according to the current system, later analysis determined that what happened was exactly what the code intended to happen. Even though it made no sense...

It's the "later analysis" that makes me tick. Currently, the code is set up that there is always a "right" thing to do for the troops. Therefore when something not predicted happens, the reaction is "the code is wrong".

If it was made clear that this is due to a contradiction in the treaties, it would be an IC event.
After all it's a roleplaying game.

egamma

  • Guest
It's the "later analysis" that makes me tick. Currently, the code is set up that there is always a "right" thing to do for the troops. Therefore when something not predicted happens, the reaction is "the code is wrong".

If it was made clear that this is due to a contradiction in the treaties, it would be an IC event.

After the battle, if you (or your character IC) look at the treaties in place, it will become clear why the armies took the sides they did.

GoldPanda

  • Mighty Duke
  • ****
  • Posts: 561
    • View Profile
A lot of the "confusing situations" would go away if we make alliances transitive. Allying with a realm means allying with all of its allies. Declaring war on a realm means declaring war on all of its allies. Of course a realm can choose to not actually participate in the war, but if it wished to officially leave the war early, or was forced to surrender first, it would also have to leave its alliance bloc.

It seems to me that this would encourage smaller realms and larger wars, both of which are generally considered to be "good things".
------
qui audet vincit

De-Legro

  • Honourable King
  • *****
  • Posts: 3838
    • View Profile
A lot of the "confusing situations" would go away if we make alliances transitive. Allying with a realm means allying with all of its allies. Declaring war on a realm means declaring war on all of its allies. Of course a realm can choose to not actually participate in the war, but if it wished to officially leave the war early, or was forced to surrender first, it would also have to leave its alliance bloc.

It seems to me that this would encourage smaller realms and larger wars, both of which are generally considered to be "good things".

That would just hurt wars. Nobody would even consider declaring against a member of a large alliance block in that case, since the game mechanics would instantly make them declare war against so many other realms. You would be left in the position of realms IGNORING war decelerations, or having to march to war because of them.
Previously of the De-Legro Family
Now of representation unknown.

GoldPanda

  • Mighty Duke
  • ****
  • Posts: 561
    • View Profile
That would just hurt wars. Nobody would even consider declaring against a member of a large alliance block in that case, since the game mechanics would instantly make them declare war against so many other realms.

Tell that to all the realms that declared war on Cagilan Empire et al. ;D All you need is a bigger bloc than the other guy, or maybe subvert and break down your opponent's bloc beforehand.

Quote
You would be left in the position of realms IGNORING war decelerations, or having to march to war because of them.

Sounds like a good source of inter-realm and pvp conflict, and getting mad at your allies for not helping you against a common enemy. I mean, heaven forbid that we drag realms into wars when they don't want to fight.  :P

And you forgot a third option: Leave your current alliance bloc and make peace.

I'm not claiming it's a perfect system. If the devs are discussing improvements to the current diplomacy system, I figured you guys would want some player suggestions/feedback. I'm just throwing ideas out here.
« Last Edit: January 20, 2012, 12:03:55 AM by GoldPanda »
------
qui audet vincit

De-Legro

  • Honourable King
  • *****
  • Posts: 3838
    • View Profile
Tell that to all the realms that declared war on Cagilan Empire et al. ;D All you need is a bigger bloc than the other guy, or maybe subvert and break down your opponent's bloc beforehand.

And for how long did wars suffer on that continent specifically BECAUSE you needed a larger better co-ordinated bloc to even stand a chance?

Sounds like a good source of inter-realm and pvp conflict, and getting mad at your allies for not helping you against a common enemy. I mean, heaven forbid that we drag realms into wars when they don't want to fight.  :P

No, we don't want to drag realms into a massive gang bang because of a common enemy. For all we know the realm has good relations with everyone else IN the bloc, so the common enemy may be an attitude forced upon them by game mechanics rather then reflecting actual politics.

And you forgot a third option: Leave your current alliance bloc and make peace.

Do you really see a realm leaving a successful alliance just because some other realm decided to go to war with one of the members and game mechanics FORCE that war upon everyone? I certainly don't. Like I said the likely outcome is people ignoring the war deceleration, or being force to team up against a realm because of over reaching game mechanics.
Previously of the De-Legro Family
Now of representation unknown.

Sacha

  • Mighty Duke
  • ****
  • Posts: 1410
    • View Profile
Why not make diplomacy simpler by reducing it to 3 levels? Alliance, neutrality/peace and war. Surely that would reduce the complexity of the whole code?

GoldPanda

  • Mighty Duke
  • ****
  • Posts: 561
    • View Profile
And for how long did wars suffer on that continent specifically BECAUSE you needed a larger better co-ordinated bloc to even stand a chance?

I may be suffering from selective memory here, but as I recall only Coria and maybe Talerium was suffering from TMP significantly. CE and allies conquered Falasan, and was in the process of curb-stomping BoM when six other reams piled onto CE and its allies.

Quote
No, we don't want to drag realms into a massive gang bang because of a common enemy. For all we know the realm has good relations with everyone else IN the bloc, so the common enemy may be an attitude forced upon them by game mechanics rather then reflecting actual politics.

If you have such good relations with every other realm in the bloc, then ask them to kick your target out of their bloc. If they refuse, then I guess you were not such good friends after all.

And your hypothetical scenario seems unlikely to me. Group-think tends to settle into an alliance bloc pretty quickly. People are social creatures and want to agree with their friends.

Quote
Do you really see a realm leaving a successful alliance just because some other realm decided to go to war with one of the members and game mechanics FORCE that war upon everyone? I certainly don't. Like I said the likely outcome is people ignoring the war deceleration, or being force to team up against a realm because of over reaching game mechanics.

If an even bigger bloc declared war on your bloc, jumping ship will suddenly look a lot more attractive.

And what's wrong with ignoring a war declaration? Under-the-table negotiations with the "enemy" to stay out of the war de facto seems perfectly reasonable and BM-ish to me, especially if your allies are preoccupied enough to let you get away with it.

Look, we're not going to reduce the number of possibly confusing diplomacy configurations by making the system more complicated.  And if we make things more simplified, the diplomacy system will not be as expressive as before. We're going to have to balance between clarity and nuance here.
------
qui audet vincit