Difference between revisions of "Library"
(Created page with 'A library in context of game programming with LÖVE is a collection of useful functionality that make your life as game developer easier. For example, a library may contain rout…') |
(added library list) |
||
(One intermediate revision by one other user not shown) | |||
Line 6: | Line 6: | ||
Not every library is suited for your game and programming style. You have to pick and choose which one fits best. | Not every library is suited for your game and programming style. You have to pick and choose which one fits best. | ||
+ | |||
+ | == All Libraries == | ||
+ | {{#ask: [[Category:Libraries]] | ||
+ | | headers=show | ||
+ | | mainlabel=Name | ||
+ | | limit=1000 | ||
+ | | sort=LOVE Version, | ||
+ | | order=descending,ascending | ||
+ | | ?Description | ||
+ | | ?LOVE_Version | ||
+ | | ?Keyword | ||
+ | }} |
Latest revision as of 02:45, 27 March 2016
A library in context of game programming with LÖVE is a collection of useful functionality that make your life as game developer easier.
For example, a library may contain routines to simplify the handling of game objects such as monsters or powerups, or it could provide functions to handle sound more easily.
The scope of different libraries vary greatly. There are libraries that provide a single function to implement object orientation within Lua, to libraries that implement full blown game engines. Naturally, libraries with a narrower scope are more easily to integrate into your already existing project, while bigger ones impose a certain programming style. This is not necessarily bad, as setting a frame will often result in faster progress once you learned the concepts behind such a library.
Not every library is suited for your game and programming style. You have to pick and choose which one fits best.
All Libraries
Name | Description | LOVE Version | Keyword |
---|---|---|---|
30log | A small and effective object-orientation framework in 30 lines | Any | Class |
Astray | Astray is a lua based maze, room and dungeon generation library for dungeon crawlers and rougelike video games. | Any | Procedural |
Blob | A serialization and parser library for binary file formats | Any | Serializing |
Cupid | A debugging shim providing a console, crash logging, and project reloading. | Any | Debug |
Donut | Simplified debug message control system | Any | Debug |
Dox | A Lua Documentation Generator Script | Any | Documentation |
ELScheduler | Pure Lua library to manage timers | Any | Timer |
Fizz X | Platformer(AABB) physics library | Any | Physics |
Flux | Fast, lightweight tweening library | Any | Animation |
Graphoon | A force directed graph algorithm written in Lua. | Any | Class |
Grease | The one and (no longer) only networking library | Any | Networking |
HC | A collision detection system | Any | Physics |
HUMP | Gamedev-Powertools: Gamestates, timed function calls, tweening, vectors, object orientation, cameras and signals | Any | Framework |
HooECS | It's a full-featured Entity-Component-System framework for making games with Lua | Any | Framework |
Jumper | Fast pathfinding library for 2D grid-based maps | Any | AI |
Kuey | Kuey is a library that encode/decode strings and files with a key. | Any | |
LibCompress | Pure Lua Compression library | Any | |
Lovebird | A browser-based debug console for LÖVE | Any | Debug |
Lovetoys | It's a full-featured Entity-Component-System framework for making games with LUA. The original and only. | Any | ECS |
Lua FOV | Field of View (FOV) algorithms implemented in Lua | Any | |
LuaNameGen | Lua Name Generator for characters, objects, places, etc. | Any | Procedural |
LuaTable | A library that converts tables to Lua code that can be saved. | Any | Serializing |
Luaoop | OOP (Object Oriented Programming) class-based library | Any | Class |
Lume | Utility functions geared towards game development | Any | |
MGL | Mathematics for Graphics in pure Lua | Any | Math |
MiddleClass | Object-orientation for Lua | Any | Class |
Moses | A utility-belt library for fun and functional programming with Lua | Any | |
Noobhub | Multiplayer and network messaging | Any | Networking |
Popo | Character based programmable text library | Any | String |
RL-Dice | A dice module aimed for roguelikes. | Any | Math |
RandomLua | Random numbers generator for all platforms | Any | Math |
SICK | Easy high-score keeping. | Any | |
SQLite3 | A simple, hassle-free, SQLite3 database solution for Lua. | Any | Database |
Ser | A fast, robust, richly-featured table serialisation library | Any | |
Serial | A serialization library optimized for very large tables. | Any | Serializing |
Simple Educative Class Library | A class implementation | Any | Class |
Stateswitcher | A state switcher library based on files (one file=one state). | Any | State |
Transform (Library) | A library designed to ease the handling of coordinate/angle transformations in world | Any | Math |
Tserial | Converts tables into strings and back. Good for saving games, multiplayer, etc. | Any | Serializing |
Yonder | A ridiculously easy to use game state manager. | Any | State |
array | A useful collection of methods to work with Lua tables in an array fashion. | Any | |
beholder.lua | Event observation for Lua. | Any | |
binser | Customizable Lua Serializer - Great for Saving Games | Any | Serializing |
bitser | Serializes and deserializes Lua values with LuaJIT | Any | Serializing |
bump.lua | Minimal collision detection lib. | Any | Physics |
clasp | Tiny Lua class library | Any | Class |
cron | A set of functions for executing actions at a certain time interval. | Any | Timer |
cron.lua | Time-based functions for Lua. | Any | Timer |
gamera | Camera library for LÖVE. | Any | |
hxdx | Physics library (easier box2d) | Any | Physics |
inspect.lua | Pretty-print for Lua. | Any | |
libSaveTableToFile | Load and save tables as text files. | Any | Serializing |
libxml | Lua XML Library | Any | Serializing |
lol.lua | Object prototyping library for Lua. | Any | Class |
love-loader | Load images and sounds in a separate thread. | Any | |
love.bundle | Data saving lib for Love. | Any | Serializing |
love.screen | Manage easily your screen resolution, caption, ... | Any | |
luaFortune | Libraries for procedural generation in lua. | Any | |
luasort | Array sorting algorithms | Any | Math |
lure | HTML DOM Parser/Renderer. | Any | |
memoize.lua | Generic memoization for Lua. | Any | |
profile | A real-time profiler for finding bottlenecks in your game | Any | Debug |
rstar | R*Tree implementation in Lua | Any | Data structure |
sstrict.lua | Parses and detects mistakes in your Lua source code | Any | Debug |
stateful.lua | Stateful Object Orientation for middleclass. | Any | State |
strong | A library that provides many enhancements to strings. | Any | String |
tile-collider | Module for resolving tile collisions (+slopes) | Any | Physics |
tiny-ecs | Entity Component System for lua. | Any | Framework |
tween | Small sets of functions for performing tweening in Lua | Any | Animation |
tween.lua | Simple tweening lib for Lua. | Any | Animation |
lua-https | A simple Lua HTTPS module using native platform backends where applicable. | 12.0 | Networking |
Wasx | A very versatile input manager for LÖVE | 11.x | Input |
layouter | Simple UI grid layout library. | 11.4+ | Graphical User Interface |
cimgui-love | LÖVE module for Dear ImGui, obtained by wrapping cimgui with LuaJIT FFI. | 11.4 | Graphical User Interface |
love.maker | A library that can minify, compile and compress your LÖVE2D project folder | 11.3+ | Distribution |
love.scene | Small scene graph library written for the LÖVE framework using pure Lua | 11.3+ | Framework |
TÖVE | Animated vector graphics and SVG rendering | 11.2 | SVG |
breezefield | minimal love.physics wrapper | 11.2 | Physics |
NoHighDPI | Disable High DPI scaling on Android devices. (useless since LÖVE 11.3) | 11.1 | Resolution |
Live2LOVE | LÖVE library to show Live2D Cubism 2 models | 11.0 | Animation |
Shädows | A dynamic shadows & lights library for löve | 11.0 | Lighting |
lovesize | Library that makes it possible to work with a fixed game resolution, while scaling the screen and clipping objects outside of it, making a letterbox effect. | 11.0 | Resolution |
FPSGraph | A simple lightweight graphing utility for LOVE | 0.9.x | |
Thranduil | UI module for LÖVE sources, website : 404 | 0.9.x | Graphical User Interface |
Zoetrope | A starter kit for LÖVE, including sprites, collisions, maps, and debugging. | 0.9.x | Framework |
anim8 | Animation Library for LÖVE. | 0.9.x | Animation |
sfxr.lua | Generate your sounds dynamically, at runtime | 0.9.x | Sound |
utf8 | Provides basic support for manipulating UTF-8 strings. | 0.9.2 | String |
CameraMgr | A highly dynamic and robust camera library in around 200 lines of code. | 0.9.1+ | |
StackingSceneMgr | A simple scene manager, scenes are lua files. | 0.9.1+ | |
TransitionMgr | A simple transition manager, transitions are just lua files. | 0.9.1+ | |
LuaPill | LuaPill (short for "Practical Isometric Layering Library for Lua") is an engine for generating isometric maps for Löve2D and Lua. | 0.9.1 | |
Löve Bone | A robust object-oriented 2D Skeletal Animation framework for LÖVE. | 0.9.1 | Animation |
Monocle | Debugging & Expression watching for Love2D | 0.9.1 | |
lua-enet | Multiplayer networking module for games. | 0.9.0 | Networking |
Quickie | Simple(r), but powerful GUI. (renamed to SUIT) | 0.8.x | Graphical User Interface |
Substitute541/Love3D | This allows you to simulate real 3D in a 2D engine. No Raycasting! | 0.8.x | |
fakecanvas | [WIP] Convenient canvas emulation for unsupported hardware | 0.8.x | |
Lope2D | A wrap over Love2D physics engine API. It makes dealing with the physics API easier and faster. It also has water pools simulation. | 0.8.0+ | Physics |
newton | Export and load Box2D bodies made in PhysicsEditor | 0.8.0+ | Physics |
Common Organization of Controls Kit | Comprehensive input handling library | 0.8.0 | Input |
Jupiter | Table serialisation and file I/O. | 0.8.0 | Serializing |
Lovely Tiles | Suite of tools for loading/rendering tilemaps | 0.8.0 | |
LövelyMoon | Easily handle gamestates with this library! | 0.8.0 | State |
text.lua | Pretty print texts | 0.8.0 | |
babel | A simple library for internationalisation. | 0.8 | String |
Goo | GUI library for Love | 0.7.x | Graphical User Interface |
LoveUI | GUI library for Love | 0.7.x | Graphical User Interface |
32 lines of goodness | 32 lines of goodness is a small OO library that uses a domain specific language to make a neat syntax so OO is easy. | 0.7.2 | Class |
LoveAStar | A* search, written in Lua, for use in LOVE. | 0.7.2 | AI |
TLpath | Add A* pathfinding to games | 0.7.1 | AI |
SLAM | A friendly sound manager. | 0.7.0+ | Sound |
Message in a Bottle | A message library for LOVE. | 0.7.0 | Graphical User Interface |
TEsound | A sound manager that makes it easy to use sound and music | 0.7.0 | Sound |
TEsound (Español) | Un administrador de sonido que hace más fácil usar sonido y música | 0.7.0 | Sound |
TLbind | A simple system for creating professional control schemes | 0.7.0 | Input |
Pölygamy | Game State, Keyboard and Timer helpers | 0.6.x | Framework |
Swingers | A gesture library for LÖVE | 0.6.x | |
RotLove | The Roguelike Toolkit for Love2D. Based on rot.js and libtcod. | 0.6.2+ | Framework |
Adult Lib | Run LÖVE 0.5.0 code with LÖVE 0.6.x. | 0.6.2 | Compatibility |
socket | Module for HTTP, TCP, and UDP networking. | 0.5.0 | Networking |
Gspöt | GUI library for Love | 0.11.x | Graphical User Interface |
LUIGI | Lovely User Interfaces for Game Inventors | 0.11.x | Graphical User Interface |
Löve Frames | An advanced GUI library for LÖVE | 0.11.x | Graphical User Interface |
Talkies.lua | A messagebox system with multiple-choices, typing effect + sounds and more. | 0.11.x | Graphical User Interface |
Lovely Tactics Hex | Framework for creation of tactical RPGs. | 0.11.3+ | |
love-nuklear | Lightweight immediate mode GUI for LÖVE games | 0.11.2 | Graphical User Interface |
Easy GUI System | EGS is a simple GUI system with events and multiple controls, without over-complicating things. | 0.10.x | Graphical User Interface |
LoverNet | Module designed to make networking easier | 0.10.x | Networking |
Möan.lua | A messagebox system with multiple-choices and more (renamed to Talkies) | 0.10.x | Graphical User Interface |
SUIT | Simple User Interface Toolkit | 0.10.x | Graphical User Interface |
Tactile | A flexible and nice input library. | 0.10.x | Input |
fLUIds | love-imgui API wrap for simplicity | 0.10.x | Graphical User Interface |
love-imgui | IMGUI module for LOVE | 0.10.x | Graphical User Interface |
svglover | Load and display simple SVGs. | 0.10.x | SVG |
InputField | Text input handling library for LÖVE | 0.10.2+ | Input |
ListBox | A dynamic ListBox for LÖVE 2D. Supports touches, mouses and keyboards | 0.10.2 | Graphical User Interface |
LoveFS | LÖVE FileSystem Access | 0.10.2 | Filesystem |
LÖVE PhysicsEditor Loader | PhysicsEditor Objects Models Loader | 0.10.2 | Physics |
ONET | A Object Oriented Networking Library | 0.10.2 | Networking |
Pseudo3D | Pseudo 3D figures for the löve framework website: 404 | 0.10.2 | 3D |
TLfres | Lets games run at any resolution, easily and without stretching | 0.10.2 | Resolution |
ziplib | A zipping library for löve | 0.10.2 | Compression |
Lynput | Lynput is a library that makes input handling very easy and intuitive | 0.10.0+ | Input |
vudu | Extensive in-engine debug interface with a console, variable browser, and more | 0.10.0+ | Debug |
CTRL | General Input Library | 0.10.0 | Input |
Lily | LÖVE Async Loading Library | 0.10.0 | Threaded Resource Loading |
yaoui | UI Kit for LÖVE (no longer maintained) | 0.10.0 | Graphical User Interface |
MiniFS | Minimal but powerful filesystem module. | 0.10 | Filesystem |