Jump to content

PKHeX Suggestion


Reclaimer Shawn

Recommended Posts

10 hours ago, Kaphotics said:

No; you can already do this via the batch editor.

I am not able to do this via the Batch Editor. I'm trying to edit in 'M (FF) with moves TM02, TM33, TM41, and TM50, and whenever I save all it does is erase the pokemon in that slot. This is the script I'm trying to use to do this:

=Box=8
=Slot=12
.Species=255
.Stat_Level=100
.EXP=1059860
.Stat_HPCurrent=65535
.Stat_HPMax=65535
.Stat_ATK=65535
.Stat_DEF=65535
.Stat_SPC=65535
.Stat_SPE=65535
.Move1=202
.Move2=233
.Move3=241
.Move4=250
.Met_Level=100
.Move1_PP=255
.Move2_PP=255
.Move3_PP=255
.Move4_PP=255
.OT_Name=Shawn
.OT_Friendship=255
.TID=13931
.Nickname='M
.Met_Location=0

 

Edited by Reclaimer Shawn
Link to comment
Share on other sites

4 hours ago, Kaphotics said:

Ah I forgot, the Species property is automatically remapped to national dex id, since it's not a normal species it just deletes it.

You can always hex edit the file I guess, maybe I can add a rawspecies property that doesn't do the remap. edit: added! https://github.com/kwsch/PKHeX/commit/71970b3332e0a28efb171b64ac00d88ace122424

Thanks for such the fast commit and response! A question before I end up trying this out again... Moves aren’t mapped in the same way are they? If I set the move ID to something else outside of the regular box, will it keep my move ID? Also, how would I go about recompiling this version of PKHeX so I can get it now? Thanks again by the way!

Edited by Reclaimer Shawn
Link to comment
Share on other sites

3 minutes ago, Reclaimer Shawn said:

Thanks for such the fast commit and response! A question before I end up trying this out again... Moves aren’t mapped in the same way are they? If I set the move ID to something else outside of the regular box, will it keep my move ID? Also, how would I go about recompiling this version of PKHeX so I can get it now? Thanks again by the way!

Only have to worry about species for gen1/3 and items for gen1-3; everything else is contiguous.

Can compile using visual studio 2017 community, or can wait for the next release (a week or two; I usually go a month between releases)

Link to comment
Share on other sites

3 minutes ago, Kaphotics said:

Only have to worry about species for gen1/3 and items for gen1-3; everything else is contiguous.

Can compile using visual studio 2017 community, or can wait for the next release (a week or two; I usually go a month between releases)

I’ll try recompiling it and try it out myself. Thanks once again though! This’ll help me to make a save with all Pokémon (from 0-255) for Pokémon Red (with exclusions of save and game breaking Pokémon, that is)

Edited by Reclaimer Shawn
Link to comment
Share on other sites

1 hour ago, Kaphotics said:

Only have to worry about species for gen1/3 and items for gen1-3; everything else is contiguous.

Can compile using visual studio 2017 community, or can wait for the next release (a week or two; I usually go a month between releases)

I've compiled the new version and I noticed there was the SpeciesID1 option. I set SpeciesID1 to 255 and it caused the Mew to just disappear from the PC box and PKHeX. This also happens if I couple Species1 with Species and set them both to 255. The custom moves work completely fine though. Another question... How do you batch edit party pokemon?

Edited by Reclaimer Shawn
Link to comment
Share on other sites

SpeciesID3 is for pk3 format only; SpeciesID1 is for pk1s.

If a pkm class does not have the property, the value can't be set (no changes).

Party Data has slot/box values of -1

 

looks like PK1 has a "Valid" check:

public override bool Valid => Species <= 151 && (Data[0] == 0 || Species != 0);

maybe just forcing that to `true` and recompiling will make the program not treat as invalid (and thus will show the missingno sprite).

Link to comment
Share on other sites

1 minute ago, Kaphotics said:

SpeciesID3 is for pk3 format only; SpeciesID1 is for pk1s.

If a pkm class does not have the property, the value can't be set (no changes).

Party Data has slot/box values of -1

Using .SpeciesID1=255 makes a pokemon disappear from its slot and in-game. So, let's say I wanted to edit Party Pokemon Slot 3.

Would I just do =Box=-1 and =Slot=3 to edit Party Pokemon Slot 3?

Link to comment
Share on other sites

39 minutes ago, Kaphotics said:

SpeciesID3 is for pk3 format only; SpeciesID1 is for pk1s.

If a pkm class does not have the property, the value can't be set (no changes).

Party Data has slot/box values of -1

 

looks like PK1 has a "Valid" check:


public override bool Valid => Species <= 151 && (Data[0] == 0 || Species != 0);

maybe just forcing that to `true` and recompiling will make the program not treat as invalid (and thus will show the missingno sprite).

Setting the boolean to true doesn't work. I typed it as this: 

public override bool Valid => true;

Did exactly the same thing as before. Maybe it's a bit complicated, but I think the only way to fix this is to integrate the other 155 pokemon into the Drop-Down Box.This'd mean giving each one of them an unknown sprite and giving them either their own set of EV/IV/Stat Calculation or just giving them all a basic number and let the game deal with it. If you want (I'm not familiar with Visual Basic or C# but have used other IDEs and other languages before) I could add in the rest if you didn't mind telling me how to do this.

Edited by Reclaimer Shawn
Link to comment
Share on other sites

On 5/5/2018 at 11:35 AM, Kaphotics said:

Try running it just once with the SpeciesID1 then exporting the save.

PKHeX references Species for displaying sprites; so any invalid species ID for gen1/3 will display nothing instead of missingno.

@Kaphotics Tried it that way and it didn’t work. It is the equivalent of deleting the Pokémon in-game. When that didn’t work, I tried editing the MaxSpeciesID_1 value, and doing this causes PKHeX to crash upon entering. I have a solution, but hopefully it isn’t too tedious. You put all 255 items in RBYGS by placing them as something like Item#093. Could you do the same for the rest of the glitched Pokemon we can’t edit in? (An example would be having the Pokémon at the 255th index labeled as PokemonID#255 in the Pokémon Species drop-down box). You could give them all the same EV/IV/Stat Calculation and just let the person correct the stats in-game by placing the Pokémon in the PC. This way you wouldn’t have to add in individual Missingno. Stat Calculations. You could also give all of the Pokémon added in this way the same sprite (a Missingno. Sprite of some kind).

Edited by Reclaimer Shawn
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...