• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Our friends from the Johto Times are hosting a favorite Pokémon poll - and we'd love for you to participate! Click here for information on how to vote for your favorites!
  • 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.

Certain forms of Unown in a map

  • 10
    Posts
    9
    Years
    • Seen Oct 15, 2022
    Hello dear people,

    I was wondering how to put certain forms of unown in a map. Say in map 1 I want only unown A, D, Q, S and V to encounter. In map 2 only B, F, M, X and Z... How could I do that?

    And to make it a little bit more complicated, I looked at the script pokemonmultipleforms and didn't understand it :P

    ????

    MultipleForms.register(:UNOWN,{
    "getFormOnCreation"=>proc{|pokemon|
    next rand(28)

    ????

    Or someone knows a game where this already happened? I could just look there then... :P
     
    Last edited by a moderator:
    Code:
    MultipleForms.register(:UNOWN,{
       "getFormOnCreation"=>proc{|pokemon|
         bob=[]
         if $game_map.map_id==1 # "Map 1", change to the actual map ID number for Map 1
           bob=[0,3,16,18,21] # Unown A is form number 0
         elsif $game_map.map_id==2 # "Map 2", change to the actual map ID number for Map 2
           bob=[1,5,12,23,25] # Unown Z is form number 25
         end
         next bob[rand(bob.length)] if bob.length>0
         next rand(28)
       }
     
    Ahh thank you!! :D

    One more question, how could I set the probability per form now? So one form will encounter "often" while another is "rare".
     
    I managed to find out the last question by myself but also have a new question...

    This first one works...
    The second one gives only bob=[26] as result... Why is that? And why does the first one work well?

    Also if you have another (easier) code you can always say it :)

    1:
    bob=[1] if rand(100)<100
    bob=[15] if rand(100)<80 # Unown Z is form number 25
    bob=[26] if rand(100)<40

    2:
    bob=[1] if rand(100)<40
    bob=[15] if rand(100)<80 # Unown Z is form number 25
    bob=[26] if rand(100)<100

    This is the code I use now (based on yours of course)

    MultipleForms.register(:UNOWN,{
    "getFormOnCreation"=>proc{|pokemon|
    bob=[]
    if $game_map.map_id==80 # "Map 1", change to the actual
    #map ID number for Map 1
    hut=[0,3,16,18,21] # Unown A is form number 0
    elsif $game_map.map_id==81 # "Map 2", change to the actual
    #map ID number for Map 2
    bob=[1] if rand(100)<100
    bob=[15] if rand(100)<80 # Unown Z is form number 25
    bob=[26] if rand(100)<40
    end
    next bob[rand(bob.length)] if bob.length>0
    next rand(28)
    }})
     
    Code:
    MultipleForms.register(:UNOWN,{
       "getFormOnCreation"=>proc{|pokemon|
         bob=[]
         if $game_map.map_id==1 # "Map 1", change to the actual map ID number for Map 1
           bob=[0,3,16,18,21] # Unown A is form number 0
         elsif $game_map.map_id==2 # "Map 2", change to the actual map ID number for Map 2
           bob=[1,5,12,23,25] # Unown Z is form number 25
         elsif $game_map.map_id==3 # Example map where certain Unown are more likely
           bob=[
             1,1,1,1,1, # B form is five times as likely
             4,4,4,       # E form is three times as likely
             6              # G form is the rarest
           ]
         end
         next bob[rand(bob.length)] if bob.length>0
         next rand(28)
       }
     
    Back
    Top