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

Report bugs and errors in unmodified Essentials version 21

I had the same issue with bad tile positioning. I put water tile (surf able) and right above I put solid tiles (blocking the player) and the result is the same ^^ But in my case, the problem came from me, not Essentials.
 
Hey Guys! I keep getting this error

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

Message: Undefined value MAGNEZONE in PBSpecies

File PBS/pokemon.txt, section 0, key Evolutions





Compiler:1611:in `checkEnumField'

Compiler:1645:in `csvEnumField!'

Compiler:2428:in `pbCompilePokemonData'

Compiler:2425:in `each'

Compiler:2425:in `pbCompilePokemonData'

Compiler:2422:in `each'

Compiler:2422:in `pbCompilePokemonData'

Compiler:3982:in `pbCompileAllData'

Compiler:4106



This exception was logged in

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

Press Ctrl+C to copy this message to the clipboard.
---------------------------
OK
---------------------------

Which is weird, as I have not edited pokemon.txt at all... In fact, the only thing I've done outside of RPGXP is go into the editor and add some new encounters, not even touching Magnezone...help?
 
Okay, this is a nitpick at best, and frankly, I don't blame you for putting on the back burner, but since no oversight is too small to ignore completely, I might as well mention it.

You know how in the new version most things you name show a graphic on the text entry screen? When setting your rival's name, it doesn't show anything graphic.
 
Okay, this is a nitpick at best, and frankly, I don't blame you for putting on the back burner, but since no oversight is too small to ignore completely, I might as well mention it.

You know how in the new version most things you name show a graphic on the text entry screen? When setting your rival's name, it doesn't show anything graphic.
I realised that after I put v14 out. There's already a way to show an NPC while naming them in v15.

When a egg is hatched and you name it, it shows neither a graphic.
Also fixed. I didn't realise a different naming script was used depending on whether there was a hatching animation. One of the downsides of using someone else's work is that I don't know what's in it.
 
Following situation: You have a trainer with different EndBattle-Commands. When you defeat him the first time and speak again to him, the second Endbattle-Speech will be shown instead of the first. This is especially noticeable if the first and second Endbattle-commant are different.

edit: If you have two seperate trainers that notice you at the same time, after the battle they don't ask you for the telephon number. But if you speak again with them, they do so.
 
Last edited:
Also fixed. I didn't realise a different naming script was used depending on whether there was a hatching animation. One of the downsides of using someone else's work is that I don't know what's in it.
I need to redefine some things for initializing some portion of egg data. Just a small mistake for my part (basically I forget a '@').
 
A bug has been reported by a user who was playing my game. The bug never happened to me, so I can't provide you with the error from errorlog.

The user who noticed the bug said it happened after a battle during which one of his Pokemon got poisoned. The Pokemon had 2 HP left, and once he took a couple of steps after the battle, the game crashed. Before the crash, the message "Pokemon survived the poisoning" appeared. As I said, I don't have the error report, but he said he remembers something about "HP 0" being in it. If anyone has any information about this, please tell me.
 
When making a map, i appear to not have most of the tiles that should be available. I opened Graphics\Autotiles and only have 41 files in there. I redownloaded it and it was the same problem.
1. Is it supposed to be like that?
2. If not, what can i do to get the rest of the tiles?
 
my run button in trainer fights is now a call button any idea how to fix it?
That's not a bug. It's working as intended. If you'd searched for this "problem" rather than jump straight to asking this question again, you'd have found that this happens because you have the Shadow type defined and it's a trainer battle. It's not like Run does anything in trainer battles.
 
When making a map, i appear to not have most of the tiles that should be available. I opened Graphics\Autotiles and only have 41 files in there. I redownloaded it and it was the same problem.
1. Is it supposed to be like that?
2. If not, what can i do to get the rest of the tiles?

PE v14 provides 41 autotiles and 20 tilesets. If you can't find autotiles while making maps, then you need to add them in the tileset using F9 menu (select the tileset and add autotiles).
 
A bug has been reported by a user who was playing my game. The bug never happened to me, so I can't provide you with the error from errorlog.

The user who noticed the bug said it happened after a battle during which one of his Pokemon got poisoned. The Pokemon had 2 HP left, and once he took a couple of steps after the battle, the game crashed. Before the crash, the message "Pokemon survived the poisoning" appeared. As I said, I don't have the error report, but he said he remembers something about "HP 0" being in it. If anyone has any information about this, please tell me.
I really can't do anything about this without the error message. You could at least say which version of Essentials this happened in - you'll know that much, since the bug happened in a demo of your game.
 
I really can't do anything about this without the error message. You could at least say which version of Essentials this happened in - you'll know that much, since the bug happened in a demo of your game.

It happened in version 13. I've unsuccessfully tried to recreate the bug. I'll try to gather more information about it.
 
Regarding the above error, it has existed at least since v5 of Essentials. I got it back then, reported it, and still receive bug reports about it to this day, but have yet to be able to reliably reproduce it. Super frustrating. I'll post the error message again next time I'm able to.

Here's a few, more concrete things for you, all tested in v14 unmodified:
1- Hustle AI is broken for high level trainers. To fix, replace:
Code:
      if skill>=PBTrainerAI.highSkill
        accuracy*=0.8 if attacker.hasWorkingAbility(:HUSTLE) &&
                         move.basedamage>0 &&
    pbIsPhysical?(pbType(move.type,attacker,opponent))
      end
with
Code:
      if skill>=PBTrainerAI.highSkill
        accuracy*=0.8 if attacker.hasWorkingAbility(:HUSTLE) &&
                         move.basedamage>0 &&
                         move.pbIsPhysical?(type)
      end

2- The physical handler for Foul Play in _Move is mistyped. Replace:
Code:
if @function==0x121 # Foul Play
      atk=opponent.atk
      atkstage=opponent.stages[PBStats::ATTACK]+6
    end
with
Code:
    if @function==0x121 # Foul Play
      atk=opponent.attack
      atkstage=opponent.stages[PBStats::ATTACK]+6
    end

3- Sheer Force has an issue in _AI. Replace:
Code:
    # Sheer Force
    if skill>=PBTrainerAI.highSkill
      if attacker.hasWorkingAbility(:SHEERFORCE) && @addlEffect>0
        basedamage=(basedamage*1.3).round
      end
    end
with
Code:
    # Sheer Force
    if skill>=PBTrainerAI.highSkill
      if attacker.hasWorkingAbility(:SHEERFORCE) && move.addlEffect > 0
        basedamage=(basedamage*1.3).round
      end
    end

4- Many, but not all of the 0x2[n] function codes in AI are broken (these are for moves that increase more than one stat.) To fix, check this section in each of these functions:
Code:
       if hasphysicalattack
              avg+=20
            elsif skill>=PBTrainerAI.highSkill
              avg-=90
            end
Change those 'avg's to 'score' like so:
Code:
     if hasphysicalattack
              score+=20
            elsif skill>=PBTrainerAI.highSkill
              score-=90
            end
That will need to be done for several different cases.

5- Life Orb and Shell Bell don't have the 'damage' variable passed onto them properly, and thereby fail. I don't have such a neat fix for this; I have somewhat of a work around by moving the code for those items to after Destiny Bond's processing in _Battler, but I'm not sure if this is an ideal solution, especially regarding moves that hit multiple targets. Thoughts? It might be easier to reinstate a variable to pass damage back into the current placement of this code, but I haven't done that yet.

6- Fury Cutter AI causes opponent inaction. Undefined method on the bitshift. I had to just remove the line because I'm not sure of the proper solution here, unfortunately.

7- Looks like Battlers/024.png is broken? Maybe my download/extract failed, but it's 0 bytes for me.

8- Protect occasionally fails even if it wasn't the last-used move. To reproduce, use protect with any Pokemon, use any other move, and then use protect again. It may fail. Keep in mind that it still has a 50% chance to succeed, so try this a few times to be sure. I only just found this, so I haven't got a solution offhand.

EDIT:
9- Rest is broken with a 3 for 2 argument error: Remove one of the trues on pbCanSleep? here:
Code:
################################################################################
# Heals user to full HP.  User falls asleep for 2 more rounds.
################################################################################
class PokeBattle_Move_0D9 < PokeBattle_Move
  def pbEffect(attacker,opponent,hitnum=0,alltargets=nil,showanimation=true)
    if !attacker.pbCanSleep?(true,true,true)
 
Last edited:
If you are in a battle and go to the bag and select an item but then push Esc to cancel you will still use the item like if you have pushed Enter.

There was another bug I found but I was unable to replicate it, I was in a double battle with the demo party and after making a lot of switches the sprite of chansey completely dissapeared in battle but I could still attack and stuff.
 
Power Split's AI is also broken.
In _AI change
Code:
      when 0x58
        if skill>=PBTrainerAI.mediumSkill
          aatk=pbRoughStat(attacker,PBStats::ATTACK,skill)
          aspatk=pbRoughStat(attacker,PBStats::SPATK,skill)
          oatk=bRoughStat(opponent,PBStats::ATTACK,skill)
          ospatk=pbRoughStat(opponent,PBStats::SPATK,skill)
to
Code:
      when 0x58
        if skill>=PBTrainerAI.mediumSkill
          aatk=pbRoughStat(attacker,PBStats::ATTACK,skill)
          aspatk=pbRoughStat(attacker,PBStats::SPATK,skill)
          oatk=pbRoughStat(opponent,PBStats::ATTACK,skill)
          ospatk=pbRoughStat(opponent,PBStats::SPATK,skill)
(just a typo on one of the lines)

EDIT: Huge Power appears to be missing its physical handler, activating on special moves too. Change:
Code:
if attacker.hasWorkingAbility(:PUREPOWER) ||
       attacker.hasWorkingAbility(:HUGEPOWER)
      atkmult=(atkmult*2.0).round
    end
to
Code:
if (attacker.hasWorkingAbility(:PUREPOWER) ||
       attacker.hasWorkingAbility(:HUGEPOWER)) && pbIsPhysical?(type)
      atkmult=(atkmult*2.0).round
    end
 
Last edited:
We've had the following bugs reported:

- Echoed Voice's power doesn't increase as planned, it instead stays at its low point
- When the player's Pokémon is Paralysed or Frozen and can't attack that turn, the enemy Pokémon does not attack during that turn either
 
EDIT:
9- Rest is broken with a 3 for 2 argument error: Remove one of the trues on pbCanSleep? here:
Code:
################################################################################
# Heals user to full HP.  User falls asleep for 2 more rounds.
################################################################################
class PokeBattle_Move_0D9 < PokeBattle_Move
  def pbEffect(attacker,opponent,hitnum=0,alltargets=nil,showanimation=true)
    if !attacker.pbCanSleep?(true,true,true)
Do NOT do this. It's supposed to have three arguments. If you look in PokeBattle_Effects, this method is there and it has three arguments - only Rest uses the third one, because it should be able to replace other status problems and that's what this parameter is for. It sounds like someone didn't update their game properly to the latest version of Essentials.
 
Back
Top