Matrix Games Forums

Forums  Register  Login  Photo Gallery  Member List  Search  Calendars  FAQ 

My Profile  Inbox  Address Book  My Subscription  My Forums  Log Out

How to have faster and cheat proof pbem battles

 
View related threads: (in this forum | in all forums)

Logged in as: Guest
Users viewing this topic: none
  Printable Version
All Forums >> [New Releases from Matrix Games] >> Empires in Arms the Napoleonic Wars of 1805 - 1815 >> How to have faster and cheat proof pbem battles Page: [1]
Login
Message << Older Topic   Newer Topic >>
How to have faster and cheat proof pbem battles - 5/19/2009 2:01:07 AM   
Ashtar

 

Posts: 160
Joined: 12/6/2007
Status: offline
Hi everyone, I just went through a 2 days pbem battle and I frankly found it painfully slow:
I had to send an astonishing 8 combat files to the defender, and he sent it back to me another 8 times (and luckily the II day ended after the first turn). This is too much, and anyhow the combat system is too unsecure, both for what regards die rolls and defender chit selection
(and no, I do not think the multiple combat reloads warning will work).

As a matter of fact, it is relatively simple to devise a faster and completely secure combat procedure: security will be achieved by showing chit on stage 3 only after both sides have chosen them, and by pre-generating all die rolls at the beginning, so that reloading a turn will not change them. Here it comes in full details:

Odd phases (1, 3, 5, 7) are attacker ones, and even phases (2, 4, 6) are defender ones.
File transfers happen between one phase and the other

1. a) Attacker chose chit
b) If outflanck was chosen, forces composition is chosen

2. a) Defender chose chit,
b) If withdraw a withdraw die roll is generated but not shown
c) If outflanck was chosen, forces composition is chosen

3. a) Chits are revealed
b) If withdraw has been chosed by defender, the withdraw roll is applied
c) If no withdraw or unsuccessful withdraw:
d) if outflanck vs. cordon or outflanck vs. outflanck forces are recomposed
e) Forces are revealed and morale levels are computed
f) Attacker chose if to guard commit at round 1.
g) Attacker chose if to pursuit in case of defender breaking at I round
h) All other combat die rolls needed are generated but not shown
(they are: 6 for three round standard combat die rolls, 6 for eventual
artilleries, 2 for eventual guard commit, 2 for eventual outflanck,
6 for eventual reinforce attempts, 1 in case of pursuit and 4 for leader
casualties, all stored in separate categories)

4. a) Defender chose if to Guard commit at round I
b) Relevant die rolls are revealed and I day result are computed (involving guard
and artillery for both attack and defend, if it is the case)
c) Defender takes I round losses
d) If attacker breaks, defender chose if to pursuit, pursuit roll is revealed and
files goes to attacker for losses -> end of battle
e) If defender breaks, pursuit roll is revealed (if pursuit was chosen by attacker)
and defender gets losses-> file goes to attacker for end of battle
If none breaks II turn will start:
g) If possible defender chose if to reinforce - relevant reinforce die roll
generated at step 3 is shown and result applied
h) If defender is outflanking relevant outflanck die roll generated at step
3 is shown and result applied
j) Defender chose if to guard commit at round II
k) Defender chose if to pursuit in case of attacker breaking at II round

5. a) Attacker takes I round losses
b) If possible attacker chose if to reinforce - relevant reinforce die roll
generated at step 3 is shown and result applied
c) If attacker is outflanking relevant outflanck die roll generated at step 3 is
shown and result applied
d) Attacker chose if to guard commit at round II
e) Relevant die rolls are revealed and II day result are computed (involving guard
and artillery for both attack and defend, if it is the case)
f) Attacker takes II round losses
g) If defender breaks, attacker chose if to pursuit, pursuit roll is revealed and
files goes to defender for losses -> defender will return it to attacker for end
of battle
h) If attacker breaks, pursuit roll is revealed (if pursuit was chosen by defender)
and attacker gets losses -> end of battle
If none breaks III turn will start:
j) If possible attacker chose if to reinforce - relevant reinforce die roll
generated at step 3 are shown and result applied
k) If attacker is outflanking and outflanck didnt arrived at II round,
relevant outflanck die roll generated at step 3 is shown and result
applied
l) Attacker chose if to guard commit at round III
m) Attacker chose if to pursuit in case of attacker breaking at III round

6. a) Defender takes II round losses
b) If possible defender chose if to reinforce - relevant reinforce die roll
generated at step 3 is shown and result applied
c) If defender is outflanking and outflanck didnt arrived at II round, relevant
outflanck die roll generated at step 3 is shown and result applied
d) Defender chose if to guard commit at round III
e) Relevant die rolls are revealed and III day result are computed (involving guard
and artillery for both attack and defend, if it is the case)
f) Defender takes III round losses
h) If attacker breaks, defender chose if to pursuit, pursuit roll is revealed and
files goes to attacker for losses -> end of battle
j) If defender breaks, pursuit roll is revealed (if pursuit was chosen by attacker)
and defender gets losses-> file goes to attacker for end of battle
If none breaks it is end of the day:
k) If possible defender chose if to reinforce - relevant reinforce die roll
generated at step 3 are shown and result applied
l) Defender chose if to fight for another day

7. a) Attacker takes III round losses
b) If possible attacker chose if to reinforce - relevant reinforce die roll
generated at step 3 is shown and result applied
c) Attacker chose if to fight for another day
d) If both decided to fight another day, attacker chose chit (as in step 1) and then
restart from step 2.

Leader casualties, finally, are always checked at the end of battle.

This system is almost* completely secure and faithful to EIA (only deviation is that reinforce, outflanck arrival and guard commitment are performed all in once by both sides and not one at the time in an alternate manner, but I think this is an acceptable deviation). In terms of file exchanges,
(attacker to defender and back) it gives you:

I round long battles: 2 file exchanges
II rounds battles: 2 (if defender wins) or 3 (if attacker wins)
III rounds battles: 3

to be compared with current (unsecure) system:

I round long battles: 3 file exchanges
II rounds battles: 4
III rounds battles: 5

Considering that most battle drag to II or III turn at least, this is a relevant speed up.
Can we implement this, please?

* almost meaning that:
quote:

4a and 6d give the defender the cheat option of being able to reload to change his decision about guard committment after rolls are revealed. Equally, 5d gives the same cheat option to the attacker. True, but this is the only possible cheat left. On the one hand, it is fairly minor if compared to present situation (guard committment is possible only in certain battles and usually is chosen in desperate situations, so I do not expect big abuses here). Moreover, closing this security hole would require 3 more FE, and probably it is not a price worth paying.


(slightly edited to take into account Jimmer remarks)


< Message edited by Ashtar -- 5/23/2009 12:29:58 AM >
Post #: 1
RE: How to have faster and cheat proof pbem battles - 5/19/2009 2:33:22 AM   
Dancing Bear

 

Posts: 1003
Joined: 2/21/2008
Status: offline
I'd support revision of the file exchange system along the lines advocated by Ashtar here. I'd add a step to determine if the battle was to be a trival battle (by chekcing for the 5:1 ratio right after attacker chit selection), and have the game run a trival battle on the attackers computer immediately (i.e. check for withdraw, then use the straight 5-2 tables) without any files exchanges with the defender, excpet for the attacker to send the file to the defender with the screen shot showing the attackers forces.

(in reply to Ashtar)
Post #: 2
RE: How to have faster and cheat proof pbem battles - 5/19/2009 7:16:03 AM   
bresh

 

Posts: 936
Joined: 8/8/2005
Status: offline
quote:

ORIGINAL: Dancing Bear

I'd support revision of the file exchange system along the lines advocated by Ashtar here. I'd add a step to determine if the battle was to be a trival battle (by chekcing for the 5:1 ratio right after attacker chit selection), and have the game run a trival battle on the attackers computer immediately (i.e. check for withdraw, then use the straight 5-2 tables) without any files exchanges with the defender, excpet for the attacker to send the file to the defender with the screen shot showing the attackers forces.


I said before, we need a better batte-file-exchange system.
Asthars suggestion needs to be looked into, sounds fine at first look.

I dont agree on your proposal on Trivial battle.
Trivial battle is a EIA-option, that im not sure i wish to use.

I do belive every land battle needs file-exchange, when corps are involved.(not only if defender has 2+corps).
Same for Naval battles.
The current system battle-system is flawed,
and the "1-corps quick battles" are very unbalanced.

Regards
Bresh

Regards
Bresh

< Message edited by bresh -- 5/19/2009 7:18:54 AM >

(in reply to Dancing Bear)
Post #: 3
RE: How to have faster and cheat proof pbem battles - 5/19/2009 11:29:02 PM   
Dancing Bear

 

Posts: 1003
Joined: 2/21/2008
Status: offline
Maybe make trival battles a game option. Some players really liked that after winning a trival battles, an army could still reinforce, but perhaps it is not for everyone. However, perhaps a discussion for trival battles should be posted elsewhere. I was mostly trying show support for Asthars, yours and others support for a revised battle sequence.

I also agree the current one corps battle system is unbalanced, but thing the Marshall has agreed to let this be a player controlled option.

(in reply to bresh)
Post #: 4
RE: How to have faster and cheat proof pbem battles - 5/20/2009 6:40:05 PM   
Jimmer

 

Posts: 1968
Joined: 12/5/2007
Status: offline
The fundamental aspects of the changes you propose have been discussed before. There is general agreement that both chits should be chosen before either person is allowed to view them. Unfortunately, this makes the process LONGER, not shorter (there is a another pair of battle files to transfer). The whole reason it is done as it is done today is to make it as fast as possible. Adding the chit choice change will make it longer (by one file exchange).

However, your idea of pigeonholed die rolls dedicated to the two players various options is a good one. Note that there must be a repository of rolls for each player separately, in addition to having separate buckets for the various choices.

Finally, it's still not "completely secure". It is still vulnerable to the same method of cheating. The difference would be that the profit from cheating becomes significantly less, since you can only affect one component of the battle at a time. For example, I can decide whether to use guard commitment after seeing the roll for commitment. But, your idea DOES prevent me from seeing the combat roll at the same time.

In fact, this example illustrates why it's not going to cut any file exchanges: There still has to be a confirmation from the other party, so the same step must be performed at the same place in the process. In fact, to do it correctly, it would actually entail MORE file transfers (since in the current model one person frequently does two sub-phases back to back in the current model).


< Message edited by Jimmer -- 5/20/2009 6:41:07 PM >


_____________________________

At LAST! The greatest campaign board game of all time is finally available for the PC. Can my old heart stand the strain?

(in reply to Dancing Bear)
Post #: 5
RE: How to have faster and cheat proof pbem battles - 5/21/2009 5:40:00 AM   
Ashtar

 

Posts: 160
Joined: 12/6/2007
Status: offline
quote:

Jimmer
Unfortunately, this makes the process LONGER, not shorter (there is a another pair of battle files to transfer).

No, it does not, as I showed in the long and detailed post at the start of the thread. Could you please care to read it and point out a practical example showing that it would require more files exchanges? Actually my proposed system is both faster and secure.

quote:

Finally, it's still not "completely secure". It is still vulnerable to the same method of cheating. The difference would be that the profit from cheating becomes significantly less, since you can only affect one component of the battle at a time. For example, I can decide whether to use guard commitment after seeing the roll for commitment. But, your idea DOES prevent me from seeing the combat roll at the same time.

Again, no, according to what I wrote you will see your roll for commitment only after your opponent will have seen it, and this without any extra time cost, but faster. As a matter of fact current method is quite poor and has a lot of not needed files exchnges.

quote:

In fact, this example illustrates why it's not going to cut any file exchanges: There still has to be a confirmation from the other party, so the same step must be performed at the same place in the process. In fact, to do it correctly, it would actually entail MORE file transfers (since in the current model one person frequently does two sub-phases back to back in the current model).

For the third time, NO. And you are not providing any example. Read my post and try to find any examples by which you can know in advance a roll or by which more file exchanges would be required, please.

(in reply to Jimmer)
Post #: 6
RE: How to have faster and cheat proof pbem battles - 5/22/2009 8:08:00 PM   
Jimmer

 

Posts: 1968
Joined: 12/5/2007
Status: offline
3 is a new battle file exchange (FE). In the current implementation, defender would continue playing, only sending the FE after it plays out.
3 also misses another necessary FE: Outflank force makeup is chosen before opponent's chit is revealed (unless the chit is Outflank or cordon).
3e needs an FE. If not, gives attacker the opportunity to see enemy numbers and reset outflank force configuration. NOTE: This is effectively the same FE as 3f, but the way you have it broken up requires 2 FEs.
3f needs an FE (you can't commit guard until you know what you are up against). This is the same principle as 3e, and can probably be combined with it.
3g needs an FE, although it's never going to happen (but, it potentially will in later rounds)

4a needs an FE.
You are missing 4a-1: Defender chooses and reveals outflank composition (mirror step to 3e)
You are missing 4a-2: Defender chooses guard commitment (mirror step to 3f)
You are missing 4a-3: Defender chooses pursuit (mirror step to 3g). Again, it's never going to happen until later rounds of combat.

YOu're going to have to think as if you are a computer (step by step) in order to see all of the points at which you need FEs in order to make it perfectly secure. You are off by several dozen FE steps from a totally secure implementation (which would also be totally unplayable).

Now, that said, the method you propose severely limits opportunities for cheating, so we should continue looking at it. It has a very high degree of promise, in my opinion. There may be ways to take some of the individual FE steps and merge them with other steps, thus eliminating some of the new FEs it would create.

Here is a list of all of the steps in a single round of combat (at least all I can think of, and roughly in order of occurrence):

1 battle order declaration
2 chit selection, attacker
3 chit selection, defender
4 outflank declaration
5 cordon declaration (defender only, if applicable)
6 outflank/pinning force declaration (could be attacker or defender)
7 chits revealed
8 resolve withdraw attempt
9 reveal forces
10 guard commitment declaration, attacker
11 guard commitment declaration, defender
12 artillery use declaration, attacker
13 artillery use declaration, defender
14 resolve guard and artillery actions
15 end combat with pursuit if either side loses too many guard
16 resolve combat
17 pursuit
18 reinforce (one sub step for each reinforcing army, corps, cossack/friecorps, or guerilla)
19 determine outflanking force arrival
20 check withdraw if outflank not successful (round 1 only)
21 end of day withdraw (if applicable)

Now, not all of these require file exchanges. In fact, in the current implementation, very few do. This is, however, the cause of some of the lack of security. My first swag at which ones "require" an FE are after:

1, 2, 3, 6, 9, 10, 11, 15, 16, 17, each substep of 18, and 21.

Steps 12 and 13 are probably not necessary (who in their right mind does NOT use artillery if they have it present?), but are included for completeness.

If we assume that all parties will always pursue, 15 and 17 can be removed.

That still leaves (7 + (number of possible reinforcing counters)) times when a battle file is required (for each round of combat), plus another 2 on the ends. "Required" in the sense of totally perfect security. Here's the shortened list, with all steps that do not require an FE removed:

1 battle order declaration

2 chit selection, attacker
3 chit selection, defender
6 outflank/pinning force declaration (could be attacker or defender)
9 reveal forces (and chits)
10 guard commitment declaration, attacker
11 guard commitment declaration, defender
16 resolve combat
18 reinforce (one sub step for each reinforcing army, corps, cossack/friecorps, or guerilla)

21 end of day withdraw (if applicable)

Steps 2-18 in this list comprise a repeating loop for each round of combat (plus 21 on the third round).

In your model, I do not see most of these occuring, and some of the FEs are skipped even though the action listing is present. It is possible I'm just missing them. Could you simplify the layout of your idea so it just covers one round of combat? Perhaps that will allow me to see a better view of it.

_____________________________

At LAST! The greatest campaign board game of all time is finally available for the PC. Can my old heart stand the strain?

(in reply to Ashtar)
Post #: 7
RE: How to have faster and cheat proof pbem battles - 5/23/2009 12:35:15 AM   
Ashtar

 

Posts: 160
Joined: 12/6/2007
Status: offline
Hi Jimmer, thanks for your detailed answer.

To start with, let me clarify that in my proposal file exchanges (FE) work as follows:
Attacker to defender: between 1&2, 3&4, 5&6
Defender to attacker between 2&3, 4&5, 6&7
So that (uninterrupted) attacker turns are 1, 3, 5, 7 and defender ones are 2, 4, 6
Therefore I do not agree (and I do not understand) when you say that
quote:

3 is a new battle file exchange (FE). In the current implementation, defender would continue playing, only sending the FE after it plays out.


On the other hand, I realize you are right about
quote:

4a needs an FE.

This is also true about 5d and 6d. 4a and 6d give the defender the cheat option of being able
to reload to change his decision about guard committment after rolls are revealed. Equally, 5d gives the same cheat option to the attacker. True, but this is the only possible cheat left. On the one hand, it is fairly minor if compared to present situation (guard committment is possible only in certain battles and usually is chosen in desperate situations, so I do not expect big abuses here). Moreover, closing this security hole
would require 3 more FE, and probably it is not a price worth paying.

For what regards the rest:

quote:

3 also misses another necessary FE: Outflank force makeup is chosen before opponent's chit is revealed (unless the chit is Outflank or cordon).
3e needs an FE. If not, gives attacker the opportunity to see enemy numbers and reset outflank force configuration. NOTE: This is effectively the same FE as 3f, but the way you have it broken up requires 2 FEs.

You are right about outflank, I edited my proposal, so that outflanck is chosen in 1b (by attacker) and 2c (by defender), before chits and forces are revealed. Of course, if otflank vs. outflank or outflank vs. cordon, forces split will not be applied.
This way further FE are required, since outflanck have been chosen in steps 1 & 2

quote:

3f needs an FE (you can't commit guard until you know what you are up against). This is the same principle as 3e, and can probably be combined with it.

They do not need any FE: Forces are revealed in 3e when morale is computed (I made it explicitely clear).
quote:

3g needs an FE, although it's never going to happen (but, it potentially will in later rounds)

This is a very minor deviation, you decide to (eventually) pursuit after knowing forces and chits but before knowing I turn comnat die rolls. I see no real problems here

quote:

You are missing 4a-1: Defender chooses and reveals outflank composition (mirror step to 3e)

Done in 2c
quote:

You are missing 4a-2: Defender chooses guard commitment (mirror step to 3f)

That is indeed done as 4a)
quote:

You are missing 4a-3: Defender chooses pursuit (mirror step to 3g). Again, it's never going to happen until later rounds of combat.

Defender chose if to pursuit after rolls are revealed at 4d. Not a big deal here, I would say.


(in reply to Jimmer)
Post #: 8
RE: How to have faster and cheat proof pbem battles - 5/23/2009 12:45:42 AM   
Ashtar

 

Posts: 160
Joined: 12/6/2007
Status: offline
(splitting my replay in two parts for clarity)

quote:

In your model, I do not see most of these occuring, and some of the FEs are skipped even though the action listing is present. It is possible I'm just missing them. Could you simplify the layout of your idea so it just covers one round of combat? Perhaps that will allow me to see a better view of it.


In my model some of these steps are combined (for instance, you can chose outflank forces composition when picking the outflank chit, if it will prove unnecessary (e.g. you end up facing a cordon) your choice will not be applied.
Moreover, as I told you I am removing the Guard steps (which indeed opens a small security hole for the sake of speed).
Most important, to limit FE and gain speed I am combining different combat turns in a single player turn: for instance EIA combat turn 1 ends in the middle of my model turn 4 (after 4e), and EIA combat turn 2 ends in the middle of my model turn 5 (after 5h)

Hope it is a bit clearer now...

(in reply to Jimmer)
Post #: 9
RE: How to have faster and cheat proof pbem battles - 5/24/2009 8:07:33 PM   
Jimmer

 

Posts: 1968
Joined: 12/5/2007
Status: offline
OK, some things are beginning to make sense to me. Here's my list (the shrunken one):

1 battle order declaration

2 chit selection, attacker
3 chit selection, defender
6 outflank/pinning force declaration (could be attacker or defender)
9 reveal forces (and chits)
10 guard commitment declaration, attacker
11 guard commitment declaration, defender
16 resolve combat
18 reinforce (one sub step for each reinforcing army, corps, cossack/friecorps, or guerilla)

21 end of day withdraw (if applicable)

So, you are placing 6 into 2 and/or 3, as appropriate. Likewise, 9 folds into them as well.

Then you are ignoring the guard issue. I can agree on that one.

Likewise with reinforcement. Except, I think one is a bit more important. If Napoleon fails to reinforce, that can make a major difference in a battle, arguably much more than guard or the other compromises we might have.

But, let's say we lock in the reinforcement order at the beginning of the battle, rather than choosing at the beginning of combat. Each potentially reinforcing corps/army would be assigned a random number, which serves as the order of reinforcement attempts. Now, a player might not want all of them, but that's something I think we can live with.

If the above were accepted, then 18 disappears. This leaves only these file exchanges:

1 battle order declaration

2 chit selection, attacker
3 chit selection, defender
16 reveal and resolve combat

21 end of day withdraw (if applicable)

The middle three are repeated each round, and the last one is repeated each day. I believe this amounts to 2 more file exchanges that would be the case today. However, today's model leaves a much larger security hole available. I think we are on the same page, except yours is more complicated (:)).

NOTE: #1 is technically outside of battle, but since it is major cheat point, it needs to be remembered as well.

So, that leaves the question "At what point are dice rolled?". I would say all possible die rolls for a day's combat should be rolled in advance, and stuck into compartments as you suggested in the original post. Compartments would be separate for the two players. Also, they would not be revealed, which means the battle files, or that part of them, needs to be encrypted.

NOTE: This means that the compartments hold a lot more die rolls than could ever be required. For example, guard commitment rolls would exist for both players and for each of the 3 potential rounds of combat. But, in real life only one of them would ever be used. This MIGHT be overcome in some cases (like, have only one guard roll per person, used on whichever round the player chooses to commit). This needs more fleshing out.

Marshall, are you following all of this? Ashtar has at least the seeds of a very good idea here. Can you put it into pseudocode, perhaps, and let us know whether it makes sense at all to the game?

Thanks.

_____________________________

At LAST! The greatest campaign board game of all time is finally available for the PC. Can my old heart stand the strain?

(in reply to Ashtar)
Post #: 10
RE: How to have faster and cheat proof pbem battles - 5/26/2009 6:42:41 AM   
Mus

 

Posts: 1759
Joined: 11/13/2005
Status: offline
First post in this game forum, and dont want to derail the discussion you are already having but...

Why not resolve battles over tcp/ip with both players involved present in real time using the in game battle resolution system and then upload the results somehow through the miniature third party battle system back to the PBEM side of the game?

Thats secure (both parties see what happens) and fast.

Is that method a nonstarter for some unknown reason?

< Message edited by Mus -- 5/26/2009 6:49:17 AM >

(in reply to Jimmer)
Post #: 11
RE: How to have faster and cheat proof pbem battles - 5/26/2009 12:46:47 PM   
Marshall Ellis


Posts: 5630
Joined: 10/2/2001
From: Dallas
Status: offline
We are looking at some ways to do this but this would be a few versions down the road.


_____________________________

Thank you

Marshall Ellis
Outflank Strategy War Games



(in reply to Mus)
Post #: 12
RE: How to have faster and cheat proof pbem battles - 5/26/2009 2:35:18 PM   
DCWhitworth


Posts: 676
Joined: 12/15/2007
From: Norwich, England
Status: offline
The simplest and most foolproof way of cheat-proofing the game is to allow manual entry of die rolls. A third party secure dice server could then be used.

This would cover battles, sieges and foraging. Voila, most issues disappear. Granted it isn't elegant but it *is* effective.

Personally I am rapidly getting fed up with the game, or rather fed up with what is going on in my head about the game. Everytime my opponent gets lucky and I lose and important siege or get rubbish rolls in battle the thought crosses my mind "Is he cheating ?". It's ruining my enjoyment of the game.

A battle reload warning won't help much for two reasons, firstly it won't cover sieges and foraging, and secondly I'd personally bet I could crack it in less than an hour unless the fundamental structure of the combat system is changed.

< Message edited by DCWhitworth -- 5/26/2009 2:36:41 PM >


_____________________________

Regards
David

(in reply to Marshall Ellis)
Post #: 13
RE: How to have faster and cheat proof pbem battles - 5/26/2009 6:34:34 PM   
Jimmer

 

Posts: 1968
Joined: 12/5/2007
Status: offline
Marshall, don't miss what I labeled #1 in my list, as this is a major potential cheat point: Checking out what the battles look like before sending the land movement phase info. Many games have a house rule that you have to send your movement file before your combat file, even though they occur at roughly the same time (for the phasing player). Ashtar doesn't directly address this in his opening post, but it's a natural follow-on to his discussion. Especially when many (most?) battles are fought completely between the phasing player and the game itself, rather than the other player.

Furthermore, many battles do not require any input from ones opponent(s) (sieges and trivial combats, for example), and thus form a major hole in the security.

There are many ways to address this hole. The simplest to describe may not be the best, but I'll describe it in case it generates interest:

At the end of the land movement phase, the game should require a token from some other player that shows they have received the land (or naval) movement phase file for the phasing player.

The sequence now is:

A) Player does movement phase
B) Player does combat phase
C) Player sends both movement and combat files to the other players.

The altered sequence would be (in this simple version):

A) Phasing player does movement phase.
B) Phasing player sends land movement file to all players.
C) One OTHER player posts a "token" file.
D) Phasing player does combat steps.
E) Optional battle files are transferred as many times as needed.
F) Phasing player concludes combat and sends end-of-phase pbm file.

Step C is the important new one, and requires more explanation. First, this token is needed by only one person to continue: The phasing player. The token would be entered into the PBM file at the end of combat (or, the beginning?).

All other players can (and probably should) ignore it. But, ANY player should be able to post a token, which would then be entered into their local saved game. When the combat phase file comes through, that person's game should check to make sure the token is present in the combat phase file.

This idea is an old computer programming trick. Traditionally, it was done to allow multi-processing of dependent events. Two task would run to completion asynchronously, with one most likely finishing before the other. The dependent token should wait for the token to arrive from the concluding task before proceeding with the dependent steps.

This is a classic example of that general problem, except the purpose for the tokens isn't concluding things in the right order, but rather verifying that task two doesn't start until task one has completed (i.e. no battles until someone has acknowledge receipt of the end-of-movement file).

_____________________________

At LAST! The greatest campaign board game of all time is finally available for the PC. Can my old heart stand the strain?

(in reply to DCWhitworth)
Post #: 14
RE: How to have faster and cheat proof pbem battles - 5/26/2009 7:13:51 PM   
Jimmer

 

Posts: 1968
Joined: 12/5/2007
Status: offline
quote:

ORIGINAL: DCWhitworth

The simplest and most foolproof way of cheat-proofing the game is to allow manual entry of die rolls. A third party secure dice server could then be used.

It may be the most foolproof, but it is far from simple. Just writing the pseudocode for it is a significant task. In my opinion, Ashtar's suggestion is a better one overall. Plus, it does basically the same thing, but without human intervention (in the die-rolling. Let me explain:

Using a third-party die-rolling routine would require that both players go to the rolling task for each battle step, to put the die results into their copy of the game. (Alternately, the game could ping-pong them, but that's less efficient.)

Ashtar's suggestion is to have all of them rolled in advance, AND pigeonholed. Thus, it is identical to a third-party tool, except the rolls are available to both computers from the start of the battle.

It's the pigeonholing that is the genius of this idea, so that might need explaining. Ashtar, correct me if I'm wrong here:

At the very beginning of combat, a series of rolls are made, and placed into slots of a "table" (or, buckets, if that's more clear). The slots would be (Attacker = A, Defender = D):

1) Withdraw roll (D)
2) Main combat rolls (3 for A, 3 for D)
3) Guard commitment (3 for A, 3 for D, but only if A/D have guard present)
4) Artillery bombardment (3 for A, 3 for D, but only if A/D have artillery present)
5) Reinforcement rolls (3 times number of corps/armies capable of reinforcing for each of A and D)*
6) Pursuit (either 1 for A and 1 for D, or one for A or D, depending on who wins)

*NOTE on #5: These could be an array of all of the corps and three slots each. Each slot would be for one round of combat.

*NOTE 2 on #5: If the multiple dimension array were used, it could exist for ALL corps and leaders, anywhere on the map or even off-map (and for all players). The dice would be thrown and pigeonholed, even though the results would never be used. If they got flushed after every combat, this could make programming MUCH simpler, since the corps and/or leader table is probably already built.

In naval combats, things would be slightly different. Naval basically has two points where issues arise: Combat and interceptions. Combat would occur similar to the above, but interceptions are a whole 'nother thing. Let's deal with that later, because it really doesn't fit in this thread.

< Message edited by Jimmer -- 5/26/2009 7:21:30 PM >


_____________________________

At LAST! The greatest campaign board game of all time is finally available for the PC. Can my old heart stand the strain?

(in reply to DCWhitworth)
Post #: 15
Page:   [1]
All Forums >> [New Releases from Matrix Games] >> Empires in Arms the Napoleonic Wars of 1805 - 1815 >> How to have faster and cheat proof pbem battles Page: [1]
Jump to:





New Messages No New Messages
Hot Topic w/ New Messages Hot Topic w/o New Messages
Locked w/ New Messages Locked w/o New Messages
 Post New Thread
 Reply to Message
 Post New Poll
 Submit Vote
 Delete My Own Post
 Delete My Own Thread
 Rate Posts


Forum Software © ASPPlayground.NET Advanced Edition 2.4.5 ANSI

1.594