redwings1340•

You're saying we could have gotten a Larvitar? Forget the Horsea, that would have been the most amazing thing ever. Don't tell me what it is, but did you check out what the Dome Fossil is? I'm just wondering if we're going to enjoy it when we figure it out.

160
UncaffeinatedOPderandomizer•

Yes, but it's not anything particularly noteworthy or related to the Lore.

Edit: removed

81
blackthunder365•

Aww that's no fun :(

25
arandompokemon♥ Operation Love ♥•

Now people are going around discouraging people from reviving the dome fossil because they're not impressed by what it evolves into. In unrelated threads, no less. :\

17
Yglorba•

Technically we could use our knowledge of this future to start working it into the lore right now...

14
redwings1340•

If you did, make sure you somehow give it a spoiler tag. A lot of people wouldn't be appreciative of it getting revealed before it was time.

46
UncaffeinatedOPderandomizer•

Maybe it could be like the Monster In The Darkness from OOTS.

28
MLein97•

That fits with everything with how the internet naturally works, let it be lore will come naturally. Personally that's probably the best answer of mon that comes out of it because of the internet connotations of the thing, it even clashes with the lead (currently in the team). Even better if we release the current lead...

5
Lavaros•

Urer'f ubcvat jr pna anzr vg furybo

3
OfHyenasStart9 and wait4baba•

Jryy, vg'f rira n oht.

2
joescooljoeisawesum on Twitch•

Va gur CP...

1
GoldStarzSupreme•

In some cultures fcvqref are considered to be great liars and storytellers, which makes that the perfect fit.

2
joescooljoeisawesum on Twitch•

This is actually GREAT for lore. Vg'f n oht va gur CP...

2
MLein97•

I disagree think about what type of thing that is, what that translates to reality as, the internet's opinion of that thing, and how that thing interacts with the real world version of the current lead (currently in the team). Also things turn great if the current lead has in incident because the justification writes itself.

1
[deleted]•

[deleted]

-1†
Aspirety•

Wow dude. Way to ruin it for everyone. He even said "Don't tell me" <_<

-4†
sommerjj•

Yeah I'm pretty pissed cause I'm fluent in Rot13. Was scrolling through the thread and BAM! could not unsee

21
pyrogeddon•

Why in the world are you fluent in that?

15
[deleted]•

[deleted]

-4
ODIENBLSK•

I'm going to assume you're trolling for dramatic effect.

And if you're not, shame on you for not trolling for dramatic effect and telling us it would be a torchic or something. Come on man, the opportunity.

-5
UncaffeinatedOPderandomizer•

I wouldn't troll people like that. Edit: removed

6†
[deleted]•

[deleted]

3†
William_Dearborn•

Gvyjthqxgr.

0
[deleted]•

Hey, both that and Kabuto are arthropods!

-17
Persona_Alioaka valence_d | 2000000th input GET•

How about the flipside? Our rival could've fought us with a Larvitar, but chose the Horsea.. Man that would've been scary

4
PeenoyDotoWoof Woof•

nah it'd still be a horsea all the time if we choose machop, because the horsea is in the water type slot and machop was in the fire type slot. or something similar. as long as we picked machop, rival would have horsea. if we had larvi, he'd have chop. if we had horsea, he'd have larvi.

10
Persona_Alioaka valence_d | 2000000th input GET•

I know, so in the event that we chose Horsea, he would've had a Larvitar

2
PeenoyDotoWoof Woof•

i took your comment to mean that it would be scary if he had a larvi and we had the truant chop since if we had horsea and he had larv it wouldn't even be scary. try shooting bubbles up its arse, i'm guessing it'll roll over.

2
spartenxALL HAIL THE LEECH KING•

I could have sworn machop was in the grass type slot, and horsea was in the fire type slot

0
PeenoyDotoWoof Woof•

or something similar.

that could be, i'm not entirely sure. which is why i stated the above.

1
Guardax•

Thanks for not revealing who Dome is!

59
cyan386•

ITS TURTWIG

24†
SpaZticHero•

ITS... a Jigglypuff seen from above.

28
CeruleanOak•

It's Mokuba!

9
cloistered_around•

"Shut up, Mokuba."

7
CrazedBananaREMEMBER ROOT•

Fuck you.

-9
AtticusTaylor•

Turtwig doesn't exist yet...

64
IrisGoddamnIllych•

You need more upvotes because it literally can't be turtwig.

17
FlyingSagittarius•

It's not turtwig.

20
[deleted]•

[deleted]

1
[deleted]•

[deleted]

-7
[deleted]•

[deleted]

-18
Mojo1202THE SWAMP!•

Seriously man DO NOT POST MORE, FOR THE LOVE OF GOD.

29
Pelleas•

To be fair, he didn't reveal anything we could have actually figured out through the stream except for the randomized nicknames of Giovanni's Pokemon. I'll be upset if he tells us Gary's final team or something, but I'm totally fine with this stuff. It would also be interesting to know what we would get from NPC trades.

2
[deleted]•

WOW, good job.

27
lightningrod14Are you still there?•

FUCK. NONE OF THIS IS GOOD NEWS.

23
Bytemite•

Check some of the stuff above, some of it is awesome for lore.

2†
Metroidman•

What do you mean for the lore?

1
Bytemite•

I can't say much more because spoilers, but let's just say I really hope we get Old Amber and revive it.

3
bge•

Impressive stuff, how did you do it?

18
UncaffeinatedOPderandomizer•

Well it's complicated and I went down a lot of wrong turns (including using the wrong version of the ROM and an incorrect setting).

First off, the Randomizer uses Java's default RNG, which is a 48bit LCG. Sadly, brute forcing a 48bit seed was well beyond my capabilities. The key was the wild pokemon data, because that was one of the few places where the Randomizer is coded in a way that is ammenable to reversing. Specifically that was the only place where it used a large number of fixed calls to nextInt that are reasonably observable. In most places, it uses rejection sampling, which makes analysis infeasible.

With a non power of 2 modulo, nextInt simply takes (state >> 17) % N. (There are a few other complications, not particularly relevant). By putting in enough known wild pokemon data, I looked at the places where N was even in order to recover the lower 18 bits.

This is complicated by the fact that you don't know the exact slot <-> pokemon matching. For each group, I found all compatible pokemon slot matchings taking into account level range and base stats, and iteratively pruned ones with only one possibility on either side. Another complication is that some of the random Dex information was incorrect. I ended up correcting some by checking the archives, which gave me enough information to solve the rest.

Anyway, once I had the lower 18 bits, it was easy to brute force the remaining 30 bits (really only ~24 if you generate according to the mod of the first test) using the odd nextInt calls. So that gave the seed at the start of the wild pokemon generation.

After that I tried to trace the seed back through the code, but got bogged down and eventually gave up. I ended up just guessing the offset (i.e number of calls) between start and wild pokemon generation and then checking the guess with the known ability data (which is generated first).

At that point I had working seeds for the ability and wild pokemon but they didn't match. I troubleshooted it for a while and eventually figured out that I was using the wrong ROM and the wrong settings for Update Moves. At that point, I had the correct seed (there were actually 262k seeds that give the same data).

161
orangeinsight•

Ahhh... So it was magic just like I suspected.

172
Hellknightx•

It's no match for a good blaster at your side, kid.

8
necromagiks•
2
TorchicBlaziken•

You need to tell us exactly what all of our Pokémon would be if they weren't randomized

54
bge•

Geeze, thats true dedication and takes serious skills. Someone like you should be making a bunch of money working on encryption stuff or something like that! Really great work and thanks for explaining.

22
FreesiaAigamiLet's ship EVERYONE. :D•

This is probably actually fairly trivial compared to most encryption systems. 48 bits is a relatively small key space to begin with. (DES has 56 bit encryption keys, and it's considered broken because /the key size is too small/ and thus it's vulnerable to brute force attacks.) Furthermore, LCGs have other problems. A major one is that because of their construction, you can trivially invert them, which is a problem no proper CSPRNG would ever have.

Basically, nothing in how this program works is actually designed to stop attackers (from reverse engineering the seed), so, of course, it won't. If they wanted to, they could probably have trivially stopped what Uncaffinated here did by using java.security.SecureRandom instead of java.util.Random. :)

10
UncaffeinatedOPderandomizer•

48 bits is easy to break if you have a supercomputer, but it was a bit out of my reach.

7
Fox--Kit•

I am seriously impressed by your dedication. I also can't help feeling bad though, because if the streamer had just pressed the "Create log" when he randomized the settings, it would have done all that for us, but then we'd be able to see everything and that'd ruin the fun.

As it is, again, I'm seriously impressed. =D

16
VikingNipplesTookis Affiliate•

He probably did and simply chose to not release it.

7
Fox--Kit•

Probably so =3

3
Kamaria•

So I take it this means you know who the Elite Four are holding, or who the Pokemon Tower Ghost is?

12
UncaffeinatedOPderandomizer•

I know what the Elite Four have (well I have the logs, I haven't bothered to actually check).

The Tower ghost strangely doesn't appear in the Randomizer logs at all. I'm guessing it's hard coded in the game.

42
lightningrod14Are you still there?•

2spooky

64
CaptButterToast•

Logs aren't in there because the person who tried to log it was found dead in an ally with "GET OUT" written in Unown on his forehead. 3spooky5me

50
funfwfKakuna Matata•

Ghost Marowak doesn't get randomised. I've been playing my own randomised FR and it was the same.

10
[deleted]•

[deleted]

8
tetraflu0ride•

I love you

6
khaosdragon•

Of course.

Really though, I'm consistently surprised by the level of dedication this community has. Kudos to you, sir and/or madame.

That, or I'm fairly drunk and don't really understand what's going on in this thread. PROST.

6
lightningrod14Are you still there?•

I take back what I said. Good job, man! :)

5
Tinkleheimer•

Yeah, but how did you do it?

3
[deleted]•

Any chance you could please release the seed for those of us that want to do a similar run in the future/when the save is released?

2
UncaffeinatedOPderandomizer•

I think it makes sense to release it at the end of the game if the streamer doesn't.

6
[deleted]•

[deleted]

1
dralcaxFANSERVICE!•

Can you PM me the results? I'm interested to see what might happen.

1
UncaffeinatedOPderandomizer•

Sorry, I'm not realeasing any more information right now.

1
MoteKidelecKuribu Sandslash•

As nice as it is that you are using rot13 to try to prevent spoilers for those that don't want them, that stuff is not simply staying out of the public eye. The IRC has already had a guy flat out spoil the Zapdos replacement for everyone there, so I do really hope you are especially careful with any more information you give out. Right now the information you have given hopefully shouldn't have much of an influence on our plans, since fossils will be revived too low of levels, and a legendary is a legendary either way, and Zapdos' location is the only ideal one if we want to use the master ball. Please try to keep things like that so that we can still have fun with the unpredictableness of the randomized game, perhaps only using your knowledge to discover the answers of missed opportunities from now on, such as those listed in your image

18
UncaffeinatedOPderandomizer•

Sorry about that, I was hoping that the people asking for spoilers here would be more discrete. I'll stop giving out any more information.

10
jessewq•

While the original post was cool, since it didn't spoil anything for our actual playthrough, posting the other information (dome fossil, legendaries, etc.) in the comments was kind of a dick move. A lot of people don't want to know that stuff until it happens and you have to know that others will be posting it in other threads and in chat where people won't be able to avoid it.

13
UncaffeinatedOPderandomizer•

Sorry, I've removed all the extra spoilers now.

5
[deleted]•

[deleted]

1
CaptButterToast•

What would the Zapdos in powerplant be?

12
UncaffeinatedOPderandomizer•

Edit: removed

40
kamiathewolfCall Joey for Democracy•

Oh my God, that is awesome.

39
Gabmaia•

How does this cipher work?
EDIT, nevermind, I got it!

3
A_Vicarious_Death•

Map A-Z for values 0-25. He said ROT13, which means rotate 13. So add 13 to the number you currently have and that's your new number. It wraps around once you pass Z = 25.

For example, A = 0 -> N = 13

7
SophisticatedSlothI can dig it•

Can you PM me who it is? I'm dumb.

2†
vereonix•

http://rot13.com/index.php Just paste in all the crazy coded stuff and hit "cypher"

2
[deleted]•

[deleted]

-22
blackthunder365•

Really?

1
Yglorba•

It's not as unlikely as you think; the randomizer was set to only replace legendaries with other legendaries.

28
blackthunder365•

Ah, I wasn't aware of that.

6
thecatteam•

Oh god, now we have to get it.

1
tlamy•

What was it before he removed it?

1
thecatteam•

pm'd.

3
bk1689•

Could I get a pm too?

1
montaron87td•

And what about Articuno and Moltres?

1
JeremyHillaryBoobREGRET!•

Damn it TPP community. Stop being so good at figuring stuff out!

11
The_Beefcube•

This is awesome work, and it's great to see what we missed!

That being said though, could you possibly keep anything we'll still experience like the E4 Pokemon/types a secret for now? Unfortunately people are already spoilering what you've told us in some other threads.

11
clovens•

Bird Jesus Christ. If these are true: Spoilers tags. Now. Please.

10
Whatevs4Resident Sneasel•

Can't wait to see if this is right!

EDIT: (Not to imply I don't trust you or your abilities)

8
CaptButterToast•

I'm a nub, could someone tell me how to translate these? >.<

7
TealClover•

type them in here: http://rot13.com/

20
[deleted]•

[deleted]

7
needballstop percentage grass yo•

first of all, holy sht SO MUCH RESPECT. also, secondly, i'm super excited to see if we can catch one of those legendaries. They all look pretty cool. (also ahem nzore and trololol at qbzr).

EDIT: Rot13'd some stuff to avoid spoilers.

6
[deleted]•

[deleted]

3
flarn2006(The F, L, R, and N are silent.)•

You if it turns out you're just trolling: http://pldh.net/media/dreamworld/136.png

(not that I think you are or anything; just had to be said)

EDIT: Nope.avi

6
bonchaimagaspakpew pew•

woah. waiting to see what happens

5
LegokunEffect: Community Sparkle•

I'm sure they will pass down stories of Uncaffeinated, The One Who Knew Too Much some day.

5
RedblackspotHippowdon•

Genuis

4