# [Legacy] Bug report thread

Status
Not open for further replies.

#### Maruno

##### Pokémon Essentials dev
Essentials Developer
Bug Reporting for the Pokémon Essentials Engine
This thread is for you to report any bugs you may have found in the latest version of Pokémon Essentials. It is specifically for bugs that exist in an unmodified copy of the latest Essentials version. If you have problems when adding custom code or making modifications of any kind, they don't belong in here.

The latest version of Pokémon Essentials is currently 18.1.

When reporting a bug, please bear in mind the following:
• Try to ensure that the bug hasn't already been reported. If you can give additional information about an already reported bug, that's fine, but plain repetition is pointless.
• Make sure the bug can be replicated.
• Ensure that the bug does in fact happen in an unmodified copy of the latest version of Essentials. Don't assume a bug from an older version is still there just because you can't see the Essentials change log mentioning it's been fixed.
• Make sure the bug you have encountered actually is a bug, and not intended behaviour.
• Provide as much information as you can about the bug, including any error messages that appear, as well as the circumstances that caused it.
Thanks!

Old Bug Reports thread: http://reliccastle.com/forums/showthread.php?tid=880

Last edited:

#### 94lolface

##### Rookie
Member
I'm currently trying to get Stuff Cheeks to work. And it does, but with a catch.
The mon doesn't get the berry's effect when at full HP.

At first I thought the mistake might be on my end, so I tried doing something similar with something that already came with the game: Bug Bite.
Instead of trying to Stuff Cheek my Salac Berry, I tricked it to the opponent instead and used Bug Bite afterwards.

Just like with Stuff Cheeks, Bug Bite works as intended. It steals the opponent's berry and uses it on itself, except it does not actually give the berry's effect while at Full HP, in this case boosting Speed by one stage.

Both, Bug Bite and my own Stuff Cheeks script work as intended, but only when the user took at like one HP of damage.

I figured it has something to do with how pbHeldItemTriggerCheck is defined, so I checked there. Through that I figured that it has something to do with pbItemHPHealCheck instead maybe?
The problem seems to be that the game thinks that for example the Salac Berry has healing properties when in reality it doesn't.

edit: okay so Salac Berry & it's cousins are actually defined as healing items, so they use the check for those as well, thus not working when a mon with full HP uses Bug Bite on a mon with such a berry.

Last edited:

#### Scyl

##### Ironically Unironic Edgelord Extraordinaire
Member
Tiles with the "StillWater" Terrain Tag don't show the reflections of events like they do with the player.

#### boonzeet

##### Developer of Pokemon: Secrets of the Ages
Member
Tiles with the "StillWater" Terrain Tag don't show the reflections of events like they do with the player.

Adding "Reflection" to the name should allow the event to show its reflection. As all reflections are constantly rendered, this is likely for performance.

#### boonzeet

##### Developer of Pokemon: Secrets of the Ages
Member
$MapFactory.isPassable? fails when checking if the square the player is currently on is passable. The offending block of code appears to be this: Code: if thisEvent.is_a?(Game_Player) if thisEvent.x == x and thisEvent.y == y return false if !thisEvent.through && thisEvent.character_name!="" end end As the code already earlier checks each against each events location if the input character is$game_player, this code can be rewritten to:
Code:
if !thisEvent.is_a?(Game_Player)
if thisEvent.x == $game_player.x and thisEvent.y ==$game_player.y
return false if !thisEvent.through && thisEvent.character_name!=""
end
end

Which may have been the intended outcome, as this will return false for the tile the player is on for events that are NOT the player.

#### NettoHikari

##### Trainer
Member
Ruby:
  def pbHasMoveType?(type)
type = getConst(PBTypes,type)
return false if !type || type<0
eachMove { |m| return true if m.type==type }
return false
end

def pbHasMoveFunction?(*arg)
return false if !code
eachMove do |m|
arg.each { |code| return true if m.function==code }
end
return false
end
Both of these functions in PokeBattle_Battler refer to local variables that don't exist in the functions.

#### NettoHikari

##### Trainer
Member
The "Give" option in the Item Storage screen has a bug where if you give an item to a Pokemon, it also deletes that item from your bag.

Example: I have 1 Potion in my Item Storage, and 1 in my Bag. I go to the Item Storage screen, click on the "Give" option for the Potion, and give it to the Noivern in my party. My Noivern now has a Potion, and my Item Storage is empty, but my bag is now also empty, so it deleted the Potion both from Item Storage and the Bag.

#### Scyl

##### Ironically Unironic Edgelord Extraordinaire
Member
Adding "Reflection" to the name should allow the event to show its reflection. As all reflections are constantly rendered, this is likely for performance.

Ah, thanks.

#### Scyl

##### Ironically Unironic Edgelord Extraordinaire
Member
Type Gems don't work.

#### Maruno

##### Pokémon Essentials dev
Essentials Developer
Ruby:
  def pbHasMoveType?(type)
type = getConst(PBTypes,type)
return false if !type || type<0
eachMove { |m| return true if m.type==type }
return false
end

def pbHasMoveFunction?(*arg)
return false if !code
eachMove do |m|
arg.each { |code| return true if m.function==code }
end
return false
end
Both of these functions in PokeBattle_Battler refer to local variables that don't exist in the functions.
I see the error in the second method, but the first method works just fine. What do you see in it?

Type Gems don't work.
I can't recreate this. Indeed, I successfully triggered an Electric Gem when using Electro Ball, and all the Gems work the same way. I'll assume your problem is caused by something you've done, as you're clearly not using an unmodified copy of Essentials v18.

#### NettoHikari

##### Trainer
Member
I see the error in the second method, but the first method works just fine. What do you see in it?
Oops my bad, I thought eachMove was a variable and not a function.

#### Scyl

##### Ironically Unironic Edgelord Extraordinaire
Member
I see the error in the second method, but the first method works just fine. What do you see in it?

I can't recreate this. Indeed, I successfully triggered an Electric Gem when using Electro Ball, and all the Gems work the same way. I'll assume your problem is caused by something you've done, as you're clearly not using an unmodified copy of Essentials v18.

This is in a fresh, clean and unmodified version of V18, obtained from the link you posted in: https://reliccastle.com/essentials/#post-18391.

#### Scyl

##### Ironically Unironic Edgelord Extraordinaire
Member
Also, Dragon Tail is bugged, even if you have a Pokémon to send out; it leads to an endless loop of Dragon Tail hitting you until it either misses or you lose.

#### NettoHikari

##### Trainer
Member
I'm using the decompiled scripts from GitHub and I can't seem to open the Debug Console, both from the menu and using the command "Console::setup_console", but it worked fine for me when my scripts were in the normal compiled form (in Scripts.rxdata).

#### DJ323

##### Rookie
Member
I'm a little new here so sorry if this is a bother but I think I've found a few bugs. Though I found them due to my own script editing, I extracted a brand new unmodified v18 2020-09-02 version of Essentials to test these bugs and they exist there too.

1- Metal burst doesn't work. If you are hit, instead of returning the damage an error message pops up (shown below). If you click okay it will loop until the pp runs out.

2- Powder doesn't work. If you set it up to explode (get hit by a fire type move) it will display an error message (shown below). If you click okay it will loop until the opponent's fire type move runs out. (Note: it only occurs when powder causes the explosion). I think the "RAINDANCE" and "HEAVYRAIN" need to be changed to "Rain" and "HeavyRain" respectively starting at line 320 in Battler_UseMove. Also it doesn't have priority for some reason (even though in the PBS files it seems to) and I don't know why this happens.

3- I don't think STAB is working, I did a few damage calculations with and without STAB, with STAB it should have KO'd and without it should have done around 60% but both did 60%.
4- I don't think weather boosts are working. For example fire type moves in sunny day should do more damage than without sunny day but currently they do the same amount and water type moves should do less damage in the sunlight but currently they do the same amount in and out of the sun.

Both 3 and 4 have to do with "multipliers[FINAL_DMG_MULT]" in Move_Usage_Calculations so there could be an issue with storing the values or calculating the final value.

Hopefully this was helpful. If I find any other bugs while going through the scripts I'll post them (after testing them on an unedited copy).

#### NettoHikari

##### Trainer
Member
Ruby:
---------------------------
Pokemon Essentials
---------------------------
[Pokémon Essentials version 18]

Exception: NoMethodError

Message: undefined method []' for nil:NilClass

Backtrace:

PScreen_PokedexMain:328:in pbGetDexList'

PScreen_PokedexMain:325:in each'

PScreen_PokedexMain:325:in pbGetDexList'

PScreen_PokedexMain:345:in pbRefreshDexList'

PScreen_PokedexMain:260:in pbStartScene'

PScreen_PokedexMain:1187:in pbStartScreen'

PScreen_PauseMenu:151:in pbStartPokemonMenu'

PScreen_PauseMenu:148:in pbFadeOutIn'

PScreen_PauseMenu:153:in pbStartPokemonMenu'

PScreen_PauseMenu:144:in loop'
---------------------------
OK
---------------------------`

Hey, so this happens when I try to open my Pokedex. I haven't modified the files. so I'm not sure why this is happening. Can anyone help out? thaaaaaanks
Delete your current save and try again (or rename your project in the editor).

#### phantombass

##### Rookie
Member
Hey friends! I'm having a small problem with Essentials v18. I have GAIN_EXP_ON_CAPTURE set to true, but I still don't gain Exp when I catch a mon.

Member

#### NettoHikari

##### Trainer
Member
The Regenerator ability only activates at the end of the round for battlers on the field, when it should be activating every time a battler switches out.

#### phantombass

##### Rookie
Member
@phantombass, it's fixed in the GitHub version.
My issue is that I can't move my game progress from the v18 to the github. Not without losing everything. I'd prefer to actually find a way to fix this. Unless there is a way to migrate all my game data and scripts from one to the other without losing anything. I've made a rather sizable amount of script additions and changes, and I would prefer to keep them as they are essential to my game

#### Golisopod User

##### Elite Trainer
Member
My issue is that I can't move my game progress from the v18 to the github. Not without losing everything. I'd prefer to actually find a way to fix this. Unless there is a way to migrate all my game data and scripts from one to the other without losing anything. I've made a rather sizable amount of script additions and changes, and I would prefer to keep them as they are essential to my game
Yes there is a way to transfer. Did you note down all your changes in v18?

Status
Not open for further replies.