Skip to content

regresion: cada salida al campo es exactamente el mismo campo #3

Description

@leocagli

La semilla dejo de pasarse y quedo fija en 1, asi que todas las excursiones son el mismo mapa con los mismos bichos en las mismas coordenadas.

$ grep -n "new Field(" lib/game.js
803:      this.field = new Field({ player: this.player })
840:          this.field = new Field({ player: this.player })

lib/field.js hace this.seed = opts.seed ?? 1.

salida 1: seed=1  mosquito@17,14 mosquito@19,17 mosquito@29,26 ...
salida 2: seed=1  mosquito@17,14 mosquito@19,17 mosquito@29,26 ...
salida 3: seed=1  mosquito@17,14 mosquito@19,17 mosquito@29,26 ...
salida1 === salida2 : true

Arreglo

Reponer this.excursion = 0 en el constructor y derivar la semilla en las dos puertas:

this.excursion++
const seed = (this.excursion * 2654435761 + this.player.xp * 40503 + this.player.gold) >>> 0
this.field = new Field({ player: this.player, seed })

Derivada y no aleatoria, para que una partida siga siendo reproducible. Conviene extraer las dos puertas a un solo metodo, porque hoy el mismo new Field esta duplicado y el arreglo hay que hacerlo dos veces.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardThird CampaignCampaign: Third CampaignbugSomething isn't workingregresionAlgo que andaba y dejo de andar

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions