- Created Wednesday, February 1st 2017 @ 15:13:31
Hello all. Maybe someone with more experience in general programming will have some ideas... Today I tried to upload new version of my bot. In test match I see moves, which i can't reproduce on my machine. My bot is more or less deterministic in a sense, that in given situation it will answer in certain way, in other there are several possibilities. So I look at certain answers and they are missing. So the question probably would be: can different compiler change, how program is executed? Any other ideas? P.S. On my machine I test exe, which is build from same source, which I send later as a zip.
- Updated Wednesday, February 1st 2017 @ 23:56:16
I would guess that maybe your bot is not parsing one of the settings correctly from the settings each turn when the matches are played.
When I first uploaded my bot, I didn't handle the last_move field correctly, so when the bot was run it always had the wrong last move played. I didn't have this problem however when I ran it locally since in my local tests since it was a mistake with the parser. Another parser error might be expecting there to be "lastmove" when it's supposed to be "last_move" - having typos of that nature in the parser.
- Created Thursday, February 2nd 2017 @ 08:46:45
Thank you for a pointer. i started debugging there, but quickly shifted to other part of system. So far it appears, that sole reason for strange behavior was reading out of bounds of one small array (name of which differs from intended array only by "_"... uhrr). It completely shut down one of the main systems of my bot. At least from test game looks like problem is solved. Lesson learned: name your arrays better deltas4 and deltas9 instead of _deltas and deltas. :)
- Updated Thursday, February 2nd 2017 @ 22:06:46
Haha, ouch, that sounds like a painful error. It's like those stories where someone dereferenced a pointer when they shouldn't have; a single '*' causing a huge error! Glad you found it :)