#randomizer
Explore tagged Tumblr posts
eikotheblue · 3 months 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
b0tster · 4 days ago
Text
finally beat the randomizer for patreon night lmao
232 notes · View notes
roaxes · 2 months ago
Text
Hello fri-AAAAAAAAH!
314 notes · View notes
jan-holdres · 6 months ago
Text
Tumblr media Tumblr media
190 notes · View notes
arty-cakes · 2 years 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'
941 notes · View notes
cassi-adopts · 2 months ago
Text
PWYW Surprise Adopts
Tumblr media
Hey guess what. I'm up to my eyebrows in debt. So I'm offering surprise adopts using the Overengineered Dice Roller to determine the end colors. Message me if you're interested, and I'll get to work. All adopts will be built off the same base, which means they will all have the same pose and proportions. I am the original artist of the base, however, so I'm not profiting on anyone's work but my own.
Examples
Tumblr media
And remember, these are surprise adopts. Meaning you don't know what you'll get until you get it. You'll be allowed to modify the design to your heart's content afterwards, so long as it's still identifiable as being based on the design I provide. This means you can change gender, hair length and style, markings, body shape, proportions, etc, in any further artwork you create or order of your character or characters.
Currently accepting paypal only.
Please note that while one example uses ten colors, all adopts purchased through this ad will be made using eight.
84 notes · View notes
videogameoutofcontext · 2 years ago
Text
Tumblr media
675 notes · View notes
yaruzu · 3 months ago
Text
"Kakariko Village" from The Legend of Zelda: Twilight Princess in the Majora’s Mask soundfont.
(Made for the Majora’s Mask Randomzier)
54 notes · View notes
per-se-idit · 5 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 · 10 months ago
Text
Tumblr media
It’s okay Walter, we can tackle the first gym when you’re ready
73 notes · View notes
a-mobile-opponent · 5 months ago
Text
Tumblr media Tumblr media
38 notes · View notes
ninstars · 22 days ago
Text
Cartoonish stealth.
13 notes · View notes
roaxes · 1 month ago
Text
Tumblr media
62 notes · View notes
springybonbon · 5 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 🤫
28 notes · View notes
arty-cakes · 2 years ago
Text
Tumblr media
something very sinister about this image
309 notes · View notes