• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Mach and Acrobike help needed

23
Posts
11
Years
  • Seen Aug 29, 2019
So I've been trying to implement the Acro and Mach Bikes into a vanilla version of 17.2 Essentials. The script I'm using is quite an old one I found for essentials v14 (Kudos to REI) and I've performed a little cleanup to make it compatible with v17.2, and everything seems to work fine, the animations and terrain tags all work as are supposed to (though I am using placeholder graphics at the moment for the acro bike wheelies).

My issue is that bridges are completely broken, and the character is able to walk on the edge tile of a lake (though strangely not the ocean tiles). The player cannot walk further into the water, and surfing still functions normally.

I get the following error on attempting to navigate a bridge from above or underneath:

bqGaZWl.png


I believe the error lies in this portion of script (see spoiler tag for full script)

Code:
for i in [2, 1, 0]
      tile_id = data[x, y, i]
      next if tile_id && @terrain_tags[tile_id]==PBTerrain::Bridge &&
             [COLOR="Red"] $PokemonMap && $PokemonMap.bridge==0[/COLOR]
      if tile_id == nil
        return false
      # Make water tiles passable if player is surfing
      elsif PBTerrain.isPassableWater?(@terrain_tags[tile_id]) &&
         [COLOR="red"]$PokemonGlobal.surfing #&& self_event==$game_player[/COLOR]
        return true
      elsif @terrain_tags[tile_id]==PBTerrain::TallGrass &&
         $PokemonGlobal.bicycle && self_event==$game_player
        return false
      elsif @terrain_tags[tile_id]==PBTerrain::Bridge [COLOR="red"]&& $PokemonMap &&
            $PokemonMap.bridge>0[/COLOR]
        if @passages[tile_id] & bit != 0 ||
           @passages[tile_id] & 0x0f == 0x0f
          return false
        else
          return true
        end

I could be completely wrong, but from what I can see, from my limited understanding and the error above that the metadata doesn't define the player being on a 'bridge' so removing that condition does stop the crash from happening, however, bridges then become impassable from the top (though are passable underneath) and attempts to do the same for surfing just results in all water tiles becoming passable. Due to my lack of experience, I am unsure of what these checks are actually checking for in setting the passibility, so I could really use some help in dissecting this problem to ensure any solution keeps feature functioning as intended.

Here is my full script. I inserted it above main.

Spoiler:
 
Last edited:
Back
Top