Introducing the Spelagon ECS Logo

Spelagon ECS finally has an official logo! I wanted something that captures both the playful nature of the games built with the engine and the technical architecture that powers them.

The Design

The logo visualizes the Entity-Component-System architecture at the heart of the engine:

Entities - The three cute characters at the top (slime, viking, robot) represent game entities. In ECS, entities are just containers that hold components - they could be anything from a player character to a particle effect.

Component - The central node shows how components are the data attached to entities. Components are pure data: position, health, sprite information, velocity - whatever your game needs.

Systems - The three systems at the bottom (Rendering, Shake, Input) process entities that have the relevant components. Systems contain the logic - they iterate over entities, read component data, and make things happen.

Why ECS?

The Entity-Component-System pattern keeps data and logic separate, making it easy to add new features without touching existing code. Want to make an entity shake? Just add a Shake component - the ShakeSystem will pick it up automatically.

This architecture is what allows Spelagon ECS to output entire games as single HTML files under 50KB while still supporting features like tile maps, sprite animations, sound effects, and state management.

The pixel art style reflects the retro 2D games the engine is designed to create. Check out the other games on this site to see Spelagon ECS in action!

Moles: A Year of Engine Evolution

Moles has come a long way since my first post in 2022. What started as a simple showcase for my ECS game engine has grown into a polished little game with proper state management, sound effects, difficulty progression, and satisfying visual feedback.

Direct link to game: >>> Play Moles! <<<

What’s New

Progressive Difficulty - The game now features 10 levels of increasing challenge. Each level ramps up the initial mole count, spawn rate, and threshold before you lose. Beat all the moles to advance to the next level.

Sound Effects - Using the zzfx library, Moles now has satisfying hit and miss sounds. The sounds are procedurally generated and embedded directly in the code - no audio files needed.

Visual Polish - Moles now shake randomly before being hit, giving a “whack-a-mole” feel. When you successfully hit a mole, there’s a squash effect and the mole flies off the screen with a smooth arc animation.

State System - The engine now has a proper declarative state management system. Moles uses this for the welcome screen, gameplay, win/lose conditions, and automatic transitions between levels.

Level Indicators - A flickering level indicator appears at the start of each round so you know how far you’ve progressed.

Technical Details

The entire game - sprites, sounds, tilemap, and all game logic - compiles down to a single 46KB HTML file. No external dependencies, no loading screens, instant playability.

The engine includes a debug system that shows FPS, entity count, and CPU time spent in each system - useful for profiling and optimization.

The core engine features used in Moles:

  • TouchSystem - Handles click/tap input with configurable hit margins
  • ShakeSystem - Adds the random jitter effect to moles
  • BounceSystem - Used for the bouncing “Click to start” text
  • SpriteSystem - Renders moles from a tilesheet
  • FontSystem - Bitmap font rendering for score and messages
  • SoundSystem - Pre-renders zzfx sounds at load time for instant playback
  • StateSystem - Manages game states with automatic entity cleanup and system enable/disable
  • RemoveSystem - Handles timed entity removal

The SpelagonECS Engine

This game is built on SpelagonECS, my custom TypeScript Entity Component System engine. The design goals are:

  1. Tiny bundle size - Everything in a single inlined HTML file
  2. No dependencies - Zero runtime npm packages
  3. Mobile-first - Touch input and mobile performance prioritized
  4. Multiple instances - Can run several games on the same page

The engine has grown to support tile maps, sprite animations, hierarchical transforms, particle effects, and more. Check out my other games built with the same engine!

Moles

This is a showcase game for my ECS html5 game engine.
It is written mostly in Typescript and a key requirement is that the output should only ever be a single tiny html file. This html file should include EVERYTHING, game assets, sounds, music, sprites!

The game itself is not that interesting, click/tap on “Moles” that keep popping up on screen to remove them.

Direct link to game: >>> Moles!!! <<<

Cave Dweller

Overview

All your precious gems have been scattered around a huge cave system. Get them back and escape the caves! There is no way to control your game character directly but you can help him by paving the way using the different objects available in each level such as walls, blocks, bombs, fire etc. Try to get him safely to the exit and collect all gems.
This game is built using HTML5 so will work on all devices with modern browsers. Works best with touch enabled devices such as smart phones and tablets but possible to play in desktop browsers too.

Direct link to game: >>> Play Cave Dweller <<<
(It will take some time to load the game, please be patient)

Shrooms

A little Match 3 game I wrote to learn more about Typescript.
Optimized for mobile devices.

Direct link to game: >>> Play Shrooms <<<

Heavy Hogur

Overview

Follow Heavy Hogur on a journey through the mountains and islands of Ivereth. Explore vast cave systems, collect crystals with your trusty pickaxe, discover buried treasures and recover legendary artifacts. 60 rooms full of adventure awaits you!

Gameplay

Heavy Hogur is a 3D puzzle game (Windows) with a unique game mechanic. Hogur is literally “heavy” and most of the ground is crumbling where ever he walks. Plan your path wisely, and “carve” your way through the different rooms.

Download >>> Heavy Hogur DEMO <<<

Buy your Full version from GamersGate >>> Heavy Hogur <<<

What other say

Heavy Hogur is an essential purchase for puzzle-gaming fans.

Gamezebo

…it offers an old-fashioned collection of puzzles, which are pretty satisfying to solve.

RockPaperShotgun

…a winner who will challenge yet not frustrate you.

Fileplanet

Screenshots


Mulver

Overview

Uncle Miggles is in trouble! Sneaky king Porco has captured him and to let him go he wants you to first get the three Yre crystals that are hidden troughout the kingdom. You must help uncle Miggles!

Guide Mulver through different parts of the kingdom in search for gold and the Yre crystals. Avoid enemies, uncover secret areas, time your jumps and use all your skill to navigate through the challenging levels in this 3D platform game.

This game is available for purchase here >>> Mulver <<<

System Requirements

OS: Windows XP/Vista
CPU: ~1Ghz processor
Video: 64Mb