Release v2024.0.1 · EntelectChallenge/2024-Sproutopia

Good afternoon everyone :blush:
Apologies for the delay version 2024.0.1 is now out!
Please read the release notes for a more detailed description of the changes.

Thank you to everyone who has contributed and raised issues with us!

We will be addressing all comments in continuous bug fix releases throughout the coming weeks
If we have not addressed your bug or issue yet please bear with us for the time being :pray:

Thanks again,
Game Engine team :nerd_face:

2 Likes

So excited to get started early for a change…

Lets see what Entelect has for us this year, Will say if i find anything interesting while I’m digging through this…

Thanks for the update!

However, when I try to run the run.cmd file, the below happens. Still missing the Dockerfile, it seems?

(unless I’m just doing something silly)

run.cmd
Building Docker image 'sproutopia'...
[+] Building 1.2s (2/2) FINISHED                                                                         docker:default
 => [internal] load build definition from Dockerfile                                                               0.3s
 => => transferring dockerfile: 2B                                                                                 0.0s
 => [internal] load .dockerignore                                                                                  0.4s
 => => transferring context: 2B                                                                                    0.0s
ERROR: failed to solve: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount3802271001/Dockerfile: no such file or directory
Unable to find image 'sproutopia:latest' locally
docker: Error response from daemon: pull access denied for sproutopia, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
See 'docker run --help'.

I have had the same issue on linux.

Building Docker image 'sproutopia'...
[+] Building 1.7s (2/2) FINISHED                                 docker:default
 => [internal] load .dockerignore                                          1.1s
 => => transferring context: 2B                                            0.0s
 => [internal] load build definition from Dockerfile                       1.2s
 => => transferring dockerfile: 2B                                         0.0s
ERROR: failed to solve: failed to read dockerfile: open /var/snap/docker/common/var-lib-docker/tmp/buildkit-mount1920267438/Dockerfile: no such file or directory
Unable to find image 'sproutopia:latest' locally
docker: Error response from daemon: pull access denied for sproutopia, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
See 'docker run --help'.

I managed to get the engine running, with a bit of effort.

Now that I have done that, I have another question - where are the replay logs stored? I can see a file called engGame.json that seems to contain game summaries, but not a tick-by-tick replay of a match.

Edit: Nevermind, I found the log.gz file. :slight_smile:

Did you get it to work with run file or visual studio maybe?

I took some inspiration from @cairnswm’s post here:

Install the .NET 8.0 SDK and run dotnet run Sproutopia.csproj in the Sproutopia directory.

2 Likes

I’m back on the game engine log files - I tend to use them quite extensively when testing and debugging a bot.

Can we please get game state logs in valid Json? The content of the log file in the log.gz archive that the engine generates is in a Json-like structure, but it does not appear to be valid Json (see below).

GameStateDto { CurrentTick: 1, Land: [[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,  ...

Running it through jsonlint.com produces the below:

Error: Parse error on line 1:
GameStateDto { Curre
^
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', got 'undefined'
1 Like