• 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.
92
Posts
16
Years
    • Seen Jun 13, 2012
    How I do a double wild Pokémon batle?? For one Pokémon I use this code:pbWildBattle(
    ::PBSpecies::ARON,5), but for 2 Pokémon?? I need much this!
     

    rm2kdude

    Advanced Pixel-Artist
    358
    Posts
    19
    Years
    • Age 35
    • usa
    • Seen Oct 30, 2022
    I tried using the resolution script that came with this but it did not change my game's window, what are the scripts to the resolution? And is this compatible with
    f0tz!baerchen's pixel movement script? I'm almost done with my Sword of Mana battle system. Just need the resolution to continue other scripts like messages, menus etc.
     
    317
    Posts
    16
    Years
    • Seen May 29, 2016
    Guys, I tried using the kit, it's awesome. I have a few questions.

    First, I tried doing an event of a Pikachu following you in case I want to do a multi-regional game based on Anime. Or at least something Anime based or w/e. Anyways, I did that:
    branch (some command checking if Pikachu is in 1st slot)
    Pikachu following with the player following thing, just without the additional battling trainer command
    else
    ;
    Sorry for the messed explanation.

    Anyways, questions about this thing:
    1. If I talk to "Pikachu", he asks me if I want him to leave. And he won't even when I press yes. Anywho, I don't want him to ask that, how do I cancel that?
    2. What command can I do to check if he's in the party overall, not specifically in first slot?
    3. How can I make him disappear if he's not in party?

    And now, to another thing:
    4. Is there any copyright problem if you use maps from the games, or ideas from the plot for a free game like that? o:
    Well, people always remake, so I guess not, but who cares. Still asking.



    EDIT:
    Forget the whole thing above except for question 4, which i'm still looking for an answer about. Please somebody answer: how can I make, say, a poster in PokeCenter or wherever, that'll ask me if I want Pikachu to follow me, only in case he's in my party (not necessarily 1st slot) yes/no, and if I say yes, he'll appear. Then if I want to get rid of it i'll talk to the Pikachu and tell him yes, and if I want him to reappear i'll go to PokeCenter or the first event again.
    Some help please?
    And question 4 again~
     
    Last edited:
    13
    Posts
    14
    Years
    • Seen Feb 5, 2011
    I've a little question and I need help. :(
    Sometimes in my game, I had to use the function: $PokemonGlobal.nextBattleBack="XXX"
    It works very well.
    But when I use this, all battles after this script have the same background!
    How can I make them like before I used this script?
    So, that everything is normal again...

    (I hope my english isnt that bad...)
     
    Last edited:

    partyghoul2000

    Intermediate Game Designer
    175
    Posts
    18
    Years
    • Age 36
    • USA
    • Seen Jun 24, 2014
    ok, i have a question. besides the basic menu, i'd like to add two different variations for different maps/areas. kinda like the safari zone & bug catching contest. i looked at the script under PokemonMenu and i couldn't really make any sense of it. i wanna control the variation of the menu by switches, can anybody help?
     

    Maruno

    Lead Dev of Pokémon Essentials
    5,286
    Posts
    16
    Years
    • Seen May 3, 2024
    ok, i have a question. besides the basic menu, i'd like to add two different variations for different maps/areas. kinda like the safari zone & bug catching contest. i looked at the script under PokemonMenu and i couldn't really make any sense of it. i wanna control the variation of the menu by switches, can anybody help?
    Since you mention the Safari Zone/Bug Catching Contest, take a look at how they're handled. When you're in either the Safari Zone or the Bug Catching Contest, it replaces the "Save" command with "Quit" (as in, leave the Safari Zone/Contest).

    Also, when in the Safari Zone, a window pops up showing you the number of steps taken and the number of Safari Balls you have left. When in the Contest, that window shows how many Park Balls you have plus the last Pokémon that you caught's name/level.

    Below is the part of the code that does this.

    Why is "Save" replaced during a Safari game or a Contest? Because the official games do it, I suppose (and it also reduces cheating and was probably impossible to record information during these things anyway). I'm sure you could edit it to be able to save during a Safari game/Contest, but that'd be a lot of hassle and it's probably not worth it anyway.

    Code:
      [COLOR=Red]if pbInSafari?[/COLOR]
       @scene.pbShowInfo(_INTL("[COLOR=DarkOrchid]STEPS: {1}/600\nBALLS: {2}[/COLOR]",pbSafariState.steps,pbSafariState.ballcount))
       commands[cmdQuit=commands.length]=_INTL("[COLOR=DarkOrchid]QUIT[/COLOR]")
      [COLOR=Red]elsif pbInBugContest?[/COLOR]
       [COLOR=SeaGreen]if pbBugContestState.lastPokemon[/COLOR]
         @scene.pbShowInfo(_INTL("[COLOR=DarkOrchid]CAUGHT: {1}\nLEVEL: {2}\nBALLS: {3}[/COLOR]",
              PBSpecies.getName(pbBugContestState.lastPokemon.species),
              pbBugContestState.lastPokemon.level,
              pbBugContestState.ballcount))
       [COLOR=SeaGreen]else[/COLOR]
         @scene.pbShowInfo(_INTL("[COLOR=DarkOrchid]CAUGHT: None\nBALLS: {1}[/COLOR]",pbBugContestState.ballcount))
       [COLOR=SeaGreen]end[/COLOR]
       commands[cmdQuit=commands.length]=_INTL("[COLOR=DarkOrchid]QUIT[/COLOR]")
      [COLOR=Red]else[/COLOR]
       commands[cmdSave=commands.length]=_INTL("[COLOR=DarkOrchid]SAVE[/COLOR]") if !$game_system || !$game_system.save_disabled
      [COLOR=Red]end[/COLOR]
    I coloured in a few things to make it more distinctive. The red commands decide whether you're in a Safari game or a Contest or just out being a trainer, the green commands decide if you've already caught a Pokémon in the Contest or not, and the things that are shown on screen are in purple.


    Now, I don't know exactly what you want to do (i.e. how you want to change the menu depending on whatever), because that would be too easy. All I can say is that you can do something similar to the above, but replace the "if pbInSafari?" line with "if $game_map[42] || $game_map[99]" or something similar. This line will mean the menu is changed only if you're on either map 42 or map 99. You could also use a switch here ("if $game_switches[42]"), but then you'd have to faff around making sure it gets switched on and off at the right times (including during Fly/Teleport/Escape Rope/Dig out of the area), which is rather more tedious.

    And by "replace" I mean copy-paste the quoted code above and modify to your own liking. Don't replace the existing code if you still want a Safari Zone/Bug Catching Contest in your game (and even if you don't you might as well just leave it alone, because it's not doing any harm).
     

    rm2kdude

    Advanced Pixel-Artist
    358
    Posts
    19
    Years
    • Age 35
    • usa
    • Seen Oct 30, 2022
    I tried using the resolution script that came with this but it did not change my game's window, what are the scripts to the resolution? And is this compatible with
    f0tz!baerchen's pixel movement script? I'm almost done with my Sword of Mana battle system. Just need the resolution to continue other scripts like messages, menus etc.

    Totally ignored, can I just get the script names to copy? is it that hard?
     
    317
    Posts
    16
    Years
    • Seen May 29, 2016
    Ignore my previous posts, I got some new ones.

    1. How can I print a Pokemon's name/nickname in message box or something? Preferably the 1st Pokemon's name (in party). And remember it can evolve and be nicknamed so I can't use a variable to memorize his 1st given name.
    2. How can I forbid a Pokemon from being put in the PC if it's possible?
    3. How can I edit a caught Pokemon's data? Like, the player raised his XXYY to 80 and evolved it, though I want it to become 36 again etc.
    4. Is it possible to make 2 systems of PC or more? Like, in 1 city i'll access 50 Pokemons, in another i'll access another 50 or so. Or w/e...

    I can handle without the possibilities to use the answers for all those questions, but it'll really help me if they'll be solved.
     

    V0RT3X

    Scientist at fluid dynamics
    127
    Posts
    14
    Years
    • Seen Aug 22, 2016
    this is really helpfull,
    i'm a starter at programming in RPG maker XP, but i already know how to program in visual basics and in blueJ (Java - code).
    So you can say i'm not a complete noob at programming, but the problem i always got is the start. Now with you're starterkit i don't got that problem.
    Atm, i'm making a new tileset ( D-P tiles from kyledove and some from saurav, i edit a few of them for matching the colors).
     
    489
    Posts
    16
    Years
  • I've been trying to change Dive to Whirlpool but I keep getting a Syntax error at line 2495.
    ---------------------------
    Pokemon Pure Gold
    ---------------------------
    Script 'PokemonField' line 2495: SyntaxError occurred.
    ---------------------------
    OK
    ---------------------------

    And the script is attached below, its PokemonField btw.

    Still waiting for someone to resolve my issue.
     

    Maruno

    Lead Dev of Pokémon Essentials
    5,286
    Posts
    16
    Years
    • Seen May 3, 2024
    Ignore my previous posts, I got some new ones.

    1. How can I print a Pokemon's name/nickname in message box or something? Preferably the 1st Pokemon's name (in party). And remember it can evolve and be nicknamed so I can't use a variable to memorize his 1st given name.
    2. How can I forbid a Pokemon from being put in the PC if it's possible?
    3. How can I edit a caught Pokemon's data? Like, the player raised his XXYY to 80 and evolved it, though I want it to become 36 again etc.
    4. Is it possible to make 2 systems of PC or more? Like, in 1 city i'll access 50 Pokemons, in another i'll access another 50 or so. Or w/e...

    I can handle without the possibilities to use the answers for all those questions, but it'll really help me if they'll be solved.
    1. Everything about a pokémon is stored somewhere in the game as data. For your party pokémon, the information is in $trainer.party[x], where x is the position of it in your party (zero-based, meaning your lead pokémon is number 0, the second one that gets used in double battles is 1, and so forth).

    For a pokémon's name, look at $trainer.party[0].name. That's a string that contains your lead pokémon's nickname or, if it doesn't have a nickname, its default (i.e. species) name.

    All you need to do then is put that into a message. I'm not quite sure how to do that, but it shouldn't be too difficult (if you use pbShowText or whatever it's called).


    2. Create a new bit of information for a pokémon (e.g. "canstore", as in pokemon.canstore). This will be null or 0 by default, but in special cases you can set it to 1. Then find the "Deposit Pokémon" script and include an extra check to say "return false if pokemon.canstore" or something similar. This (plus an announcement message to say why) will automatically reject any pokémon you've designated can't be stored on a PC.

    It's certainly possible, but it may challenge you if you're not too sure about scripting. Have a look at other examples, such as how the game disallows you to deposit your only remaining pokémon (it'll check $trainer.party.length, I think, and say no if it's 1 or less, along with a message to say you can't deposit your last pokémon) - this should be in the same place in the scripts you need to add your own check on the "canstore" variable.


    3. If you mean Level, that's easy enough, depending on what you want to do (e.g. lower the level of all pokémon of species x that evolved immediately (easy), lower the level of a particular (e.g. starter) pokémon (harder)). If you want to change a stat (e.g. Atk or Spd), that's rather more difficult, since the game refers to a table to recalculate the stats at each level up, and those tables are for a species as a whole.

    The lowering level thing can be put into the evolution screen. Just after the message saying "Your Squirtle evolved into Wartortle!", put in something like "pokemon.level-=10" to lower that pokémon's level by 10, or "pokemon.level=13" to set it to 13. You can expand on this by checking the pokémon that just evolved's species, and changing the level as appropriate.

    You'd probably need to change the amount of experience it has as well, so that it doesn't shoot straight back up to level 18 or whatever when it next "levels up" (i.e. recalculates its level/stats). You'll need to get your calculator out to decide how much exp to detract from each pokémon.

    As I said, without knowing more precisely what you want to do, it's hard to offer advice on this question. Most likely it'll involve some in-depth scripting.


    4. Yes, but again, it'll require some in-depth changes to the scripts. I don't know exactly how the PC pokémon are stored (i.e. under what object name), but "all" you'd need to do is create another object that works the same but is named slightly differently, and in each instace of all the scripts referring to the PC object, change it to refer to one of your PC objects depending on whatever (perhaps a game variable that you set each time you interact with a PC depending on your location).

    Quite in-depth, but certainly technically possible.
     
    317
    Posts
    16
    Years
    • Seen May 29, 2016
    Kay, you really helped me, thanks. I also got a few "shortcuts" for the whole mess I did there.

    Anyways, I forgot how to check what the 1st Pokemon in the party, let's say, is at all .-.
    God my brain does bad lately.
     
    401
    Posts
    19
    Years
    • Age 29
    • Seen Dec 4, 2016
    To display a Pokemon's name in the text box: (put this in the event command for showing text)
    Code:
    Oh wow, you have a #{$Trainer.party[0].name.to_s}!
    Quick run through the code:
    #{x} - this is Ruby's way of displaying a variable or a method's return in a string of text.
    .to_s - this method converts a variable to a string. This is not always necessary, and the code may work with out it, but it is better to put it there incase.
     
    317
    Posts
    16
    Years
    • Seen May 29, 2016
    To display a Pokemon's name in the text box: (put this in the event command for showing text)
    Code:
    Oh wow, you have a #{$Trainer.party[0].name.to_s}!
    Quick run through the code:
    #{x} - this is Ruby's way of displaying a variable or a method's return in a string of text.
    .to_s - this method converts a variable to a string. This is not always necessary, and the code may work with out it, but it is better to put it there incase.
    My meaning was, how can I make a conditional branch, that does this:
    if(1st pokemon=="CHARIZARD" (or #6))
    *Writes something*
    else
    *Writes something else*

    I knew how to do it a few days ago, but I forgot and for some reason some of my edited maps were deleted .-.
     

    nmorr

    Takin a brake. -_-
    214
    Posts
    15
    Years
  • Trainer ID

    I have two trainers with the same name and type. The ID for the 2nd trainer is 1,
    How do I put the 2nd trainer in battle? PLEASE HELP!!
     
    2,048
    Posts
    16
    Years
    • Seen Sep 7, 2023
    My meaning was, how can I make a conditional branch, that does this:
    if(1st pokemon=="CHARIZARD" (or #6))
    *Writes something*
    else
    *Writes something else*

    I knew how to do it a few days ago, but I forgot and for some reason some of my edited maps were deleted .-.

    The trainer's Pokemon are stored in the $Trainer.party array. For example, you could use:
    Conditional Branch: Script: $Trainer.party[0].species==PBSpecies::CHARIZARD
    You don't need the 'if' in a Conditional Branch command ;)
     
    317
    Posts
    16
    Years
    • Seen May 29, 2016
    The trainer's Pokemon are stored in the $Trainer.party array. For example, you could use:
    Conditional Branch: Script: $Trainer.party[0].species==PBSpecies::CHARIZARD
    You don't need the 'if' in a Conditional Branch command ;)
    That was just my way to express the branch, cause I program in some other languages and it goes that way there...
    Anyways, thanks a lot.
     
    10
    Posts
    14
    Years
  • Still waiting for someone to resolve my issue.
    Try putting an additional "end" between lines 2482 and 2483.
    Code:
    2478  facingEvent=$game_player.pbFacingEvent
    2479  if facingEvent
    2480   if facingEvent.name=="Whirlpool"
    2481    Kernel.pbWhirlpool
    2482   return
    2483  end
    In lines 2479 AND 2480 it says "if", but there is only one "end".
    So try this:
    Code:
    2478  facingEvent=$game_player.pbFacingEvent
    2479  if facingEvent
    2480   if facingEvent.name=="Whirlpool"
    2481    Kernel.pbWhirlpool
    2482   return
    2483  end
    2484 end
    Hope this solves your problem.
     
    Status
    Not open for further replies.
    Back
    Top