boardgamers / gaia-engine

Javascript engine for project gaia
MIT License
13 stars 6 forks source link

Impossible to replay #192

Closed rzulian closed 5 years ago

rzulian commented 5 years ago

You cannot replay this game. You get "impossible to build at -1x1" But if you do it manually it works. Seed added in map.ts as oldGen.

init 4 SalmurOnTheBoard
p1 faction bescods
p2 faction hadsch-hallas
p3 faction nevlas
p4 faction ambas
bescods build m -1x1
coyotte508 commented 5 years ago

Impossible to replay in tests, or in the viewer?

rzulian commented 5 years ago

In the viewer

Il giorno 23 ott 2018, alle ore 15:17, coyotte508 notifications@github.com ha scritto:

Impossible to replay in tests, or in the viewer?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

coyotte508 commented 5 years ago

So I managed to execute the log fine in the viewer without changes (steps below).

But I had a problem when entering replay mode. That was very annoying. Basically numbers converted to string when doing a HTTP POST call and the coordinates of the centers of the sectors were all messed up. I resorted to encoding the whole payload of the query (JSON.stringify) and decoding it serverside, because god I had that browser behavior which also forces me to check === "true" (the string value) on the site's end.

Steps:

  • check / uncheck the satellites in the nav bar
  • select 4 players game
  • paste log

Without modifying oldGen, you obtain the map with the same sectors but mirrored. With adding SalmurOnTheBoard to oldGen, you get the correct map.

// Line 108 of engine.ts
const oldGen = ["Gianluigi-Buffon", "randomSeed", "12", "9876", "yellow-paint-8951", "green-jeans-8458", "Fastgame01", "zadbd", "bosco-marcuzzo3", "Alex-Del-Pieroooooo", "SGAMBATA", "djfjjv4k", "randomSeed2", "randomseed", "polite-food-8474", "green-jeans-8458", "waiting-fabs-1", "curious-stay-2150", "Three", "GaiaRocks", "SalmurOnTheBoard"].includes(this.seed);
rzulian commented 5 years ago

Thanks!