getting into this print photography thing

getting into this print photography thing
this video has loud distressed cat noises
heard this from the bathroom and genuinely thought that my cat was dying but another cat had just managed to get to the outside windowsill
teaching her about her heritage
I don’t watch game streamers much but one of the few who I have enjoyed a lot is Videochess (a.k.a. Chess). She doesn’t stream regularly at the moment but she has wonderful chaotic energy and a propensity for “crimes”, a term she uses for playfully exploring the mechanics of and pushing at the boundaries of games and seeing what is possible if one strays from the designated path. This can manifest as things like impromptu sequence breaking but not for the purposes of speedrunning or anything like that, just to see where it goes and tease out the foibles of a game. And sometimes she does things like collecting every star in Super Mario 64 while playing the game with a DJ Hero controller.
There are two main places to find her videos, her own Youtube channel that has her streams up until 2022 and another unofficial but endorsed channel that has archived more recent streams. One of her most popular series is an Ocarina of Time randomiser with GGDG but below I will share some of her videos that have had the largest influence on me.
Her truly Sisyphean streams of Melon’s Snolf hacks inspired me to make my own Snolf Robo Blast 2 mod for Sonic Robo Blast 2 as well as a chat control mod that Chess ended up playing herself.
I have also learnt about games and mods that I have since played or are now on my (long) list of things I want to get around to.
Robot Alchemical Drive I still have not gotten around to playing but seems fascinating. I love games with weird controls and especially when there is a diegetic basis for them. Having to remote control a giant robot from the perspective of someone on the ground who has to watch it from a distance rather than getting a camera from the perspective of the robot itself or even a cockpit is an incredible concept. You may be familiar with the game from clips that get shared online showcasing the best value greengrocer or Nanao having a miserable time.
I had only vaguely heard of Cave Story before watching her play “Cave Story Normal Regular”1, i.e. Sonic Story, a mod that replaces the main character of the game, Quote, with Sonic the Hedgehog. Yes, I know this is a massively important and influential game. No, I never bothered looking into it at all despite having had the Steam version in my library for years from some Humble Bundle or another. I have played both Cave Story and Sonic Story since and I can attest that Sonic Story perfectly replicates the feeling of how Mega Drive Sonic games control. It’s not just a reskin it is is playing as Sonic the Hedgehog in the wrong game in a way that is wonderful and silly.
For the opposite she has played Mario put into a Sonic game with the SM64 Generations mod, which uses libsm64. She has also played some other games using libsm64 as well as other regular normal Mario 64 mods.
I also became obsessed with Willy Wombat for a while after watching her play it. It is a fascinating, experimental 3D platformer with an isomorphic perspective with maps that have the same limitations as a Doom level: There are no slopes and not only are there no floating platforms but it’s impossible to have a floating platform in this game. Like Doom the levels are defined by floor sectors with designated heights. There are pillars and walls that rise out of the ground for vertically, but you can never go under anything. It leads to some unique level design, especially as the game progresses to areas were the developers had clearly gotten much more comfortable with their tools. The only thing I can think of that is similar (though lacking the top-down perspective) is older versions of Sonic Robo Blast 2 and that is literally a fork of Doom.
It’s also one of those bygone ’90s games that is fully voiced in English with a script penned and directed by a Japanese crew, giving it a surreal quality that is aided by a post-apocalyptic setting with jarring name choices and very little up-front exposition. Above is a fan animation I adore of a cutscene of Notes and Mail talking about “the peace and eternal life of Prison.”
I have a page on this website dedicated to my cat Easóg where you can see a video of her trying to kill Willy while I am watching Chess play the game and mushroom32x made a fun little Neocities webpage for the game’s
That’s enough for now. If you want to watch more check out the official and unofficial Youtube channels to dig through yourself.
Calling things “normal regular” or “regular normal” when they are, in fact, peculiar is one of several Chessisms that have infected my vocabulary. ↩
Easóg has helped customise the window blind.
I added a page to the site dedicated to my cat, Easóg
A different GIF will displayed below depending on your browser’s prefers-reduced-motion
and
prefers-color-scheme
settings. There’s four different possibilities:
I hadn’t used prefers-reduced-motion
before but I saw a chost from Kore linking
to a blog post about accessibility and GIFs and decided I wanted to follow it but
I also didn’t want to have to manually write the HTML code for it each time.
Thankfully programming is the art of being tactically lazy and I can put some effort in up front and
solve an interesting problem once and then let my site generator handle it automatically from then on.
Also thankfully I had done something like this before after taking inspiration how Luna’s blog handles images. I don’t have high D.P.I. images but I do have different dark and light mode versions of images for the The “the Ring” Podcast series tracker chart and the Dracula International diagram I made.
The way I had initially done that was, characteristically, a mess. I wrote a custom custom Liquid tag to handle it which meant that instead of actually using the existing, basic Markdown syntax I had to put images into my posts with something like this:
{% image /bog/images/easóg.gif %}
So revisiting this to include prefers-reduced-motion
options I decided to do it differently this time.
A way that would allow me to just type the normal Markdown syntax and let my code handle everything else.

The next step was to look into how to extend and customise Jekyll’s Markdown parsing and output but that sounds hard and I didn’t want to do that so I just used a regular expression1:
/((!!?)\[([^\[\]]*)\]\((.*?) *("([^"]*)")?\))/
This runs against the raw Markdown before it’s parsed into HTML and pulls out the link, alt text and title. That last part is also a big improvement over the custom tag I previously made as that didn’t support alt text or titles at all.
The code then takes the link and checks if there are any alternative versions listed in
the site’s static file list like easóg.dark.gif
, easóg.static.gif
or easóg.dark.static.gif
.
when writing a new post now I don’t have to do anything extra other than have those other versions
with the right naming scheme in the same folder as the original image.
From there it it compiles it into HTML and replaces the original Markdown in the document:
<picture>
<source srcset="/bog/images/easóg.dark.gif" media="(prefers-color-scheme: dark) and (prefers-reduced-motion: no-preference)" />
<source srcset="/bog/images/easóg.gif" media="(prefers-reduced-motion: no-preference)" />
<source srcset="/bog/images/easóg.dark.static.gif" media="(prefers-color-scheme: dark)" />
<img src="/bog/images/easóg.static.gif" alt="A white cat" title="Easóg" loading="lazy" />
</picture>
Well, actually it does something else too. You might have noticed in the regular expression up above I am actually checking for an optional, second exclamation mark at the start of the image tag. That’s my own extension of the syntax. If I’m doing my own parsing I might as well go wild with it. If there are two exclamation marks at the start of the tag it also wraps the image in a link to itself and adds an extra class:
<a href="/bog/images/easóg.static.gif" class="dynamic-image-link">
<picture>
<source srcset="/bog/images/easóg.dark.gif" media="(prefers-color-scheme: dark) and (prefers-reduced-motion: no-preference)" />
<source srcset="/bog/images/easóg.gif" media="(prefers-reduced-motion: no-preference)" />
<source srcset="/bog/images/easóg.dark.static.gif" media="(prefers-color-scheme: dark)" />
<img src="/bog/images/easóg.static.gif" alt="A white cat" title="Easóg" loading="lazy" />
</picture>
</a>
The classes are to enable a little bit of Javascript2 to swap out the destinations of the links on the fly when swapping if the user’s media preferences change. Whichever one you currently see in the browser is the one you’ll go to if you click on it.
I might review the double bang syntax if I can figure out something that could be added to the tag that would get stripped out and ignored by a normal Markdown parser for better compatibility. If only Markdown had comments.
Is this a robust solution? Absolutely not! Will I eventually run into annoying weird cases that make me bang my head against the wall as a result of this? I already have! While writing this very bog post! Because the regular expression cannot tell that the markdown code example I have above is not meant to be parsed and turned it into HTML, making it impossible to show the before part of the before and after. Did this make me go back and implement this in a better way? No!
I added some metadata to this post telling it do disable my custom image parsing, made the parser skip doing anything if it finds that metadata on a page and then hardcoded the example at the top of this page. That’s right: This post isn’t actually using the one thing it’s meant to be demonstrating!