I got some time to make sense of things this weekend

Not sure, could be multiple reasons.
Also I updated it recently to handle the new directory format, unless something else changed even more recently. Will run it tonight at home to see what is happening. I do have a build on the releases for 1.0.1 which should work correctly.

Sadly, you only get output if you run it in a debug build.

It might be good to know, now that I think about it. When I built the release version, I included a compiler directive. The config file is found in the directory of the exe for the release build. That directory gets trashed when I commit the source, as it is a bin folder.

For a debug build it is located at the location found in the github repo. Might be worth considering. Something I brought in when I updated the code to 1.0.1

Hey, Sorry for not replying sooner, I have not managed to get it working yet. But its cool for now, I will sit with the console for a bit first. If I manage to figure it out I will let you know.

You compiling it yourself or using the release binary?
If you compiling it yourself and running it that way, you should get output telling you whats wrong.

I will test the release build on github quickly and see if it still stand for the new version, but at first glance it should.

I can confirm it doesn’t work with the new build, will fix it quickly

Hey, Sorry, I did not use the release binary, I did not see it. I compiled it myself but what happened was the application just showed a blank screen regardless of where I point the config (before and after compilation).

I did not make too much of it as I am generally not experienced in debugging the actual source and adapting it in this case. I’m not good with UI kind of stuff… I have not focused on that kind of work yet, Its a skill in its own really. Will wait for your new release and give it another go. This will help me build a monster AI. Will make things simpler most definitely.

I think the problem is the old replay format, will update the current viewer to be backwards compatible with the old directory structure.

Updated to be backwards compatible. Seems that ulrikdem fixed the issue for me as well. Big thumbs up him.

Try the latest release, I have put some messages in for clarity should something break. Launch it from command line. The way that HaXe handles try-catch is a bit different. Still getting used to the language.

Spoke to quickly, trying other directories and seems there is still another thing I am not catering for. Debugging quickly…

Seems it was working, I screwed up the config for the match directory. Config differs across the different machines that I am working on.

I managed to get a replay visualizer working, But that was not yours… It was a different one built in unity. more 3D… Wheres your release binary? I like your 2D Graphics. Though I will use the one I found for the moment…

be kind to link the 3d one, interested mostly.

Itr is in the public domain: https://github.com/dlweatherhead/entelect-challenge-2018-visualiser

Im still not getting yours to work just yet. Dies seem directory related.

I just tried on another machine with the zip. Works for me on the other machine, both windows. Does your configured match directory use back- or forward-slashes for the path?

It will break if you use back-slashes. Though I am assuming you doing forward-slashes and that I am struggling to think what it might be. You have anything printed to the console?

At first I used this:
C:\Users\MyUserName\Desktop\EntelectChallenge2018\BotVisualizer\tower-defence-matches

But after inspecting the config.json I started using this:

C:/Users/MyUserName/Desktop/EntelectChallenge2018/BotVisualizer/tower-defence-matches

The console closes quite fast and the bat does not force it to stay open, I managed to screenshot the issue:

Main.hx:141: ERR: Invalid field Access: substring.

I have a number of computers so will try and run it on my trident. Will give more feedback regarding that results later on.

Yes, the first one will definitely break the visualiser. Going to check the source and see what it is referring to. If you start the exe from console you keep the log.

Do me a favor and post what is in your final round folder?
Seems that it is struggling to retrieve the folder names for the bots there.
I can then simulate the error on my side by renaming those folders.

e.g.

var rounds = FileSystem.readDirectory(config.matchDirectory + “/” + match);
var players = FileSystem.readDirectory(config.matchDirectory + “/” + match + "/Round " + pad(rounds.length - 1));
if (players[0] != “endGameState.txt”)
{
if (players[0] != “Player 1”)
{
aName = players[0].substring(4);
bName = players[1].substring(4);
}
else {
aName = players[0];
bName = players[1];
}
playerA = players[0];
}

Brilliant, Thank you. One of my matches I terminated ahead of completion. As a result only one of the Player’s info were in the folder. This messed with the replay-viewer, I got this to work. Now I can start with my AI…

This just makes debugging so much easier… Thanks

I will update to handle this scenario. Glad to hear you came right.

1 Like

Hi. Is it possible to compile the replay-viewer on Mac?