Oct 21, 2026 · 9 min read
Devlog #2: The laptop shoots, your 401(k) is the economy, and Reddit hates me
Doodle bullets, a UI with fewer boxes, a retirement fund you cash out with a long press, and a sinus infection.
by @truetibo · Day 15 · employee #1 of 1
Hi, it's @truetibo again. Last time ended on "for now all you can do is run away". That is no longer true! You can shoot, collect money, level up and invest in a 401(k). And yeah, it's true, even the Apocalypse has taxes. Here is the new trailer:
The weapon idea, refined
It's not built yet but I've been refining the idea of scriptable weapons:

The laptop is the only weapon. You don't pick up guns, instead you write the code that runs on cores. You will be able to buy snippets from the shop and write them together, two stats of the laptop will limit what you can build: Cores decide how many scripts run at the same . RAM decides how many pieces fit into one script. The different methods will be sync so they dictate the execution speed.
The language is tiny and simple on purpose, it won't be any real one. Just need to be careful of infinite loops, to not freeze the game. Would it be broken? Or? Ah maybe that's a feature. Attacks are called with attack(type), the type is something you buy, and every type takes a fixed amount of time. A call only returns when the attack is done.
That last part matters. If an "every 1s" block contains an attack that takes 1.2 seconds, the block really runs every 1.2 seconds. I'll spend a lot of time on the UX for this one. I was thinking to use code-comments.
There will be Triggers like onKill and onDamaged, and decorators like @split. How they fit next to the sync attacks is still open.
Typing code on a phone is miserable, so it will probably be blocks you drag into slots. I asked people what that should look like on threads and it seems like the more real-code-looking wins:
Doodle bullets, sparks and sound
Bullets are on the human side, so they are drawn, not pixelated. I am using my own doodles. This is the page of pencil sketches:


The bolt is wired in, I added a glow so it looks cool and it face where it flies, on hit it sparks and has it's own sound effect.
Just like in Dota 1 from Warcraft 3, only crits (a red "2!") and misses get text. Coins hop out of the killed robots, you collect them when close. Every hit shakes the camera a little bit, which feels more alive.
Sound. Last time I wrote that there isn't a single sound file in the game. I changed this (all CC from OpenGameArt). The elevator uses: the door by PagDev, the ding by fvcalderan, the metal clang by laleksic (pitched down, it is the cabin stopping) and a bossa nova loop by Joth, classic elevator music. Here they are, as they play in the game:
- Elevator door (PagDev, CC0)download
- Elevator ding (fvcalderan, CC0)download
- Cabin stops (laleksic, CC0)download
- Elevator music (Joth, CC0)download
Everything else is still synthesized scripts by AI. The new ones:
The UI lost its boxes
Like every engineer I started with "way too many borders". This is the most common design flaw of engineers, we have no clue how to design relationships so we use borders. But man that's the worst idea. There are much better ways. We can work with spacing. I also thought it makes more sense to use the handmade/robot clash also in the UI design. So I drew icons for the various stats and added the Annotation Mono font, I removed borders, removed backdrops and used a wiggly yellow underline for the focus. I also removed most colors so the screens now have one clear focal point. Here are my pencil sketches of the stat icons:

Things I tried and threw out: torn paper cards, brush swipes, wobbly outlines, and a marker underline with a little hook. All of them felt like pretending to be hand made.
By the way, if you need inspiration for game UI, Interface In Game is a very cool resource. Highly recommended. So is Dribbble's game HUD search.
Here is the in-round HUD, zoomed in. Health and XP bars lost their outlines and the gap between them, and a green arrow shows up for every pending level up, like in brotato:


The pause menu with stats and scripts:


And the level up screen. Bonuses can have a rarity, COMMON UNCOMMON RARE EPIC LEGENDARY and MYTHIC (just like the cards on deprecation.org), and they get a colored background accordingly (also shown in the trailer). The level ups and the floor menu also happen inside the elevator now, with the music playing.


Everything can be focused to get an explanation tooltip:

The blocks of a script work the same way. This is the "every" block of hello_world explaining itself:

Your 401(k) in an apocalyptic world
I like this one most. The engineer is the last employee in a company that wants him gone, so he can build his retirement while still being employed, maybe coastal-fire later? hahah.
Fun-fact, I've been a frugalist for years myself, saving up to 90% of my salary every month. With the goal to eventually 'retire' and focus fully on building games and stuff. Maybe with your help, I can? Anyhow, back to the game, every run starts with a small 401(k) holding 10 coins. Coins still lying on the floor when a round ends fly into that 401(k). It can compound and pay dividends. Or you can pull the money out early, but then a tax is applied (22%, a real US tax bracket, I checked). Cash out early and you pay for it, like in real life. And taxes, like in real life, are unavoidable, even when machines destroy humanity.
I'm thinking to add tax to more things, let's see. As UX improvement I made it a button that must be hold longer since it's a destructive action.


All numbers are guesses and nothing is playtested properly yet. The numbers are tiny on purpose. The player starts with 5 HP and a robot hit takes 1.
XP jump jump jump
Money = XP. Coins, deposits into the 401(k), its interest, dividends, cash outs, everything counts towards XP. The first level costs 5 coins, then 8, then 13, etc. Every level gives +1 max HP right away and upgrades picked after the floor, in the elevator. Four random cards, a rarity from COMMON up to MYTHIC, and a reroll that costs cash.
A level up needs a celebration. First try = levitate & pivot by squeezing the sprite width. It works. But it doesn't feel right.
So instead I drew more poses for a jump. The code picks the frame by jump progress and adds a blue glow, a ring on the floor and a few sparks. When you clear a floor he does the same jump without the color. I think it looks dope:

The rules I wrote down
While rebuilding the UI I merged some of my designer knowledge into a list as a guide for myself and AI:
- ✎Never play a sound at exactly the same pitch twice. Each play is nudged up or down by a random amount. This feels more alive
- ✎When the same sound plays again within a second, it climbs one semitone for every repeat, up to an octave. Coins climb a full major scale. This adds a sense of progression and excitement.
- ✎Shake the camera a tiny bit for some events like hits, but only slightly and not for everything. This makes the character feel more alive.
- ✎Pickups and hits get small sparkles. All feedback is subtle.
- ✎Everything moves with easing. Nothing goes from 0 to 100 in one frame. This is inspired by old mario bro classics and make movement feel more natural.
Hear the difference. First six shots at one pitch, then with a random nudge:
Rapid hits, flat and climbing:
And a run of coins climbing the scale:
- Eight coins in a rowdownload
And here are some of the UI guides:
- ✎One spacing grid, multiples of 4 and 8 pixels, and everything snaps to it.
- ✎Spacing says what belongs together. Related things sit close, groups get clearly more room. Space instead of separator lines.
- ✎Every screen has one focus and one main action. Nothing else competes with it.
- ✎Two fonts only. Size, weight and color do the rest.
- ✎Information sits where the decision happens. A coin icon next to a number does not need the word "cost".
- ✎Offer presets for common choices and keep fine control available.
- ✎Costly or irreversible actions need a hold, not a tap. That is the 401(k) cash out.
- ✎Keep the title and the key actions in sight, even when a screen scrolls.
Yah there is more, reach out if interested for the full guide. Might share it in a later post
Reddit says no
My last post in the Godot community on Reddit was removed for 'AI' use. A bit funny eh, since my whole game story is both, relying on AI to generate everything that is AI and fighting AI for taking jobs. The art generated comes from Adobe Firefly, which Adobe claims is trained only on licensed and public domain content. The communities rules are '(...) you may only post content that you are the rights-holder of (...) AI-generated content needs to stem from a model which was trained only on data submitted with the original creator's consent. If you cannot prove this to be the case upon request, we remove your post.'. So my content should be safe? Also no one requested, they just removed it.
I find it funny. The same topic got me 103k views on Threads get's a removal on Reddit. Wild how heated the world currently is around this topic.
My worst app ideas are doing numbers
A random sidequest, someone on Threads asked for the worst app ideas. I took over that thread spamming ideas:
The most voted contributions:
- ✎An alarm app that goes off at a random time, and you never know when.
- ✎An app that puts a single hair on your screen. It looks like the hair is on your device and you can't wipe it off.
They got more love than they deserve. Meanwhile my cry for help about rigging the engineer got five replies. Well who knows, maybe someone will actually build it, I'll keep an eye out.
The headache
Another random crap. Short and boring. I have had a recurring migraine, most likely from a sinus infection. It slows me down massively. Some days I get two good hours. So I'm just slower than ever right now.
What a marketing book told me
A few notes from Chris Zukowski's free ebook "60 Game Marketing Mistakes":
- ✎Don't build your following on a platform you don't own. His fix is a mailing list. Check!
- ✎Updates should be about the game, not about what you did this week. My first devlog had a long story section. This one tries to talk more about the game, and then it has a migraine section anyway. Half Check!
- ✎Screenshots should show the real UI. That is why this post is full of them. Check!
- ✎Boring titles like "Dev Log #23" kill clicks. So mine are super long and boring. Check!!
- ✎Calls to action should be a verb and an object. Please "maybe consider following". Lol!
If you like what you see, follow me on Threads @truetibo and subscribe to the newsletter. No spam, written for a human by a human.
