blake.earth

Enchantments are ways for Homegrown players to further interact with models they build. Put simply, players can use a basic visual scripting system to give their models life and help them interact with the world. (Homegrown is a work in progress and is not at all ready for players, but I've been working on it for a while now.)

Each enchantment has a “root condition” that causes the enchantment to work. These conditions are split into triggers and gates. Triggers are conditions in the in-game world that players might want their models to observe: it's nighttime or daytime, it's sunny or rainy, a player just pressed a key, a player just said a special phrase in the chat, a model announced something (this works something like a function call), or something else. Gates are conditions that are true or false based on the states of other conditions. They are logic gates, and for now the game has three of them: And, Or, and Nand. Each gate can have any number of inputs.

Read more...

Homegrown is a multiplayer game in which players grow and build up their own small islands, accepting other players as visitors. Players can open up shops to trade their goods and add behaviors to animate their in-game models and make them interactive.

Rarely do motivation and free time align as a student, so I'm taking development slowly but surely. A lot of the groundwork for these systems is already laid. As of now, I have accounts management, server connections, models (i.e. block placement, removal and selection), syncing of models, syncing of multiplayer player movements, and world and inventory saving. Frustratingly, not much of this is worth showing off to friends and family; it's hard to see the work I've done on the surface level. The game isn't a game yet but a collection of conversing, interactive systems.

Read more...

A rambling discussion of online communities, from Facebook and Discord to an ideal of the entire web as a community and the Fediverse as our burgeoning compromise

Companies like Facebook and Discord, who provide very centralized, siloed community-building services, might claim “decentralized community” is an oxymoron. They'd argue that centralization is necessary for a community, that the very definition of a community is a single place where people come together to share ideas and keep in touch.

Indeed, both websites have a rules page about their respective “communities”. (Facebook's here and Discord's here. Facebook proclaims on the first line: “Every day, people come to Facebook to share their stories, see the world through the eyes of others, and connect with friends and causes,” and this frames Facebook as a massive community (containing many smaller ones, also locked to the platform).

Read more...

In an early cloudy August afternoon, my family and I walked to the tip of Great Diamond Island, where we’re staying for a few days. At high tide, Little Diamond Island is visible across a stretch of blue-green water, with just the thin ends of grass blades breaking the surface. But when we arrived at the shore, low tide was just an hour past.

Between late-1800s-era houses, flowing grass and bright wildflowers, we approached the narrow, muddy sandbar connecting the two islands. Cross-island joggers passed us as we strolled along the sandbar, our voices loud and our eyes turned down. The mud was laden with snail shells, clam shells, and barnacle-covered rocks and bricks. We chatted over little fish (were they minnows or tadpoles?) darting around in tide pools. We were probably all wrong; both only live in freshwater, not the saltwater of Casco Bay.

Read more...