Match reporting problems

Started by stog, July 05, 2011, 05:28:48 PM

Previous topic - Next topic

stog

Match reporting problems are occasionally happening especially when a game has been resumed
yuri and i - both using javafibs had problems today - conversion produced an empty file
(our first match was fine) and as we had a draw 1-1 - there was no dispute, and we both took screen shots as well)

i know of others too who have had similiar problems

the original match file was 'empty' so i am not sure if the problem is FIBS or Java fibs - or a combination?
anyone had problems using a different client?

the statistics in javafibs does confirm the results which suggests the info is fine on the server? but as there are no dates in the stats part , if u have played your IIBF opponent more than twice, then it may not be as useful.

(this may be an ask for future javafibs development perhaps?)

moonshadow

Quote from: stog on July 05, 2011, 05:28:48 PM
the original match file was 'empty' so i am not sure if the problem is FIBS or Java fibs - or a combination?

confirm that the javafibs file is actually empty.. more than likely it is corrupted and will not convert properly.

go to where javafibs stores the unconverted match files. select the file of the match (it will have a .match extention).

Open that file with a text editor (TextEdit works for Mac users) and what do you see? Are all the moves recorded there or not? Or is it completely empty, or partially empty? It may need only a tweak to fix it so it converts to a readable file

If you get it open, here is what it should look like ( a partial file taken from one of my matches)
Quote
JavaFIBS internal match representation v1.1
8:zyxtcba:5
13:zyxtcba:
6:You:zyxtcba
11:You:6 4
1:You:1-7 12-16
0:zyxtcba:4 2
1:zyxtcba: 8-4 6-4
0:You:3 2
1:You:7-10 10-12
0:zyxtcba:1 2
1:zyxtcba: 13-11 24-23
0:You:4 3
1:You:16-20 17-20
0:zyxtcba:1 4
1:zyxtcba: 11-7 8-7
0:You:3 1
1:You:12-15 19-20
0:zyxtcba:1 1
1:zyxtcba: 6-5 6-5 24-23 23-22
0:You:6 2
1:You:15-21 19-21
0:zyxtcba:1 2
1:zyxtcba: 23-22 13-11
0:You:6 6
1:You:12-18 12-18 12-18 12-18
0:zyxtcba:6 6
1:zyxtcba: 22-16 22-16 13-7 11-5
0:You:4 4
1:You:18-22 18-22 19-23 17-21
2:zyxtcba:
4:You:
0:zyxtcba:5 3
1:zyxtcba: 13-8 16-13

If the file is not empty, you might be able to reconstruct the match and convert it to jelly format.

if the file is empty, then its another matter altogether (server problem?)

If you want make a copy of the .match file and email it to me I will open it and take a look.

Hopefully someone more knowledgeable will give some input.

inim

Javafibs has known problems with correctly logging resumed matches. So please do not rely on that ability and try to finish matches in one go. Sorry for the bug, but a little late to fix it now. It's a toughy, i tried to fix it some time back in vain.
This space is available for rent by advertisers. Call 0900-INIMITE today, and see your sales skyrocketing in no time! New customers receive free Vl@9rå and a penis enlargement set as a bonus! We support banners, flash banners, and scrollers. Discrete handling by our HQ on the Dutch Antilles.

diane

Moonshadow is right - and I have had this problem in the past. The only way is to go back to the original file, fix the error in a text editor, then convert it manually.

It isn't always possible to get matches to play in one go - if your opponent loses connection for example, which I have had a few times with the IIBF matches, and the manual fixes will be required.

I am not aware of a better interface for it - the same thing happens with fibzilla and not many other interfaces save the matches at all.

The main thing that would help, is if IIBF opponents learn not to disconnect deliberately to fix a stalled match, but to use commands to get the game going again.
Never give up on the things that make you smile

inim

Thinking about the problem, I suggest another workaround: the good old "oldmoves" command of fibs. It can display old matches for a very limited time after completion, namely before the next garbage collection of the server. So if you use it immediately, you have a good chance to get the match log. Copy it to a text editor. Gnubg can read those files (albeit it will not say so in the respective file dialog, i reported that bug but it was ignored). So just load the file forceably, in doubt use an old version of gnubg in which "oldmoves" was still officially supported. Once gnubg has digested the moves, you can save from there in a sane format for reporting.

Caveat: Untested with recent gnubg and fibs versions, but the trick used to work in the past.
This space is available for rent by advertisers. Call 0900-INIMITE today, and see your sales skyrocketing in no time! New customers receive free Vl@9rå and a penis enlargement set as a bonus! We support banners, flash banners, and scrollers. Discrete handling by our HQ on the Dutch Antilles.

moonshadow

Quote from: inim on July 11, 2011, 01:35:15 AM
Thinking about the problem, I suggest another workaround: the good old "oldmoves" command of fibs. It can display old matches for a very limited time after completion, namely before the next garbage collection of the server.

I was able to test  "oldmoves"  as I have a 13 point resumed match I was attempting to reconstruct, but there are some apparent limitations, as oldmoves will only display all the moves of the last game played, not all the previous games in the match.

Near the end of the 14th game in the 13 pointer, my opponent mistakenly logged off before playing out the last few rolls of the match (I think he had intended to resign gammon for the match, but he had logged out before actually doing so and I later received an apology, so this is by no means a dropper)

The output for the fibs server "oldmoves" command (oldmoves <name>, where name is the username of your opponent you have the saved match with) is the javafibs System window. (Note: you must have "view game text when people roll and move" toggled ON in order for oldmoves output to be displayed.)

When I used the oldmoves command, only the moves from the 14th game in that 13 point match were displayed.

In other words, even though Games 1-13 and part of Game 14 of the 13 pointer were all played in one session with no dropped connections or breaks, the oldmoves command only displayed the moves from the last game played.

The oldmoves command will be of limited use in reconstructing resumed matches comprised of more than one game.

moonshadow

What happens when you have javafibs set to record all your matches and you have a resumed match:

When you start a new match what javafibs does is create a file, eg., moonshadow.match, where "moonshadow" is the username of your opponent.

If you successfully complete the match without resuming javafibs automatically changes that file name to You_vs_moonshadow(plus the date and some other unique numbers).match

At that point it erases the moonshadow.match file.

However if the match is interrupted javafibs will keep all of the moves in the match to that point in that moonshadow.match file and if you look where javafibs stores all your matches, you will find all of the remnants of your resumed matches.

However, the problem is that when you resume the match javafibs does NOT record the moves from that point onward anywhere. It doesn't record them in a separate file and it doesn't record them in the old moonshadow.match file either.

The only way I have found to be able to record a complete resumed match:

So if you have a resumed match you want to have a complete record of, when you and your opponent actually resume the match on the FIBS server, someone must keep a manual record of all the moves from that point until the end of the match.

After the match is completed, open the moonshadow.match file (where moonshadow is the usernmame of your opponent) with a text editor where all the previous moves are stored and combine those with the manual record you made during the match either into a javafibs or jellyfish text file. Once in jellyfish text format, gnubg will be able to open it.


Caveat: I'm not a programmer and know nothing about computer languages.