BUG? Novice Zone, all terrain returns "wall"



  • Essentially,

    I just respawned and my code didn't work. Found out that queries for terrain at non-wall spots were returning "wall". Eventually did a lookForAtArea on the entire room, and found that the entire room is one big wall. This is a new novice area, so my suspicions are that something somewhere is cached. Another player (fritee) was able to reproduce. This seems localized to this novice area. More details in the conversation below.

    (slack conversation below)

    Anwinity [12:17 PM]

    uploaded and commented on this image: image.png

    alt text

    Guys, can somebody explain this to me... I am very confused.

    Anwinity [12:19 PM]

    Basically i'm querying the terrain at that spot, which is clearly a swamp, but it's returning wall in the code

    In fact, spot checking numerous swamp/wall/plain in the room, they all return wall...

    does not behave this way in sim either

    Iranite [12:40 PM]

    the code works for me. i find swamp where there is swamp.

    smitt33 [12:41 PM]

    @Anwinity Are you on multiple shards?

    Anwinity [12:41 PM]

    Nope

    just shard2

    Though I just respawned (same shard)

    Also, I removed all of my code and reloaded window, and it's still happening

    fritee [12:52 PM]

    Try using Game.map.getTerrainAt

    Does it get you a different result?

    Anwinity [12:55 PM]

    still wall

    Game.spawns["Spawn1"].room.lookForAt(LOOK_TERRAIN, 38, 18);

    wall

    Game.getObjectById("59f1a11a82100e1594f37bdc").room.lookForAt(LOOK_TERRAIN, 38, 18);

    wall

    Game.map.getTerrainAt(38, 18, "W29N59");

    wall

    extra sanity check:

    Game.shard.name + Game.map.getTerrainAt(38, 18, "W29N59");

    shard2wall

    fritee [1:01 PM]

    Does room.lookAt also return walls?

    You can also try cleaning cache for screeps

    If not, then suspect its a bug

    Game.map.getTerrainAt(38, 18, "W29N59");

    wall

    Hmmm

    Same

    Anwinity [1:02 PM]

    JSON.stringify(Game.rooms.W29N59.lookAt(38, 18));

    [{"type":"terrain","terrain":"wall"}]

    I think it's only this room...

    Game.map.getTerrainAt(29, 30, "W30N59");

    plain

    fritee [1:05 PM]

    It also might be the case that this happened due to newbie zone opening up just a while ago. Maybe some caches weren’t updated?

    Sergey [1:05 PM]

    What about lookAtArea try to look at small square (3x3) to understand what wrong.

    fritee [1:05 PM]

    Probably will return all walls

    But trying out can help

    Yup, seems like it happens with all the rooms in the newbie zone

    Anwinity [1:07 PM]

    ahh..

    How long is that normally cached for you think?

    fritee [1:07 PM]

    Have literally no idea

    Best bet would be to continue developing that particular piece after some time, and if bug persists, report it

    Anwinity [1:09 PM]

    @Sergey lookForAtArea shows the entire room is one big wall

    i really like this room so ima give it a day and hope it clears up :l

    thanks for the help

    Saruss [1:10 PM]

    did any other player test that? Everyone on shard2 could do

    Anwinity [1:10 PM]

    It seems localized to this novice area

    fritee [1:10 PM]

    I did

    Returns a wall

    At least Game.map.getTerrainAt. Doubt behaviour with other functions would be different

    Saruss [1:11 PM]

    Bad thing. There are other problems with newbiezones (like hard to detect where they end). But this one should be posted in Forum, as it destroys automated building code etc.

    fritee [1:12 PM]

    True. My guess is that because the bug is localised and only relevant to newbie zones wasn’t reported previously

    Anwinity [1:12 PM]

    Yeah I'm going to write up a forum post


  • Dev Team

    Thanks, we'll take a look



  • Little extra info, in case it's useful. This also looks like it breaks pathfinding for the affected rooms.


  • Dev Team

    Yeah, pathfinding is broken because of wrong terrain information.


  • Dev Team

    This was fixed a while ago, please report if you still experience this issue.