• 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.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Our weekly protagonist poll is now up! Vote for your favorite Trading Card Game 2 protagonist in the poll by clicking here.
  • 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.

[Scripting Question] Pokemon Essentials v18 New Form help

  • 19
    Posts
    3
    Years
    • Seen Aug 12, 2022
    I need to make a Pokémon change its form when night/day and i dont know how to do it, pls help

    Thanks in advance :)
     
    Last edited:
    If you want the Pokémon to continuously change forms, you can check the way Rockruff works:

    Code:
    MultipleForms.register(:ROCKRUFF,{
      "getForm" => proc { |pkmn|
        next if pkmn.formSimple>=2   # Own Tempo Rockruff cannot become another form
        next 1 if PBDayNight.isNight?
        next 0
      }
    })

    or if you want a Pokémon whose form is defined by the time of the day, but when you catch that Pokémon, its form no longer changes, you can check the way Lycanrock works:

    Code:
    MultipleForms.register(:LYCANROC,{
      "getFormOnCreation" => proc { |pkmn|
        next 2 if PBDayNight.isEvening?   # Dusk
        next 1 if PBDayNight.isNight?     # Midnight
        next 0                            # Midday
      },
    })
     
    If you want the Pokémon to continuously change forms, you can check the way Rockruff works:

    Code:
    MultipleForms.register(:ROCKRUFF,{
      "getForm" => proc { |pkmn|
        next if pkmn.formSimple>=2   # Own Tempo Rockruff cannot become another form
        next 1 if PBDayNight.isNight?
        next 0
      }
    })

    or if you want a Pokémon whose form is defined by the time of the day, but when you catch that Pokémon, its form no longer changes, you can check the way Lycanrock works:

    Code:
    MultipleForms.register(:LYCANROC,{
      "getFormOnCreation" => proc { |pkmn|
        next 2 if PBDayNight.isEvening?   # Dusk
        next 1 if PBDayNight.isNight?     # Midnight
        next 0                            # Midday
      },
    })

    it doesnt changes form when it's day or night tho, i change the clock of my computer to test and it shows the same sprite when day/night
     
    it doesnt changes form when it's day or night tho, i change the clock of my computer to test and it shows the same sprite when day/night

    What did you do exactly?
    You're supposed to adapt the corresponding code (Lycanroc or Rockruff) to your own Pokémon, also you need to define the form of your Pokémon in the PBS file pokemonforms.txt and also also, have sprites for each form.
     
    What did you do exactly?
    You're supposed to adapt the corresponding code (Lycanroc or Rockruff) to your own Pokémon, also you need to define the form of your Pokémon in the PBS file pokemonforms.txt and also also, have sprites for each form.

    My Pokemon is supposed to change its form depending on the time. I copied the script of Rockruff but replaced ROCKRUFF with the name of the Pokemon
     
    My Pokemon is supposed to change its form depending on the time. I copied the script of Rockruff but replaced ROCKRUFF with the name of the Pokemon

    Do you have sprites for the different forms of your Pokémon?
    Have you defined the different forms in the PBS file pokemonforms.txt?
     
    Do you have sprites for the different forms of your Pokémon?
    Have you defined the different forms in the PBS file pokemonforms.txt?

    Yes, i already have the night form sprite and its defined in Pokemonforms.txt
     
    You said you copied Rockruff's code; actually the script is to be adapted:
    Code:
    MultipleForms.register(:YOURPOKEMON,{
      "getForm" => proc { |pkmn|
        next 1 if PBDayNight.isNight?    # Night
        next 0                           # Day
      }
    })
    Assuming form 0 is the day form and form 1 is the night form.
     
    Since you're talking about lycanroc, I wanted to ask you a question: why, if I have a Rockruff and evolve it at 5 PM, doesn't it evolve to duskform?

    sorry for the bad English

    ya que hablan de lycanroc queria hacerles una pregunta ¿por que si tengo un Rockruff y lo evoluciono a las 5 Pm no evoluciona al duskform?
     
    According to Bulbapedia:

    A Rockruff with Own Tempo evolves into Dusk Form Lycanroc when leveled up from 7 PM to 7:59 PM in real-time (Generation VIII) or 5 PM to 5:59 PM in in-game time (Pokémon Ultra Sun and Moon, equating to 5 PM to 5:59 PM in real-time for Ultra Sun and 5 AM to 5:59 AM in real-time for Ultra Moon).

    Rockruff needs to have Own Tempo and be level 25. Do you meet these conditions?
     
    if it meets the conditions but not the same it evolves to the Midday Form I am using essentialv v18.1 with the 8th generation project

    "It meets the conditions but not the same"?
    Thus, it doesn't meet the right conditions!

    I use the Gen8 project for Essentials v18.1 too.

    Rockruff needs to be generated in form 2. It cannot switch form depending on the time of the day. Can you check if your Pokémon is in form 2?
    Create an event, and paste this line in a script in that event:
    Code:
    pbMessage(_INTL("Rockruff form = {1}", $Trainer.party[0].form))
    Then put Rockruff at the first position in your party, and talk to that event. What form is it ?
     
    Hello
    Does anyone have an extra own tempo Rockruff ? or can breed one for me? Unfortunately I can't offer anything good in return.
    My FC: SW-0067-5433-3217
    Thank you in advance
     
    Back
    Top