Two weeks until the release of #Narball. I thought about doing some pre-release influencer marketing, but I don't think I will. They'd just be playing with each other if they could find games at all. Exclusivity is kind of against the ethos of #WorldFabric anyway. I think I'm just gonna stealth drop it and see what happens. I can do streamer outreach after its out, and then they'd be able to play with their fans. I designed a whole new asynchronous event architecture to make sure weak PCs on crappy connections would get the same quality experience as the best hardware, prioritizing elites for release would be incongruous. #indieDev
I have added matchmaking to #Narball. #WorldFabric is decentralized by design, so I'm not running any servers myself, but Steam has a built-in server browser. The game accesses the Steam server list and then scores the available matches client-side to select one. The game includes a DedicatedServer exe in the folder that anyone can run. If you open the port for the Steam server browser, then people who click quick play might join your server. #decentralization #indieDev
I'm hoping people will play #Narball, wonder how it works so well, and that will lead them down the rabbit hole to watching my videos about the technology behind it. I am the rabbit in the rabbit hole. #WorldFabric
I was looking at my #WorldFabric APIs yesterday, and the thought crossed my mind "none of my employers would have allowed me to build this". The answer to why I can build something big companies can't is not that I'm special. It's that their culture doesn't allow spending years to make something nice for developers that doesn't generate revenue.

New World Fabric devlog goes over the interface and rules for the system that automatically networks running C++ code with real examples from Narball. https://www.youtube.com/watch?v=uVlNlhh-mT8

#gamedev #devlog #WorldFabric #Narball #networkprogramming

Automatic Synchronization in Practice with Narball

YouTube
How does #WorldFabric keep players synchronized over the internet with so many moving objects? Trick question: it doesn't! World Fabric only maintains local causal consistency. The further apart players are, the weaker the causal link, and the more wibbly wobbly timey whimey it gets. #Narball #networkprogramming #doctorWho
It gets lost in the algorithms and narwhals sometimes, but #WorldFabric exists to undermine centralized control of the #metaverse. You don't need this technology if you're hosting your game on an expensive server in an optimal data center location, but it levels the playing field when you're not. World Fabric makes it easier for solo developers to create good experiences hosting with triple digit ping, and that's going to matter in the future if we don't want all of our virtual spaces to be corporate hellscapes.
The overhead #WorldFabric adds scales with the number of events, not the number of objects. Every collision is an event, so I could probably push more objects (and keep players connected) if they weren't all smushed together in a constrained area. I think the rendering could handle 100k static instances fine too if the physic wasn't choking the CPU.
#WorldFabric can automatically synchronize arbitrary C++ code over the internet with relativistic latency hiding, and it's now fast and stable enough to handle over a thousand interactable moving objects under real-world network conditions. https://www.youtube.com/watch?v=wazOVYCeuIk #cplusplus #coding #networkprogramming #metaverse
Narball 1,000 balls+6 players online test match

YouTube
Narball by World Fabric

Be a Narwhal. Hit a ball.

itch.io