Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Release Announcements Sticky

A topic by kranzky created May 26, 2022 Views: 108 Replies: 4
This topic is archived. It is unlisted and no new posts can be made.
Viewing posts 1 to 7

I’ll post here whenever a new release is uploaded.

(1 edit)

0.3.0-pre-alpha is now available. This is really the first version of LB that does anything interesting at all; it hard-wires three rules for moving rocks, and deals with the complications of multiple 3x3 rules wanting to move the a rock in different directions (which may happen when a rock sitting atop a lone tree could move to the left or the right). This is achieved with a conflict resolution algorithm, which flags all conflicts, then resolves them at random until none remain.

I reckon this is a better solution and more intuitive to the user than only using 1x1 rules (whereby a 3x3 neighbourhood can only be used to modify the central cell, as in Conway’s game of life). This would require two rules to move a rock downwards; one to despawn it from its current position, and one to spawn it in the cell below.

Instead of that, rules in LB consist of a 3x3 neighbourhood of cells that are used to find matching areas in the game grid, along with a list of actions that will be added to cells when the rule activates. At the moment actions include spawning, despawning and moving a cell in a particular direction. One pass annotates cells with all potential actions, and then a second pass detects conflicts (such as moving a cell in different directions) and randomly removes rules until no more conflicts exist.

This works rather well at the moment. We’ll need to see how it stacks up when rules become more complicated.

Oh, I’ll try to get Windows and Linux builds out for the next release onwards.

(1 edit)

0.4.0-pre-alpha is out now. Since the last build I’ve added two big features: rule frequency and rule symmetry.

Rule frequency is simply the ability to have rules fire at different rates. This is important when authoring rules to move bullets and enemies, for example; you want the bullets to move more quickly than the enemies, and one way of achieving that would be to make the rule for moving bullets fire at higher rate.

Rule symmetry allows rules to be authored with different types of symmetry: horizontal, vertical, four-way, eight-way and infinite. This makes rules much more expressive. For example, to move a monster randomly in one of four different directions, simply author a rule to make the monster move right, and then make that rule four-way symmetrical. The existing routines to resolve conflicts will mean that the monster will move in one of the four directions at random each time the rule fires.

Infinite symmetry may seem weird, but it simply means that the 3x3 neighbourhood of cells can appear in any order, providing that the counts of different cell types match the rule. This makes it easy to author rules for the Conway’s Life, for example.

I’ve updated the demo to showcase these changes: rocks fall every frame, the purple monsters move randomly every second frame, leaving dirt trails as they do so, and Conway’s Life runs every fourth frame, transforming the trails of dirt into familiar patterns. Note that the life rules take account of rocks, trees and monsters, so that a single cell of dirt next to a rock and a tree will continue to survive, as it has two non-empty neighbouts, but new dirt cells are only spawned if at least one of the three neighbours is also dirt.

0.5.0-pre-alpha has just been released. Apart from some under-the-bonnet refactoring, the biggest new feature is adding conditions to rules, and implementing a condition for keyboard or gamepad input. This made it very easy to add a player with just three rules; one for movement, one for digging dirt and one for pushing rocks.

0.6.0-pre-alpha has been unleashed! The two major new features in this version are:

  1. The ability to attach a camera to an entity to follow it around; and
  2. The addition of sound effects as rule actions.

Only ten rules are used to implement all behaviours and sounds in the video. Three for boulder movement, one for monster movement, three for Conway’s Life and three for player movement.

Apart from that, a few bugs got squished, and the automata code itself was refactored substantially; this refactoring work will continue over the next two releases in preparation for editor UI.

moved this topic to Release Announcements
archived this topic