Open source Minnesotan, making Veridian Expanse (@VeridianExpanse). I made the Chipmunk2D physics engine, and some other fun libraries. By day, I do a lot of game adjacent work like therapeutic VR, real time drone mapping, and math for heavy machinery. Profile picture is me wearing headphones with a cat laying across my shoulders.
Public Key
npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h Profile Code
nprofile1qqs2j8dpf7lhzalwpukt0z4rl9qkn0lkkmpuvyszh4xaxzrkflpkryqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqs6amnwvaz7tmwdaejumr0dssl337q
Show more details
Published at
2026-07-04T05:26:47Z Event JSON
{
"id": "ca0f58ca0cd0df5bc5e544e587204a7f7b3b3a51feb83188583335c18ab4041a" ,
"pubkey": "a91da14fbf7177ee0f2cb78aa3f94169bff6b6c3c61202bd4dd308764fc36190" ,
"created_at": 1783142807 ,
"kind": 0 ,
"tags": [
[
"proxy",
"https://mastodon.gamedev.place/users/slembcke",
"activitypub"
],
[
"client",
"Mostr",
"31990:6be38f8c63df7dbf84db7ec4a6e6fbbd8d19dca3b980efad18585c46f04b26f9:mostr",
"wss://relay.ditto.pub"
]
],
"content": "{\"name\":\"slembcke\",\"about\":\"Open source Minnesotan, making Veridian Expanse (@VeridianExpanse). I made the Chipmunk2D physics engine, and some other fun libraries. By day, I do a lot of game adjacent work like therapeutic VR, real time drone mapping, and math for heavy machinery.\\n\\nProfile picture is me wearing headphones with a cat laying across my shoulders.\",\"picture\":\"https://cdn.masto.host/mastodongamedevplace/accounts/avatars/108/197/023/728/311/825/original/6ffff4a8bdfc2893.jpeg\",\"banner\":\"https://cdn.masto.host/mastodongamedevplace/accounts/headers/108/197/023/728/311/825/original/d5fb844ccf3197e3.png\",\"nip05\":\"[email protected] \",\"fields\":[[\"Veridian Expanse\",\"https://store.steampowered.com/app/2137670/Veridian_Expanse/\"],[\"Homepage\",\"https://slembcke.net\"],[\"Codeberg\",\"https://codeberg.org/slembcke/\"]]}" ,
"sig": "aa62cdf6aa708a2a567106f93216d59f22ec48598781f13f0c7b67b1c3db7843c964ce785521305ca550547b65e1486786489263beaab2f90d3752a792ec59de"
}
Last Notes npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Uff. One of the contracts we are working on is an educational game for a farming organization. I spent the last 30 minutes looking for for something we could throw in for flavor text on pig farming. It's all... kinda horrible, and instead of finding usable flavor text my only takeaway is that I should again consider how to eat (much) less meat. Ugh. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Agh! What?! One of the main plot points I put into Veridian Expanse, one that I thought was actually kind of clever and slightly original is in Subnautica 2. -_- I mean not verbatim, there are differences, but it's significantly similar. AUGH! Everything is a remix or whatever. 😕 npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…wxqs This looks great! npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…pfyz I’ve also been having a “fun” few months. :-/ Solidarity I guess? npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…pfyz Yeah, kinda fair. I should maybe sell it more as a crafting exploration game, with twin stick elements than the other way around. Maybe like how Metroid Prime is a metroidvania with FPS elements. If you sell it on the FPS alone people are gonna be disappointed… It does pick up more in later biomes, but is collecting/crafting heavy to start. What’s the “blue filter”?? npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…h0jy That whhat I’ve been told. The demo is mostly for streamers, not regular users being enticed. No idea if it’s true, but I feel obligated to try it. (sigh) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…h0jy I used to hear that about demos in general years ago. Something about how people are slightly less critical of things they paid for to avoid judging their decision to pay for it. Honestly kinda lines up with my experience of trying to sell very cheap software on app stores vs the higher prices we used to be able to charge for shareware. Though admittedly the situation is a bit more complicated. Now “everyone” says you must have a demo just to be visible. Possibly also made up. 🤷 npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Augh! Sometimes friggin' Steam is the worst to deal with as a developer. Don't forget to do this if you put a demo on Steam or it will add a tiny blue button hidden in the sidebar that no-one will notice. -_- Like why is it even an option to do that?! https://www.reddit.com/r/IndieDev/comments/1epqhbh/how_to_fix_the_tiny_download_pc_demo_button_on/ npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…m4he Hmm. That makes sense. At least tell them when the demo is basically done letting them progress, though let them keep playing if they want to. Yeah, the portraits are all either cropped concept art or royalty free clipart placeholders. The "crashed ship" is also made by me, and is the saddest. >_< npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…9whj So indies are already pretty allergic to DRM, which ultimately means not worrying about piracy too much. Hard to imagine pirates getting too excited about the source code when they have the binary anyway. So I just include the source code with the game's resources so there will always be a way to get it running on something new (or old). Also, maybe someone will benefit from seeing how I made something too. Who knows. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Except for my placeholders, the pixel art is mostly made by @nprofile…wz68, and the audio by Robert Frost III. Written from scratch in C, but uses a lot of libraries. Has minimal renderers for Vulkan, GL, and Metal. I'm actually pretty proud of my lighting system. I made it for a past project but went all in this time. It renders a 2D lightfield as coefficients in an MRT, soft shadows and all. It's efficient enough to run on a Pi 4 or 5. I've written a lot of this up on my blog as well. :) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Ok Fedi friends. This is my game's demo that I've been (mostly) solo dev-ing. Playable in your browser this moment. (the thread has a download with source code too!) I'm kind of looking for feedback if it's a good demo or not before launching it on Steam. It's a crafting game, and the demo caps the available materials. I worry that it will lead players to grind instead and end the demo on a sour note. It also still has some placeholder elements. Is that a turnoff? Boosts appreciated. :D npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke So here's a bizarre microcosm. Minnesotans are suddenly hanging a lot of flags. Not because of solidarity with all the ICE action lately, but because we got a new flag design a couple years ago. People who *never* cared to hang the state flag before are suddenly doing it just because "the old one was fine". I just... lol. It's such a dumb manufactured culture war. A bunch of cities (including mine) passed a resolution to use the old flag even: https://kstp.com/kstp-news/local-news/inver-grove-heights-is-latest-city-to-consider-switching-back-to-1983-minnesota-state-flag/ #minnesota https://cdn.masto.host/mastodongamedevplace/media_attachments/files/116/511/761/749/167/178/original/982465a29eeccdf8.png https://cdn.masto.host/mastodongamedevplace/media_attachments/files/116/511/768/286/164/429/original/94267c3decd8bcfa.png npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…hm63 Well, yes but also no. I use them all the time for “cold” lists that get iterated once or rarely, or advance one item and then wait. You can also mitigate a lot of that sticking the nodes in a fairly compact array and linking them with indexes. I think it was @nprofile…vzdm that recently pointed out you can even just iterate those in array order in many cases when you don’t care about ordering. (Ex: need to increment every item in an otherwise ordered list) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…tsev Your Lizard is the lizzard as seen at Midwest Gaming Classic. https://cdn.masto.host/mastodongamedevplace/media_attachments/files/116/466/995/338/669/176/original/e1d64f007bf9c614.jpeg npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…pfyz Yeah, you need to do it incrementally or disable the PPU. If you are clearing the screen that’s sort of best case anyway since you probably want the screen to go black anyway? npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…ffj8 Nuklear worked great in my C projects at the time. :) It was exactly what I needed. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke As people talk their sad tax returns, I actually got a big one. BUT The joke is on me as I made so little money, they had to give me *all* of my est taxes back. The biggest client we were trying to get was the VA for mental health software, and the DOGE bros fired everyone we knew there. Then Unity stuck us with a $20K bill we couldn't refuse, on top of the months of unpaid work we accumulated. The little I did make paid for my surgery, fixing my car, and water heater. Wee! USA! USA! Winning! npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…f7hl So as the player sees things it fills in the visibility texture. Now you sort of have two visibility values. The visibility map shows you if you've seen it ever (Hot Brass drew it as greyed out IIRC), and the shadow mask shows you what you can see right now. They tagged different elements for different visibility. So the base map and furniture and such is shown by the fog of war map. Enemies and destruction (ex: broken windows, other tactical hints) where only shown when in LoS. 2/2 npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…f7hl So you start out with a relatively big texture stretched over the entire map, I think that game used a 2048x2048 texture, but just whatever is "good enough" right? It only needs to be a single channel. Then each frame, draw a final visibility mask into the destination alpha for the player after drawing all the lights. Now take that shadow mask and use the camera's position to project it onto the visibility texture using the max() blend mode. 1/ npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…ffj8 Neat! I use pl_mpeg for an attract mode in my game at conventions. I’ll have to check this out next time. :) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…f7hl Also, some ideas your could maybe borrow. This game used my old SFSS code for Unity, and they had a bunch of fun visibility effects they hired me to implement for them: https://store.steampowered.com/app/892860/Hot_Brass/ For instance, after rendering the final light, I rendered one last shadow map into the destination alpha to use for the player's line of sight. This was used to mask out hidden, but was also max() blended with a fog of war map to expose the map as it was first seen. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…f7hl Is this for Project Ob? I tried the demo on your blog. The description and article mentioned a green/orange orb depicting the balance state of your attacks, but I couldn't see anything in the game change? Otherwise seems like a good start though. I like the stealth premise for it. I'm not sold on the tank style controls (vs up/down/left/right), but I guess I get that it's part of your intention to slow the player down and make them more careful maybe. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…f7hl Thanks! I appreciate that a lot. I kinda appreciate it even more that you told me on fedi that they read my blog. :D (Not that I'm really anywhere else anymore...) Also, years later, I still need to finish the final article on light field shadows that I've been promising. 😅 npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…9whj @nprofile…5qzs So I will say that getting people to download a pre-release demo of your game from Itch is like pulling teeth. "Where? Never heard of it... Weird name... Maybe later." Steam removes some of that friction because it's easier, integrated, etc or maybe they just think it's safer? I dunno. I just have this nagging feeling that a web demo fits into some niche where the barrier to entry is even lower, but you *have* to convent those people into wishlists ultimately. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…9whj @nprofile…5qzs IMO it's a Steam phenomenon. Steam made it a feature, links it pretty well to your game's main page, and gives you a bunch of analytics I guess. Then they do the Next Fest and promote demos themselves. I mean... I should totally be doing that instead of faffing about with web tech. I just wanted an excuse to play around to see if the WASM tooling had gotten any better. (Kinda mostly) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Gamedev Fedi: I've been thinking about how I need a *real* demo of @nprofile…5qzs to put on Steam in order to market the game. Instead of doing that I putzed around and made a web build instead. (By which I mean a dev build for WASM, not an actual player focused demo yet) Is this a dead end? Should I just be focusing on a Steam Demo? Ultimately I'm hoping to sell more copies, not have people play it on my website and say "Oh for neat!" Secret-ish (very rough ) build here: https://veridianexpanse.com/demo.html npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…pfyz Related: Did you see my programming language that I ported to NES? https://www.slembcke.net/nes/Slorth/ One of the items on my TODO list is to make a virtual keyboard so I can *painstakingly* enter text on my real NES and not just emulating some rare Japanese keyboard peripheral in Mesen. Eh? Eh? Slorth is the most useless piece of software I've ever written, and I *love* it for that. :D https://cdn.masto.host/mastodongamedevplace/media_attachments/files/116/388/299/035/566/444/original/b40cd06ae7e03367.png npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…pfyz “tileset” haha. The NES needs more text based games. :) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke So WebGL calls the "default framebuffer" the drawing buffer. https://registry.khronos.org/webgl/specs/latest/1.0/#THE_DRAWING_BUFFER The answer is to call context.drawingBufferStorage() with an sRGB format. BUT... the reason this was so hard to find maybe is that FireFox and Safari don't bother to implement this part of the spec despite it being in WebGL1.0. :( So it seems the answer really is to insert a worthless shader pass that implements this by hand. Blegh. Is having sRGB framebuffers not considered fundamental in 20XX?! npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Graphics Mastodon: Is it possible to have an sRGB default framebuffer in WebGL2? (Replacement for glEnable(GL_FRAMEBUFFER_SRGB)) I'm seeing a references that you can have sRGB framebuffer objects in WebGL2. BUT then a lot of discussions that the default framebuffer is always linear, and you must render offscreen and blit. Which... Blegh. It's super unclear though. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…vzdm Oh for sure. I just mean it’s never occurred to me I could use that particular data structure that way. I often use swap-last deletes for arrays when I don’t care about ordering at all. Feels like this fits into a particular niche (when ordering sometimes matters) I just hadn’t considered before. :) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…vzdm Yeah, I guess I do reach for those a lot, especially for queues and such. Never occurred to me that you could process them out of order if you wanted to avoid traversing the list… npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…hm63 @nprofile…w2cy Wait… does this actually work? The dialation response really isn’t linked between eyes? I need to remember to test this when it gets darker… npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Weird scam I haven't seen before: fake ransomware email. Basically saying they totally hacked me and have naughty video evidence. If I don't pay them in bitcoin I'll be embarrassed. Like that's all you got? In retrospect I'm surprised this scare tactic nonsense isn't more of a thing. Like I've totally gotten the "you did your taxes wrong and the police are on their way to arrest you" robo calls before. Makes no sense whatsoever and is just preying on fear and immediate reactions. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…vzdm Very much the energy of "Please don't make mistakes, add bugs, or do anything illegal" lol npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Oh, looooool. https://github.com/pusewicz/tacticaltwo-game/pull/1 Copilot referencing one of my blog posts about using serializable stackless coroutines and arguably missing the whole point. The guy driving doesn't seem to get it either. Like they literally copy pasted my post into the pull request to ask Copilot "did you do this?" >_< The replaced code was some simple function with some ifs in it, and it replaced *that* with a bunch of coroutines with infinite waits? lol no npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke The Rise, Fall, and Return of Dark Castle https://www.youtube.com/watch?v=j9QEe3xwHTA You can get a new version of Return to Dark Castle on Steam too, which has been re-written for the umpteenth time in... Unity?!? npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…8hq9 https://m.youtube.com/watch?v=rQDeU6dHX-c npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…fnex Also, weird detail no-one asked for: Apparently when they shower she likes to jump in and lay there in the warm water. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke My neighbors’ cat has murder in its eyes! (Watch the pupils.) Fun fact, pupil dilation is actually affected by a number of neurological signals and not just “how much light”. This seems like a pretty cut and dried case of sympathetic nervous system activation (basically fight-or-flight), but dialation can also correlate with concentration or processing emotions. https://cdn.masto.host/mastodongamedevplace/media_attachments/files/116/291/359/614/544/476/original/38deab89518b09dc.mp4 npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…kudx I'm like 80% certain I'll probably end up doing that if we are able to keep using it honestly. The code seems pretty approachable. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke All this from an engine that doesn't have a yearly license that costs more than my car, or all the computers I own combined. Nor is it made by a company that will further change that deal whenever their investors feel like it. >_> npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke I think we've all but made up our minds to use Godot for our next VR contract. I was looking into light mapping and other rendering quality features today. Even as a light mapping noob, I was able to produce some pretty satisfactory results. Maybe my only complaint is that the only way I could figure out to enable ASF was at runtime via a script. (?!) Even on my 10 year old work PC with a RX590 it held a steady 144 hz in VR. https://cdn.masto.host/mastodongamedevplace/media_attachments/files/116/281/152/227/686/370/original/0dc492590a6769df.jpg npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Was recently on a podcast talking about Gamedev and @nprofile…5qzs https://bsky.app/profile/thefandomfoundry.bsky.social/post/3mh2qc5g3rs2b npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…dpmv As someone who has written a bunch of open source, that’s had my website knocked offline because of the relentless crawlers attacking my free support forum, I struggle to see how people are ok with this. I kinda don’t care if “but it works!” when they are stealing everything we’ve ever done, making us pay for their crawlers, and selling it all back to us for thousands of dollars a year. -_- npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…rhdc The addressing basically wraps around left to right and top to bottom (with some quirks on the vertical). You get enough VRAM for two screens worth of tiles, and there's just a pin that specifies if they are laid out vertically or horizontally. That's why some games had mild glitches at the screen edges when doing 4 way scrolling. If you use the vertical layout for example, then there are no offscreen tiles to swap when scrolling left and right. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…kudx The ones on the flight controllers for my RC planes are surprisingly accurate. Like it needs a lot of filtering, but it can easily detect decimeter changes in altitude in a fraction of a second. I was blown away first time I tried setting up altitude hold, and that was a decade ago. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…x39w Oh! I think I had that same one. I remember the Telegraph key and the speaker with the wireframe 3D! :D npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…zgqa Speaking from personal experience the more effort you put into supporting some bit of open source you release, the more drama it invites. It’s kind of soul crushing . :-/ npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…ntn6 I got grumpy a few months ago and did this: https://github.com/slembcke/Chipmunk2D/blob/master/PROJECT_HAS_MOVED.md Still a lot of older projects to move yet though. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…le0y I still shake my head when I think about how the ROMs they ship on their mini consoles have headers on them that basically prove they downloaded them from the internet. /facepalm If you need some non-pirate, open source homebrew games to load up -> https://www.slembcke.net/nes/ :D npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…ml9f whew! That was a close one! ;) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…ntn6 Yah. I’m kind of annoyed that VSCode has seemed “basically done” for a few years now and the updates have only been adding bugs AFAICT. -_- npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…ml9f Wait… Is that Farenhiet or Celcius‽ npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…fr89 if you are going to try just one total conversion mod, try Marathon Rubicon. Feels like it could have been Marathon 4. it’s amazing. https://www.marathonrubicon.com/ npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…rhdc Hrm. Still not for me. It feels like it was built for mobile only. I guess you are right though that I don't lack options, I just need to try some of them again. https://elk.zone feels like it's evolved quite a bit since the last time I tried it though, as has Tuba as a native GTK client. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke It has been 0 days since I misused the Mastodon web UI to write a regular post when I meant to reply. -_- I will continue to make this mistake every few months until they stop trying to repurpose the post entry field for both. -_- npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…s0r5 As someone that writes "game engines" this elicits a hard eye roll. People often make game engines out to be rocket science and yet they are often exercises in restraint or simply doing less. This is the polar opposite. Someone polishing a turd and then patting themselves on the back by comparing it to something they seem to not understand. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…h0jy Right. GitHub used to be a friend to open source. I don't think there was reason to doubt their intentions 10 years ago. This would just straight up be walking into the Lion's mouth fully aware. (shakes head) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke https://www.reuters.com/business/openai-is-developing-alternative-microsofts-github-information-reports-2026-03-03/ If your immediate reaction is “WTF! OpenAI is just doing that so developers will just give them training data directly” Remember that GitHub is run by Microsoft’s CoreAI division. >_> npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…juxj Huh… I often use that in various languages to save a bit out typing when dx or dy are calculated values. I assumed it was just a shortcut… npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…a2ht I once went to a presentation at a psychology symposium by Dr. Juliane Hellhammer. I subconsciously kept waiting for the mad science part of the talk to start. >_> npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…ng8x I dunno how seriously to take this, but it’s the second times I’ve seen it. Very disturbing. Is it a hoax? Is it “true believers”? Is it sarcasm? Uff. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke The really crazy thing is that this medical sensor stuff costs many times more than my car when it was new 20 years ago. >_> I'm pretty confident there isn't anything we couldn't do ourselves with a few dollars worth of microcontrollers and some python but "FDA approved" or whatever. Is there any question why healthcare costs so much. Blegh. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Uff looking into biosignal sampling hardware. Multiple vendors so far have told us that if we want to get an external event or signal into their software we need to hook up something like an Arduino to output a signal into their device. Basically like hooking the line out into the line in to record system audio of the same machine. >_< I can't believe real-time anything isn't a use case for people trying to work with bio signals. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…qlhw Huh... Fascinating. I had never even considered that. Now I'm trying to think about how you'd solve something like that if it wasn't a pure delay, but more of an impulse response. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…ml9f You know I was a little surprised it wasn’t in Norwegian for a hot second before thinking, “Oooooh… the audience for this video probably isn’t Norwegians. Norway doesn’t have a huge tech industry, this is probably for everyone *else*.” npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…wgz8 There are a bunch of local folks here in Minnesota that worked on that. I didn't know that Brock did specifically, but I wouldn't be surprised at all. :) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke I worked with this artist for the Global Game Jam this year. He did the fake cartridge art for this for example: https://www.slembcke.net/nes/TrashBandits/ This is his portfolio: https://brockbrown.art/category/portfolio/ I could look up some Steam Games he did store art for if you want. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…xdmx I usually drag my feet putting mine away until mid summer just to be sure. >_< npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…kudx Oh, I hadn't even considered the difference in road sided-ness. That has to be an extra layer of weird. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…fnex @nprofile…kudx Sometimes, though most of the automatic cars I’ve driven have a shifter lever that sticks out of the steering column. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…kudx Does your right hand keep grabbing for a shifter that doesn’t exist? Too? npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…vzdm Sometimes I need to write some debug code to run once. I just implement a quick “if(button()){do thing}”, hotload, click it once, and delete it. :) Also super useful for printf debugging something in realtime, or adding debugging drawing on the fly. :D npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke So I’m 100% sure it’s AI slop now. We have since gotten a few “I asked AI your question” followed by a whole word salad with emoji headers pasted after it. -_- npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke I suspect this document I'm supposed to help review was written using AI. I tried to follow some of the articles it references and I immediately found the citations to have errors. (The majority of them in fact) Like some of the papers exist and are relevant, but have a completely random link attributed to them. A quarter of them seem to not exist at all. This doesn't feel like a coincidence, and I'm kind of annoyed. -_- npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…5h35 Oh! Also I finally played this and Glider now that I have a working //e with a mouse and a A2Pico card. It's very well done. :) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…5h35 An interesting read. For all the time I've spent on A2's, I've never actually done high res graphics. Though this does remind me of the fast divide by 16 bit 240 code I wrote for NES scrolling. https://github.com/slembcke/GGJ-NES-template/blob/GGJ2X/ext/pixler/lib/nmi.s#L15 Similar to the divide by 9 trick with base 10 numbers. I _think_ to divide an 8 bit number by 7 comes down to a couple shifts, and add, and a branch/inc. Though a 256 entry table isn't that big I guess. (shrug) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…9ll8 I’ve been too busy playing with my //e’s lately. I should actually read up and figure out how to get on globaltalk this year… npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Huh.. TIL where the "bss" segment comes from: https://en.wikipedia.org/wiki/.bss I mean I always assumed it was some historical non-sense, but fun to know. :) (mentioned from the 64KB shooter video people have been sharing: https://www.youtube.com/watch?v=qht68vFaa1M) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…c3jx Oh damn. They pulled a GitHub. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…kna2 Have I been shoveling snow with the wrong shoes this whole time‽ npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…zgqa I mean technically yes, but the color mode is impossible to read. >_< npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…68wj was that the one with the bone polishing doctor making the monument? I thought that one was a little odd… though I thought that was the second one tbh. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…x6gt Yeah, that’s a fair description. I think it was built up from a concise asm implementation and grew its syntax from that. Lisp maybe went the other way starting with a simple syntax. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke No thanks! though please do tell me how you got my email address... I wonder if it's because I had to make an Occulus account to get their version of RenderDoc years ago. https://cdn.masto.host/mastodongamedevplace/media_attachments/files/116/053/379/220/480/741/original/16ec34e8ca5a759a.png npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…68wj Oh gosh… That sounds as awful to watch as it is on point. >_> npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…yrjr On a more serious note, I kinda really want to stick this into @nprofile…5qzs as a weird easter egg. Put a random object in a corner of the world you can connect to like a terminal and read some story screens. Except actually make it run in SLORTH with some silly programming puzzle hidden in it. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…yrjr It has very similar gameplay and story line to the built in BASIC game I suppose. ;) npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Porting SLORTH!, my toy Forth-like language to the Commodore 64 went way smoother than I expected. Got a minimum viable port up and running in a evening. Not too bad! :) #c64 #retrocomputing https://cdn.masto.host/mastodongamedevplace/media_attachments/files/116/027/622/514/482/156/original/af774365f3d90139.png npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…xrdj Yah… reduced by like ~20% is not so much of a win. :-/ npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…kna2 Is it degrading faster than traditional search is the bigger question perhaps. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Ooooh, wait. I can just redefine the character set on the C64 can't I. I did check out the VICE emulator. On a Lark, I tried launching it directly with whatever file format CC65 outputs by default as an argument, and it just worked! That should make for a nice template to start from for a pure asm version. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke With the Apple // and NES ports of my toy language SLORTH! working well, I was thinking about C64 and Atari 800 versions. AFAICT, neither of those support regular normal ASCII without a bunch of extra effort. >_< Lower case?! Psh! I thought maybe I could dive right into new platforms, but I might need to do some research first. I have a broken C64 in my basement that's never been powered on. I did have an Atari 800 as a kid in the 90's, but don't remember much about it. Certainly no asm... npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…qrkj One feature I think I'm not willing to give up is the USB (3.1) hub. I usually have 2 or more things plugged into it. Seems like that rules out ~99% of keyboards available today which is dumb because it should only add like $20. Used to be a pretty standard premium feature IMO. Now they all seem to be going wireless instead which is honestly an anti-feature to me. Why would I want a battery in a device that never moves?! npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…5y0h I stole the keyboard from my work computer downstairs as a replacement. 20+ year old keyboard from my G5. Still works great, and was never stupidly expensive. -_- npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…qrkj *Sigh* Yeah. Trying to decide what's more dumb: not fixing it, or paying more than 2 nice keyboards worth to fix it. -_- npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke Almost $150 to get a replacement PCB for my System 76 Launch keyboard. :-/ After some searching, it looks like multiple others have had the same failure, and it comes down to some tiny overcurrent detection chips. I’m ~70% certain in my hot air soldering skills, but 10% certain in my ability to find replacement parts. Sigh… I’ll probably just pay for the PCB… This is turning out to be an extremely expensive keyboard. $450 and counting. npub14yw6znalw9m7urevk792872pdxllddkrccfq902d6vy8vn7rvxgqzvdp3h slembcke @nprofile…zgqa Rad-on (clap clap), Rad-off (clap clap)