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

Report bugs and errors in unmodified Essentials version 21

Backburner26

Pokemon Lavender Spirit Creator
35
Posts
8
Years
I have no Idea how this started happening, but the healing items started bugging out. basically I would Go into battle and when my pokemon gets hurt, I would use a healing item. That would work normally. Its when I heal any other pokemon that was not my first pokemon after switching pokemon is when it bugs up and shows this error message.

Exception: NoMethodError
Message: undefined method `effects' for nil:NilClass
PokeBattle_Battle:1594:in `pbRegisterItem'
PokeBattle_Battle:2775:in `pbCommandPhase'
PokeBattle_Battle:2730:in `loop'
PokeBattle_Battle:2820:in `pbCommandPhase'
PokeBattle_Battle:2719:in `each'
PokeBattle_Battle:2719:in `pbCommandPhase'
PokeBattle_Battle:2667:in `pbStartBattleCore'
PokeBattle_Battle:2666:in `logonerr'
PokeBattle_Battle:2666:in `pbStartBattleCore'
PokeBattle_Battle:2656:in `loop'

Please help.
 

Florio

Pokemon Crimson Skies Owner
391
Posts
15
Years
Is there going to be a v16.2? There are still many problems with v16.1
 
824
Posts
8
Years
Additional "typo":

Kyurem uses "getAbilityList" when he merely needs the function "Ability". He always gets Teravolt/Turboblaze as Black/White Kyurem, regardless of if the base Kyurem is HA or not.

Edit: Shaymin has a similar bug, and Landorus doesn't have a "getAbilityList" function when in fact he should have one.
 
Last edited:
155
Posts
9
Years
  • Age 31
  • Seen Jun 11, 2021
Has this happened with anyone else? Whenever I get poisoned, this error pops up:
Spoiler:
 
199
Posts
8
Years
  • Age 30
  • Seen Apr 27, 2024
Has this happened with anyone else? Whenever I get poisoned, this error pops up:
Spoiler:

Yup. I got that too. It happens with toxic poison specifically. The issue is in BattlerEffects. Under the toxic/poison fang function code, pbPoison needs three arguments rather than two.
 
Last edited:
155
Posts
9
Years
  • Age 31
  • Seen Jun 11, 2021
Are you sure? pbPoison seems to have three arguments to me, and yet I'm still getting this error. Here's what the code looks like:
Spoiler:

Is there something I'm missing?
 
199
Posts
8
Years
  • Age 30
  • Seen Apr 27, 2024
Are you sure? pbPoison seems to have three arguments to me, and yet I'm still getting this error. Here's what the code looks like:
Spoiler:

Is there something I'm missing?

That's the wrong place.

ctqrD77.png


go to the script section circled in red and replace the lines circled in blue with

Code:
opponent.pbPoison(attacker,nil,true)
 
155
Posts
9
Years
  • Age 31
  • Seen Jun 11, 2021
That fixed it! Thanks! Turns out I was looking in the wrong place this whole time.
 

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
Additional "typo":

Kyurem uses "getAbilityList" when he merely needs the function "Ability". He always gets Teravolt/Turboblaze as Black/White Kyurem, regardless of if the base Kyurem is HA or not.

Edit: Shaymin has a similar bug, and Landorus doesn't have a "getAbilityList" function when in fact he should have one.
It's only a "bug" in the sense that it may be slightly easier to use "ability" rather than "getAbilityList" for some Pokémon. On the other hand, if the data for multiple forms is put into a PBS file some day, you'd need a consistent way to access it, and that way is by using "getAbilityList". Both ways work just fine.

Kyurem had incorrect data, sure, but Shaymin is fine. Landorus does have a "getAbilityList" procedure, so I don't know where you're looking.
 
199
Posts
14
Years
  • Seen Jul 6, 2022
I have no Idea how this started happening, but the healing items started bugging out. basically I would Go into battle and when my pokemon gets hurt, I would use a healing item. That would work normally. Its when I heal any other pokemon that was not my first pokemon after switching pokemon is when it bugs up and shows this error message.

Exception: NoMethodError
Message: undefined method `effects' for nil:NilClass
PokeBattle_Battle:1594:in `pbRegisterItem'
PokeBattle_Battle:2775:in `pbCommandPhase'
PokeBattle_Battle:2730:in `loop'
PokeBattle_Battle:2820:in `pbCommandPhase'
PokeBattle_Battle:2719:in `each'
PokeBattle_Battle:2719:in `pbCommandPhase'
PokeBattle_Battle:2667:in `pbStartBattleCore'
PokeBattle_Battle:2666:in `logonerr'
PokeBattle_Battle:2666:in `pbStartBattleCore'
PokeBattle_Battle:2656:in `loop'

Please help.

Same problem, but only with Pichu (Static ability) in Essential 16.1 Modified o_O
 
18
Posts
9
Years
  • Age 28
  • Seen Aug 28, 2016
Hey there, I was working on a demo for a thing I've been brewing and I ended up discovering a huge bug in 16.1.

This bug only occurs using an encrypted game and has a 100% reproduction rate.

How to reproduce the bug.

1. use Pokémon Essentials 16.1
2. Encrypt your game
3. run the game for a new character/old save.
4. watch as pbTrainerName(name,outfit=0) causes your game to crash if you are using a new save.
4.5 Otherwise watch the gender thing crash your game.

I've attached 2 screens as proof of this.
xHUjHKH.png

3PBdQkP.png
 

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
Hey there, I was working on a demo for a thing I've been brewing and I ended up discovering a huge bug in 16.1.

This bug only occurs using an encrypted game and has a 100% reproduction rate.

How to reproduce the bug.

1. use Pokémon Essentials 16.1
2. Encrypt your game
3. run the game for a new character/old save.
4. watch as pbTrainerName(name,outfit=0) causes your game to crash if you are using a new save.
4.5 Otherwise watch the gender thing crash your game.
I was unable to reproduce this bug, not because it worked fine when I tried it, but because when I compressed and encrypted a copy of v16.1, the resultant file refused to run for me. I couldn't even get a compressed game to run, let alone try to reproduce this bug.

Turns out my problems were related to this bug. I fixed it, and now I can open compressed files!

Here's the solution:

In the script section Compiler, find def pbCompileTrainers. Spy the string of random letters (in the line beginning record=pbGetCsvRecord) and change the last letter (s) to a capital (S):

Code:
  records=[]
  trainernames=[]
  count=0
  maxValue=0
  pbCompilerEachPreppedLine("PBS/trainertypes.txt"){|line,lineno|
     record=pbGetCsvRecord(line,lineno,[0,"unsUSSSeU[COLOR=Red]s[/COLOR]", # ID can be 0
        nil,nil,nil,nil,nil,nil,nil,{
        ""=>2,"Male"=>0,"M"=>0,"0"=>0,"Female"=>1,"F"=>1,"1"=>1,"Mixed"=>2,"X"=>2,"2"=>2
        },nil,nil]
     )
A little further down, find and delete this line:

Code:
record[9]="" if !record[9]
Games will now work. However, there will be an error when checking for a particular skill code. To fix that, go into the script section PokeBattle_Trainer, and find def hasSkillCode(code) and replace it with the following:

Code:
  def hasSkillCode(code)
    c=skillCode
    return true if c!=nil && c!="" && c[/#{code}/]
    return false
  end
Resolved!
 

Backburner26

Pokemon Lavender Spirit Creator
35
Posts
8
Years
I have no Idea how this started happening, but the healing items started bugging out. basically I would Go into battle and when my pokemon gets hurt, I would use a healing item. That would work normally. Its when I heal any other pokemon that was not my first pokemon after switching pokemon is when it bugs up and shows this error message.

Exception: NoMethodError
Message: undefined method `effects' for nil:NilClass
PokeBattle_Battle:1594:in `pbRegisterItem'
PokeBattle_Battle:2775:in `pbCommandPhase'
PokeBattle_Battle:2730:in `loop'
PokeBattle_Battle:2820:in `pbCommandPhase'
PokeBattle_Battle:2719:in `each'
PokeBattle_Battle:2719:in `pbCommandPhase'
PokeBattle_Battle:2667:in `pbStartBattleCore'
PokeBattle_Battle:2666:in `logonerr'
PokeBattle_Battle:2666:in `pbStartBattleCore'
PokeBattle_Battle:2656:in `loop'

Please help.

hey guys, Could someone please help me fix this bug. It has compleatly stopped production of my Fangame. I cant test out anything as long as this bug is going on. Someone please help.
 
9
Posts
8
Years
  • Age 31
  • Seen Mar 2, 2016
I was unable to reproduce this bug, not because it worked fine when I tried it, but because when I compressed and encrypted a copy of v16.1, the resultant file refused to run for me. I couldn't even get a compressed game to run, let alone try to reproduce this bug.

Turns out my problems were related to this bug. I fixed it, and now I can open compressed files!

Here's the solution:

In the script section Compiler, find def pbCompileTrainers. Spy the string of random letters (in the line beginning record=pbGetCsvRecord) and change the last letter (s) to a capital (S):

Code:
  records=[]
  trainernames=[]
  count=0
  maxValue=0
  pbCompilerEachPreppedLine("PBS/trainertypes.txt"){|line,lineno|
     record=pbGetCsvRecord(line,lineno,[0,"unsUSSSeU[COLOR=Red]s[/COLOR]", # ID can be 0
        nil,nil,nil,nil,nil,nil,nil,{
        ""=>2,"Male"=>0,"M"=>0,"0"=>0,"Female"=>1,"F"=>1,"1"=>1,"Mixed"=>2,"X"=>2,"2"=>2
        },nil,nil]
     )
A little further down, find and delete this line:

Code:
record[9]="" if !record[9]
Games will now work. However, there will be an error when checking for a particular skill code. To fix that, go into the script section PokeBattle_Trainer, and find def hasSkillCode(code) and replace it with the following:

Code:
  def hasSkillCode(code)
    c=skillCode
    return true if c!=nil && c!="" && c[/#{code}/]
    return false
  end
Resolved!

Hi Maruno, I'm afraid this hasn't solved the issue for me. I'm utilizing your fix* here with an otherwise clean build of Essentials 16.1 and I'm still getting errors when encrypting and subsequently trying to start a new game. As soon as the gender/name selection is done with it'll throw the following errors:

G1Yq6lz.png


and then

ZRnoy52.png


Can anybody else confirm this is happening for them too?

*i.e. changed the s->S, removed the line further down and replaced 'def hasSkillCode' - have I missed anything?
 

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
You're supposed to compile the game after making those changes, before compressing/encrypting the game.
 
9
Posts
8
Years
  • Age 31
  • Seen Mar 2, 2016
You're supposed to compile the game after making those changes, before compressing/encrypting the game.

Oops, stupid mistake on my part, somehow totally forgot to compile it. Sorry about that, cheers!
 
824
Posts
8
Years
When using Acupressure (or any move with a target value of 0x200, but the only one that fits that description officially is Acupressure), the game will let you choose a target as if it has a target value of 0x0 - i.e., allowing you to choose either of your enemies or your ally but not yourself. If you choose either of the enemies, it will act as if you didn't choose a move at all and return you to the move listing.

It should make it so that you can choose either yourself or your ally but not the enemies.
 

Derxwna Kapsyla

Derxwna "The Badman" Kapsyla
437
Posts
12
Years
This is something I noticed that exists in v16, but exists as far back as v14. Overworld sprites only cycle frames 1 and 2 when animating. An example of it doing so is in this gif.
n8KP2aO.gif

And here's what the spritesheet looks like.
tu2nuex.png

As you can see, it's entirely skipping the fourth frame, but it's also skipping frame 3 - I discovered that when I labeled the sprites on a hunch.
This also isn't a case of lag either, because the player sprite animates perfectly when walking - assuming the player is using it. I also tested the player sprite as an npc, and it also skips frames 3 and 4 when it's an NPC.
I checked to make sure it wasn't just my game that was bugging out, because I use v14, so I loaded an unmodified v16 and it does it there as well. I also tested it on Amethyst's Pokemon Reborn, and it's present in that as well, meaning the bug has been present in the system for quite some time now.

Honestly, for a long time, I've always had issues with the overworld sprite movement, but I could never figure out what it was that was ticking me off. I finally understand now that this is what's been subtly catching my eye, and I can report it, in the hopes that it gets fixed.
 
Back
Top