History & Relation to Speedy Blupi

Epsitec and the Blupi Universe

Epsitec SA (Switzerland) created a series of games featuring the character Blupi:

Game Genre Year Engine style
Speedy Blupi Side-scrolling platformer ~1995 Automaton state machine (actions.h)
Planet Blupi Isometric RTS / puzzle 1997 Goal-based task interpreter (decgoal.h)

Both games share the same character (yellow creature Blupi, called "Toto" in Speedy Blupi), but use completely different game engines.


Code-Level Relationship

The file include/actions.h in this repository is a direct remnant of the Speedy Blupi engine. It defines:

These types are NOT used by Planet Blupi's own engine. They belong to the Speedy Blupi animation subsystem that was imported / referenced during development.

Name-space conflict: the Sound enum values in actions.h collide with the SOUND_* macros in def.h. They are two completely separate systems.


Key Engine Differences

Property Speedy Blupi Planet Blupi
Movement model Physics-based (jumps, falls, gravity) Grid-based (cell by cell)
Character control Bytecode automaton state machine GOAL_* opcode interpreter
View Side-scrolling 2D Isometric 3D
Enemies Simpler, fixed patterns Autonomous AI with pathfinding
Vehicles No Yes (boat, jeep, armour)
Fog of war No Yes (quadrant bit system)
Save format Simple Binary .blp files with complete world state

Files Shared Between Games

File Origin Use in Planet Blupi
include/actions.h Speedy Blupi engine Reference only; types not called by PB code
include/decmove.h Carried over from Speedy Blupi Fully used for animated decorations
General architecture Epsitec in-house Redesigned for isometric engine

Why Is actions.h in This Repository?

When decompiling Speedy Blupi, actions.h serves as the primary starting point for understanding the character animation state machine. It contains the complete enumeration of all actions (Action enum) and decorations (Objet enum) that the Speedy Blupi animation system uses.

See actions.h Reference for a full annotated listing.