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

Nickalooose

--------------------
1,309
Posts
16
Years
  • Seen Dec 28, 2023
Thanx ZingZags, but i can't actually find anything on specific days of the week, alot of time events and such. x


EDIT: Is there a way i can receive an item, i.e. Potion or Doll, but it goes straight into the PC like on the games when your mother buys things with your money?

Thanks in advance.
 
Last edited:

Pharetra

zzzz
451
Posts
12
Years
  • Age 28
  • Seen Apr 22, 2024
Simple question I guess:

I want to set the default screensize to 240x160 pixels, but when I set the values DEFAULTSCREENWIDTH, DEFAULTSCREENHEIGHT and DEFAULTSCREENZOOM to 240, 160 and 0,5 respectively, only the screensize is changed but it isn't zoomed out.
 

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
Thanx ZingZags, but i can't actually find anything on specific days of the week, alot of time events and such. x
pbIsWeekday(-1,2,4,6) is used for the Bug Catching Contest, and is TRUE if the day is Tuesday (2), Thursday (4) or Saturday (6). It is already a switch and is used as part of the Bug Catching Contest, so look at how it works. The def itself is in the script section PokemonTime.

It seemed so obvious too...


Simple question I guess:

I want to set the default screensize to 240x160 pixels, but when I set the values DEFAULTSCREENWIDTH, DEFAULTSCREENHEIGHT and DEFAULTSCREENZOOM to 240, 160 and 0,5 respectively, only the screensize is changed but it isn't zoomed out.
Use a decimal point, not a comma.
 

Atomic Reactor

Guest
0
Posts
Is there a way to edit the "option" menu script to where you can have music being muted/ not muted.... like... so you can turn it on and off in options?
 

Vampire://Krimm

→ clocks everywhere →
703
Posts
17
Years
Is there a specific reason why the opacity of images vary depending on location on the map, regardless of whether or not the opacity number is the same?

For instance I'll have a single image event that has the opacity of 150. It looks the way I want. I make a copy of this event somewhere else on the map, with the same opacity. Except when I activate that event, the opacity is blatantly different - it's either much lighter or much darker. These inconsistencies mostly appear on connected maps it seems. I've been working around, but I was wondering if anyone has a solution?
 
199
Posts
14
Years
  • Seen Jul 6, 2022
There is some way of doing that the battles have more speed?

And there is some way of changing the Wild Battle Music depending on the region?
 
Last edited:

Pharetra

zzzz
451
Posts
12
Years
  • Age 28
  • Seen Apr 22, 2024
Wanted to point out that changing the Global Metadata with the editor messes up the metadata.txt file. It's pretty frustrating to constantly having to change the metadata.
 

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
Is there a specific reason why the opacity of images vary depending on location on the map, regardless of whether or not the opacity number is the same?

For instance I'll have a single image event that has the opacity of 150. It looks the way I want. I make a copy of this event somewhere else on the map, with the same opacity. Except when I activate that event, the opacity is blatantly different - it's either much lighter or much darker. These inconsistencies mostly appear on connected maps it seems. I've been working around, but I was wondering if anyone has a solution?
I suspect that this is because the first image is loaded and its opacity is halved (say), and then for the second instance that first image is copied and its opacity halved again, resulting in a quarter opacity for the second instance of the image.

You'd have to use your workarounds, unless you can figure out how to force a fresh reload of the image each time it is used instead of it using a previous existing use of it.


There is some way of doing that the battles have more speed?

And there is some way of changing the Wild Battle Music depending on the region?
Speed, not at all easily. If I knew at all how to do it, I'd be putting it into Essentials.

Just set the music for each map. The property is WildBattleBGM.


Wanted to point out that changing the Global Metadata with the editor messes up the metadata.txt file. It's pretty frustrating to constantly having to change the metadata.
Then don't use the Editor. It's easy to just edit the text file, you know.

Your problem should have been fixed in the latest release anyway.

=========================================================

Does anyone have any experience with the attack animation editor? I've played around with it a little, but I can't seem to get it to save the changes. It's useful to have, as you can move the Pokémon sprites around with it (I think that's the only advantage over the RMXP animation editor in the Database, along with the larger screen).
 

Vampire://Krimm

→ clocks everywhere →
703
Posts
17
Years
I figured it would be something like that.

But I do have another question - er, where exactly in the script do you set the maximum size for sprites in battle? For instance I want to expand it from 128x128 to 160x160. Also where do you control the placement of the battle sprites and backsprites and whatnot? This is all probably very obvious but for the life of me I can't seem to find the scripts.
 

KitsuneKouta

狐 康太
442
Posts
14
Years
  • Age 33
  • Seen Nov 20, 2017
I figured it would be something like that.

But I do have another question - er, where exactly in the script do you set the maximum size for sprites in battle? For instance I want to expand it from 128x128 to 160x160. Also where do you control the placement of the battle sprites and backsprites and whatnot? This is all probably very obvious but for the life of me I can't seem to find the scripts.
If you want to use larger sprites, you just have to resize them to the size you want (which will likely distort them). If you didn't already know, you need a paint program to do that (like MS Paint). There is no script to automatically make sprites smaller or larger (though it could be done with zoom commands, but that requires scripting), and likewise there's no script that requires a specific sprite size (it could be a 500x500 sprite for all it matters, it just wouldn't completely fit on screen is all).

If you want to reposition them, open the debug menu while playtesting, or open the editor. Choose the "Reposition Sprites" option. This brings up a tool to help you easily reposition them (one at a time). If you want to move all of them at once, look for instances of "spriteY" or "spriteX" in PokeBattle_ActualScene. You'll want the ones around line 650~700 or so, several lines below "class PokeballSendOutAnimation" as well as the ones around 800~900 or so, several lines below "class PokeballPlayerSendOutAnimation."

@Atomic Reactor: You could probably look for instances of pbSEPlay, etc., and whatever portions of code events use to play sounds/music (unless poccil directed those to his methods as well), and use a switch to determine the value of the volume variable (i.e. check if the switch is true on the first line of the method, and set the value to 0 if it is). I don't know how to add that to the options menu off hand, but it's probably simple enough (add another entry along with the rest of them in the list, and just make it turn the switch on/off depending on the switch's status).
 

KoolKat vs. Lucas

KoolKat Gold
178
Posts
12
Years
  • Seen Nov 30, 2013
The demo uses the function pbCreatePokemon, found in the script section --PB2-- (now called PBUtilities.)

It is defined like this:

Code:
 def pbCreatePokemon
  party=[3,6,9,12,15,18] # Species IDs of the Pokemon to be created
  for i in 0...party.length
    species=party[i]
    # Generate Pokemon with species and level 20
    $Trainer.party[i]=PokeBattle_Pokemon.new(species,20,$Trainer)
    $Trainer.seen[species]=true # Set this species to seen and owned
    $Trainer.owned[species]=true
   end
 end

This function, not defined in the latest release, can make it easier to add Pokemon to a party:

Code:
def pbAddPokemon(species,level)
  if $Trainer.party.length==6 && $PokemonStorage.full?
   Kernel.pbDisplayMessage("There's no more room for Pokemon!\1")
   Kernel.pbDisplayMessage("The Pokemon Boxes are full and can't accept any more!")
   return false
  end
  speciesname=PBSpecies.getName(species)
  Kernel.pbDisplayMessage("#{$Trainer.name} obtained #{speciesname}!\1")
  pokemon=PokeBattle_Pokemon.new(species,level,$Trainer)  
  $Trainer.seen[species]=true
  $Trainer.owned[species]=true
  if Kernel.pbConfirmMessage("Would you like to give a nickname to #{speciesname}?")
   helptext="#{speciesname}'s nickname?"
   newname=pbEnterText(helptext,0,10)
   pokemon.name=newname if newname!=""
  end
  if $Trainer.party.length<6
   $Trainer.party[$Trainer.party.length]=pokemon
  else
   oldcurbox=$PokemonStorage.currentBox
   storedbox=$PokemonStorage.pbStoreCaught(pokemon)
   curboxname=$PokemonStorage[oldcurbox].name
   boxname=$PokemonStorage[storedbox].name
   if storedbox!=oldcurbox
    Kernel.pbDisplayMessage("Box \"#{curboxname}\" on someone's PC was full.\1")
    Kernel.pbDisplayMessage("#{pokemon.name} was transferred to box \"#{boxname}.\"")
   else
    Kernel.pbDisplayMessage("#{pokemon.name} was transferred to someone's PC.\1")
    Kernel.pbDisplayMessage("It was stored in box \"#{boxname}.\"")
   end
  end
  return true
end

I used the original and this error occurred-

---------------------------
Pokemon Essentials
---------------------------
Exception: RuntimeError

Message: Script error within event 1, map 32 (Professor's Lab):

Exception: SyntaxError

Message: (eval):12:in `pbExecuteScript'compile error
(eval):2: syntax error
(eval):4: dynamic constant assignment
Cyndaquil=party[1]
^
(eval):5: syntax error
155 level 5
^
(eval):7: syntax error
=PokeBattle_Pokemon.new(Cyndaquil,5,
^
(eval):9: syntax error
$Trainer.seen[Cyndaquil]=true 155
^
(eval):12: syntax error

***Full script:

def pcCreatePokemon
party=[3,6,9,12,15,18] 155
for i in 0...party.length
Cyndaquil=party[1]
155 level 5
$Trainer.party[1]
=PokeBattle_Pokemon.new(Cyndaquil,5,
$Trainer)
$Trainer.seen[Cyndaquil]=true 155
Set this species to be seen and owned
$Trainer.owned[Cyndaquil]=true
end




Interpreter:275:in `pbExecuteScript'

Interpreter:1592:in `command_355'

Interpreter:493:in `execute_command'

Interpreter:193:in `update'

Interpreter:106:in `loop'

Interpreter:198:in `update'

Scene_Map:103:in `update'

Scene_Map:101:in `loop'

Scene_Map:114:in `update'

Scene_Map:68:in `main'



This exception was logged in

C:\Users\Roberts\Saved Games/Pokemon Essentials/errorlog.txt.

Press Ctrl+C to copy this message to the clipboard.
---------------------------
OK
---------------------------
What happened here?

Poccil, PM me because I have no idea how to script it. Just PM the scripts to receive a Cyndaquil from the Professor. I am in seriously.
 
Last edited:

IceGod64

In the Lost & Found bin!
624
Posts
15
Years
I used the original and this error occurred-

---------------------------
Pokemon Essentials
---------------------------
Exception: RuntimeError

Message: Script error within event 1, map 32 (Professor's Lab):

Exception: SyntaxError

Message: (eval):12:in `pbExecuteScript'compile error
(eval):2: syntax error
(eval):4: dynamic constant assignment
Cyndaquil=party[1]
^
(eval):5: syntax error
155 level 5
^
(eval):7: syntax error
=PokeBattle_Pokemon.new(Cyndaquil,5,
^
(eval):9: syntax error
$Trainer.seen[Cyndaquil]=true 155
^
(eval):12: syntax error

***Full script:

def pcCreatePokemon
party=[3,6,9,12,15,18] 155
for i in 0...party.length
Cyndaquil=party[1]
155 level 5
$Trainer.party[1]
=PokeBattle_Pokemon.new(Cyndaquil,5,
$Trainer)
$Trainer.seen[Cyndaquil]=true 155
Set this species to be seen and owned
$Trainer.owned[Cyndaquil]=true
end




Interpreter:275:in `pbExecuteScript'

Interpreter:1592:in `command_355'

Interpreter:493:in `execute_command'

Interpreter:193:in `update'

Interpreter:106:in `loop'

Interpreter:198:in `update'

Scene_Map:103:in `update'

Scene_Map:101:in `loop'

Scene_Map:114:in `update'

Scene_Map:68:in `main'



This exception was logged in

C:\Users\Roberts\Saved Games/Pokemon Essentials/errorlog.txt.

Press Ctrl+C to copy this message to the clipboard.
---------------------------
OK
---------------------------
What happened here?

Poccil, PM me because I have no idea how to script it. Just PM the scripts to receive a Cyndaquil from the Professor. I am in seriously.

1: You typo'd. It's "pbCreatePokemon"
2: You can't define functions inside scripts in events, and the function you're trying to recall alrready exists. To use it ingame, all you need to type is
Code:
pbCreatePokemon
 

KitsuneKouta

狐 康太
442
Posts
14
Years
  • Age 33
  • Seen Nov 20, 2017
Exception: RuntimeError
Message: Script error within event 1, map 32 (Professor's Lab):
Exception: SyntaxError
Message: (eval):12:in `pbExecuteScript'compile error
(eval):2: syntax error
(eval):4: dynamic constant assignment
Cyndaquil=party[1]
^
(eval):5: syntax error
155 level 5
^
(eval):7: syntax error
=PokeBattle_Pokemon.new(Cyndaquil,5,
^
(eval):9: syntax error
$Trainer.seen[Cyndaquil]=true 155
^
(eval):12: syntax error

***Full script:

def pcCreatePokemon
party=[3,6,9,12,15,18] 155
for i in 0...party.length
Cyndaquil=party[1]
155 level 5
$Trainer.party[1]
=PokeBattle_Pokemon.new(Cyndaquil,5,
$Trainer)
$Trainer.seen[Cyndaquil]=true 155
Set this species to be seen and owned
$Trainer.owned[Cyndaquil]=true
end

Interpreter:275:in `pbExecuteScript'
Interpreter:1592:in `command_355'
Interpreter:493:in `execute_command'
Interpreter:193:in `update'
Interpreter:106:in `loop'
Interpreter:198:in `update'
Scene_Map:103:in `update'
Scene_Map:101:in `loop'
Scene_Map:114:in `update'
Scene_Map:68:in `main'

What happened here?

Poccil, PM me because I have no idea how to script it. Just PM the scripts to receive a Cyndaquil from the Professor. I am in seriously.
KoolKat, Poccil no longer supports Pokemon Essentials. It is now managed by the Pokemon Essentials Wiki, which is mostly taken care of by Maruno. Also, this script is not what you're looking for (and you made some syntax errors in the code). pbCreatePokemon by default adds six Pokemon to your party, and is for demo purposes only. To add a Cyndaquil to your party, use pbAddPokemon(155,5). The 155 is Cyndquil's species number, and 5 is the level it will be when you receive it. For future reference, the post you found was very old (poccil hasn't been active here for a very long time. The kit changed hands about a year ago). Please search the wiki first, rather than this thread, from now on. This thread has been here since 2007, and subsequently contains some outdated information. The wiki remains current.

Also, please clean up your error messages like I have done above when you post them. It's more readable (especially without the smilies), and doesn't clutter the thread so badly.
 
Last edited:

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
The kit changed hands about a year ago).
I disagree. The wiki picked up the kit in July (the wiki says so). Poccil just hadn't done anything with it since September 2010.

---------------------

EDIT: Does anyone know how to force the map to redraw itself? I want to update the map immediately after changing a tile during the game (due to stepping on it), but I can't figure out how to make it happen immediately. It happens randomly when walking around, but it could take between a few and a lot of steps and then all the changes are refreshed at once. Alternatively, where in the scripts does it refresh the map? I'm not talking about autotiles here, I mean regular tiles.

This is an expert-level question, I know, but there may yet be someone who could answer, or at least make a suggestion.
 
Last edited:

KitsuneKouta

狐 康太
442
Posts
14
Years
  • Age 33
  • Seen Nov 20, 2017
I disagree. The wiki picked up the kit in July (the wiki says so). Poccil just hadn't done anything with it since September 2010.
Fair enough. My memory isn't long enough to remember that far back too well. People had still been suggesting fixes or pointing out bugs (especially FL. Where'd he go?) and such in that time between Poccil ceasing to update and him passing it on, so the transition was smooth.

EDIT: Does anyone know how to force the map to redraw itself? I want to update the map immediately after changing a tile during the game (due to stepping on it), but I can't figure out how to make it happen immediately. It happens randomly when walking around, but it could take between a few and a lot of steps and then all the changes are refreshed at once. Alternatively, where in the scripts does it refresh the map? I'm not talking about autotiles here, I mean regular tiles.

This is an expert-level question, I know, but there may yet be someone who could answer, or at least make a suggestion.
This is actually an issue I ran into as well, and only found the solution to after looking just now after you asked. In standard RMXP, it does this automatically (and Poccil renamed some stuff, so I couldn't just cut/paste what I figured out in a standard project). I actually first tried opening menus, since I figured that should update the screen, but the Pokegear is the only one I noticed that actually updated the map. It was just a $scene=Scene_Map.new call. However, this has a fade effect (oddly, existing sprites don't fade at all. Only the changes fade in). I tried every update method in Scene_Map (there's 4 or 5 different ones I think, with the last being the solution), and found what works (without the fade effect at that). Use $scene.disposeSpritesets, followed by $scene.createSpritesets. That's the only thing that seems to do it.

At times I've found myself tempted to go back and rename stuff or modify things that Poccil did to be compatible with standard RMXP commands. Some of the changes or renaming don't seem to be necessary, and broken features (like Button Input Processing) don't seem to cause any issues when fixed. Of course, I wouldn't dream of trying that on the battle system.
 
Last edited:

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
This is actually an issue I ran into as well, and only found the solution to after looking just now after you asked. In standard RMXP, it does this automatically (and Poccil renamed some stuff, so I couldn't just cut/paste what I figured out in a standard project). I actually first tried opening menus, since I figured that should update the screen, but the Pokegear is the only one I noticed that actually updated the map. It was just a $scene=Scene_Map.new call. However, this has a fade effect (oddly, existing sprites don't fade at all. Only the changes fade in). I tried every update method in Scene_Map (there's 4 or 5 different ones I think, with the last being the solution), and found what works (without the fade effect at that). Use $scene.disposeSpritesets, followed by $scene.createSpritesets. That's the only thing that seems to do it.
Shiny!

It seems that disposeSpritesets causes a bit of lag, but it seems to work without it. I also built on what you said to remove a bit more potential lag (by making the spriteset refresh only for the current map). The only problem now is that creating a new spriteset wipes out any animations that were going on at the time (namely the grass rustling animation). I have yet to find a solution to that, but it's cosmetic. You're welcome to see my code if you want to help look for a solution to this last bit.

So rejoice! This probably means we'll have sooty grass in the next update. Get your Soot Sacks at the ready. :)

Incidentally, the same kind of thing can be used to implement Cut's old grass-mowing effect (but I won't be putting that in myself).


At times I've found myself tempted to go back and rename stuff or modify things that Poccil did to be compatible with standard RMXP commands. Some of the changes or renaming don't seem to be necessary, and broken features (like Button Input Processing) don't seem to cause any issues when fixed. Of course, I wouldn't dream of trying that on the battle system.
That's an interesting idea. Some of the useless event commands could be reinstated. On further inspection, though, it'd probably just be a waste of time unless things were radically changed (which they won't be).

What's wrong with Button Input Processing?
 
Status
Not open for further replies.
Back
Top