i wonder if i could get people to read one of my favorite webnovels by writing yuri fanfic of it. these bitches gay and i need someone else to appreciate it
“if”
i’ve already started writing it of course
but i don’t really feel i’m doing the characters justice
something that it would be fun to see a story do is have a cunning yet ignorant underdog challenge — not defeat, but challenge — a chessmaster type, despite having no idea what she’s doing, simply by reading her far smarter opponent that well
“I don’t understand. I am the greatest strategist in the land! Yet an fool with no training matched me play for play. How can this be? Was it blind luck? Are there spies in my ranks?”
“Oh, but it’s so simple. I had no training — at the start. But you were all the teaching I needed. You became the greatest strategist by testing yourself against all the rest. In prediction, you play their moves even better than they could. You prepare for the worst, but that flinch tells me where to look. Where you attack, I defend; where you take countermeasures, I take measures. I could never defeat you, but your fear conjured a far greater threat than I manage alone — I should thank you.”
i wonder what motivates people to tag #not my art. just in case you missed the header at the top attributing the source, this low contrast grey hashtag will clear things up?
“this could be the snort of something pig” is such a stupid fucking post. i want to roll my eyes and forget about but i’ve seen it too many times and it’s stuck my head. i think there’s something perfect about it. the spontaneity of it being a reply. the subtle wonder on pig’s face. i think it might be an all timer
i hope one day we find ourselves fighting on either side of an unbridgeable divide, our time together a distant memory. we cross paths, confused, any recognition in our eyes hardening to hatred as it becomes clear that there’s been no mistake, no way back, and no way to fix this — save one, and realizing this, we lunge forward, blades crossing to end it all
“Appeal to a wider audience” is corporate lingo for “strip more themes from a piece of media so it’s safer and more sanitized for investors”
I struck a nerve in the billionaire fandom with this one
OP kind of gave the game away with the smug followup. i’d almost nod along if the preening at the end didn’t make me go wait, who would actually be on the side of billionaires in a context like this… let’s check the notes — oh, people don’t like that this is a gamergate dogwhistle explicitly taking aim at people who think diversity is a good thing
just saw a youtube channel with three digit subscriber count and nine videos that probably have less than than 2k views in sum across all them — except for their newest vid, which has 58k views. i wonder if they’re having a good month
there’s something special about settings with so little in the way of logistical or political worldbuilding that titles like “king” or “queen” are completely stripped of teeth, just an aesthetic signifier with no depth beyond “cool peep who takes care of everyone”
this is not a critique to be clear i do think it’s rad when someone’s monarch status hits like they started the group chat and arrange all the parties, except fancy
there’s been a bit of a push to rehabilitate the image of the hater. i can sympathize with that impulse — on both levels
but i don’t think it should be understated that there is something inescapably pathetic about the posture of the hater. criticism, often, can be dignified, but to be moved to hate is akin to being moved to tears — overwhelmed, suborned to the whim and rhythm of the media you moan about
hate if you must — you clearly can’t help it — but i will not respect impotent seething
if i had a nickel for every aromantic fan of mine who i got from a fandom where i’ve near-exclusively written romance, i’d have at least three nickels i know about
which is cool as hell, but i’ve got to wonder whether it’s because of or despite how i write romance
11k might be the single most awkward length for a chapter to be, besides maybe 1k. all the numbers 2-10k have their own virtues, and 12k is a nice solid number. the odd teens 13-19k have their scuffs too, but something is especially off about 11k. maybe it’s numberfeel, or maybe it’s because 13k+ has an undeniable tinge of the impressive, where 11k is the just common and achievable enough that it’s more mundane. the vibe is off is all i’m saying
yes the blog post i’m working on is currently 11k words length
>be writing some lore >write “this is due to a barely-mentioned mechanic” >backspace >scroll up >insert several paragraphs of exposition >scroll back down >write “this is due to the aforementioned mechanic…”
“sentient and sapient mean different things” oh are you still fighting the “literally doesn’t mean figuratively” battle too?
even better example might be “jealousy doesn’t mean envy” - it’s a useful distinction! and yet
no, that’s a bad example — i don’t think sentient vs sapient is a useful distinction, actually!
i’ve been having this conversation elsewhere, and a few arguments have come up that i could spend some time laying out — i could always give the banal old “descriptivism good prescriptivism bad” take for 23404th time; or i could say using sentient to use sapience is just an instance of metonymy, a valid figurative device; or i could say “sentient” simply sounds better than “sapient” - but none of those really convince me, nor do i think should they convince others
i could point out that when it comes to actually picking my words, i nevertheless bite my tongue and use “sapient” even though people would understand me just fine with “sentient”. it seems that for all my protests, in practice i carefully mind this bit of pedantry… but what’s the real reason it bothers me? and i think, after going back and forth with someone else about it, i think figured it out
it’s not a binary!
most people who don’t care about the difference between sentient and sapient are anthropocentric (consciously or not), dismissing out of hand the possibility that animals could be sentient. however, i stand radically in the other direction. i think all animals are sapient, though i’ll admit some uncertainty about parasites and sessile marine animals
i think even plants are sentient! and while i’m not saying single celled organisms or slime molds are sentient, if someone wanted to make an argument, i’m more than ready to hear them out.
what is sentience? “the ability to experience feelings and sensations”? “conscious of or responsive to the sensations of seeing, hearing, feeling, tasting, or smelling”?
to me, that’s just describing life. “sentience is when an organism does stuff.” i dislike words that are so broad they specify little. because what i’ve learned from carefully using sentience the way people have advocated is as a result, i don’t use the word sentient ever, because i have little reason to talk about a quality everything possesses.
but no, let’s keep going and complete that meme: “and the more stuff it does, the more sentienter it is. and when it does a real lot of stuff, that’s sapience”
sentience is a spectrum with viruses on one end and humans a little bit farther up
this, incidentally, works as a better defense for the casual usage of “sentience”. it’s not incorrect, it’s just vague. is it wrong for someone to say “a cup of coffee sitting on the table for an hour isn’t hot”? i mean, it still has heat. compared it to some antartic snow, and it’s dramatically hot!
it’s relative. you don’t actually know what temperature range someone means when they say “hot”, though context might give you a hint. “several degrees above room temperature” is a pretty good estimation. similarly, when most people say sentient, what they mean is “sentience close to human”
so, to bring it all back around, i think some people nitpicking the usage of sentient (no, this is not talking about you specically, i have already argued about this before on tumblr, let alone on platforms like discord) are actually incorrecting each other.
i contend saying “sentient means ability to perceive” should be seen akin to saying “hot means possessing heat”.
the usage of sentient i want to promote is as a qualifier. rather than “sentient” you can say something is “more sentient” when its experience and responses are more complicated, and “less sentient” rather than “nonsentient”
sentience is a spectrum, sapience is a threshold. they aren’t sharp boundaries, stop presenting them as such
this just in: girl so bad at gamedev her latest attempt at coding enemy ai has produced the world’s first path-losing algorithm
On 2025-04-24, a user tagged:
first? I’ve seen plenty of these
so many poorly made unreal engine games
then you’re familiar with my work. i made every single of them. i’m who they call when they need it done wrong
this post wasn’t about me per se, however my latest advances in pathfinding have made enemies superstitious*
nualie reblogged:
Can you record it? I am now incredibly curious about what that looks like.
i make it sound more interesting than it is, really. the quirk is that i’ve been rewriting pathfinding so that it searches game states, rather than map tiles. (this is necessary because there’s several tiles with fiddly states or interactions that make predicting what moves take you where somewhat complicated).
but crucially, the state the enemies are searching for is “player is dead” not “i’m next to player” or even “i can attack player”
which mostly works fine, but the game state search only simulates physics; it ignores entities other than the enemy whose move is being calculated
which means that if the player will die to something else (i.e., they’re standing next to a bomb with fuse lit) then the enemy will notices that any move results in the player’s death
so essentially, they predict the player blowing up and they’re like “i did that! good job me!” and confidently take whatever the very first move they checked was. (i noticed this because sometimes that move is invalid, e.g. walking face first into a wall)
i’ve still been reading hollow knight fanfic, though i haven’t posted about any since Stasis. i don’t know if anyone following me actually reads the stuff i rec but i just have to mention this one
so my latest kick has been white lady/dryya. everybody loves plant mom goddess, but dryya is a really interesting figure and fanfic writers do such great things with her. the queen’s most devoted knight who gave everything and died protecting her. her design also activates the lesbian part of my brain.
it goes without saying that queen x her loyal knight yuri goes as hard as it ever does, but climb up to paradise might be my favorite take on the pairing yet. it’s just pure art. the prose and the way it so perfectly capture’s dryya’s feelings. the dialogue, and the way it’s so effortless mimes the gravitas of hollow knight’s style. the emotion — the yearning, the joy, and the weighty tragedy of it all.
what i love most is the psychology of it all — if you know me, you know i love a ruthless woman with nothing guided by unflinching dedication to her principles. and you know i love nonhumans characters, and the way white lady is written in this, which so deftly conveys an higher being beyond the concerns of conventional morality…
it makes me feel a bit bad when i scan a fandom exclusively browsing through ship tags but it feels like sniping rarepairs is the quickest way to find a fic focused on a character you’re interested in
you search their character tag and it’s hundreds of fics and you have no idea if they show up for more than a chapter
honestly, i kind of hate reading good fics, because whenever i do i just lose the motivation to go back to sifting through search results and giving other fics a chance
honestly the conventional notion that it’s great to get the last word in an argument is nonsense, most of the time when the other guy dips it means things petering out without catharsis
feels much better to be the one to flounce away, job done
(i guess ideally you could time the marketplace of ideas and land a zinger right when they’d give up anyway, but it’s hard to land and trying for it compromises other strategies. noob trap imo)
has anyone read that one ofic that’s like. yuri between a sentient mass of spiders and a sentient swarm of bees. i know it exists but i think i read it before i had an ao3 account
watching a video and sitting through the sponsorship segment and i just got hit with a pitch so galling i had to sit up and stare at my screen
I simply must interrupt for a brief moment to introduce you to a tool that has changed the way I make video essays: our returning sponsor Perplexity. […]
Perplexity is revolutionizing how we search. Instead of scrolling through a list of blue hyperlinks, you get instant up-to-date answers with just a question or a quick search. This is enormously helpful for me when I’m doing background for a video essay. I need to start at the very beginning, but I don’t want to read for hours and hours on end. I can get qualitative answers to questions like “when did Katy Perry fall off” instead of trolling through a bunch of often irrelevant articles and blog posts to help me draw my own conclusions.
to be clear, this is a product that intends to “replace” search results with some formatted chatgpt output. and charitably, that last bit might be a misparsed garden path sentence but holy hell, is the selling point that you don’t draw your own conclusions?? imagine discrediting your own process for a buck like this video essays are so cooked man
i’m a transhuman entomomonarchist i believe freedom and democracy are human rights, and the failure of monarchies is an inevitability of human nature therefore we should genetically engineer and transition castes of queens and drones to create biologically necessary hierarchies
one of the big differences between pushro 0.7 and pushro 0.8 is that in 0.7, physics is done how you’d naively expect it to be done. to move something, the game changes its xy position. to push a block, first the block is moved, then if that works, the pusher is moved. you want to change an object property? just set a field variable
0.8, though? it ditches this entirely for a whole set of structures and algorithms. (as i always say, this is why the update took so long). now, every possible update to the game state is couched in the form of a sequence of intermediate commands and instructions, and this sequences are ‘compiled’ down to a series of object field writes.
this has a number of benefits — there’s true undo now, (previous versions just recreated the level from start and and replayed all but one move). physics is a lot more regular now that you can calculate a tile’s next state completely independent of actually changing anything. (previously, you had to be careful when you changed things and worry about certain physics effects working differently when they went “against the grain” of left-to-right evaluation)
it might seem complicated, but once i knocked out the grunt work of rewriting every single function, it was remarkable how clean and understandable it all was.
recently, i’ve started writing tests, because the physics has gotten deeply complicated (the physics.js file is well over a thousand lines, and at this point huge chunks of logic aren’t even in that file).
which means i’m rigorously examining some cobwebs of edge case physics to finally straighten them out. after months of more or less comfortably the new physics, i didn’t expect this to be what breaks me
the problem is simple: what rightly happens if you push a block over top a slipperly ice tile? i haven’t fully decided, but whatever the correct behavior, it’s not thistest levels are p cramped
if the player walks right, first they will push the block, causing it to slide rightward on the ice onto the ground tile. then the player is dragged right to complete their aborted movement.
then — by some strange alchemy — they vault over the block and land on the orange fire tile, killing themselves.
trying to parse the multi levels of interaction and indirection to understand what the fuck is going on even in this simple level is gonna put me on the newsidk that’s scary
these days i daydream about what if i was a hollow knight moth that woke up near the abyss with void powers. and i took refuge in deepnest bc between >moth >void >saw what’s in the abyss pale king would probably not be happy to see me tbh. but eventually i get a mask to hide it and i make a bunch of friends
and herrah and monomon like me and tell me things will be ok
So how much more salvageable would tumblrs finances be if it stopped doing video hosting, do we think?
i’ve thought about how little my experience would change if there were no videos on tumblr. then i think about the notes on the various cat videos or skits that float around, and wonder if there’s a unspoken niche of people for whom tumblr is primarily a funny videos site
why does every slope become a wall. i could post something, but it would be better if i put in a little more effort, and it would be even better if i put even more effort in, and it would be much better if i gave it my all. but if i have to give it my all… man i just don’t have the energy for that as a result, i don’t even post the half-assed version. why give 50% instead of 51%?
there are a couple of undo-related quality of life i’ve added to my game over time.
an one easy one to add, which is pretty widespread in modern puzzlers, is making level resets undoable, so you don’t lose a lot of progress by accident
another one that took a lot more architectural finesse was “smart undo”, an undo variation that auto-repeats until there’s a meaningful state change (e.g., takes you back to the last turn where you pushed a block)
and one that i’ve implemented and removed a few times is a sort of “save state” feature where you can store your move history to a slot and retrieve it. this sounds great in theory — wouldn’t it be a nice way to navigate the state space of really complicated levels? - but i found that i never actually used it in practice, even when solving complex levels
anyway, i spent this afternoon adding a feature that i’m not sure i’ve seen in another puzzle gamemight call it “visual undo” or something
the basic idea is to have a sort of an intermediate between smart undo and a full reset?
you press a button, and it highlights every square you’ve been to. you can then reset the level to the last turn you ended up on that square
this is mostly inspired by how often e.g. you push a block across the level, realize you forgot something, and sigh because it’s a long way back to that specific wrong turn, whether you go via reset and via undo-backtracking
ok i spent a few hours trying to write, got out like three paragraphs in between distraction-procrastination. now i’m giving myself permission to head back to the game dev mines yippee
was watching a lore vid about skyrim and got reminded of the existence of aela the huntress. psychopathic werewolf lady who calls werewolf hunters easy prey and delights in their slaughter. how tf did teenage me not go wild over this her only character flaw is that she isn’t single.
this was a great chapter, so many little moments i wish i could articulate a reaction to, like A’s dad needing a script to interact with his daughter — wildbow really timed the chatgpt zeitgeist, huh — or the brief slip back into classic A-B banter only to get hit with the mini-gutpunch of “I don’t like you enough to find you funny.”
there’s something funny to me about how seek is less action-oriented than other wildbow serials, and it almost feels like A chapter’s structurally take the piss out of the cheap dramatics of action serial plot progression
we’re at the point where a beat like suddenly, aliens are attacking!!1!prompts the immediate reaction “ugh, elabre’s pulling this shit AGAIN?”
and the tension is squarely on the character emotions and social implications
also darkly hilarious how satisfying it feels watching basil accrue more and more power
i go “yay nanotech” then i take a glance at orion >.>
my concluding thoughts is i’m so relieved the A-Basil rift is on the mend now
the “quality ratchet” is a concept i’ve come up with, and i wanted to reference it in an upcoming post, but apparently i’ve never talked about it on tumblr?
but i digress
i’ve talked about how every longform fiction i’ve written, without exception, has been an unserious experiment that snowballed into something far more involved than intended
i fuck around, then i lock in, and then you can hear the death knell ringing. but i have a new analogy for the mechanism.
the quality ratchet operates simply: it’s far more acceptable to overdeliver than to underdeliver.
new chapter turning out better than the the last? man i’m on a roll, i outdid myself, great job. new chapter turning out worse than the last? what the fuck i can’t publish this, gotta go back to the drawing board
if you suppose that the quality a writer is capable of outputting is distribution which they sample from whenever they write, then just by statistics they’ll usually start out near the median
if subsequent updates have to hit that same target or higher, then it’ll be pretty easy to raise the waterline so long as you’re still in the fat middle of the distribution. (and if they’re just fucking around like me, then that means they’re starting closer to the bottom, giving them an even longer run way)
of course, the closer you get to the top, the more times you need to roll the dice to sample a point that’s several deviations above your average output. it becomes unsustainable, you burn out
what’s interesting about this framing, though, is that it’s possible to get ratcheted before you even write a word
another observation i’ve often made about my writing is that for as much as i love outlining and have written several, the stories i’ve actually written are the improvised ones, and there’s but a single (meaningful) intersection of what i’ve outlined and what i’ve actually written
writers like wildbow often dismiss outlines, citing that knowing what happens detracts from their motivation to write it. i’ve personally found this silly, but i realize something effectively similar actually does apply to me
the problem with outlines mixed with a mindset like mine is that the outline creates yet another standard to hold against anything you write. now it’s not just “is this as good as what came before”, it’s “is this as good as what i had planned? does this advance the plan at all?”
so in short it’s not knowing what happens that’s my problem, it’s having expectations
today is a day of some significance, and long time fans might remember why
exactly one year ago today, i posted An Opaque Heart, a first draft of a murder drones fanfic that began humbly as an attempt to explain a (gasp, N/Uzi) idea i had to a friend. i locked in and wrote 35k words in under a week.
in many places, especially near the beginning, it shows, recounted with all the casual and unliterary verve of explaining a story to someone, rather than actually telling the story.
still by some metric it stands as my longest complete story. (i consider Even in Debt — Dreams properly complete, and Aurora Moonrise is over twice as long as AOH and has a conclusion, but it’s even less coherently edited in its present state)
no one noticed, i imagine, but a bit over two weeks ago, i took AOH down; the link to my site is broken, and the tumblr post is private. i had a plan for the one year anniversary: i was going to edit the story into something more proudly presentable, and finally post it on ao3.
so i opened up the doc and started hacking away. i made some good progress on the first chapter, adding hundreds of words, doubling its length before i’d even gotten halfway through
and therein lies the trouble. it’s the quality ratchet. in the original draft of AOH, it starts out mid and just gets better and better. the rewrite of the start is promising, but that just makes it all the more jarring where the edits and stop and you’re thrown back into the old draft again
so i have a dilemma on my hands. my tumblr has a fraction of the audience of my ao3, and the overlap is pretty narrow even then. there’s several stories (two one-shots, plus An Opaque Heart, and Like Shadows Chasing the Balance, and arguably Corrupt Combustion) which were only posted to my site and tumblr and never deemed worth posting on ao3.
if i were smart enough to realize i’ve my ability to edit things after the fact has totally atrophied, i think i would have preferred to post them at the time they were written. posting them now, though? people who follow me would get a notification, but rather than the triumphant return after months of inactivity, it’s a dead cat bounce, dumping the literal dregs of my oeuvre.
forgot to mention but a major reason i wasn’t able to get much done re: AOH rewrites is i just can’t stop thinking about and working on the roguelike. oops
right now to control the branching factor my enemy ai halts pathfinding past states with a maximum number of variable differences from the present which means when i want to experiment with their physics i can do this to make them be still naughty pawns get put in the play nice cage
why are pathfinding bugs the funniest. when an entity is destroyed in my game, i set its xy field to null. to save some cycles, i’m currently rewriting enemy ai to check to see if the player’s position is on an precomputed set of reachable tiles
…which means that if the player is dead, the enemy observes (arguably correctly!) that if it kills itself, it will reach the same tile as the player
was explaining description to a friend. everyone knows show don’t tell, and in particular everyone knows that chekhov quote. so this isn’t a new insight at all, but lacking a better name for it, i decided to call it the rule of one
to make something vivid, pick one. for an object, find one little detail. for a group, find one individual. for a process, find one step, and describe that. leave the rest to imagination.
don’t take a careful inventory of the moonlit night, just look for a sealed mansion’s outward-shattered glass.
cut your sword exactly once, then sheath it
normally i go on at length in writing advice posts
my neocities site used to have a bunch of javascript.
for example, i had a page that existed to load up chapters of various stories so that you could read all of the chapters in one page, sort of like ao3’s view full work feature. because it was scripted dynamically, i didn’t have to maintain a separate copy of the text, and it was actually more flexible than what ao3 offers, because you could read specific arcs, heck, you could read a specific sequence of chapters (e.g., 2-13 specifically)
another thing i didn’t want to maintain by hand was header at the top of the page with navigational links, so i had a script that updates them on page load.
problem is, it kind of just feels bad to load a page, then see a visible delay before the header pops in.
i spent almost a year living like that, but i eventually stopped maintaining my html by hand, and learned the joys of the static site generator.
i didn’t need the chapter loader anymore, either — i could code my site generator to concatenate chapters into a full-text page, and since it’s static, it’d load much faster than make the user’s browser stitch together the html every time they want to open that page.
slowly but surely, everything i might’ve used js for was getting replaced by simpler, faster, and easier means.
i don’t make much use of it, but my site actually has discord-style spoiler text. blocks of text you can click to reveal (and the css is uses currentColor, so it works even on different themes)
Here’s a question: I am big and hot — what am I? The sun
i don’t even need javascript for this; the way i accomplish it is a bit clever:
<p>Here’s a question: I am big and hot — what am I?
<span class="spoiler">
<label title="Spoiler-text: click to show">
<input type="checkbox">
<span class="text">The sun</span>
</span>
it’s a checkbox! even if you hide the actual box, you can still click the label to toggle its state
this was something i implemented early, based on this blog post where a similar trick was used for a no-js dark/light mode toggle.
but i took this to a new height this year:note[i added fancy footnotes]
but under the hood, it’s the same principle
check box to toggle the state, then some fancy css it position it to float above the text.
but of course, if i’m doing all of this without javascript, what do i need javascript for?
and there was only one feature that stuck around. it’s something that i think no one really used, but i’m attached to it.
you see, i’m notorious for writing long chapters. i could split them up, but i have particular stopping points in mind. still, i am merciful, so in my stories with consistently long chapters, i’m gone out of my way to insert break points, “subchapters” seamless into the main text.
the little roman numerals would trigger a script that reformatted the page to hide all the other subchapters, and reconfiguring the next/prev buttons so that clicking them takes you to the next section rather than the next chapter
in theory, you could read Hostile Takeover as if it were a fic with 72 chapters instead of 16.
now, this is a very complex feature. you cant use checkbox tricks to emulate this, unless you want to go crazy writing a dozen css rules for every permutation of checkboxes, or force the user to figure out an arcane system where you need to uncheck one section before loading the next
but it turns out, while i wasn’t paying attention, the css committee added a crazy new feature. there are :has selectors, enabling you to style elements based on the properties of elements that come below it in the document.
the whole game has changed now.
couple this with learning about :target selectors courtesy of wonder how a couple of really ambitious ao3 fics do their magic, i had everything i need
all it took to make subchapters happen now a few simple rules
really, you only need that first line. it says “if main has a target element, hide all subchapters that aren’t the target”
the other lines are convenience; they had the next/prev chapter buttons if you’re in the middle of the chapter. there’s a couple other rules (beside the subchap nav i added a button that takes you to the top of the page, which resets the anchor target), but overall, it was quick and painless. really, the actual struggle was teaching my site generator spit out the right html. (i spent five minutes tearing out my hair and rebuilding to no effect because i forgot i had two layers of caching. whoops)
this new approach does sacrifice the ability to make the arrow buttons do double duty, but i don’t think it’s a big loss when the subchapter buttons are right there, and arguably retaining the single function of each button is a win for usability.
the biggest loss is that there’s no real way to style the buttons differently if they’ve been clicked, so you don’t actually know which subchapter you’re actually browsing.
(maybe if anyone i actually uses this feature, they can complain to me and i’ll whip up a quick bit of js to patch it :v)
but until then, i’ll take some satisfaction in delete my site’s scripts entirely. in a way, that’s the biggest loss, but it’s one of i’m proud of
something about typing shit into the new post box, getting really in your head about the wording necessity to convey your thought precisely, realizing you can’t hack it and you’re just going to consign it forevermore to your poorly worded drafts, and then plowing away at the rest with an utterly liberated verve. the unmatched confidence of saying nothing to nobody
a special thrill is racing to comment on the new chapter of a story, but doing it with several paragraphs of thoughtful commentary. like not only am i indulging in the primal netizen urge to plant the flag of “FIRST!” in a new comment section, but i’m doing it with style