Technology moves fast! ⚡ Don't get left behind.🚶 Subscribe to our mailing list to keep up with latest and greatest in open source projects! 🏆

Subscribe to our mailing list


Modern AS3 Game Engine

Subscribe to updates I use Citrus-Engine

Statistics on Citrus-Engine

Number of watchers on Github 539
Number of open issues 67
Average time to close an issue 6 months
Main language ActionScript
Average time to merge a PR 3 days
Open pull requests 7+
Closed pull requests 14+
Last commit over 1 year ago
Repo Created almost 7 years ago
Repo Last Updated over 1 year ago
Size 8.83 MB
Homepage http://citrusengi...
Organization / Authordavikingcode
Latest ReleaseV3.1.12
Page Updated
Do you use Citrus-Engine? Leave a review!
View open issues (67)
View Citrus-Engine activity
View on github
Fresh, new opensource launches 🚀🚀🚀
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating Citrus-Engine for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)

We recently reset this repository for working on a new version, at the moment we're making experiments. If you are looking for the old one, find it here.

Get the examples here

The Citrus Engine is a professional-grade, scalable Flash game engine built for industry-quality games. It is built upon modern Flash programming practices, allowing you to focus on making your game awesome! It comes built-in with a platformer starter-kit, which you can use to easily make awesome 2D or 3D sidescrolling games.

The Citrus Engine is not only made for platformer games, but for all type of games. It offers a nice way to separate logic/physics from art.

It offers many options, you may use :

  • select between : the classic flash display list, blitting, Starling (including Feathers) and Away3D.
  • select between : Box2D, Nape, AwayPhysics and a Simple math based collision detection.
  • a simple way to manage object creation, and for advanced developers : an entity/component system and object pooling.
  • a LevelManager and a LoadManager which may use Flash Pro as a level editor.
  • a Console, Sound management class, Keyboard and input handler...

Games References

Mission Eau! Chickdoom! FRNZY Penguin Up! Silly Family Paint Over Revenge of Robots Tap The Pixel Once Upon a Light Battlewars Snailboy Monsieur Bear's ABC Underwater Adventures Roundhouse Red n Green 2 Sophie la Girafe Beekyr Alef Jim loves Mary Chorizos de Espaa Shotgun vs Zombies Grard Santa Rush Kepher Stack of Defence Music Game Les aventures d'Acha - l'odysse des 4 mondes Escape From Nerd Factory Kinessia MarcoPoloWeltrennen Tibi

Repository Setup

  • ant : an Ant file to build the different swcs.
  • bin : CE's swcs produced with all libraries included.
  • ce-asdoc : used to generate the documentation.
  • fla : a Components.fla file including several classes for box2d and nape objects ready to import in your own fla to make quickly a level with Flash Pro.
  • lib : the different swcs used.
  • src : Citrus Engine's source code.
  • srclib : as3 files of some libraries.

Wiki & API


The Citrus Engine is proudly supported by: FDTJetbrains If you have any questions on the engine or need some help, we suggest to ask directly on the forum. However for people and companies desiring a strong support, a freelance game developer, or special features you may contact us directly: citrusengine[dot]framework[at]gmail[dot]com We will make a pricing plan depending on your need.


The Citrus Engine requested lots of work to become the most advanced Open-Source & free AS3 game engine. You can show us your love making a donation. It will be divided fairly between contributors. Donate

Citrus-Engine open issues Ask a question     (View All Issues)
  • about 3 years MediatorScene._poolObjects after scene cycle, has null.
  • about 3 years Might be worth testing ( simpler/safer initialisation of parameters ) ?
  • about 3 years breaked "for each" loop ?
  • over 3 years SoundManager, don't allow sound play when in background - or check if 'masterMute' works properly
  • over 3 years SoundManager
  • over 3 years Just a thought / Concern with "inverted" property calculation in
  • over 3 years Missing features of BasicUILayout ( getting/setting 'a single' element position )
  • almost 4 years Game pad support, external or embedded 'universal' mapping files (json)
  • almost 4 years Renaming getObjectByName or/and getObjectsByName, for less confusion
  • almost 4 years Add worker support!
  • almost 4 years Query regarding MediatorState - Objects Loop Performance
  • about 4 years handleStageDeactivated and _playing
  • about 4 years Input - value inconsistency (keyboard)
  • about 4 years nape platform jump issue
  • about 4 years SoundManager - have polyphonic property on CitrusSound
  • about 4 years - Thought regarding '_shape'
  • about 4 years Just a thought for the guy with the Tween Sound issue
  • over 4 years Curious about, whether it may be a little too light? here's why-
  • over 4 years Stuck actions issue
  • over 4 years Box2D 2.3 ?
  • over 4 years ObjectMakerStarling.FromTiledMap() problem with image object positioning
  • over 4 years Should we rename ObjectMaker2D to something else
  • over 4 years Awesome enhancement: swap StarlingState's extend to Sprite3D ( from Sprite )
  • over 4 years Potential bug - MediatorState, input issue
  • over 4 years Feature request: "persistent = true" ( Stops MediatorState from removing these objects automatically on state change )
  • over 4 years ACitrusCamera ( offset, make public/getter&setter suggestion )
  • over 4 years LevelManager / A level gist
  • almost 5 years LevelManager don't work properly
  • almost 5 years JumpHeight property name is unintuitive
  • almost 5 years SoundManager - pausing sounds on stage de-activate
Citrus-Engine open pull requests (View All Pulls)
  • Update
  • Fixed and Improved 03/07/2016 #2
  • Delete
  • Update
  • Update
  • Master
  • Create a CitrusWorldClock class
Citrus-Engine questions on Stackoverflow (View All Questions)
  • Trying to generate sword swinging attack using Box2D in Citrus Engine
  • Adding Collision to a object in citrus engine
  • LibGdx vs Citrus Engine
  • Box2DPhysicsObject strangeness in Citrus engine
  • My general questions for Citrus Engine
  • Citrus Engine Flash Game not compiling correctly
Citrus-Engine list of languages used
Citrus-Engine latest release notes
V3.1.12 V3.1.12

The latest V3.1.* CE, originally released in March 18, 2016. It includes:

  • Sprite, Blitting, Starling, Away3D
  • Nape, Box2D, AwayPhysics.
V2 V2

The Citrus Engine V2, originally released in Oct 31, 2011.

Composed of Box2D Alchemy and SpriteArt & Bltting. No Stage3D.

More projects by DaVikingCode View all
Other projects in ActionScript