Jump to content
Cass

Can I generate ANY TID/SID in Colosseum?

Recommended Posts

I'm reopening the Colosseum discussion about the RNG that never seems to end! In short, PkHex is returning an illegal flag on my Espeon/Umbreon (Unable to match encounter conditions to a possible RNG frame) because I altered the TID/SID on them to match my trainer (I'm one of those who uses the same TID/SID for every game). After a little research, looks like this is because I changed my TID/SID AFTER starting the new game save, which of course would have been inconsistent with the PRNG from when I started the save file and whatever TID/SID and Espeon/Umbreon I generated upon startup. Here is what I care about and don't care about for my Espeon/Umbreon's legality:

I DON'T care about: IVs, Nature, Shinyness, Ability, Gender, basically anything that isn't TID/SID. We Gen VIII now, the world of mints and ability capsules and hyper training and all that shtuff. My Espeon and Umbreon can look like literally whatever within the following parameters:

I DO care about: TID/SID/PID matching. My TID is 00008 and my SID is 00000, and despite my best efforts I cannot come up with a PID that marks the Esp/Umb as legal.

To fix this, I have tried various strategies from this site and others, and seem to always come up short with generating the right PIDs for Esp/Umb. Most tools available are designed to help generate shinies, but as stated above this isn't important to me. I now have two questions.

1. Is it possible that the PRNG doesn't produce all theoretically possible TID/SID combinations? is 00008/00000 unobtainable given Colo's coding? I was able to generate PIDs for both TID00008 and SID00000, so those are both possible, I just haven't been able to get them together

2. Please help??

Share this post


Link to post
Share on other sites
23 hours ago, Cass said:

1. Is it possible that the PRNG doesn't produce all theoretically possible TID/SID combinations? is 00008/00000 unobtainable given Colo's coding? I was able to generate PIDs for both TID00008 and SID00000, so those are both possible, I just haven't been able to get them together

 

That combination is impossible indeed, as it doesn't appear in the "PID to IVs" section of RNG Reporter. It is possible, however, the combination 00008/00001, if it pleases you. The fact is that Colosseum and XD behave like Ruby and Sapphire; so, unlike Emerald, Fire red and Leaf green, not every TID/SID combination is possible. Moreover, to make things more complicated, you should consider that even if a given combination is theoretically possible, you could not be able to actually obtain it, because some frames are skipped during the TID/SID generation; and since the PIDs of Espeon and Umbreon are linked to the frame that corresponds to your TID/SID, you should really use the RNG manipulation to get them, instead of just altering them via PKHeX, if you want to be 100% sure about their legality. 

 

23 hours ago, Cass said:

2. Please help??

 

If you need more help, feel free to ask!  😄

 

P.S. Coincidentally, just two days ago, I started a new game in Colosseum with your same TID: 00008. Since I'm a curious guy, can I ask you why you chose that very number?  😀 

Share this post


Link to post
Share on other sites

Oh wow great knowledge! I have a couple follow ups then: is it the case that RNGReporter programming is limited within some definition of a “practical” frame range for generation? If I were to boot up a GameCube or emulation of Colosseum and let it run forever at the point of TID generation, would it just generate forever or eventually hit some sort of limit as it is a PRNG? I generally use Dolphin, so state/frame checkpoints are not unreasonable. Also, I would be curious if there has been any research about Nintendo’s own legality checker and whether or not it considers a PID x TID mismatch based on origin game. 

As a follow up to that, if there IS an actual coded limit to TID/SID generation, wouldn’t that be a useful legality inclusion for pkhex as far as an origin game x TID/SID mismatch? If there IS NOT such a limit, wouldn’t it then be better to remove that legality check altogether and base it instead on whether or not Esp and Umb match properly?

 

PS the 00008 for me is superstition and consistency! I rolled it in my very first game playthrough so it’a a bit of nostalgia I like to take with me in games where I’m not just experimenting or messing around. The 00000 is just for consistency with Virtual Console, no special significance there. Did you also roll the 00008 on purpose??

Share this post


Link to post
Share on other sites
Posted (edited)

I don't know if and how Nintendo's legality checker would handle a PID mismatch(this should be tested empirically, I guess), but, as far as I know, the legality of a given TID/SID combination does not depend on its corresponding frame: a combination found on, let's say, frame 1 billion, is just as legal as one found on frame 10,000. However, if you want a specific combination -and that combination is possible, of course- you don't need to wait "ad infinitum": by using Dolphin 4.0-9148(or lower versions) and the program "Runasdate", you are able to start the game on a date that allows you to get your TID/SID on a conveniently low frame: for example, I got my combination around frame 15,000. Also, I think that PKHeX's legality check is alrealdy based on Umbreon and Espeon's match with the TID/SID: Umbreon and Espeon's PIDs are generated after a number of frames(usually 7 and 14, respectively, but this can vary) after your TID/SID: since the combination 00008/00000 is not possible at all, no Umbreon/Espeon with those numbers will ever be legal. However, it seems that PKHeX doesn't check whether a combination itself is possible or not, so if you edit a shadow pokemon to give it an impossible pair, it could be marked as legal, even if it is actually not: that's why it's always better to do everything in-game.

P.S. Yeah, I picked 00008 on purpose: it's the number of the principal winds of the compass rose, and a cool number in general!  😁

Edited by Toffoletto

Share this post


Link to post
Share on other sites

I suppose this is a limit of my understanding. I am thinking about TID/SID generation as if it is an RNG where, given enough iterations, 00008/00000 would eventually be produced (even with roughly 4.3bil possibilities). Is it in fact the case that there is only a limited number of TID/SID combinations, and the seed determines which frame those combinations appear?

Also I have experienced what you mentioned with other mons from Colo, in that pkhex doesn’t mark them illegal even with 00008/00000. Without Esp/Umb, I would not have even detected this problem!

PS cool number indeed, I may just say to hell with legality and keep it anyway!

Share this post


Link to post
Share on other sites
11 minutes ago, Cass said:

I suppose this is a limit of my understanding. I am thinking about TID/SID generation as if it is an RNG where, given enough iterations, 00008/00000 would eventually be produced (even with roughly 4.3bil possibilities). Is it in fact the case that there is only a limited number of TID/SID combinations, and the seed determines which frame those combinations appear?

Yes: the seed determines (not which, but) when a given combination will appear; nonetheless, for some games, not every combination is legally possible, no matter how long you wait for its frame. I don't know what is the specific reason for this, however, so if you wish to know about this detail, you would need a person more experienced than me.

Share this post


Link to post
Share on other sites

That makes sense to me given that it is PRNG. Not to mention there's no real use in testing to make sure ALL 4 bil combinations are possible, it seems a bit much. Thanks for the help anyway!

Share this post


Link to post
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...