Newest Updates

07/16/24: Roulette_Final_FINAL

So there was this one more little thing I wanted to do for the R/S/E roulette article: when simulating multiple possible fuzz values, I wanted a ball that bounced off an existing slot to split into two balls that would fall to each side. I could imagine what it was supposed to look like, and it'd be neat, and I wanted to do it. The problem was just that with my weird hodgepodge code for a simple fuzz range calculator with the whole animation thing awkwardly bolted on afterwards, this was basically impossible to do. So obviously, I had to rewrite and reorganize the roulette code into something with a little more structure, so that I could do this tiny minor feature nobody but me cared about.

...And then that took a while, because this was a lot of complex code to refactor, and then I had to implement this additional feature, and then I wanted to double-check and polish up various things and fix some minor issues, and then it managed to hit me with the most obnoxious obscure bugs possible, just to torment me when I was sure I was free. But! It's done now! The roulette simulator will now show the ball splitting into two balls if it bounces off an existing ball when you have selected either the "Highest/lowest/medium fuzz" option or the "All possible fuzz values" option. I should now be Actually Done with roulette, fingers crossed. Totally worth it, question mark? Let me know if you bump into anything odd with it.

There are also a couple of other things I have been doing alongside this that got held back or not actually announced at the time thanks to "I'll just quickly finish this roulette thing first oops where did time go":

  • I quietly added an RSS feed back in May, which is now a little more visible with an icon in the footer as well as being linked in metadata on every page of the site rather than just the front page. I always had the impression very few people were using RSS feeds much these days, so despite a couple of queries about it over the years I never went ahead and got into implementing it. But then someone offhandedly mentioned it in their tags while reblogging one of my posts on Tumblr, and in a manic coding spree I went and did my best to implement it despite not being very familiar with it and finding it pretty kludgy to put together. Let me know if you have any trouble with it and I will try to figure it out.
  • The April Fools' Day joke archive now has a table of contents that makes it easier to find a particular joke, since it's been a lot of years by now.
  • When I first made the Pokémon List Generator, the Spanish and Italian localizations of Pokémon simply used the English names unchanged, so I didn't bother including the ability to show names in Spanish or Italian alongside French and German. By now, though, some Pokémon (Type: Null and the Paradox Pokémon from Scarlet and Violet) do have special names in Spanish and Italian, so I've added the ability to specify those as filters for the name variable.
  • On May 10th, Morphic turned seventeen years old, and for the occasion I wrote a set of three 100-word drabbles, which are now finally up as an extra (they're not super remarkable, and two out of three only make sense if you've read Groundhog Dave, but they're there). As I was adding that, I also reorganized the list of extras to split it into a few categories, just because it was getting a bit long and unwieldy.

My next plans involve porting over some Pokémon-related articles I wrote on my personal Tumblr that there's really no reason not to give a more permanent, less transient home over here, which should genuinely be fairly straightforward to do and will not take months of labyrinthine programming, so hopefully relatively soon... just as soon as I'm done writing this decidedly not-Pokémon-related essay about medieval Icelandic literature that my brain decided to get obsessed with in June.

Comment on this - View comments

05/23/24: More Roulette

So when I put up the R/S/E roulette article, I had to slightly rush it to make it by April 1st - there were some things I wanted to get into better but just didn't quite have a chance to finish if I wanted to get it up in time. I figured I could get into those things afterwards and then put up these minor enhancements to the simulator when I got the chance.

This somehow turned into a whole new rabbit hole about the roulette. One of the things I didn't have time to get into was exactly emulating how the game went about randomizing for the simulator - something I believed was a minor detail whose effects would disappear in rounding anyway. Once I did get into it, though, it turned out (which I'd missed) that the calculations for the starting angle and the fuzz range were both using the final bit of the same random number, meaning they were actually highly correlated with each other - and also, after doing more thorough in-game testing which I'd also been hoping to do and getting some suspiciously consistently off results, I realized I'd missed C silently converting a float to an integer thanks to being too used to programming languages where you can't do that (note to programming language designers: this is terrible).

All in all, this meant some of my numbers were off, and that the article now needed much more nitty-gritty about precisely how the randomization works. I have now updated the article and corrected the errors in the text and in the simulator. The main upshot is that under most circumstances the slot distribution is actually slightly asymmetrical, thanks to the fuzz range being correlated with whether the starting angle is twelve o'clock or three o'clock on the one hand or six o'clock or nine o'clock on the other, and that the correct bet timing under ideal circumstances is actually specifically when the bet slot is approaching the bottom of the wheel, not the top, which will let you win 40% of the time (every time the twelve o'clock starting angle is chosen).

Additionally, I've added some new features to the simulator that I'd wanted to add:

  • You can now click the "Set bet/occupied slots" button in order to be able to use the simulator wheel like the probability-based wheel a bit earlier in the article - click the white part to set a slot as occupied, click the colored part to set a slot as your bet. The ball will bounce realistically to one of the adjacent slots at random if it lands on an occupied slot, and the probabilities shown per slot on the simulator wheel will reflect the final probabilities for each slot with bounces taken into account (including accounting for which rescue Pokémon will actually be picked, given where the ball is on the wheel when it gets stuck).
  • You can now make more granular choices about what to show in the simulator. You can set the starting angle to be random, a specific angle, or all four possible starting angles, and separately you can choose whether to use random fuzz, a specific fuzz value, or simulate either the lowest, highest and medium fuzz or all possible fuzz values.

I am also finding myself gravely wanting to restructure this code which is a series of additional functionality incrementally bolted onto what was originally just meant to be a simple little calculator that'd show your possible fuzz ranges, but at least I can do that after these necessary corrections.

Comment on this - View comments

04/01/24: April Fools yet again

Hope you all enjoyed this year's little gag. While the style and casino rebranding were obviously a joke, the roulette mechanics were very much not! R/S/E roulette really does involve Taillow and Shroomish cheating for you if you have them in your party and an elaborate chaotic decision tree determining that rolls are more consistent if you have Taillow and Shroomish with you and play in the morning. I have been dying to show you all this madness for over a year now of intermittently working on this article and the simulations in between having to do other things, and truthfully there are still a few more things I want to do for the simulator, so you may see a couple more updates to the article.

I've now reverted the style back to normal and added a writeup about this year's joke to the April Fools' Day joke archive, with a lot of rambling about the 4+-year history of my analysis of R/S/E roulette. Thanks once again to Quiara for prompting all this, and to all of you for your patience!

Comment on this - View comments

View guestbook | Sign guestbook

The Almighty Random Poll

Pokémon Go, the augmented-reality mobile game where you look for Pokémon in the real world, has taken the world by storm - but are you playing it?

Are you playing Pokémon Go?

View results

Almighty Random Poll archive

The Site Poll

Let's do this again. Given these are things I want to do, which of them should I do first?

What should I prioritize?

View results

Page last modified July 17 2024 at 02:30 UTC