• Do not use Discord to host any images you post, these links expire quickly! You can learn how to add images to your posts here.
  • Eevee Expo's webhost has been having technical issues since Nov. 20th and you might be unable to connect to our site. Staff are also facing issues connecting, so please send a DM to Cat on-site or through Discord directly for faster service!
Use SURF with any WATER type pokemon

Resource Use SURF with any WATER type pokemon 1.0

Tzeolon

Rookie
Member
Joined
Aug 9, 2023
Posts
6
Tzeolon submitted a new resource:

Use SURF with any WATER type pokemon - Surfing without SURF move (just the gym badge, and any WATER type pokemon)

With those simple scripts, the player can surf without teaching SURF to a pokemon in the party. He just needs to have the badge that allows him to surf, and a WATER type pokemon in his party.
  • First, edit the pbSurf method (Overworld_FieldMoves, line:737) in this way: View attachment 20876
  • Now just define the method "get_pokemon_with_type" in the Trainer script file (better if defined under the "get_pokemon_with_move" method(line:156), as the image...

Read more about this resource...
 

tammyclaydon

Novice
Member
Joined
Mar 21, 2022
Posts
35
does this still allow for non water types who can learn surf to still surf such as dragonite or mew?
 

LinKazamine

Champion
Member
Joined
May 24, 2023
Posts
683
Well, if you follow the steps as they are written, I think it would not. What you need to do is tell the game to allow surfing if the player has a pokémon who knows surf or is a water type in the team.
This would be the code of the pbSurf method instead:
Ruby:
Expand Collapse Copy
def pbSurf
  return false if $game_plaer.pbFacingEvent
  return false if !$game_player.can_ride_vehicle_with_follower?
  type = :WATER
  move = :SURF
  movefinder = $player.get_pokemon_with_move(move)
  movefinder = $player.get_pokemon_with_type(type) if !movefinder
  if !pbCheckHiddenMoveBadge(Settings::BADGE_FOR_SURF, false) || (!$DEBUG && !movefinder)
    return false
  end
  if pbConfirmMessage(_INTL("The water is a deep blue color... Would you like to use Surf on it?"))
    speciesname = (movefinder) ? movefinder.name : $player.name
    pbMessage(_INTL("{1} used {2}!", speciesname, GameData::Move.get(move).name))
    pbCancelVehicles
    pbHiddenMoveAnimation(movefinder)
    surfbgm = GameData::Metadata.get.surf_BGM
    pbCueBGM(surfbgm, 0.5) if surfbgm
    pbStartSurfing
    return true
  end
  return false
end
I think this should work. Haven't checked, so not sure. But as you see, is just one more line.

You can change the order of defining the "movefinder" like this:
Ruby:
Expand Collapse Copy
  movefinder = $player.get_pokemon_with_type(type)
  movefinder = $player.get_pokemon_with_move(move) if !movefinder
This code will check for water types before pokémon that know surf and use them instead. Be aware that the name used will be of the first pokémon that matches the conditions.
 
Back
Top