I just want to make some general comments.
1 - This subject is not limited to GnuBG.
2 - Bots don't need to cheat often or obviously, easily
visibly. It would take an unreasonable amount of
effort to seek such a proof.
3 - Anytime someone reports a suspicious evaluation by
the bots, it's dogmatically dismissed as a system
hiccup, race condition, etc. that can't be reproduced.
4 - We're only talking about checker play here. Cheating
with cube decisions may be more common yet harder to
prove.
5 - Øystein didn't duh back at me. So, I guess you and I
will be doing our "burlesque" duet. ;)
MK
On 5/9/2025 1:19 PM, Ian Shaw wrote:
The dice from file feature allows a sufficiently motivated sceptic to prove that gnubg cheats by
showing that it makes different moves based on what the upcoming dice are. Or fail to do so.
They could even record all the numbers generated by the rng during a game and see whether gnubg
plays the rolls the same when loaded from a file.
Duh!
Ian
On Fri, 9 May 2025, 13:45 Øystein Schønning-Johansen, <[email protected]
<mailto:[email protected]>> wrote:
fre. 9. mai 2025 kl. 12:54 skrev MK <[email protected]
<mailto:[email protected]>>:
Did you read the instructions? It says there it won't work if you
resize your dice window.
Yes, I did! But I also read the GNU Backgammon source code. The dice input
window is actually
sized based on the screen resolution of the computer - your code will
therefore work on one
computer screen resolution but not on another.
It's not any more funny thing to do than a bot offering a manual
dice rolling feature!
I indeed find your solution very nice, since this method of mimicking
mouse-clicks - it is
general and can be applied to other backgammon applications. Very clever.
If the bot doesn't cheat, why bother with all that crap features
like manual dice, dice manipulation, etc...??
Yeah - you ask me!? Why do _you_ bother?
The idea with the bot offering manual dice function is that any
time the bot has access to upcoming dice, it may be cheating.
Well - GNU Backgammon is indeed an open source program and you are free to
examine the source
code and point out the lines of code that exploit the functionality of
accessing future dice rolls.
When reading from a file, bot can know the upcoming dice. It's
not the same as manual dice. Duh!
I actually agree with you that reading from a file is not the same feature
as manual dice.
The manual dice feature was added to be able to transcribe live games -
back in the 90s players
sometimes paid a transcribing person to record all rolls and moves of a
match - after that the
games were entered into the computer system, typically with the manual dice
setting activated.
When it comes to your solution it is actually a bit better for the sake of
non-cheating
verification - as in your tool the file of dice roll is open in another
process of the OS. I'll
give you credit for that! If you are using the GNU Backgammon feature "read from
file" (which
gives the exact same dice rolls), the file is open in the same process as
move selection
code, and it is easier to hide any cheating by looking forward. But of
course there is a really
simple way to check this now, since you have both methods of inputting dice
rolls from a file.
Play a match twice - first with your tool for selecting dice rolls from a
file - then with the
build-in feature - If GNU Backgammon does not make the same actions in
these two matches - it is
indeed a smoking gun. But I am willing to bet pretty much that if this test
is conducted - all
actions by GNU Backgammon will be the same.
-Øystein