Game Engine Updates

A new release (1.1.0) was just made for the Game Engine, Game Runner and Starter Pack.

Download the new version here.

Release notes

  • Added new languages support
    • Python2
    • Python3
    • Kotlin
    • Rust
    • C++
  • Added textMap.txt output for bots as an alternative to state.json
  • Fixed weaponCoolDownTimeLeft not updating on Player B map
  • Changed health based score calculation
  • Fixed multiple missiles being destroyed when hitting a weak building
  • Fixed various minor bugs

Breaking Changes

  • Changed game-runner to utilize bot.json rather than config.json

A new release (1.1.1) was just made for the Game Engine, Game Runner and Starter Pack.

Download the new version here.

Release notes

  • Added new languages support
    • Haskell
    • Golang
    • PHP
  • Added new config setting game-config-file-location. This is the path to the game-config.properties file that is used to set various game-engine settings such as map size and building stats.
  • Added new config setting verbose-mode. This can be set to false to avoid map output, increasing console performance.
  • Added buildingsStats property to the gameDetails in state.json. This gives players more information about each building type they can construct.
  • Fixed various minor bugs.

Breaking Changes

  • buildingPrices has been deprecated in favour of the buildingsStats property of gameDetails.
1 Like

A new release (1.1.2) was just made for the Game Engine, Game Runner and Starter Pack.

Download the new version here

Release notes

  • Added new languages support
    • LISP
  • Added maxRounds property to the gameDetails in state.json and textMap.txt. This is the maximum number of rounds that the match can last.
  • Added roundIncomeEnergy property to the gameDetails in state.json and textMap.txt. This is the amount of energy that a player will receive by default every round.
  • Added speed property to the missiles in state.json and textMap.txt. This is the amount of cells that a missile will move in one round.
  • Game balancing changes, including increasing missile speed.
  • Changes to scoring points.

Breaking Changes

  • map size has been has been increased to a width of 16 cells and height of 8 cells.
  • C++ and LISP starter-bots are inoperable for the time being due to these changes.
1 Like

I seem to be getting a bug in the latest release (with the missile speed upgrade) which destroys 2 adjacent buildings in a row at the front-line instead of just destroying the first tower…

Those are rather large changes to make a week before the tournament, sigh

Great catch!

Yes it seems missiles were not removed immediately after hitting an entity
You can track the progress here

1 Like

Still can’t run the python version: Bot execution failed: Cannot run program “py”.

You should pin this topic.

1 Like

after struggling with this for a bit myself i resorted to making a symlink called “py” pointing to python…super hacky but worked for me :man_shrugging:

I agree - some pretty big changes to the rules, going way beyond simple bug fixes and new sample bots.

Changing missiles speeds at this point is frustrating - I only expected that after the first tournament.

1 Like

Yeah, the missile speed change is really putting pressure on participants so close to the tournament.

Anyhow, can we get more detail on “Changes to scoring points”?
Has the formula changed? The Game Rules don’t seem to have been modified.

1 Like

Due to the map size effectively doubling to the new 16x 8y size, the missiles would have taken twice as many rounds to reach the other side of the map. This considerably slowed down the game pace, with missiles stacking up on rows.

The score changes are:

#Game Config
game.config.health-score-multiplier = 15

#Basic Wall Config
game.config.defense.config.construction-score = 10

#Basic Turret Config
game.config.attack.config.construction-score = 4

#Basic Energy Generator Config
game.config.energy.config.construction-score = 3

These can be found in here. By constructing buildings you will now receive more points than before, but if the enemy destroys these buildings they still gain more points.

5 Likes

That’s helpful, thanks. :slight_smile:

Suggest adding the healthScoreMultiplier and energyScoreMultiplier to state.json gameDetails for future releases.

A new release (1.1.3) was just made for the Game Engine, Game Runner and Starter Pack.

Download the new version here

Release notes

  • Fixed missiles damaging adjacent buildings when moving at speeds of more than 1 cell per round
  • Added explanation of archive structure for bot uploads ReadMe
1 Like

Just when I had a perfect bot… Boom, Maps bigger (G)…

Now I need to calibrate…

1 Like

Release 2.0.0

New version 2.0.0 for the Game Engine, Game Runner and Starter Pack.

Download the new version here

Release notes

  • Added the mighty Tesla Tower :tokyo_tower:
    • An end-game building that does massive damage to enemy buildings in a single strike, but is extremely expensive to build and maintain.
    • It can damage the enemy’s health pool if built on the front line
  • Added Deconstruct command to remove your own existing buildings :heavy_multiplication_x:
  • Added a new starter bot
    • Scala
  • Fixed missile movement to process in a predictable manner
  • Improved console output to no longer flicker/scroll along while displaying the map. It now displays the map frame-by-frame
1 Like

Release 2.0.1

New version 2.0.1 for the Game Engine, Game Runner and Starter Pack.

Download the new version here

Release notes

  • Fixed Tesla tower issues
    • Damage to player calculated incorrectly
    • Player score not being allocated
  • Fix missile speed to move at 2 cells per round
1 Like

I think something is wrong…image
It still looks like a tesla tower is killing its owner…

Release 2.0.2

New version 2.0.2 for the Game Engine, Game Runner and Starter Pack.

Download the new version here

Release notes

  • Fixed version numbers for game-engine that didn’t propagate Tesla tower fixes to the starter-pack
1 Like