Cammy's Big Rambly Journal

Hello! I notice you're using Netscape (or other CSS-noncompliant user agent—in which case, consider this an easter egg) to view this journal. Because Netscape is so titanically shit, I have disabled image viewing on Netscape specifically. If I didn't, you would notice random images being replaced with each other and similar such strangeness. The posts are still visible, but you'll be missing the images, which are half the context of these posts.

You should use RetroZilla if you can; it runs on Windows 95 and up and gives you a perfect cammy.somnol viewing experience, plus more comfortable Web browsing on retrocomputers in general. Failing that, Internet Explorer 3 (which amusingly also displays this message, since it doesn't support the display CSS property) and up will also work perfectly fine for seeing my journal posts.


October 06, 2024
Scourge of Armagon

Quake is such a happy and safe place


Ah, man, I think I'm getting better. When the journal goes quiet, you know I have zero desire to write shit for it. I took a week off of some of my vices, and I'm starting to save money again after using them to finish off my student loans. It's not perfect still, still a couple things haunting me even as I write this, but I've got lots creatively that I'm feeling comfier with and work especially is very calm right now. By mid-February, I will have $10,000 banked up, and I'll be around $23k in savings or so by my one year mark here. This place is gonna make the next five years for me financially possible, and I can write journal entries on the clock!

I'll discuss all that more in time, but I figure it's time to dust off the journal proper with something more fun: I played all the Quake mission packs recently! I've only owned them for like over half a decade now (or at least, uh, had copies of them?), and I've become fuzzy for the idea of gaming through time again, beating games as they came out and seeing the rapid march of technology and design innovation, so now seemed like an ideal time to finally get through them.

I started with the base game, which I'll call id1 for my ease of typing, and then moved onto Scourge of Armagon, hipnotic for short, then Dissolution of Eternity, rogue for short, and finally I threw in the unofficial third mission pack Abyss of Pandemonium, or impel, for shits and giggles before I moved onto Quake II. (The shortnames all refer to the company that worked on each game, id Software, Hipnotic Interactive, Rogue Entertainment, or the Impel Development Team. I'm just so used to calling them by their shortnames that I regularly confuse and mix up their real names.) I intended this to only be one post, but since I wrote so much (well over 3,000 words!), I'll be splitting it into three parts.

Summing up id1

Quake as a game starts a lot better than it ends. I breeze through the shooting galleries of the first three episodes, enjoying their weird level layouts and how I have everything memorized, and then Episode 4 presents a certain roadblock, and that's because the entire episode was designed by Sandy Petersen. Sandy's work is divisive. He was originally a tabletop RPG developer with a background in games like Call of Cthulhu, and id brought him on for Doom and ultimately Quake. Some folks, like NewHouse, really like his inventiveness. His focus was on strange and unique level setups and gimmicks, not action like the rest of the team. Other folks find his levels to be the most obnoxious of all the classic id levels to play because said ideas don't usually translate to fun gameplay.

Spawns forever Shubby and a shambler

Episode 4 starts out pretty decent. I like E4M2, The Tower of Despair, with the windows that open up in chunks and the focus on miniature sections of the level that act as teleporters to bigger sections of the level. See? Good ideas, Sandy! It's really E4M6, The Pain Maze, and E4M7, Azure Agony, that live up to their names. Overly long, too many spawns (exploding, very fast moving bouncing blobs), all ambush encounters in tight quarters, thus negating the usefulness of your explosives, no thanks. I skip through most of that shit. Worse yet, the final level, Shub-Niggurath's Lair, is just a long, annoying line of shamblers up a cliff face with an admittedly fun subversion in how you actually kill Shubby: not with your firepower, but with a well-timed telefrag, just like is fun to do to people in deathmatch.

On the whole, it's a little bit of an unremarkable end to one of my favorite games. Let's see how the mission packs do at solving that.

Summing up hipnotic

Scourge of Armagon is the mission pack I have the most experience with. I've almost made it through it a few times, but this time, I really wanted to see it through to the end. I'd say it's the strongest of the three. Both of the official mission packs add onto the base game in their own way, and hipnotic adds rotating entities, gravity fields, earthquakes, and a nice variety of weapons and enemies to make base levels (which the entire first third of the mission pack consists of) more satisfying and difficult to play.

Down in the mines Black Cathedral

hipnotic is similar in story to Half-Life 2, where a force called Armagon takes over Shubby's existing invasion infrastructure with aims of attacking Earth, and it's up to the jannie who swept it up the first time to sweep it up again (as jannies are good at). Spoilers! But the fight against Armagon is actually pretty decent for such a simple game like Quake. It feels like a throwback to Wolfenstein 3D's bosses, where you enter an ominous, open arena as the boss makes his presence felt, and unlike Shubby, sitting there like a pulsing pustule until you pop it, he is very fucking aggressive with his rockets, so brush up on your circle-strafing. It's fun! A good boss really helps to punctuate an arena shooter, an exclamation point on the end, and Scourge is probably the best of all the official bosses in the Quake universe.

Visually, hipnotic is a nice step up from id1. I can't fault how bad the texturing in id1 is, because it had a first of its kind level editor and the game was meant to run in 320x200 anyway, but hipnotic definitely polishes up the bases some with particle force fields and big showy multi-part doors. The bases about halfway through start to take on a mining camp feel, complete with cave-ins and sudden lava pits twenty feet below you--some pretty memorable stuff. The later levels are cool too; it's pretty hard to forget Ancient Realms, HIP2M1, with its cool non-linear multi-level castle (and now I've been in some real ones!), the gigantic working clock and that Jesus mural that fires lightning at you in The Black Cathedral, HIP2M3, the elevator ride over the shores of Hell in HIP3M1, Tur Torment, or all the coffin iconography into the third episode.

For new monsters, you get the centroid, a cybernetic scorpion with a nail attack apparently also known as the Scourge (yes, the Scourge of Armagon, roll credits) and gremlins, tiny lizard fuckers that steal your active weapon (annoying) and revive dead enemies (fuck you). I didn't find any of the new weaponry or power-ups all that exciting or useful. As cute as the idea of the Horn of Conjuring is, summoning a monster to fight for you instead, usually they just get stuck on the scenery downstairs instead. I did like the rapid-fire laser cannon, with its pleasing firing rate and silly pew-pew noises. Really, none of the gameplay additions in any of the mission packs can touch the loadout and enemy variety of the base game, but a couple of those fucking weird teleporting nail scorpions definitely help to break up the monotony of 200 dudes with shotguns and laser guns.

hipnotic isn't perfect, of course. Given what I heard online, I expected rogue to have all the really annoying traps, but hipnotic's are far worse. Anyone who's played it remembers the rock tumbler bit in HIP1M3, The Lost Mine, and if you haven't played it, when you find it, save right before! You will be reloading that save over and over, as dying in it is completely random, and you need to get through it to finish the level. There's also the spike mines, which are effectively gigantic and even more dangerous vorepods. They lumber towards you through the air, and you better hope you can wipe them off like boogers on the scenery, because otherwise your limbs will be in different dimensions. I fucking hate spike mines. All my homies hate spike mines.

Crazy cool 3D Quake logo Armagon

Scourge of Armagon is definitely worth a play and maybe a few. I had a lot of fun with it, and there's plenty of cool sights to see that elevate Quake's otherworldly feeling with more actually recognizable locales like churches and mining camps. You gotta at least sorta have the feeling these are real places, or else they just feel like game levels. hipnotic is good at that, not in a way that makes it feel realistic, but in a way that makes it feel like the real world, but desecrated, turned odd and warped. Good expansion.


September 23, 2024
Requiem for a Macintosh

Ten years without an issue, that's impressive


I guess it had to happen sometime! My iMac display has officially given and now only displays streaks:

My iMac screen being busted

This started happening intermittently yesterday evening after it woke up from sleep, and now it's just not displaying anything period. Really, it's no great surprise. This computer celebrated ten years of daily service this year (don't ask me for a specific date). Yeah, I've been using this computer since I was 14 or so. I'm now 25. The fact that it hadn't developed issues sooner (outside of being slow to start up) is a testament to how good of a computer it was and how well I took care of it.

To be clear, the computer still works. My stuff is safe, the speakers in it still work, and I have my cheapie old Emerson HDTV (with all its horrific overscan issues) hooked up as a monitor at the moment. This is very much an annoying temporary solution, though. It's time for a new one. I knew that time was coming years ago. I simply wanted to take this Mac as far as it'd go, and I accomplished that. That's my statement against e-waste: I used the same computer for ten years, and I'm proud of it.

Everything has its day sometime, though, and this computer's has come. If this were a normal tower PC, I could just replace the display and call it good for a little bit longer, but given it's an iMac, not having the display function means it has an absolutely obnoxious footprint on my desk, and again, plugging in my little HDTV means I'm stuck with the edges of the screen either cut off or slightly cut off. It'll work for now, I can make do with it—but I need to replace it.

I'm pretty adamant about never going with another Mac for a daily driver again. Windows is a requirement for me, and the fact that Macs now run on ARM means no native Windows. I'm not gonna do the Parallels dance to get Windows stuff to run next to MacOS stuff, either, because I fucking hate dealing with MacOS. I think MacOS is ungodly sluggish, I hate Gatekeeper, I hate Apple dropping 32-bit app support—it's just not an ecosystem I ever want to invest myself into again. Keeping a retro Mac around for GarageBand and maybe iPod syncing? I'd love that, but as a daily driver? Never again. It was only because of Boot Camp that I was good with Macs for so long anyway.

Jake suggested I look at some prebuilt gaming PCs through IBuyPower, and I'm honestly really tempted. Even their $1100 special (not counting any further deals) is still light years ahead of what mine can do right now—a Ryzen 5, 32GB of RAM, a 1TB NVMe SSD, a GeForce RTX 3050—even that feels like a lot of power that I might not need. I don't know!

What I do know is that I'm happy to treat myself a bit once I get the funds. I should be able to replace this by mid-next month. My student loans are paid off, and now I just need a few weeks to cobble together the $1300 or so to get myself a nice new monitor and something that'll comfortably play TUNIC or Doom Eternal or whatever. If a laptop in a 27" case carried me ten years, I imagine a decent gaming PC with my interest in new games not quite what it used to be (and it was never there too much to begin with) will last me into my mid-30s. Emulation performance is what matters more to me, and anything will emulate PS2 games better than what I've got.

Both a lot and not a lot has happened in computing in the past decade. I could continue to use this one because 8GB is still an okay baseline that most software respects, and I don't play a lot of heavy modern games that would tax the 2013-era laptop-grade GPU in this machine. (I remember streaming Doom 2016 on low settings back in the day!) That said, USB-C is now dominant, AMD took the top spot in CPUs from Intel, and SSDs, even big ones, are pretty much standard now. The world this Mac came to be in no longer exists, and that's socially and that's technically.

It is sad to think that my time with this computer is coming to a close though. I'm a sperg; change is hard sometimes. I've been using iMacs since I was 10. Computers like this one have been with me across four different houses, as far back as middle school. This one in particular has been across state lines to stay with me with family, it's been to college, it's gone far. I made every song on In Free Fall and on Last Summer on this machine. All of my websites have been built on it. Every stream I've ever conducted has been on this computer. Save for anything I drew in Wales, this has been my art machine.

And it's starting to go on me. It's still here, and I'm making sure all my stuff is safe in case it does go completely, but it is a loss. What will come after it will be more powerful, but it won't be the same. I'm alright with that, but yeah, damn. I don't have the highest opinion of Apple products anymore, and I know plenty of people who never did, but this was one of the good ones.

Getting rid of it is gonna be a fucking chore too, but that's more a family issue than it is a computer issue. Come on, car!


September 06, 2024
Tesserae retirement?

What happens when someone's already done your idea, but better?


So because I gotta remember that all the people who see what I do only see about 10% of it each, let's start off with some news: this evening, we started streaming Sly 3: Honor Among Thieves! Given that I was able to get through the first two, it felt wrong not to finish off the trilogy, and now that I have consistent days off from work, here we are! It wasn't as exciting or high energy as I would've liked, I was a little out of it, folks were a little sleepy, but that's okay, they get like that and we made it through. Fridays at 6PM EST! Watch out if you wanna catch me live!

Now onto a bit of pondering. If you don't know, way back in the Neocities days, I had looked out onto the world of Web development documentation in despair. It felt like you had two, neither especially satisfactory approaches to beginner documentation, references and tutorials. References are great if you know what you're looking for, but they're not very good teaching tools. Tutorials are good at teaching people, but they either focused too much on "do this to make this happen", which is simple but doesn't give you much context, or just weren't very good in the first place (see: old W3Schools, or GeeksForGeeks, which asks me to do the needful and give Indians my Google account just to scroll through one of their pages, and no thanks).

I thought I could do better and came up with Tesserae. Tesserae was meant to teach people concepts, stuff that would explain why Web pages are built and work like they do, arranged into courses by complexity and topic. A tutorial can give you a valid HTML page to start with, or can explain how to set margins on an element, but I wanted to put concepts like block vs. inline elements, page flow, page structure, and the box model in people's heads. These are the glue (the why) around all the real physical pieces of attributes and elements and CSS declarations that you'd actually implement on your site (the what), and it's what makes using them effectively make sense. My initial version of this from late 2018 got decently far, but I decided it didn't look particularly great and wasn't 100% accurate, so I started over with a layout I built using mini.css.

While Tesserae hasn't gotten an update since May 2022, and before then November 2020, I've always had bigger plans for it, including branching out into JavaScript and PHP and adapting Alexi (star of nofi) to be its mascot. It's never been too terribly popular, which is a contributing factor to me not doing much with it in a while, but the people who appreciate it (like Savannah) definitely seem to appreciate it, and I feel like I'm a good technical writer with an ear for clear, concise explanations. It felt like a good "eventual" project.

Fast forward to me browsing Reddit this morning. I found this post on r/neocities recommending a site called The Odin Project. This is an open-source Web application development site organized by courses, starting with foundations like choosing a text editor and setting up Git repositories for site backup and versioning onto HTML basics, lists, links and images, onto block vs. inline elements, the box model, and even a nice section on flex. I had a read of some of the material, and it's very well written and very well organized and goes into a lot more detail than Tesserae does—and they have the benefit of it being open source and people being able to fix bad or outdated information. Even for folks not building Web applications, the foundations course would be a very good resource for getting started building sites from absolute zero, which was also Tesserae's starting point. There's even "further reading" sections after each topic, just like Tesserae.

So now I'm conflicted, and I don't really have a good answer here. I've found a site that's effectively doing what I wanted to do with Tesserae, but over a whole community with folks ready and willing to spend all their free time maintaining it. Even if I wanted to go forth working on it, I'd have to start devoting a few hours of my day (which is effectively an entire block of my free time either before or after work) to writing and structuring and decorating pages, when there's other sites that do this same thing with a similar level of accuracy, more detail, and with a much bigger reach.

It might be time to retire Tesserae as an idea. I'm not doing it just yet in case anyone can see some import to me having another site like that online, but man, it's six years old already and I haven't even reached content parity with tesserae_v1. Seeing as I'd like to do more Creating and less Teaching these days (with virtually no one outside Somnol I'm interested in teaching anyway), it'd be a lot of time spent on something that is absolutely cool and I'd be happy with in the end, but something I'm just not sure is worth the time investment at this point in my life. I could reorient Tesserae to be a guide to building sites for retro Web browsers like I like doing, but that's a big, messy, even more technical world that has an even smaller audience.

Thoughts, anyone? Email me if you've got an opinion one way or another.


August 20, 2024
1200IQ methods for 40IQ tasks

Nucleus? More like no thanks


Having five years worth of somnolescent.net backups really does pay dividends sometimes, especially when I'm trying to resurrect things for archives. Rather than relying on spotty Wayback grabs, I simply pull from the copy of each site I made five years ago, patch the links (each archives site has links across the site network changed to the contemporary version on archives, so Cammy site in 2019 goes to Caby site in 2019 and not the live caby.somnol), and upload to its own directory on archives.

Occasionally, though, some assembly is still required on top of that. I think it's time to get a little technical, but first, the actual news here: you can now view the original version of my Scratchpad circa late 2019-early 2020 and the original version of Letters From Somnolescent circa most of 2018, as they were, janky early layouts and all. tesserae_v1 is also now a thing—this was the original, pre-rewrite version from back when we were still on Neocities that wasn't as visually appealing, functional, or accurate as I would've liked, but amazingly, I've never brought it to archives until now. That was the easy one; again, just grab from my files and upload and done.

tesserae_v1

The blogs were tougher. This was all motivated by me trying to reorganize that subdomain ahead of the redesign it's been getting, as I wrote about the other day, and I figured that, if the final static copy of the Scratchpad was on mari_v3, the original mini.css layout before I switched to nonzero for a theme should be with mari_v2, which it was contemporary with. I'd also thought about resurrecting the original Nucleus-generated version of Letters and stashing it in blog_v1; while there's not a lot different about it, there kinda is? It's a little hard to explain, but that was how the group blog looked when it matched somnol_v2, so even though the theme got more refined in time but stayed roughly the same in layout, it felt wrong to have one up, but not the other. In any event, it's all Somnolescent history that would be nice to have for the purposes of other sites on archives having correct-looking pages to link to.

The Scratchpad resurrection took a few hours to get settled, but I roughly knew the process. There's a plugin called Simply Static that will generate static HTML pages of your entire WordPress site, so once I had a functional blog again, I could simply run that, download the render, patch the links, and upload. I'd done this with the Scratchpad itself when I retired it. This would be the same process, simply with the original theme active and with all posts, pages, tags, and categories before the nonzero switchover deleted to avoid being anachronistic.

The original version of my Scratchpad

I was surprised at how easy it was to redeploy a WordPress install. Every time I backed one up, despite it being a ton of files, I'd grab the entire install instead of just, say, the image uploads. To redeploy from a backup, you just...reupload the entire install. And then preferably update WordPress. All our databases still live on the backend, and the backups all still have the config information to get into them. I still needed to do a little bit of debugging because I uploaded everything to a new subdomain I could immediately delete instead of to mariteaux.somnolescent.net/blog/ where it originally lived, and that gave WordPress a bit of heartburn, but it was manageable.

It was that goddamn Nucleus install that had me up to some galaxy brain shit.

If you've never heard of Nucleus, it's another PHP/MySQL blogging platform I'd wanted to try out out of curiosity and because I'm a contrarian and used to be infinitely worse about it. It's been in and out of development by different teams for years, with the most recent updates coming entirely from the Japanese folks who still love it and still maintain it. Nucleus was a huge pain in the ass to work with, even at the time; after about eight months of using it, our user account logins for it just up and stopped working, necessitating an emergency migration to WordPress that I documented, funnily enough, in one of the first posts to the Scratchpad.

Because I wanted to go with my known good files instead of trying to force the old database onto a fresh new install of Nucleus, I simply uploaded my backup of the old Nucleus install and waited to see what would happen. At first, it seemed to work! If I tried to read any of the posts, however, or go anywhere other than the front page, I'd get a blank 500 error with no indication as to the issue. Even with error display on, you still don't get anything on the Web-facing front. DreamHost requires you to dig into your logs to find out why.

A 500 server error in Vivaldi

The 500 errors were apparently due to a long-deprecated now-stub function that Nucleus relied on called get_magic_quotes_gpc being totally removed in PHP 8.0 (when we were using Nucleus in 2018, PHP 7.0 was the newest version). DreamHost, to avoid you using old insecure PHP versions, hides your ability to use these earlier versions of PHP in your admin console, though you can still access them if you force a specific PHP version in your .htaccess.

The original version of Letters From Somnolescent

After this, the Nucleus install sprung to life, but there was still an issue. WordPress has very nice URLs for posts and pages that match up well to static directories. Nucleus URLs are hideous and rely entirely on HTTP GET variables on top of index.php to navigate basically anything on the site. Of course, that presents a small challenge; while I'd be able to get a static copy of the site using wget, trying to access any of the pages would make Apache think I was trying to view index.php?itemid=44 (that is, index.php with some GET variables on top) instead of a page literally named index.php?itemid=44, with a question mark in the file name.

The solution for that was to percent encode the question mark in all the links. Of course, making it more fun is that Windows does not let you use a question mark in your file name, so to patch anything on the static wget copy, I'd have to

  1. Make the changes with the files being named stuff like index.php@itemid=44
  2. Upload them
  3. SSH into DreamHost and run a bash script to replace any @ symbols with ? symbols
  4. Test to see if there are more changes to be made
  5. If there are, delete all the files on the site and begin anew

So it's good to know that Nucleus is just as much of a pain in the ass to work with now as it was in 2018.

But still! It's all returned to the Internet at long last. I'm still a little precious about Somnol history and all our hard work, so even if this isn't the most exciting thing to see, I'm glad to have it around for when I'm feeling sentimental, and I'm sure the group does too. Seeing my old Scratchpad layout again especially pleases me—I haven't looked at that thing, let alone used it, in years, and aside from the wonky spacing between elements, it's actually not too bad to browse! It definitely feels right to click around mari_v2 and have that be the Scratchpad and not the later one with all my 2022 posts on it. Small details only I could love, that's what I'm here for.


August 18, 2024
Reorganizing archives

I've learned from my mistakes now I promise


(Brief aside before we start: Happy six years of us talking, Caby—8/18/18 <3)

One of the less-exciting and less-visible aspects of the archives overhaul is that I'm trying to reorganize the subdomain some in the background. I made it in 2020 with purposes slightly different than what I have in mind now, and as a result, things that shouldn't be on there are on there, things are in places I prefer them not to be in, and my methodology for storing what is staying on there has changed a bit as I've developed it out more.

To give you some examples:

Resorting and getting rid of stuff is easy, but with it comes the risk of link rot. These days, when I build a site, I try to plan everything out so there's no chance I will ever want to reorganize the files. Anything that gets moved runs the risk of breaking links someone dropped in a Discord somewhere, or on a forum post or in a Reddit comment somewhere, and I don't want any of that. I want links that will exist in ten, twenty years. For archives, this is extra important to me. All Links Are Permanent.

Thankfully, Apache (and DreamHost accordingly) support the use of .htaccess redirects. I can simply have the old links redirect to the new locations and then manually update links as I find them to reduce the need for the redirects. The stuff that's getting deleted, I just have it redirect 410 or target another page where the same information can be found, if necessary. Also nice is Notepad++'s Find in Files function, which lets me do a find and replace across an entire directory of files. I can just do a search for, say, /web/scratchpad/ and replace it with /web/mari_v3/blog/ and thousands of references are now updated to point to the right spot.

It takes a lot of work to maintain eternity, but technology makes it possible at all.


Page 5 of 29

Previous months