#randomizer
Explore tagged Tumblr posts
eikotheblue · 1 month ago
Note
How do you *accidentally* make a programming language?
Oh, it's easy! You make a randomizer for a game, because you're doing any% development, you set up the seed file format such that each line of the file defines an event listener for a value change of an uberstate (which is an entry of the game's built-in serialization system for arbitrary data that should persiste when saved).
You do this because it's a fast hack that lets you trigger pickup grants on item finds, since each item find always will correspond with an uberstate change. This works great! You smile happily and move on.
There's a small but dedicated subgroup of users who like using your randomizer as a canvas! They make what are called "plandomizer seeds" ("plandos" for short), which are seed files that have been hand-written specifically to give anyone playing them a specific curated set of experiences, instead of something random. These have a long history in your community, in part because you threw them a few bones when developing your last randomizer, and they are eager to see what they can do in this brave new world.
A thing they pick up on quickly is that there are uberstates for lots more things than just item finds! They can make it so that you find double jump when you break a specific wall, or even when you go into an area for the first time and the big splash text plays. Everyone agrees that this is neat.
It is in large part for the plando authors' sake that you allow multiple line entries for the same uberstate that specify different actions - you have the actions run in order. This was a feature that was hacked into the last randomizer you built later, so you're glad to be supporting it at a lower level. They love it! It lets them put multiple items at individual locations. You smile and move on.
Over time, you add more action types besides just item grants! Printing out messages to your players is a great one for plando authors, and is again a feature you had last time. At some point you add a bunch for interacting with player health and energy, because it'd be easy. An action that teleports the player to a specific place. An action that equips a skill to the player's active skill bar. An action that removes a skill or ability.
Then, you get the brilliant idea that it'd be great if actions could modify uberstates directly. Uberstates control lots of things! What if breaking door 1 caused door 2 to break, so you didn't have to open both up at once? What if breaking door 2 caused door 1 to respawn, and vice versa, so you could only go through 1 at a time? Wouldn't that be wonderful? You test this change in some simple cases, and deploy it without expecting people to do too much with it.
Your plando authors quickly realize that when actions modify uberstates, the changes they make can trigger other actions, as long as there are lines in their files that listen for those. This excites them, and seems basically fine to you, though you do as an afterthought add an optional parameter to your uberstate modification action that can be used to suppress the uberstate change detector, since some cases don't actually want that behavior.
(At some point during all of this, the plando authors start hunting through the base game and cataloging unused uberstates, to be used as arbitrary variables for their nefarious purposes. You weren't expecting that! Rather than making them hunt down and use a bunch of random uberstates for data storage, you sigh and add a bunch of explicitly-unused ones for them to play with instead.)
Then, your most arcane plando magician posts a guide on how to use the existing systems to set up control flow. It leverages the fact that setting an uberstate to a value it already has does not trigger the event listener for that uberstate, so execution can branch based on whether or not a state has been set to a specific value or not!
Filled with a confused mixture of pride and fear, you decide that maybe you should provide some kind of native control flow structure that isn't that? And because you're doing a lot of this development underslept and a bit past your personal Balmer peak, the first idea that you have and implement is conditional stops, which are actions that halt processing of a multiple-action-chain if an uberstate is [less than, equal to, greater than] a given value.
The next day, you realize that your seed specification format now can, while executing an action chain, read from memory, write to memory, branch based on what it finds in memory, and loop. It can simulate a turing machine, using the uberstates as tape. You set out to create a format by which your seed generator could talk to your client mod, and have ended up with a turing complete programming language. You laugh, and laugh, and laugh.
2K notes · View notes
roaxes · 12 days ago
Text
Hello fri-AAAAAAAAH!
272 notes · View notes
jan-holdres · 4 months ago
Text
Tumblr media Tumblr media
190 notes · View notes
arty-cakes · 1 year ago
Text
most awful thing about this randomizer is that almost every enemy is hornet and because she is a boss fight she has no idle behavior. the minute i enter a room every single hornet a mile away senses my presence and is doing her very best to kill me instantly throwing her needles through the walls like 'DIE DIE DIE'
940 notes · View notes
indiegamesoutofcontext · 1 year ago
Text
Tumblr media
673 notes · View notes
per-se-idit · 4 months ago
Text
Say what you will but sometimes these animations do go hard. (Don't mind my laggy capture)
Sir, how the hell you did not fall of that pegasus????
Tumblr media
Insanity.
58 notes · View notes
shoujinz · 8 months ago
Text
Tumblr media
It’s okay Walter, we can tackle the first gym when you’re ready
65 notes · View notes
a-mobile-opponent · 3 months ago
Text
Tumblr media Tumblr media
36 notes · View notes
springybonbon · 3 months ago
Text
Tumblr media Tumblr media
Some funnsies from that one randomizer Dandy's world thingy,i love it sm
Toodles says you are next after Glisten,betta start running 🤫
27 notes · View notes
sillovn-archived · 6 months ago
Text
Tumblr media
No context randomizer adventures.
37 notes · View notes
anusbiszinha · 11 months ago
Text
I decided to start a randomizer run on Pokémon Violet, and well... it's something [PT1?]
Tumblr media
All the spaws, starters and teams are randomized the moment you open the mod, which has given me some very funny situations so far. You can get the mod here!
My Starters 😭😭😭
Tumblr media
I ended up getting Terapagos, which resulted in a cutscene worthy of a horror movie, but which was ruined by Arceus' huge ass
Tumblr media
And well, when I put my Terapagos out of the Poké Ball, I discovered that it was shiny. I ended up naming it Kiki after Kieran
Tumblr media
He's so ugly, I love him. Looks like a Littlest Pet Shop.
As the ancient scriptures already dictated, the apocalypse has arrived and the devil has come with his beast
Tumblr media
This shit is not cool. I got wiped out in one Cross Chop
Tumblr media
The adventure from Nemona's house to the lighthouse was chaos with me running from dozens of angry Pokémon, but I ended up with a new addition to the team: Alcremie!
But just as Nemona has her demon, I have mine. I forgot to disable randomizing skills and attacks and well, I now have an Alcremie with Shadow Force. I've affectionately named her Lucifer.
Tumblr media Tumblr media
It took me a long time to reach the Lighthouse (about 2 hours of gameplay), and finally the fight against Arven. I thought he'd have a legendary too, but he actually had a team of five little guys!
Tumblr media
His team was made up of Tandemaus, Impidimp, Toedscool, Growlithe and a Poliwag with Tera-Flying as his ace.
And he wiped my ass, which resulted in Nemona humiliating us😭
Tumblr media
Once again, my adventure from the lighthouse to the entrance to Mesagoza earned me a Milotic, Goodra and an Incineroar. I don't know what the hell happened in the meantime, but Nemona learned to change the type of her Arceus
Tumblr media
It was a pretty torturous fight involving a Gravity + Seismic Toss combo from her Arceus, but one hour I managed to enter the city, only to discover that random NPCs could also use the Tera Orb
Tumblr media
NPCs that don't have Tera Orb animation simply freeze on one position for the rest of the fight, it's very funny and ugly
Tumblr media
Well, considering how smoothly the fight against this girl from Team Star went, I thought it would be easy against her friend. But nothing's cool in this game, and he had a Shiny Dialga that just swept my whole ass up
Tumblr media
And well, my adventure has stopped here for today, because I've had my ass kicked and I'm not going to post it. I'll come back when I manage to win this fight :´D
51 notes · View notes
roaxes · 10 months ago
Text
Tumblr media
It was that easy!
137 notes · View notes
godtrauma · 5 months ago
Text
please use this animal crossing villager randomizer and in the tags, tell me their name, what they look like, and their species :)) i love learning about these little guys
21 notes · View notes
arty-cakes · 1 year ago
Text
Tumblr media
something very sinister about this image
309 notes · View notes
clovedown · 2 years ago
Text
Tumblr media
Matt played a pikmin randomizer the other day. Pikmin from back then are uh... not the smartest. They're great :)
276 notes · View notes