• 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.

[Archive] Pokemon Essentials: Starter Kit for RPG Maker XP

Status
Not open for further replies.
2,048
Posts
16
Years
    • Age 31
    • Seen Sep 7, 2023
    Try 6 event pages.
    1: The intro speech, etc. Set to event touch. Then turn self switch A on.
    2,3,4: A battle on each page. Autorun, conditions: self switch A and the appropriate rival switch. Then turn self switch B on.
    5. Autorun, condition self switch B. After battle speech. Then turn self switch C on.
    6. Action button, self switch C. Blank.

    Try that.
     

    NeoStar

    Future Scripter Extraordinaire
    45
    Posts
    16
    Years
  • @ Krobleus: Not entirely sure what it does I think it ends the trainer battle? I just put it in there because notes.html said that it had to be in there....

    @ Everyone Else: Finally got it working. Here's what i had to do after trying out everyones suggestions. Just in case someone else is trying to do this event and has difficulties.

    Code:
    Page 1:
    
    #Make an event so everything runs. I called it Elm Event 4
    Conditions: Elm Event 4 Is On
    Trigger: Event Touch
    
    Script:Kernel.pbNoticePlayer(get_character(0))
    Wait: 15 Frames
    Set Movement Route: Player, Turn right,
    Set Movement Route: Rival, Move Left, Move Left, Move Left, Move Left, Move Left, Move Left
    Wait For Moves Completion
    Text: ..... ..... .....
    Text: You got a pokemon at the lab.
    Text: What a waste a wimp like you.
    Text: Don't you get what i'm saying?
    Text: Well, I too, have a good pokemon.
    Text: I'll show you what I mean!
    Control Self Switch A = ON
    Page 2: 
    
    Conditions: Self Switch A is ON
    Trigger: Autorun
    
    Comment: Rival Choice 1 switch = Totodile
    Conditional Branch: Switch [042: Rival Choice 1] == ON
    Conditional Branch: Script: pbTrainerBattle(PBTrainers::RIVAL,"?????",_I("Humph. Are you happy you won?"),false,1)
    Branch End
    Branch End
    Control Self Switch B = ON
    
    Comment: Rival Choice 2 switch = Chikorita
    Conditional Branch: Switch [043: Rival Choice 2] == ON
    Conditional Branch: Script: pbTrainerBattle(PBTrainers::RIVAL,"?????",_I("Humph. Are you happy you won?"),false,2)
    Branch End
    Branch End
    Control Self Switch B = ON
    
    Comment: Rival Choice 3 switch = Cyndaquil
    Conditional Branch Switch [044: Rival Choice 3] == ON
    Conditional Branch: Script: pbTrainerBattle(PBTrainers::RIVAL,"?????",_I("Humph. Are you happy you won?"),false,3)
    Branch End
    Branch End
    Control Self Switch B = ON
    
    Page 3:
    Text: ..... ..... .....
    My names ?????.
    Text: I'm going to be the worlds greatest pokemon trainer.
    Set Movement Route: Player, Move Down, Turn Up, Turn Left
    # Elm event 5 is for the event where you name your rival in professor elm's lab
    
    Set Movement Route: Rival, Move Up, Move Left, Move Left, Move Left, Move Up, Move Left, Move Left, Move Left, Move Left, Move Left, Move Left, Switch Elm Event 4 OFF, Switch Elm Event 5 ON
    Wait: 60 Frames
    Erase Event
     Control Self Switch C = ON
    Page 4:
    
    Conditions: Self Switch C is ON
    Trigger: Action Button
    #Blank event with self switch c as a trigger to prevent event from looping.

    Anyway.... my second question hasnt been answered yet anyone know how to make an event where you can name your rival? Or if its been implemented?
     
    763
    Posts
    17
    Years
  • @Neostar - That's good you got it working, but for some reason, I don't use that command to end trainer battles. =/ Anyway, you can store any number/text in a variable, and call it with like \V, or something, similar to \Pn. I forgot which one it was, but yea, Poccil told me either a few pages back, or in a PM or something. I'll check afterwards =P

    -Krobe
     
    386
    Posts
    17
    Years
    • Seen Aug 10, 2015
    A new version is available.

    Changes:

    Increased number of storage boxes to 40
    Improved custom Tilemap's performance in large maps
    Changed font installation code
    Message system now supports "Change Text Options" event command
    Fixed bug in 640x480 mode where battle transitions were
    improperly displayed
    Fixed Revival Herb bug where it restored half HP and not full HP.
    New GifSprite class supports loading GIF images and animations
    Fixed bug that causes error after losing a Trainer battle

    For detailed changes, see this diff file.
     
    386
    Posts
    17
    Years
    • Seen Aug 10, 2015
    NeoStar:

    I can sense one problem with your final solution, namely that the self switch B can turn on even if the player loses the battle. Here's how to fix it:

    Code:
    Comment: Rival Choice 1 switch = Totodile
    Conditional Branch: Switch [042: Rival Choice 1] == ON
      Conditional Branch: Script: pbTrainerBattle(PBTrainers::RIVAL,"?????",_I("Humph. Are you happy you won?"),false,1)
        Comment:  If won
        Control Self Switch B = ON   
      Else
        Comment:  If lost
        Control Self Switch B = OFF
        Control Self Switch A = OFF
        Exit Event Processing
      Branch End
    Branch End
     
    92
    Posts
    16
    Years
    • Seen Jun 13, 2012
    Poccil the starter kit is too!
    But I have several questions about, if you would like me respond very happy!

    1 - I wanted to make: When the switch was activated 80 a picture of Trainer Card change, as I do that?

    2-Add a trainer card than to put many insiguinias (some 32), as I do?

    3-In the starter kit in the top left corner of poké center has an event there, ($ PokemonGlobal.seenStorageCreator =
    True), so that, and I have to move this event for pokécenter of my game?

    4-townmapgen not working, why?

    Sorry so many questions ...
    Thanks
     
    2,048
    Posts
    16
    Years
    • Age 31
    • Seen Sep 7, 2023
    Poccil the starter kit is too!
    But I have several questions about, if you would like me respond very happy!

    1 - I wanted to make: When the switch was activated 80 a picture of Trainer Card change, as I do that?

    2-Add a trainer card than to put many insiguinias (some 32), as I do?

    3-In the starter kit in the top left corner of poké center has an event there, ($ PokemonGlobal.seenStorageCreator =
    True), so that, and I have to move this event for pokécenter of my game?

    4-townmapgen not working, why?

    Sorry so many questions ...
    Thanks

    1. I'm not sure, I'll try to find out.

    2. Same as above, though it should be possible.

    3. No, you shouldn't move it: it is the script which changes SOMEONE'S PC to BILL'S PC. Use the command in the event for the Storage creator.

    4. Did you copy and paste the output into townmap.txt?
     
    3
    Posts
    16
    Years
    • Seen Feb 2, 2008
    Hey, something is wrong here...

    I have created a project of Pokemon Thunder Yellow(a game with Yellow's game story); But, when you go to Pallet Town(from inside of a house or by another route) the game stops, and I don't know why it stops(it's only Pallet, the Town... The houses are OK, and I don't have deleted any map that already was there)...

    Sorry for the errors in this text, cause I'm from Brazil...

    So, if you can help-me, please answer this post...
     
    92
    Posts
    16
    Years
    • Seen Jun 13, 2012
    Thanks
    The townmap gen simply does not work, does not give to click on the button to save and load does not load ...
     

    NeoStar

    Future Scripter Extraordinaire
    45
    Posts
    16
    Years
  • @ Poccil:

    Yeah, ill try that out right now while i'm working on Route 48. I'll edit this post if i get it working on not. Thanks for your help.

    *edit* yeah it works again thanks alot for your help. I really appreciate it.

    @ Tsunami-Dono:

    You mean it freezes completely like... just stops and you cant move or anything? Is there any error? This info would be helpful so we can help you with your problem.

    @ Everyone else:

    Have a couple more questions:

    1.Would a bank system be possible? Like in g/s/c? I'm not asking how to DO a bank system that parts easy. I was just wondering where the variable or whatever is that stores your money? I looked in the notes.html and scripts and couldnt find it. And then there would be the part of taking out a certain ammount of money every battle and storing it in the bank.

    2. Again with my Rival name question. Starting to wonder if its even possible or if i should pm Poccil about it. Id really hate to bug him about it im sure he gets enough pms already.

    3. Is it possible to add players to the phone system? Like say professor elm and your mom or would that require rewriting the script all over again?

    4. How can you get pictures for your trainers? Again ive been looking through the scripts and cant find anything on it.
     
    Last edited:
    2,048
    Posts
    16
    Years
    • Age 31
    • Seen Sep 7, 2023
    You have to copy and paste everything from townmap.txt into the box first to load.
    To save, you must have edited something on the map (click a place on the map and edit the boxes underneath).

    The money is stored in $Trainer.money (use something like Script: $Trainer.money-=$game_variables[*variable id*] to take away money, $Trainer.money+=$game_variables[*variable id*] to add money.)

    I'll try answering the rest later.
     

    golden_rex

    Learning scripter, fun mapping
    35
    Posts
    16
    Years
    • Age 33
    • Seen Dec 8, 2013
    its all complicated so i decided to give up on trying to make a hack and just play them instead.
     
    3
    Posts
    16
    Years
    • Seen Feb 2, 2008
    It freezes...

    when I put in the first event(intro) to teleport to Pallet, when the screen shows the city, it freezes, but the backsound keep playing... If you get out of a house, it's freeze on the Black screen...
     
    2,048
    Posts
    16
    Years
    • Age 31
    • Seen Sep 7, 2023
    I've done a Rival Name script:
    Change def fullname at around line 52 in PokeBattle_Trainer to:
    Code:
    def fullname
     if self.trainerTypeName=="RIVAL" && $game_variables[30]!=0
      return _INTL("{1} {2}",self.trainerTypeName,$game_variables[30])
     else
      return _INTL("{1} {2}",self.trainerTypeName,@name)
     end
    end
    Change def pbLoadTrainerData at around line 280 in PokemonPhone to:
    Code:
    def pbLoadTrainerData(trainerid,trainername,partyid=0)
     ret=nil
     trainers=load_data("Data/trainers.dat")
     for trainer in trainers
       if trainer[0]=="RIVAL" && $game_variables[30]!=0
        name=$game_variables[30]
       else
        name=trainer[1]
       end
       thistrainerid=trainer[0]
       thispartyid=trainer[4]
       if trainerid==thistrainerid && name==trainername && partyid==thispartyid
         ret=trainer
         break
       end
     end
     return ret
    end
    You have to make a new trainer type (RIVAL) for this to work, or change "RIVAL" in the scripts to the trainer type you want to use.
    It will change the trainer's displayed name to a variable, in this case 30. Just change $game_variables[30] to the number of the variable the name is stored in.
    To set the name, use:
    Code:
    Script: pbTextEntry("Your rival's 
            name?",0,7,30)
    where 30 is the variable that you want to store the name in. To use the name in a message, use /v[30], again, with the variable.

    EDIT: Also made a "bank" script. In PokeBattle_Battle, delete the line in red:
    Code:
         # If a participant is holding Amulet Coin, money earned is doubled
         for i in 0...6
          if @participants[i] && @party1[i].hp>0 && !@party1[i].egg? && @party1[i].item==PBItems::AMULETCOIN
           maxlevel*=2
           break
          end
         end
         self.pbPlayer.money+=maxlevel
         self.pbPlayer.money=999999 if self.pbPlayer.money>999999
         [color=red]pbDisplayPaused(_INTL("{1} got ${2} for winning!",self.pbPlayer.name,maxlevel))[/color]
        end
       end
       if @internalbattle && @moneygained>0
        pbDisplayPaused(_INTL("{1} picked up ${2}!",self.pbPlayer.name,moneygained))      
        self.pbPlayer.money+=moneygained
        self.pbPlayer.money=999999 if self.pbPlayer.money>999999
    and change the section to:
    Code:
         # If a participant is holding Amulet Coin, money earned is doubled
         for i in 0...6
          if @participants[i] && @party1[i].hp>0 && !@party1[i].egg? && @party1[i].item==PBItems::AMULETCOIN
           maxlevel*=2
           break
          end
        end
        pbDisplayPaused(_INTL("{1} got ${2} for winning!",self.pbPlayer.name,maxlevel))
         if $game_switches[30]==true
           $game_variables[31]+=maxlevel*0.3
           maxlevel*=0.7
           pbDisplayPaused(_INTL("Sent some to Mom!"))
         end
         self.pbPlayer.money+=maxlevel
         self.pbPlayer.money=999999 if self.pbPlayer.money>999999
    where $game_switches[30] is the ID of the switch which is on if your mother is saving money, $game_variables[31] is the variable storing the amount of money saved, and 0.3 and 0.7 are the amounts sent and kept, respectively.

    And to withdraw and deposit money, copy and paste this into a new script:
    Code:
    def pbPrepareWindow(window)
     window.visible=true
     window.letterbyletter=false
     window.baseColor=Color.new(72,72,72)
     window.shadowColor=Color.new(208,208,208)
    end
    def pbBankUse(helptext,mode)
     maximum=0
     if mode==0 #Deposit
       maximum=$Trainer.money
     else # Withdraw
       maximum=$game_variables[31]
     end
     curnumber=0
     amount=0
     helpwindow=Window_SimpleTextPokemon.new(helptext)
     helpwindow.visible=false
     helpwindow.viewport=@viewport
     pbPrepareWindow(helpwindow)
     using(numwindow=Window_SimpleTextPokemon.new(_INTL("000000"))){
       pbPrepareWindow(numwindow)
       numwindow.viewport=@viewport
       pbBottomRight(numwindow)
       numwindow.resizeToFit(numwindow.text,480)
       numwindow.text=_ISPRINTF("{1:06d}",curnumber)
       numwindow.y-=helpwindow.height
       loop do
         Graphics.update
         Input.update
         numwindow.update
         helpwindow.update
         if Input.repeat?(Input::LEFT)
          curnumber-=10
          curnumber=0 if curnumber<0
          numwindow.text=_ISPRINTF("{1:06d}",curnumber)
         elsif Input.repeat?(Input::RIGHT)
          curnumber+=10
          curnumber=maximum if curnumber>maximum
          numwindow.text=_ISPRINTF("{1:06d}",curnumber)
         elsif Input.repeat?(Input::UP)
          curnumber+=1
          curnumber=0 if curnumber>maximum
          numwindow.text=_ISPRINTF("{1:06d}",curnumber)
         elsif Input.repeat?(Input::DOWN)
          curnumber-=1
          curnumber=maximum if curnumber<1
          numwindow.text=_ISPRINTF("{1:06d}",curnumber)
         elsif Input.trigger?(Input::C)
          amount=curnumber
          break
         elsif Input.trigger?(Input::B)
          amount=0
          break
         end     
      end
     }
     helpwindow.visible=false
     amount=-amount if mode==0 # Deposit
     $Trainer.money+=amount
     $game_variables[31]-=amount
    end
    Then use Script:pbBankUse("Withdraw Money",1) or Script:pbBankUse("Deposit Money",0) to use it. I know it's not perfect, but I made this in a hurry.
     
    Last edited:

    NeoStar

    Future Scripter Extraordinaire
    45
    Posts
    16
    Years
  • It freezes...

    when I put in the first event(intro) to teleport to Pallet, when the screen shows the city, it freezes, but the backsound keep playing... If you get out of a house, it's freeze on the Black screen...


    Sounds like you have an event somewhere in the players house or pallet town thats set to parallel process when a certain switch is on and its messing up. Try changing it to action button or player touch/event touch whatever the event is for, if you find the event. But thats what it sounds like to me.
     
    Status
    Not open for further replies.
    Back
    Top