Wednesday, August 19, 2026
A New Tutorial Approaches -- Virtual Pet in Godot
Wednesday, July 15, 2026
Warp Zine Issue 6 Out Now!
I wrote the pixel art piece. This Warp Zine has my favorite Ward and Zina to date, though
Wednesday, July 8, 2026
Transparent Godot
I FELL DOWN A RABBIT HOLE solving this problem! The best explanation I found is here:
Honestly, GOATed, very simple and clear. It's mostly a few settings. But what if you want to click through? NAD LABS has another tutorial, click here, where he gets that working using some Polygon2D nodes, but I couldn't get it.
I dug around forever, and finally tripped over this in the Godot docs: Click here to read about mouse pass through
Long story short, the polygon method works great on Linux and Mac, but not Windows, which I'm currently on. Barf.
You CAN get it working in Windows! Look at this reddit post.
Howmstever, the Windows solution:
- Does not work in Linux or Mac
- Is in C#, which is an absolute puke of a language, all my homies hate C#.
- Yes I used to use Unity, how did you know
So if you're making a game, are you expected to have a Windows version and a Linux/Mac version? Honestly, yes. That wouldn't be super weird.
... maybe I'll stick to making web games.
Wednesday, July 1, 2026
Juniper Jam 2026
Wednesday, April 8, 2026
Warp Zine Issue 5 Out Now!
You'll probably see a familiar pink axolotl through the issue. Good. Behold her.
I don't know what to write for the next one. I'd like it to be an activism something or other, but I gotta decide.
Wednesday, April 1, 2026
Makealotl Music Updates
Wednesday, March 18, 2026
New Makealotl Trailer!
I cut a trailer for the Makealotl Music site! I hope you love it, it was tons of work.
And of course, you should probably visit Makealotl Music for all your music education needs
Wednesday, March 11, 2026
neon98.com updated
I once heard some YouTube dude say that websites really get best over iteration, meaning they get better as you change them over time. That means if you want a cool website someday, you gotta start with a thin one today. I think websites are fun, I think everyone should have one. I think you should link me yours, even.
But really everything you do is iterative, if you'll think about it. Which is fantastic game dev advice, but really it's fantastic advice for any creative endeavor you're going to ... endev.
I realized after I put Makealotl on there, I need to put my smaller projects on there too.
Wednesday, February 18, 2026
New Game at Makealotl Music!
Come play the new game at Makealotl Music! The Lilypiano is a music toy where you can play tunes on the lilypads. ... really what happens is Delia will summon her shrimp friends to bounce on the lilypad for you.
If you'd rather, Delia and Wendy will play songs for you in Play For Me Mode. Or, Delia will teach you a tune in Teach Me Mode.
Wednesday, January 14, 2026
Warp Zine 4 Out NOW!
I irritated them for a printable version this time, in case you like to read yours on paper, or print yours out and take them to little libraries like I do.
Wednesday, January 7, 2026
I Got This For Christmas
Big notebooks in the back, little notebooks in the front, nail polish thinner in the very front for some reason, and in the middle, we're calling that my development liberry. I've read most of those! I have sights on The Hero With A Thousand Faces soon. If you need a review of any of these, holler.
Wednesday, December 10, 2025
An Update To Last Week's Post
Whoops. I actually think this might be the right answer. I won't be tearing my code up to check, but I wanted to make sure this was seen. Thank you, Hyvernox!
Wednesday, December 3, 2025
I Don't Get It Either!
Makealotl Music is getting a new game with a lilipad piano. I wanted to include a mode where you play Simon Says with Delia to learn some of the songs in the program. You can see the final version working here:
An oversimplification of what's going on under the hood is that the game stores the song in several different arrays, and then as you progress through the song, it glues the arrays together to build what Delia "listens" for to check if you're wrong or right. Originally I had the arrays stashed on the button itself that you click to pick a song. So, for example, the Mary Had A Little Lamb would store C D E D in an array, and then the game would load C D E D and see if that's what you were playing. You can read the code here in this Pastebin if you want the technical-atude of it all.
This worked great until I added a second button to add a second song. (Brother John, if you were curious.) Once I did that, Godot would not read any array at all, and would crash with a null reference error. (Are those called null reference errors in GDScript? That's what they're called in C#, I've never heard them called anything in GDScript.) I cannot explain why the code would work fine with one object and go south with two objects.
I got to a point where whatever the explanation was wasn't important, I needed the code to work. I got the idea to:
- Have ONE object, just a regular ol node, run the code that lets Delia check what notes the user plays
- Store all these arrays in a resource
- Have the button send the resource up to the regular ol node and force it to read the arrays out that way. Tell me it's null now, you sonofabitch.
Godot 4.5 have a feature that I have been vibrating for. See that fancy "append node" checkbox? A signaling node can now send itself up with a signal! So we can store the resource on the button, have the button signal up, send the button on that signal, then read the resource!
Wow! Except it doesn't work!
If that song_data variable is null then I'm in Unity Engine. No. For whatever reason Godot simply would not read the resource off the button. Notice that the button itself isn't null? I guess it did manage to send itself, but none of its own data?????
Google suggested that sometimes you had to read the resource, duplicate it, then send it up. This doesn't work either.
So, like, don't do that, I guess, or suggest it.
Godot really loves the load() and preload() functions, those are pretty secure, so I tried this on the button:
Which doesn't work, but it lead me to the working solution. I don't love this solution, it's not slick and clean, but it's the only thing that actually works and allows the game to run multiple songs so let's goooo:
Using the connect dialog, send the resource's path as a string.
Then force the Teach Me object to load the path.
So I got this far, I got this working, party party, and then I remembered that I totally forgot that .bind() exists. Oh well, I can't promise that it would work, given that append node wasn't working.
Again, this makes me cranky, I'd rather just merrily be putting .tres files in the inspector by drag and drop. I'd love to know why the other solutions didn't work, and I'm curious to know if any of these will actually work in the upcoming 4.6. If you can explain it, let me know!
Wednesday, November 26, 2025
Dialogic Alternative Styles -- I Had No Clue!
Wednesday, November 19, 2025
Game Harvest 2025
So that's us, and all our little booths, before we turn the lights off. You can see Makealotl Music over on the far left!
You can see Makealotl even better here:
And on the left of that picture, you can see Vaporwave Battler running too.
I gave out stickers! That was fun, I love giving stickers to people.
I got to talk to a tonnnnn of people, too, and watch them play both Note Nab and Vaporwave Battler. It was also excellent to talk to my fellow dev pals, get ideas, and play with their games as well. I walked off with so many ideas, you guys, I have so many ideas now.
My list of ideas for me for next year:
- Get little yard sale signs -- you know, the neon cut out ones? -- to give people a call to action about the game ("Buy on Itch.io!" or "Visit Delia on the web!"). Also use the signs to mark the stickers as free
- Reprint my buisness card holder, it busted right before
- Maybe Game Harvest specific builds that reset or give directions after a time so my booth needs less babysitting
- Headphones. I brought purple ones for Makealotl Music just because Delia has purple headphones and I think I'm funny, and I noticed they got used when the bands were playing really loud. They're just 5 Below headphones, I think another pair of cheapies would be a fine investment.
Wednesday, October 22, 2025
"How Do I Start Learning Game Development?"
Too many people want to learn development, but don't really know where to start. This infographic is your jumping off point. If you try it and it doesn't work, at least you tried -- come tell me, so I know to change my infographic and set you on a better path!
Wednesday, October 8, 2025
Warp Zine #3 Out Now!
you'll never guess who was a contributor ~~~
Page 4 needs some explanation -- everyone on the Kentucky Developer's discord submitted games they gave up on making. Get it? They're dead games.
Wednesday, July 2, 2025
Warp Zine 2 Out NOW!
Click here to read Warp Zine Issue 2!
I actually wrote a feature on Vaporwave Battler that got included. But you should check everyone else's stuff out too.
Wednesday, June 18, 2025
The For Loop in GDScript (Or: Why I'm Gonna Hit Someone)
As you can tell from that thick, luscious error message, that ain't it chief. Sooooo, maybe:
But I don't want it to be a node. I want it to be an int. Apparently in GDScript, if you're writing a for loop, the for (variable) is always gonna be a node. Always and forever.
I didn't get a screenshot, but apparently the right answer is:
for i in button_container.get_children():
if i.disabled == false:
i.grab_focus()
But like with tabs that Blogger doesn't eat.
So of course, I immediately stepped on a rake and NEEDED i to be typed. Do you know how to do it?
Other sane languages would let you do i : whatever, but gdscript, you're typing that bad boy inside the loop.
Thanks! I hate it!
Wednesday, June 11, 2025
A Bad Word Filter
One of the last tasks I had to program in for Delia's game was a bad word filter. I taught, I am 100% aware that kids cannot be trusted and have to have that filter. But: what bad words do we include?
I know that older games have bad word filters that have been cracked and are probably sitting around in the open on TCRF, but I didn't even know where to begin to find those. Soooooo I asked on the Kentucky Developer's website, and someone linked me to the Banned Word List. Did you know there's an official bad word list? Had no clue.
I'm gonna link it here, and it's obviously not safe for work, so you're clicking at your own risk: The Banned Word List
Just for good measure, some people put me up on these other two lists, which are also not safe for work, and you are also clicking these links at your own risk: Wikipedia's list of ethnic slurs and Wikipedia's list of common nouns derived from ethic group names. I went through and picked the ones I figured kids would be most likely to use.
Now, if you've read down this far, you're grown enough to know this, but I still need to say it: I'm not providing this information so you have a cool new list of awful things to call people. I'm providing this in case you're ever in the same situation and you need to block words. When I would let kids choose names on Kahoot, to put it politely, they would use something off these lists pretty much every time. Kahoot has a feature where it picks names for the kids. It made them complain, but it also meant that I wasn't displaying the Banned Word List on my projector.
I'm actually not sure how this factors into products for adults, but if you know I'd be interested to hear.
(You know, for whatever reason they'd pick nice names for Blooket. Can't explain that.)















