astrochili / awesome-defold

Alternative Awesome Defold

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

awesome

Awesome Defold

License: CC0-1.0

A curated list of awesome Defold extensions, tools and resources. An alternative to the Defold Asset Portal.

Contribution

  • ✍️ If you find an outdated or non-working asset, wrong category or description, or you want to add something useful to the list - feel free to create an issue or a pull request.

  • πŸ”€ Community-created content is sorted in ascending order, but core items are manually sorted.

  • πŸ’¬ Discuss on the forum.

Legend

πŸŒ™ β€” Lua modules that are engine-independent but useful for game development.

Contents

Official

Websites

Social

Sources

  • Defold β€” Game engine and editor.
  • Extender β€” Build server that builds native extensions.
  • Documentaton β€” Markdown source files and assets for Defold documentation.
  • Asset Portal β€” The asset definitions for the Asset Portal page.
  • Games Showcase β€” The game definitions for the Showcase page.
  • Build Size β€” Graph showing the Defold engine and editor sizes for all supported platforms.
  • Logo Assets β€” Defold logos to use on splash screens or other kinds of promotions.

Resources

Articles

Base

Coding Style

  • lua-users β€” Lua style guide based on the Lua manuals.
  • LuaRocks β€” Coding conventions used in the LuaRocks project.
  • Olivine Labs β€” Olivine Labs Lua style guide.

Tutorials

Videos

Tools

Code Editor

Annotations

Visual Studio Code

  • Defold Buddy β€” Autocomplete, hot reload, building from Defold, manifest generator and other features.
  • Defold Build Tools β€” Build, run and package Defold projects.
  • Defold Extension Pack β€” A pack of useful extensions for Defold.
  • Defold Kit β€” Tweakable setup that adds autocomplete and allows to launch, debug with breakpoints, bundle and deploy a game on a connected device.

Zed

  • Defold + Zed β€” A collection of ideas on how to adapt the Zed editor for Defold.

Programming Language

  • Compat-5.3 β€” Providing Lua 5.3 style API.
  • DefoldSharp β€” Transpiler from C# to Lua.
  • hxDefold β€” Haxe support library for the Defold.
  • Lua Preprocessor β€” Small and simple Lua preprocessor for Defold.
  • SpiralKit β€” Low level framework to develop on C++.
  • ts-defold β€” TypeScript toolkit for development games with Defold.

Libraries

3D

  • 3D Tilemap β€” Converting 2D tilemap to 3D mesh.
  • Curved World β€” Demo of a curved world effect similar to that in Animal Crossing.
  • dae2collision β€” Converts DAE meshes to Defold collision objects.
  • Defender β€” Blender import and export system with syncing.
  • defold-3d-samples β€” Simple projects showing various 3D concepts, including a sky shader.
  • Illumination β€” A ready-to-use forward shading lighting for 3D games.
  • Jhonnyh Public Examples β€” A set of examples with rendering, shadow mapping and etc.
  • Kinematic Walker β€” A tweakable kinematic character controller suitable for 3D games.
  • Light and Shadows β€” Pack of shaders to make light and shadows in Defold.
  • Light Probes β€” An attempt to implement irradiance probes for global illumination.
  • Mesh Binary β€” Binary export from Blender to Defold.
  • PBR Core β€” Set of scripts, shaders and materials for PBR rendering.
  • PCSS β€” Deferred shading and shadow map filter experiments: pcf, poisson, pcss.
  • Pointer Lock β€” Pointer lock and mouselook for first-person 3D games.
  • Scene3D β€” A collection of assets and useful functions for 3D games.
  • Simple FPS β€” A walkable room example with baked lightmaps.
  • Skyquad β€” Skyquad implementation.
  • SSAO β€” A simple screen space ambient occlusion implementation.
  • SSLR β€” A screen space local reflections implementation.
  • TrenchFold β€” Configuration files and import scripts for designing levels in TrenchBroom.
  • VSM β€” A variance shadow map implementation.

Ads

AI

Analytics

Animation

  • Bezier Animation Library β€” An animation library that allows you to send graphics objects on a bezier curve path.
  • Ease β€” Easing functions module.
  • Easier β€” Interactive example of using inbuilt easing functions.
  • Panthera Editor β€” Online tool for creating visual animations with lua code export.
  • Rive β€” Rive animations runtime.
  • Spine β€” Spine animations runtime.
  • Tilemap Animator β€” Provides runtime tile animations.
  • Timeline β€” Easy way to make animation play in sequence.
  • πŸŒ™ flux β€” A fast, lightweight tweening library.
  • πŸŒ™ tween β€” A small library to perform tweening.

Architecture

  • Pigeon β€” Pigeon allows easily and safely manage posting messages.
  • Stately β€” A simple finite state machine.
  • whefQuest β€” A little helper library to create quests.
  • πŸŒ™ beholder β€” A simple event observer.
  • πŸŒ™ Classic β€” A tiny class module.
  • πŸŒ™ lovetoys β€” A full-featured ESC framework.
  • πŸŒ™ Lua Finite State Machine β€” A finite state machine.
  • πŸŒ™ middleclass β€” A simple OOP library.
  • πŸŒ™ stateful.lua β€” Stateful classes.
  • πŸŒ™ tiny-ecs β€” A simple and flexible ESC library.

Backend

Camera

  • Operator β€” A tweakable camera controller for 3D games.
  • Orbit-Camera β€” A simple orbit camera example.
  • Orthographic β€” Orthographic camera API.
  • Rendercam β€” A universal render script and camera package.

Debug

  • Commander β€” A debug console and command system inside your game.
  • Crashtool β€” Shows information from a Defold crash file.
  • Debug Draw β€” A simple wrapper to draw debug shapes.
  • DefCon β€” Developer console to interact with a game through a browser.
  • DefPro β€” Library to interact with Defold profiler.
  • DefTest β€” Unit testing with Telescope.
  • lmprof β€” Lua memory profiler for Defold based on lmprof.
  • Log β€” General purpose logging.
  • Lua51 β€” Replaces LuaJIT with Lua 5.1 on desktop platforms to see the actual performance on HTML5.
  • Metrics β€” Calculates and displays performance metrics.
  • Poco β€” Test automation from a computer to a test device using the Poco APO.
  • Profile Counters β€” Provides the profile counters in release mode via a Lua interface.
  • Share Log β€” Writes all output to the console and makes it possible save or send somewhere.
  • signpost β€” Helps to mark points of interest in Xcode Instruments.
  • WebGL Memory β€” Tracker for GPU and CPU memory usage on HTML5.
  • πŸŒ™ Busted β€” Lua unit testing.
  • πŸŒ™ inspect β€” Human-readable table representation.
  • πŸŒ™ PegDebug β€” Trace debugger for LPeg rules and captures.

Deployment

Editor Scripts

  • Align β€” Editor script for aligning gui nodes.
  • Atlas β€” Editor script to add images to an atlas as well as create a new one
  • Components β€” Editor script for creating components from resources.
  • Distribute β€” Editor script for distributing nodes evenly.
  • Lua Code Formatter β€” Editor script that reformats your Lua source code.
  • Simle Data Component β€” Example how to bring custom data to a game object.
  • Sound Editor Scripts β€” A set of Editor scripts for the sound component.
  • Z-Order Editor Script β€” Helper for ordering objects along Z-axis in the collection.

Engines

  • Boom β€” A game framework built on top of Defold inspired by Kaboom.
  • MatchaNovel β€” A visual novel framework library.
  • Emthree β€” Match three game engine.
  • Platypus β€” Platformer game engine.

Files

  • Defold-LFS β€” Library with a set of functions related to file systems.
  • Directories β€” Provides paths to various system directories.
  • Project Directory β€” Provides the project directory when the game is running from the Editor.
  • Zip β€” Extracts a zip archive.

Formats

  • CJSON β€” Native JSON encoder and decoder.
  • Collection Parser β€” Defold files format encoder and decoder.
  • Crypt β€” Various hash and encode/decode algorithms.
  • CSV Loader β€” Can load and parse CSV files.
  • DDF β€” A library for parsing Defold Data Format files.
  • Defold Parser β€” A node.js module to encode and decode Defold files.
  • Defold Protobuf β€” Protobuf format encoder and decoder.
  • Desert β€” Lua table (de)serialiser for the Defold.
  • Pack β€” Compress, decompress, and obfuscate table data.
  • PPReader β€” Parser of Unity PlayerPrefs files into Lua tables.
  • Proto β€” Generates Lua bindings to encode and decode a predefined set of protobuf messages.
  • Sheets Exporter β€” Processing and exporting data from Google Sheets to Lua.
  • TexturePacker Exporter β€” Exports from TexturePacker to a native atlas for Defold.

Generation

  • biosim4 β€” Port of biologial evolution simulator.
  • Cellular Automata β€” Example of cellular automata and procedural generation.
  • Diamond Square – Example of the diamond square algorithm and procedural generation.
  • Fractal Noise β€” Example of fractal noise and procedural generation.
  • Lazy Flood Fill – Example of the lazy flood fill algorithm and procedural generation.
  • Perlin Terrain β€” Perlin noise terrain generation.
  • Wave Function Collapse β€” Image generation with Wave Function Collapse algorithm.
  • πŸŒ™ Astray β€” Maze, room and dungeon generation library.

Graphics

  • Colors β€” Customizable palettes and color utility features.
  • ColorsLib β€” Hex colors library and aonverter.
  • defold-png β€” An extension to load and save PNG images.
  • Draw Pixels β€” Drawing pixels and simple geometry into a texture buffer.
  • Hypes Trails β€” Easy to use and customizable trail effect.
  • ImageLoader β€” An extension to load JPG, PNG and other images efficiently.
  • ImageTransparencyCalculator β€” Tracks whether a transparent area is clicked or not.
  • Imp β€” Image processing and filters on an image buffer.
  • QRCode – A small extension to encode and decode QR codes.
  • Runtime Atlas β€” Runtime atlas creator.
  • Screenshot β€” An extension for taking screenshots.
  • Sharp Sprite β€” An implementation of Rotated Grid Super-Sampling.
  • World Map β€” A worldmap tool that loads in SHP files and displays them.
  • πŸŒ™ vivid β€” Color manipulation library.

Hardware

  • Battery β€” Battery status on Android.
  • ButtPlug β€” Support for buttplug.io open-source standards.
  • Camera β€” Access to the camera on macOS, iOS and Android.
  • DefMidi β€” Interaction with MIDI devices.
  • Gyro β€” Gyroscope monitoring on iOS and Android.
  • SafeArea β€” Safe area handling on iOS and Android.
  • TapticEngine β€” Taptic Engine on iOS.
  • Vibrate β€” Alternative vibrate extension primarially for Android.

HTML5

  • AdBlock Detector β€” Detect if a browser is using Adblock.
  • DomainLock β€” Secure your HTML5 Defold games so they can't (easily) be stolen by other sites
  • HTML Loader β€” HTML loader example with a progress indicator.
  • JsToDef β€” Send messages from JavaScript to Defold.
  • Playable Ads β€” Gulp tasks to bundle the Defold game into a single HTML file.
  • WebP Slash Screen β€” Using Webp for splash image.

Input

Math

  • DefMath β€” A module with a set of math functions.
  • Fast Stream β€” Helps to quickly push vector3 and vector4 into the buffer stream.
  • libdq β€” A library for dual quaternions.
  • Poly2tri β€” Fast and stable triangulation of convex or concave polygons.
  • SmoothDump β€” A native extension with smooth dump functions.
  • Voronoi β€” A small extension for Defold to add 2D voronoi functionality.
  • xMath β€” A re-imagining of vmath functions that avoid allocations.

Navigation

  • A-Star β€” A path finder and a-star solver.
  • DefArmy β€” A module to create groups of game objects, organize them and manage moving saving the pattern.
  • DefGraph β€” A module to create a graph map and move inside of it.
  • Grid Engine β€” Grid-based movement, interactions and utility features.
  • NavGO β€” A-star path finding for game objects.
  • πŸŒ™ Jumper β€” A pathfinding library designed for grid-based games.

Network

  • DefBit β€” Event, synchronization, RPC network library for multiplayer games.
  • DefNet β€” Networking modules and examples.
  • LuaSocket β€” Extended LuaSocket with the mime.core part.
  • Tiny Http β€” A simple HTTP server and client.
  • WebSocket β€” WebSocket connections.

Particle System

Physics

  • Box2D β€” An alternative to the inbuilt Box2D wrapper with a full range of features.
  • BulletFold β€” A simple and lightweight bullets handler.
  • Chipmunk 2D β€” Chipmunk 2D physics engine wrapper.
  • DAABBCC β€” A dynamic AABB tree collisions resolver.
  • Defluid β€” 2D fluid simulations based on metaballs.
  • Polygon Editor β€” 2D collision shape editor.
  • ReactPhysics3D β€” ReactPhysics3D wrapper.
  • πŸŒ™ bump β€” AABB collision-detection library for axis-aligned rectangles.

Platforms

Random

  • dicebag β€” Probability functions designed specifically for games.
  • PCG Random β€” PCG random generator.
  • RNG β€” Multi-algorithm random number generator using instances.
  • SplitMix64 PRNG β€” SplitMix64 random generator.
  • UUID4 β€” UUID v4 generator.

Render

  • Easer β€” Render script content switcher at run-time.
  • Projections β€” A sample project showing the different render script projections.

Services

  • DiscordRich β€” Rich Presence on Discord.
  • Facebook β€” Facebook SDK for iOS, Android and HTML5.
  • GameKit β€” Apple Game Center integration.
  • GPGS β€” Google Play Game Services integration.
  • Sign In with Apple β€” Native signing-in with Apple ID.

Shaders

  • Blur Shader β€” Blur shader example.
  • Box2D Lighting β€” 2D lighting using Box2D raycasting.
  • DefBlend β€” Blend solid colors with your sprites using various blending modes.
  • DefFX β€” A collection of useful shader effects.
  • DefMaterial β€” A library of materials and textures for 2d and 3d objects.
  • Defragments β€” Simple examples with fragment programs from Shadertoy.
  • DeLab-2D Dissolve β€” 2D dissolve effect shader sample project.
  • Dissolve FX β€” An example of implementing the dissolve effect for sprites.
  • GLInfo β€” Getting some OpenGL params.
  • Horri-Fold β€” A Lo-Fi Horror shader.
  • Lights and Shadows β€” Example of how to achieve pixel perfect shadows in a 2D view.
  • Lumiere β€” A collection of post processing effects.
  • Normal Map Lighting 2D β€” Normal map example render pipeline for 2D sprites.
  • Pixel Planets β€” Port of Pixel Planets shaders.
  • Point Light β€” Omnidirectional shadow map implementation.
  • Shader Examples β€” A collection of shader examples.
  • Software Renderer β€” A software renderer implementation.
  • SptirePallete – Example project to show a possibility of changing palette using a palette texture.

Sound

  • Blip β€” A procedural generator of 8-bit sound effects.
  • DeBeat β€” A sound mixer.
  • DecodeOgg β€” Decoding ogg files in wav.
  • FMOD β€” FMOD sound effects engine integration.
  • MOD Player β€” Chiptune player for .xm and .mod files.
  • OpenAL β€” Provides 3D audio, pitch control and other stuff.
  • OSC β€” An Open Sound Control protocol library.
  • ZzFX β€” Zuper Zmall Zound Zynth.

System

  • AdInfo β€” Provides access to advertising information and status on iOS and Android.
  • Clipboard β€” Access the system clipboard.
  • Def-Diags β€” Open and save dialogs for Desktop.
  • Def-Mnu β€” Native context and app menu library for macOS and Windows.
  • DefOS β€” Extra native OS functions on macOS, Windows, Linux and HTML5.
  • Defpfd β€” Portable File Dialogs.
  • DefProcess β€” Check if a Windows process is running.
  • FileDrop β€” Drag and drop files handling on macOS and HTML5.
  • Inter-App Communication β€” Inter-app communication on iOS and Android.
  • OpenCL β€” OpenCL for parallel and massive computations.
  • Permissions β€” Query and request application permissions on Android.
  • Push Notifications β€” Push notifications on iOS and Android.
  • Review β€” iOS and Android.
  • Sharing β€” Native sharing screen on macOS, iOS, Android and HTML5.
  • StrictMode β€” Gives a possibility to use StrictMode on Android.
  • UpTime β€” Allows receiving a system uptime.
  • VideoPlayer Native β€” A fullscreen native video player on iOS and Android.
  • Vulkan β€” Vulkan graphics adapter.
  • WebView β€” Loads and displays web pages.

Templates

  • Crit Boilerplate β€” Critique Gaming's starter project with many features out-of-box.
  • Fuior Example β€” Ready-to-use starter project based on Crit, Monarch and DefOS.
  • Insality Template β€” Insality's new project template.
  • LowRes β€” A template project for lowres and pixel-art games.
  • Platformer β€” A template project for a platformer game.
  • Text Adventure β€” Text adventure template with Ink.
  • Visual Novel β€” Visual novel template with DefSceneManager and Ink.

Text

  • ChatBot β€” Chatbot using the approach similar to PullString.
  • DefArc β€” Arcweave runtime to easily create branching, interactive narratives in your games.
  • DefGlot β€” Localization module.
  • defold-ink β€” Ink language runtime for compiled JS files.
  • Defork β€” A parser for JSON files exported from Twine.
  • DefString β€” A module with a set of extra string functions.
  • Fuiur β€” A domain-specific language for narrative design.
  • LPeg β€” A pattern-matching library.
  • Narrator β€” Ink language runtime that works with Ink files.
  • Polyglot β€”A simple Polyglot to Defold tool for game localizations.
  • UTF8 β€” Adds UTF-8 support to Lua.
  • πŸŒ™ i18n β€” A very complete localisation i18n.

Tile

  • Autotiling β€” Adds autotiling to Defold tilemaps.
  • Detiled β€” A set of tools to make work with Defold and Tiled easier.
  • Moku β€” Map utility and auto-tiling module.
  • Tile Raycast β€” Ray casting in tiled worlds using DDA algorithm.
  • Tiled Example β€” Example of using Tiled as level editor for game.

Time

  • Chrono β€” Reliable time from Google's NTP servers.
  • Chronos β€” High resolution monotonic timer with nanoseconds.
  • DefQuest β€” Setup, track, and check real world time countdowns based on OS or server time.
  • DefUniCo β€” A coroutine library.
  • Human Time β€” Library to get a "human time".
  • Timer – Provides a visual timer widget.
  • πŸŒ™ tick β€” A small module that simplifies the calling of functions at a set interval or after a delay.

UI

  • Dear ImGUI β€” ImGUI wrapper for creating a debug interface or in-game tools.
  • DeFine β€” A UI/UX library providing fundamental components.
  • Dirty Larry β€” A quick and dirty GUI library.
  • Druid Assets β€” A marketplace with custom styles and components for Druid.
  • Druid β€” A framework of wide range user interface components.
  • DSFonts β€” A set of shaders and materials for the distance field font.
  • efSceneManager β€” Scene manager suitable for visual novels and adventure games.
  • FontScale β€” Returns the preferred font scaling factor on the device.
  • Gooey β€” A lightweight GUI system inspired by Dirty Larry.
  • ImNodes β€” Example of how to create node/flow fraphs with Dear ImGUI.
  • Monarch β€” Screens and navigation manager.
  • NativeText β€” Renders native text into an image resource.
  • NetImGUI β€” Remotely displaying and controlling Dear ImGUI content.
  • Printer β€” A symbol-by-symbol text writer.
  • RichText β€” Text styling based on an HTML inspired markup language.
  • Typewriter β€” Styled text output with typing animation.
  • whDefRouter β€” A screen management solution.
  • Yoga β€” An embeddable and performant flexbox layout engine.

Utilities

  • AHash β€” A simple module for automatic hash reusing.
  • AURL β€” Automatic URL reusing.
  • Crit β€” Battle-tested collection of modules for game development.
  • DefKit β€” Component based scripts for Defold inspired by the Game Maker engine.
  • Defold Persist β€” A simple interface for saving and loading data.
  • Defold Wrap β€” A tiny library to help you change the way you code on Defold.
  • DefSave β€” A module to save and load settings or user data.
  • Eva β€” Basic toolkit designed for mobile games with meta-game.
  • Hashed β€” A small utility library to automatically use hashed strings.
  • Ludobits β€” A set of useful utilities and wrappers.
  • m β€” A module for creating hot-reloadable modules.
  • MD5 β€” Native MD5 generator from string.
  • πŸŒ™ betteries β€” Reusable dependencies for games made with Lua.
  • πŸŒ™ Knife β€” A collection of useful micro-modules for Lua.
  • πŸŒ™ lua-algorithms β€” General algorithms and data structures.
  • πŸŒ™ LuaFun β€” A high-performance functional programming library.
  • πŸŒ™ lume β€” A collection of functions, geared towards game development.
  • πŸŒ™ Microlight β€” A little library of useful Lua functions.
  • πŸŒ™ Moses β€” A Lua utility-belt library for functional programming.
  • πŸŒ™ Penlight β€” Provides the batteries that Lua doesn't.
  • πŸŒ™ RxLua β€” Reactive power of Observables.
  • πŸŒ™ sandbox β€” A Lua sandbox for executing non-trusted code.
  • πŸŒ™ Serpent β€” Lua serializer and pretty printer.
  • πŸŒ™ syncX β€” An implementation of a CRDT synchronization algorithm.

Examples

Apps

  • Autonews β€” A simple auto news grabber and organizer.
  • Cold Path Map Editor β€” Map Editor for the Cold Path game.
  • Color Picker β€” A pretty basic HSV and RGB color picker.
  • MultiViewer β€” A very basic multi-image viewer intended for displaying art references.

Experiments

Games

  • 2.5D Shooter β€” Prototype of 2.5D shooter like Wolfenstein.
  • Ben James 171 β€” A countless list of examples of mini-games by Ben James.
  • Breakout β€” A barebones Breakout clone.
  • britzl Examples β€” A collection of several small examples.
  • Climberz β€” An infinite climber with Web Monetization support.
  • Driller β€” 3D first-person shooter for Ludum Dare 48.
  • Flappy Bird β€” Flappy Bird clone implementation.
  • Horror 3D β€” Horror 3D game inspired by Slender.
  • Infinite Runner β€” Infinite runner sample project.
  • JizSaw β€” Jizsaw puzzle game example.
  • Ladybug Ball β€” A simple yet challenging puzzle platformer with a ball and full physics.
  • Linker and Switch β€” A simple Linker and Switcher game.
  • Love Balls β€” A linker game with using ECS.
  • Lowrez Inviders β€” A simple Space Invaders clone with a 64x64 pixel resolution.
  • Merge Getaway β€” 3D cars merger for Ludum Dare 50.
  • Mine Runner 3D β€” A 3D endless runner game using ECS.
  • Mini Mega Party β€” Multiplayer one-button mini games inspired by the Wario Ware series.
  • Numberz β€” Defold version of the zNumbers game.
  • Pixel Line Platformer β€” A sample project for a platformer game.
  • Pokedex5E β€” An open-source Pokemon database game.
  • Pong β€” An implementation of the classic game Pong.
  • Secret Moon Station β€” A short platformer game with Web Monetization.
  • Slasher Prototype β€” A game prototype with 2.5D perspective view, levels loader, the hero controller, monsters and basic AI logic.
  • Tetris β€” A tetris game clone.
  • Throw a Cow β€” An implementation of the popular game Angry Birds.
  • Towerz β€” Defold version of Tipsy Towers.
  • TweetFighter β€” A game of decision making with tweets.
  • Warbattles RTS β€” A RTS sample project.
  • XOXO β€” Tic Tac Toe game for reuse when testing different server implementations and backend services.

Showcase

Desktop

Mobile

Web

About

Alternative Awesome Defold

License:Creative Commons Zero v1.0 Universal