studiomcah
Art • Books • Writing
Community for science fiction and fantasy author/artist M.C.A. Hogarth.
Interested? Want to learn more about the community?
Gamedev Diary: Tools

Let’s go back deep in time, remembering that I got to see the era of personal computers begin. I ask you to picture an artist-writer-storyteller, a girl who mostly drew unicorns and pretty aliens, and then also put her in front of an Apple IIe facing a command line and hearing ‘You can do anything you want.’

What did I want? I didn’t know. But we had a computer class in school (which was very avant garde at the time!) and that was how I learned about the BASIC programming language, and ended up creating my first very simple programs… the kind of beginner tasks that cause a computer to echo back ‘hello world’. From there, I went straight to “I want to make a choose-your-own-adventure game,” which I did, and based it on Star Trek. You were commanding a starship, you ran into trouble, you had to decide what to do, and then eventually your ship blew up. (All choices led to the ship blowing up. I thought that was funny. No one who played the game liked this storytelling choice; I thought they needed to lighten up and embrace the boom.)

Writing games like this was pretty easy: it was basically a tree of “If this choice, show this text. Prompt for next choice. Then if this choice, then this text…” all the way down the chain to the possible endings.

It seems weird to me to realize that I don’t call myself a coder or a gamer, and yet at 12? Years old? About? I was excited about using a computer to tell an interactive story. All of which is to say: I guess I’ve always sort of coded. But I also always sort of coded as a means, and the end was telling a story. I was never fascinated by computers qua computers; there are coders who code because they like the puzzle of putting together instructions, or because they’re fascinated by the computer itself, or the process of coding massages their brain in a specific way that I can only imagine. To me it’s just a tool, and an often tedious one… and the scope of my game design dreams (or web design dreams) always meant that I would have to spend too much time on the annoying parts to get to the end I wanted (the game, the story, the website).

Time went by, and I got jobs where I had to write websites that had database interactions, and I did this with giant tomes about coding resting on my lap, or with my (primitive back then) web browser open on newsgroups about coding where I could copy code snippets into my terminal window and adapt them to my use case. I often asked for help; I learned from the people helping me; I became fairly adept at reading code and understanding what it was doing. But I reused code constantly, and I never loved writing it. I loved succeeding when something worked the way it was supposed to, but this was not my beautiful house, my beautiful wife, any of it. I was a storyteller and an artist; I do not have coder brain. I have wordcel brain. (Yes, I own it.)

This long story I tell you so that you understand that when AI vibecoding became a thing, I was all over experimenting with it. And my delight was boundless. At last, a tool that removed the tedious parts and left me only with the parts I enjoyed and am good at! For this reason, AI is my foremost tool in the gamedev process. Because of AI, I can concentrate on drawing and writing stuff for games and websites and not have to do the part I don’t like and am not natively interested in.

I understand there’s a lot of controversy about AI use. I have fans who won’t play my games or use my quizzes because I used AI to code them. But I remember the me who was cutting and pasting newsgroup code snippets into her own terminal windows, and the me who was laboriously typing sample programs into those windows from books, and the me who was already leaning on the enormous base of knowledge compiled by people, sharing freely on the internet, and all I think is that AI makes it faster, and faster makes it possible. I made my peace with that, but I recognize other people will have other opinions.

There’s a lot of confusion around how you use AI to code; lots of “it forgets things” and “it hallucinates” and “you can only code to a certain complexity level and then it fails”, etc. Here’s how I do it:

IMAGINE: I think about a feature I want the game to have. I imagine how it works in my head, what delights me about it, how I interact with it.

PLAN: I have a design session with the AI where I say, “This is what I want… what are my options for accomplishing it?” I have an instruction there that says ‘I have some coding background but I want to learn and particularly best practices and security-conscious design. Please educate me!” So we talk, and I learn. We go through a few ways to make what I want to happen work, and then – this is important – we create two documents. One is an overview of the feature and what I want it to do; the other is an implementation plan.

IMPLEMENT: We use the implementation plan to start work. I like to work from the invisible-to-the-user-backend outward to the UI. Each step of the implementation plan involves a checkpoint and a test. We put in the first layer. We test to make sure it works. Then we proceed to the next, etc. Only when I’m sure that all the invisible pieces work do I start the last piece, the UI that makes it visible to the player.

DOCUMENT: After the feature is implemented, we update the design document to reflect what it does, how it works and what it touches, and what my plans are for it for the future now that it’s working.

Rinse and repeat.

In the course of seven months I created over 168 pieces of documentation. That’s only counting the files I kept, not the ones I discarded because they were no longer up-to-date, or the ones I consolidated. I often did “doc review” days, and those days I would often do things like turn 8 small implementation documents into a single overall feature document. So that’s just 168 that I have kept, currently, after months of iterating.

I do this not because I don’t trust the AI, but because my own memory is poor. I know I’m not going to be able to hold the codebase in my head. I take good notes because good notes are the only way you keep yourself aligned to your goal. Breaking a big project into bite-sized pieces and then doing each of those, one by one, is the only way I have ever accomplished anything, as scatterbrained as I am. And as it turns out, being scatterbrained is excellent training for the AI age, because all the coping mechanisms I developed to become a modestly functional adult are exactly what I need to stay focused and productive with tools that accelerate you in whatever direction you’re already facing. If you’re disorganized, unmotivated, or easily distracted, you can become more so instantly and at scale. But if you’re even a little bit ready to compensate for those problems with habits and hacks, you’ll go far with the new tools. It really is all up to you.

At the point at which I began this, I was using primarily Grok and Claude, the chatbot versions. There were no CLI/cowork tools at that time. I’ll talk in more detail about how that worked in forthcoming entries.

AI, then, is what I use to code. I’ll bow briefly to the other tool I’m using, which is Clip Studio Paint on my ancient Microsoft Surface, with a cheap off-brand stylus. I’ll say this immediately: I hate drawing digitally. Given the choice between a pencil and a stylus I’ll take the pencil every day. But for a game that has paper doll mechanics, it’s nonsensical to draw and scan the amount of art assets I need to do. This is the one place where the digital art tool is legitimately the right choice for the job, no matter my personal feelings about it.

The Surface is the only windows machine left in my possession, and is too old now for significant upgrades. I’m going to continue on with the software/OS revisions I have for as long as possible! But I am dreading the day I need to do a cutover. That is a problem for Future Jaguar, though which brings me to an important philosophical belief of mine… that you just have to do the thing. The time is never perfect. The future is full of pitfalls. You will never learn enough to do the thing without doing the thing: the only way out is through. So the faster you start traveling toward the goal, the better.

So those are my tools! Next time, we’ll talk about my initial foray into the Jokka game, the prototype! Unless you have questions about my process, and want me to go deeper into it. I’d be happy to devote future entries to things you’d like to know… just let me know.

post photo preview
Interested? Want to learn more about the community?
What else you may like…
Videos
Podcasts
Posts
Articles
October 27, 2021
Cursive Practice Video, to Relax

Or at least, I intend it to be relaxing. Hopefully it delivers.
4:22 minutes

Materials:

00:04:27
Overview of the First Oil Paint Experiment

In which I talk about the paper, the paint, and the experience of oils versus gouache. Fun stuff, will do more.

Thank you Locals supporters! Your contribution to my art war chest here is what's powering these experiments and videos. For now I'm keeping them public but I may start doing some subscriber-only videos if you all are interested.💖

00:03:35
Video Review: Oil Painting Papers

My initial review on receipt of the three oil paper products I ordered: the Canson pad, the Rembrandt block, and the Arches single sheets.

00:01:54
November 09, 2021
Alysha Misc

Thanks for your comments yesterday on the business post... all very provocative, in a good way. I'll try to respond to all of them today.

Some Alysha misc now, since I'm gearing up for the results of the Kickstarter!

Petrov is giving away coupon codes for every book in the Alysha series (and has some leftover coupons for Marda and the business book). You can pick those up here (and please do! The books are bought already, someone should use them!) https://twitter.com/PetrovNeutrino/status/1457344535843987461

Our own @JudasComplex sent along a sample of the Faith in the Service audiobook, which I've attached for your delight! I... haven't had a chance to listen to it. Don't ask me about my past week and a half or so. Putting it here will guarantee I get to it.

After hearing the amused comments during the livestream, I went ahead and added all the ship type illustrations I have inked from the 90s to the wiki. Glory in the rampant adorableness of their anthropomorphic stylings! See those ...

Alysha Misc
The Jaguar's Heart 7: We Are Not a Monolith

A little comedy today, at least in the link. Transcript follows.


Hi, all. Welcome to this episode of The Jaguar’s Heart.

A while back I was introduced to a comedy sketch about Cuban coffee by a Mexican comedian, Gabriel Iglesias. ( The sketch begins with him greeting all his fellow Latinos and then backing up to say ‘but we’re all different, aren’t we’ which is a segue into a demonstration of how different Hispanics speak Spanish.

It is hilarious. First, because I am a Spanish speaker and a linguistics hobbyist, and his portrayal of various accents resonated with my experiences in trying to make sense of them myself… Not always easy, since from culture to culture, slang and accent are often totally different (and sometimes grammar! Spaniards use a grammatical construct that has died out in many other Spanish-speaking countries, the plural “you.”)

I also loved it because the Cuban coffee part is real. I grew up with Cubans. I know how we are....

The Jaguar's Heart 7: We Are Not a Monolith
The Jaguar's Heart 6: Hatespeech

One of the most common things I hear (and say) right now is "the asymmetry is the story." Here's one about how none of us are innocent of the sins we hate in others.


Hi, all. Welcome to this week’s episode of The Jaguar’s Heart.

It’s been weeks since the Baen’s Bar incident and I’m still thinking about it... because the longer I do, the more I feel, overwhelmingly, that it’s obvious that the problem is deeper than “this forum was saying stuff that offended us.” We have to back up to the glaring fact that people on opposite sides no longer consider each other human. Nothing I say will matter because the people disagreeing with me don’t think I’m human. They have denied my humanity; they have not bothered to listen to my beliefs, or have fake-listened to them in that way that people do when they’re so ready to prove you wrong that they’re only using your speech to provide talking points for their own ideas.

We have forgotten how to listen.

Increasingly, we have also ...

The Jaguar's Heart 6: Hatespeech
Back in Time Tuesday: Manta Yay and Kickstarter!

First of all, the Kickstarter is live: get your crane, cat, and dog stickers! The campaign is running for only 10 days and it just launched!
https://www.kickstarter.com/projects/mcahogarth/the-crane-mafia-wants-you-to-buy-their-sticker?ref=9u659y

Second of all... today's 2011 watercolor painting is of one of my favorite sea creatures, the ray. And I picked it because the original is available via the Kickstarter.

Honestly sometimes you just want to draw something fun, and this was one of those times.

post photo preview
Meta-Conversation: Eyes Like The Sea

For the recent questions about plumbing, sanitation, and maintenance, I think that the right person to approach is ij Elidzin, the Regal who’s been the most forthcoming with us in former meta-conversations. So I go outside on a bright but brassy afternoon to await him, peering up at the sky where the gusts are pushing and tearing puffs of clouds and whispering of tropical disturbances. It’s warm and moist, but the wind is bracing.

When he arrives, I am glad to see him—my fondest memory of him is holding all his pewter-gray hair in my hands while deciding how to brush it—and that is the foremost memory of him until he comes closer, and I see not just him, but his ancestor, whom I also love a great deal and can see echoed forward in time into Jael Thoron: the same intellect, and the same self-control, and even some of the same mannerisms. My love for them both blends, and for several long heartbeats, I’m not sure who I’m looking at, or if it’s only one person or if I’m merely in love with a generation of people who ...

Wednesday Art Share: Qenain at the Door

https://mcahogarth.org/gallery/image/144-2026-07-TheFirstQenain

I picked this one out of the 3182 online because it's recent! Like "I drew this a few days ago" recent! It's really exciting to be using the gallery as a way to share things I'm working on now as well as things I've made in the past. Several people have favorited this one or hit the "finish this!" button so I am now contemplating that seriously!

Every other day I'm adding new art. Either old art I'm scanning or rescuing from the ancient stardancer archive, or new things I'm drawing now. It's good to be back in the saddle again with the art half of my business.🧡


Gallery is continuing to develop!

First, we now have an rss feed: https://mcahogarth.org/gallery/feed

Next, for those of you who want a more curated experience, we now have showcases! I curate those and write introductions. Go look at the first, about Kediil: https://mcahogarth.org/gallery/showcase/kediil

Then I added Elements, which link together sketches I ...

Welcome Back, to the Stardancer Gallery

I have a gallery again.

It would be so easy to say ‘I can’t tell you what that means to me’ but part of my thing is that I do tell you what things mean to me, all the time, so I’m going to try.

1.png?token-hash=nrdoS5Y9_iiERRaTSKIzbGY-dtyGgI1XVmNbDQ3zMz0%3D&token-time=1784764800
mcahogarth.org

Let me start by telling you about the original Stardancer gallery, which many of you remember and an even larger number of you weren’t around for. Because in an era before big sites like DeviantArt, when personal websites were still linked by webrings and coded by hand, I had a website that used a database to show visitors not only the latest thing I’d uploaded, but the comments left by dozens of people on that offering.

It’s so hard to explain how crazy that was. There were no Wordpress packages, no visual editors, no gallery plugins. There was no user validation by Google or Apple, no social media, no expectation of interaction or community. Everything had to be coded by hand and installed by someone who wasn’t afraid of a UNIX command line. And from 1999 until mid-2012, the Stardancer gallery served, on average, 5 pieces of art a week, with over 175,000 words of commentary from me, for thirteen years, and those pieces accrued between 5 to 40 comments from visitors. When it finally went down, there were 2906 distinct pieces of art in the database, and of those 253 had multiple versions—I uploaded them as I worked on them with commentary on each stage. Some of those pieces had 9-10+ stages where you could watch me wrestling with them (complete with titles like “OMG Ugly Stage” and “needs a background”).

For context, 175,000 words is probably about 700 tightly-packed paperback pages. That’s how much commentary I wrote. And that’s not including 1993 keywords and 60 projects I was tagging everything with.

I wanted that gallery so I could share my art with all of you. But it was also functioning as an organizational layer for me. When I was trying to remember a story, a character name, a forgotten piece of art I wanted to finish, I would search my own gallery. It was my backup brain, and my sketchbook index, and it kept me focused. It even had basic project management tools, since each of those 60 projects had a status: complete, in progress, ongoing, on hold, trunked.

The sunsetting of the original site was inevitable. You can’t run software with visions of enterprise-level functionality on a friend’s personal computer. But I was in the very unusual position of having started out with a system custom-built for my idiosyncrasies, and nothing on the market was good enough. I kept poking and not loving any of my choices. Host all my artwork on some aggregate gallery site or shoehorn it into a cookie-cutter Content Management System? No thank you. So I never replaced Stardancer, and for fourteen years, I’ve been running without that second-brain infrastructure.

And now, I have it again.

Now I can think ‘what was that thing I said about that one character in that one sketchbook?’ and search and find it. I can mutter, “Where is all the Ai-Naidari language work” and pull up the notebook. I can think ‘Didn’t I want to finish that picture of the dala fox? What sketchbook is that in?’ and I know.

I know!

And unlike the first gallery, this one can have everything in every sketchbook. Because I streamlined the parts I hate (editing, watermarking, uploading, making thumbnails, importing into the database) and left myself only the parts I enjoy (writing comments and tagging). And while some of the original Stardancer’s features aren’t online yet, like multiple versions of the same image, they’re designed and in the queue… and this version can have cool new features, like user favorites, and requests from users who love something and want me to finish it.

I’m so forgetful. I keep trying to explain to people how much of a cheesecloth my brain is with just about everything. Without rigorous documentation, lists, and notebooks, I would be completely useless. Art is one of those places I document my thoughts and keep myself pointed in the right direction. The fourteen years I didn’t have a gallery are literally gone in my brain, artistically. I have to dig up the physical books and thumb through them to remember anything about them. So I think you can imagine my relief that this is now available… not just for you to enjoy. But for my sake, to keep myself from vanishing because I am no longer observing myself.

Right now the new gallery has 2644 images across the 42 sketchbooks (and one unfinished language notebook) I’ve scanned and uploaded… of the nearly 200 I have. I’m only just getting started. I am crazy excited, I can’t even tell you.

I have a gallery again.

I have a gallery again!

1.png?token-hash=OFM2le6FWSQrplCYRdqaQS9LfErLYuCE_NXNeyl-5I0%3D&token-time=1784764800
mcahogarth.org

Anyway, this is the part where I talk about how you can enjoy the gallery:

Every subscription and purchase helps keep the gallery open and supports our free users, so thank you so much for chipping in!

What can I say? Welcome home, my friends. Welcome back!

Read full Article
Early Access is Now Live! Come Join Us on Ke Bakil!
Make your own Jokka clan and watch it thrive!

Good news, patrons! The beta for the JOKKA! game is now open! You, as paying patrons, now have early access!

Only for Supporters
To read the rest of this article and access other paid content, you must be a supporter
Read full Article
December 10, 2025
The Jaguar Reads an AI-Written Book

Over the weekend, I read a book that I’m 95% sure was AI-written. I’ve listened to people talk about how it’s done: you brainstorm characters and a plot with AI, prompt it for an outline, adjust the outline, prompt it to create character and setting guides… attach all that to your project, then tell it to write the first chapter. You adjust the chapter, add it to the project, then tell it to write the second, etc, until you get to the end. Then you tidy the whole thing and publish. The "rapid release" people either love this (because you can release a book in a day or two and do it again immediately) or hate it (because they can't keep up with people using this strategy with unaugmented human brains). But it's clearly a thing that's happening, and few people who do it are admitting it.

Reasons I thought this book was AI:

  • Every chapter ends with a weird wrap-up style: “Main Character had accomplished XY and Z. Tomorrow, he’d have to tackle AB and C. But for today: job well done.” And I do mean every chapter. At first I thought ‘maybe the author’s serializing this and needs to remind readers about what just happened” but when it’s doing overviews of what happens in the chapter at the end, it’s weird.

  • All the places give you a “movie set” feeling of being wooden facades. Like… ‘there’s a baker. He makes bread.’ Nothing else. Only bread is mentioned. Not even the kind of bread. There’s a weird lack of specificity to everything. The baker always has a ‘basket of bread’. Or occasionally, a basket of pastries. (No word on what kind.) Likewise, there is a blacksmith. We know he can make hammers, because the apprentice made one. But that’s it. No idea what else the blacksmith does for the town.

  • Then there’s suddenly spates of specificity. “I have these exotic spices that sound like a list generated for game inventory.” These specific things are never mentioned again.

  • The technobabble sounds like stuff Claude gives me as placeholders. “Mana structure efficiency at 45%. Suboptimal but holding.”

  • Similarly there are some odd verbal tics that repeat throughout the text, and they are suspiciously clever ones, like analogies that rely on an abstract and a concrete noun: “It tasted of cinnamon and regret.” “The tavern smelled of old ale and worry.” Even the title uses this phrasing. Authors can have verbal tics, of course, but I associate a lot of these with AI.

  • The supporting characters do the exact same things, as if they’re programmed NPCs. Celebrating an achievement? ‘We go to this exact same tavern, every time.’  Checking up on the main character? “You need food and rest.” (I can’t count the number of times this character suggested everyone have food and rest, in exactly those words. No variation.)

  • This one is hard to describe, but the characters have believable backstories that suggest depth, but these backstories do not inform how they interact with other characters. The nemesis becomes the protagonist’s friend based on a single interaction, and this backstory, while mentioned in subsequent chapters, causes no friction, for instance. It’s as if every character was created in isolation and the author can’t figure out how to make them combine.

Could this all be the work of an inexperienced author? Sure. But that tells me that we have trained AI to work off story templates that inexperienced authors also rely on. If you have decades of “write to market” advice that treat books as widgets with “story beats” and “character arcs” that can be abstracted into formulas, you shouldn’t be surprised when books start to sound alike. They already were, prior to AI, it’s just that AI makes creating them faster.

Did people like the AI-generated book? Well, it has over a hundred reviews and a 4.5 star average rating, and even on Goodreads, it's doing well, so the answer is: “Yes, it’s good enough.” Did the author confess to AI-writing it? No. Maybe he didn’t! But my guess is that he did.

Do I care about this? Not really. I didn’t enjoy reading it because it gave me the same feeling social media scrolling does, that I’ve eaten empty calorie food that’s programming my brain to repeat basic and uncreative patterns. But humans have always riffed off bad things to make better things and I can totally see someone using AI to generate a draft like this, and then completely overhauling it into something enjoyable.

I don’t write like this because I’m weird. I am constitutionally incapable of the ‘write to market’ formulaic approach (which is why I’m not on a yacht sailing to my property on the Riviera). Even my attempts at romance and litrpg novels veer off into directions that make them too odd (yes, I managed to make both these genres unprofitable). But I’m one of those capital-A artists that indies like to sneer at, and I’m happy that way. I can’t even do that right: I’m an Arteeste who doesn’t care if you’re using AI!

My audience was always going to be the weirdos who want to learn my conlangs and vanish into alien cultures so completely they leave no traces. That's you all! You're awesome.

But yeah, AI-written books. You might have already read one and not realized it. The name of this one, if you want to check it out, is below, and yes I paywalled it because I don't want to bother with drama.

Only for Supporters
To read the rest of this article and access other paid content, you must be a supporter
Read full Article
See More
Available on mobile and TV devices
google store google store app store app store
google store google store app tv store app tv store amazon store amazon store roku store roku store
Powered by Locals