Angel Munoz

@tunaxor.me

One of the 12 #fsharp devs in the world, trying out kotlin and #buildinginpublic fun, I started this journey around 2013. https://linktr.ee/angel_d_munoz Other social media, not an OF 😆 Mexican, so spanish sometimes

I'm always conscious that I know no shit but looking at these water hungry encyclopedias showing me how much behind to what I'd expect me to be is humbling sometimes

LLMs are something. sometimes they'll debug and find things I would take shit ton of time and I get impressed Some other days they miss so much basic cues that "they get impressed" by me doing simple discard methodical approaches As if they expected my approach to not work at all

Having to make changes on the framework (because they're actual gaps) Any time I find them on the game I want to actually work is so tiring. I want to work on the game not in the internals. But I own the internals so no one else will come to do it 😅

And I thought I was using culled instancing for the terrain; turns out I was not! I still have that instancing work on the shelf waiting but all in all, it was quite interesting to the clanker go on and profile the app for me, bring data and optimize based on that.

Bild

Not a lot today, but progress is progress, need to wire up data. The GUI are Myra components aaand I still need to wire up actual data to them

Bild

Happy to announce Octane – the successor to Inferno. React’s programming model, compiled. Hooks, Suspense and Actions, compiled ahead of time. No virtual DOM. No Rules of Hooks. No manually maintained dependency arrays. The compiler understands what your code. octanejs.dev

// Counter.tsrx — hooks next to output, no rules of hooks
import { useState, useEffect } from 'octane';

export function Counter(props) @{
	const [count, setCount] = useState(0);

	// A hook behind a condition is fine — slots are
	// assigned by call site, not call order.
	if (!props.paused) {
		useEffect(() => {
			console.log('count is now', count);
		}); // the compiler infers [count]
	}

	<button onClick={() => setCount(count + 1)}>{'Count: ' + count}</button>
}

I released Mibo 4.0.0-beta-001 (rather than 3.3.0) Because it has behavioral breaking changes (code should not break) We have now lights and shadows per-camera rather than a frame-based collection. This allows for "multi-room" setups #dotnet #fsharp #monogame

I'm kind of glad that I'm not becoming dumber, just losing muscle memory. "Hey Kimi the problem this is a matrix problem, we're not using the correct ones, there's quirks between System.Numerics.* types and Raylib, use Raymath.* to create matrices instead" *Goes AFK*

Speaking of low-quality clanker games Added a simple skybox, a water shader And finally, particles, I finally added some of the original Kipo's skills they're not tuned to look visually good but they're there. Moving onto the spawning system and AI decision trees #monogame #dotnet #fsharp

Angel Munoz@tunaxor.me · 2w ago

The little one grabbed the other controller to help me record. It's easier to see the intended mechanics when I'm not struggling to use two controllers at the same time 😂 I want to finish up particles already this will look much more appealing #dotnet #fsharp #monogame #gamedev

"DX11 also works — only OpenGL crashes. I decompiled MonoGame 3.8.5's GL ConstantBuffer and built a reflection probe that dumps each effect's parameter table vs. its GL constant-buffer sizes." Thanks Kimi but I just wanted to know if it crashed as well

While my Kimi sub is on cooldown I went back Mibo to add per-group instancing shader application. Still working on some details but this will allow for rendering terrain with instanced techniques yet allowing water, lava, etc. models to use a particular shader of their liking #fsharp #dotnet

The little one grabbed the other controller to help me record. It's easier to see the intended mechanics when I'm not struggling to use two controllers at the same time 😂 I want to finish up particles already this will look much more appealing #dotnet #fsharp #monogame #gamedev

Following up a few days later, the combat engine is already there, a little bit more of animations hooked up. Still using placeholders but everything sailing good. Particles, Items/Inventory, spawning mechanics, AI, UI/Hud, Polish and I'll be back on track where I left Kipo

Angel Munoz@tunaxor.me · 2w ago

Can't complain about Kimi K3. We've been implementing a plan for a rewrite of one of my initial games phase by phase, step by step, not just "make a game no mistakes" that seems to be quite popular atm. Still on phase 2 (there were like 20 phase 1's 😂) #dotnet #fsharp #monogame

Me: No Kimi, the bug is only when you kill the dummies. Tou now what if you were right if we remove the dummies from the initial spawn they would be broken and they were not before! And the damn clanker was right 😭

Can't complain about Kimi K3. We've been implementing a plan for a rewrite of one of my initial games phase by phase, step by step, not just "make a game no mistakes" that seems to be quite popular atm. Still on phase 2 (there were like 20 phase 1's 😂) #dotnet #fsharp #monogame

Today I used Kimi K3 with my 99USD sub, my weekly usage is at 33% (since friday) and @pidotdev said this: ↑4.6M ↓326k R74M CH100.0% $40.789 ?/1.0M (auto) I'm guessing this is API pricing but in any case I think Friday and Saturday sessions (if I tracked them with PI) would have been around $40 each

Current Saturday Night state: "The user is drunk and wants the results super concise, focused on throughput/time savings, not memory. Give the bottom line plainly. Keep it very short, no jargon overload. Time ratios only."

Ah so moving mibo to monogame 3.8.5 does that mean mibo gets a performant PBR/Shadows implementation? and then I thought I was going to touch grass this weekend

Since Kipo was the only raw MG game I had, it was a good candidate to test on. Adding the Vulkan target was as smooth as simply adding a new project. Kudos on the new release