Kosmod Dev

Kosmod Dev

@kosmod.dev

Also known as: luke (he/him) Navigating the swampy mires of desire to perform versus the agony of being seen. Developing kosmod.app, a Web-based Virtual Tabletop for TTRPGs! 🚫 No AI please!

64 followers579 following62 posts

After a bit of finagling, you can now roll Dice in kosmod! I spend a bit of time baking some nice normal maps, and then scribbled on the dice with a pencil. A die is some 3d model with attached metadata, so players can upload all kinds of crazy dice when its all sorted. #gamedev #ttrpg

There's still a quite a bit of work to be done to get them minimally acceptable (getting them to roll properly, fixing the "face detection" code which is a little buggy, making the texture nice to look at) but I'm quite happy with this first pass!

Dice a physically simulated (with Jolt!) on the the client that rolled them, which means less work for the server (yay) but a little more syncing code. How truly random is it? I have no idea! I made some of the die shapes by hand. Until fixed, I just consider it "unfairly weighted in a random way".

Getting distracted by the simple joys of writing a program your own game console. (It doesn't do anything apart from this screen, but, I mean, I _could_ write a small kosmod client for the ds. It's nice knowing I have that power now) #gamedev #3ds #homebrew

Oh my god cutting this hole out of the UI in HTML/CSS land was such a pain. Mostly because I was doing it wrong, but still. I'm happy its over. #gamedev #webdev

"...that way lies madness". My hand runs along the pages of the dusty tome, possibilities flitting through my mind. "What harm could come to me?" I mutter, my fingers reaching towards the SDP. After all, I really know what I am doing.

In Kosmod (even if you aren't using Kosmod as your voice chat for the game) - Minis that you control will react to you speech! For DMs, they will be able to "posses" any NPC on the field to get them to chat, but for players it will just be limited to your own character. #gamedev #ttrpg

One more post for the night - here is a "light" attached to a chara as they walk through some rooms. At the end you can see the GM view, who can always see things despite low vis (the GM is just player0 for now). Pretty jank right now, but I think I'm happy enough with it for now! :D #gamedev

Ooops my input predictor was working too well. It took me a few minute to notice that my feature didn't even exist on the server, the client was just guessing really accurately. #gamedev

Actually, I loved that little debug view that I added it as an explicit tool, letting me toggle between a few of the more data-focused canvas layers that are hard to see, like interior floors + walls, visibility (and vis falloff) and my pathfindable surfaces. #gamedev

Was having some issue with the light visibility generator, and I thought it would be fun to sketch up a quick 2D renderer for the current chunk/canvas data. Kinda funny to see the pathfinding work just fine even though the regular walls aren't physically present. #gamedev

(no lightvis data visible here, just checking that the actual walls and floors are being set correctly by the box tool)

I really need to get my laptop hinge fixed. It's fine otherwise, but it needs support for the screen to stay upwards. I do my best work, I think, on long public transport trips. Something about the moving scenery and the fixed duration of work.

Properly handled Tool Preview sync across multiplayer AND sent an email! Crazy stuff happening here in kosmod

I've implemented a lot of dumb, poorly thought out code but this little "wall painter" cursor feels like the stupidest thing I've made in a while it just feels silly. its like, walking around. like a thwomp im not going to keep it, but maybe it can sit in an unused corner of the code if it behaves

it might be nice for punching out holes in walls though maybe? I'd only want it to stick to existing walls I think then. choices choices.

I've implemented a lot of dumb, poorly thought out code but this little "wall painter" cursor feels like the stupidest thing I've made in a while it just feels silly. its like, walking around. like a thwomp im not going to keep it, but maybe it can sit in an unused corner of the code if it behaves

I've implemented a lot of dumb, poorly thought out code but this little "wall painter" cursor feels like the stupidest thing I've made in a while it just feels silly. its like, walking around. like a thwomp im not going to keep it, but maybe it can sit in an unused corner of the code if it behaves

the code just came to me, in a vision. or maybe a nightmare ``` position.rotateAround(new three.Vector2(), Math.PI * 0.25) position.multiplyScalar(Math.sqrt(2)); position.round() position.multiplyScalar(1/Math.sqrt(2)); position.rotateAround(new three.Vector2(), Math.PI * -0.25) ```

Whenever I need to do something bezier/spline related I go to the @freya.bsky.social videos, which grant me a 300% buff to curvy math, but only for 7 days. after which the buff slowly wears out and I am just left with the algernonian feeling of once having known the secrets of the universe.

Playing around with "loosly packed rock wall". I'm having quite a bit of fun trying to decide what I like! Feels like playing the beginner tutorial a few times to get a feel for the process. #gamedev

brick wall texture! it actually somewhat resembles what i wanted when I started! every now and then the project feels a little bit closer to being a realistic achievement (and i get a little more practice with some new skills)

nothing better than surfacing from the api mines to have it all plug into the frontend and work first go. like watching a rube goldberg machine made of 100 "that will probably work" sentences. (now to poke the edge cases and see it all topple over and flatten me looney-tunes style)

Re-doing visuals for my tiny 2-minute dev short. I somehow think I spent too much and not enough time on this little interactive diagram. It's mean to illustrate the essence of the ~modulus~ (aka the remainder of a fraction) to loop in a range, which I'm using for a graphical effect. #gamedev

I'm ??hoping?? as I make more of these they get more polished as I reuse and update the core interactive elements.

Just finished up a little bit of pathfinding behavior, and decided to treat myself to give moved minis a bit of a "walk" animation. (I don't think they're landing on the grid squares correctly though...) #gamedev

Luke "anything-but-post-devblog-content" kosmod has just gone for a walk to reward himself for some code well refactored.

A habit I am trying to kick is hesitating posting proper WIP stuff. That's what a devblog is for! Posting all the ugly in-between placeholder art and debug lines. I'm easing my way into that. This is a little logo piece I spent a few hours sketching together and rendering in blender! #gamedev

(I get good "wowow im so skilled look what i made" ego boost mileage out of this one, since blender raytracing makes it all seem so sophisticated and nobody is exposed to my horrible UV/texturing work)

I also want to do voice-over video content... I bought a mic for it and recorded a video, but its still so scuffed that I haven't had the courage to post it yet. #gamedev

In addition to a dev blog, this will also be a cat page because Tulip here refuses to not be involved in The Work. (Where involved means executing a hitherto yet undiscovered workflow-destroying keyboard shortcut, and then nuzzling the author to gain pets)

The goal is to see and experience as many creative projects and wonders as possible on this site to be inspired But Not become immobilized by imposter syndrome working on my own project

You are up to date.