Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

kranzky

23
Posts
14
Topics
13
Followers
24
Following
A member registered Sep 17, 2016 · View creator page →

Creator of

Recent community posts

0.7.0-pre-alpha is out now. Featuring:

  • Rule chaining, allowing the same rule to fire multiple times per frame.
  • Added a NOT clause to conditionals.
  • Match groups, allowing the same rules to be applied to different tiles.
  • Additional state information, such as tile movement and heading.
  • Conway’s Life broken out into its own game, along with various tech demos.
  • More bug fixes and optimisations.

Check it out below!

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.

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.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.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.

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.

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.

(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.

(2 edits)

Here’s a rough roadmap leading up to alpha:

Unreleased

0.8.0-pre-alpha

  • Movement smoothing, so transitions happen over time
  • Animation support for movement, spawning and despawning
  • Multiplayer support
  • Different camera modes
  • Finish refactoring and cleanup

0.9.0-pre-alpha

  • UI for drawing the map and controlling the simulation (start, pause, speed)

1.0.0-pre-alpha

  • UI for creating and editing rules

0.1.0-alpha

  • Final sprites and sfx
  • Save and load games
  • Six example games (knockout, invaders, pacman, boulderdash, bomberman, sokhoban)

0.2.0-alpha

  • Polish, bugfix, optimize
  • Promotional video launched

Released

0.1.0-pre-alpha

  • just get something up-and-running, rendering random tiles

0.2.0-pre-alpha

  • draw rocks and trees, and implement an action to make rocks fall downwards

0.2.1-pre-alpha

  • implement rules, and use these to drive behaviour
  • support rendering playfields of different dimensions

0.3.0-pre-alpha

  • rules to make the rock fall to the left or right
  • conflict resolution algorithm

0.4.0-pre-alpha

  • Symmetry
  • Rules for monsters that leave dirt trails
  • Rules for Conway’s Life
  • Support variable speed rules

0.5.0-pre-alpha

  • Add pre-conditions as rules
  • Support control pad input as a pre-condition
  • Rules to move a player around

0.6.0-pre-alpha

  • Add events to rules, that fire when the rule activates
  • Add sound effects as an event type
  • Add sounds to the existing rules
  • Implement a simple camera system, allowing zoom and centering on an entity

0.7.0-pre-alpha

  • Add a level select menu, with multiple levels to test different rule types
  • Experiment with look-ahead, whereby additional rules may activate based on current activations
  • Refactor the automata engine to make it driven by Flecs
(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.

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

(4 edits)

Back in 1992 I was reading a USENET post about the winners of the 9th International Obfuscated C Code Contest, and was intrigued by an entry named “CABBAGE”, for “Cellular Automata Based, Beautifully Abysmal Game Environment”.

Written by James Bonfield, the program allowed you to play space invaders, knockout, sokoban and similar games on a unix terminal, with all of the game rules expressed as 3x3 cellular automata transitions.

Over the years I’ve made multiple attempts to write something like this myself, starting in 1999 on Sony’s Net Yaroze, and then a version in Ruby (the video for that is embedded in the main page for this project), Flash, Javascript and C. But this time I really truly promise to go through with the project.

Gravitas is a local multiplayer “cave flyer” party game, inspired by Thrust on the C64, Gravity Force on the Amiga and Star Control 2 on the PC!

It’s on sale at 75% off and you can get it right here: https://thepunkcollective.itch.io/gravitas

Here’s a quick overview trailer:

I would love any and all feedback, so please comment below or on the game page. Thanks and Happy New Year to all you wonderful indies :)

Gravitas community · Created a new topic Bug Reports

Something not working the way it should in a build? Please post details here, and we’ll get it fixed. Don’t forget to mention the platform and version number. Thankee!

Gravitas community · Created a new topic Game Ideas

Got a concept to share? Please do so here!

Gravitas community · Created a new topic Welcome!
(2 edits)

Hello early access peeps, it’s great to see you here! Please don’t forget to follow us to make sure that you get our daily devlog in your feeds. We look forward to sharing the first build with soon!

If you’ve just joined the community, and don’t plan to lurk, then please introduce yourself below…

(3 edits)

I’ve just launched BLaTTiX, a dual-stick arena shooter for PC, Mac and Linux, and would appreciate it if you all took a look!

BLaTTiX was inspired by Encounter on the C64 and Vaxine on the Amiga, as well as by countless demos (such as Mega Demo). I really wanted to re-create that “vectorball” aesthetic, but also wanted to make a fast-paced shooter that was fun to play. I hope I’ve achieved that! It launched on August 1, and sales are starting to trickle in.

Get it here: https://thepunkcollective.itch.io/blattix

I will be posting a detailed post-mortem over the weekend, so keep an eye out for that. And all feedback and suggestions are welcome; I could really use any advice you may be able to offer. Thanks so much for reading!

This is a intersting thing i find.

(1 edit)

Oh yeah it’d be great if you could help test the game! I’ll send you a download key. Best to use the itch app to install, as it will keep the game updated and it makes it easier to run unsigned builds. Cheers :)

Haha, thanks for that… maybe we should finish off our Stunt Car Racer remake next :)

(1 edit)

I need to nail down installation and performance issues, and tweak the controls. A handful of dedicated gamers willing to test builds will help me get this thing launched!

Thanks!