Michael Ebens edited this page Jun 22, 2018 · 33 revisions

Most of this wiki is up-to-date, with the exception that the extension modules aren't really documented.

Ammo is a library for the LÖVE (or, Love2D) game engine. It's purpose is to provide a simple, flexible organisational structure for your games. The core library itself is lightweight, but can be extended easily.

Current Version: 1.2.1



  • ammo - The main module.
  • World - An organisational class to hold and process entities.
  • Entity - The core unit of which games are made.
  • Camera - A class that embodies a camera.
  • Sound - A class that makes it easier to manage sounds.
  • Vector - A data structure for 2D vectors.
  • LinkedList - A linked list data structure. Used internally.
  • API Extensions - Lists the changes made to the APIs of Lua and LÖVE.
  • Files - Gives information about each file and what it does.


There's a number of extension modules which can be independently hooked into Ammo:

  • physics: An interface that allows you to connect Ammo's worlds and entities to love.physics.
  • debug: A versatile, highly customisable debugging console.
  • input: A simple input mapping library.
  • tweens: A tweening library.
  • assets: A simple asset management library.

Included Libraries

The only library required (and included) is Middleclass. The Middleclass main file and licence are included in the lib folder.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.