• 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