-
Notifications
You must be signed in to change notification settings - Fork 55
Home
Kristal is a powerful Deltarune fangame and battle engine, made with LÖVE. Easily play and create custom Deltarune stories, using the Lua scripting language with an accurate battle and overworld engine!
To find mods to play, get help with creating, or just talk about the engine, check out the Kristal Discord!
Each page will go into depth about how to use everything necessary to make a Kristal mod. These pages are often divided into multiple sections; you can get links to specific sections by clicking on the wiki sidebar. At the top of each page will be links to the files relevant to the topic described (e.g. the Objects page has a link to the Class file for the Object code), in case the viewer wants to look at the code directly.
- Playing Kristal: Explains how to install Kristal and its mods, and what options do.
- Mod Information: Describes how Kristal mods are structured, and gives important information on how to make them.
- Objects: How to create and use objects.
- Asset Management: Describes how to utilize assets within a mod, such as sprites and sound.
- Utilities and Debugging: Explains Kristal's built-in global functions and variables.
- Actors: Setting up sprite definitions for characters.
- Party Members: Party member setup (continued from Actors).
- Items and Spells: How to make items and spells, and describes the Inventory.
- Overworld: Process for making overworld rooms and using them.
- World Objects: Describes how the overworld creates and uses objects.
- Cutscenes: Writing cutscene code, and using formatting relevant to all text.
- Shops: Explains how to make shops and shopkeepers.
- Encounters: How to set up and initiate encounters with enemies.
- Battlers and Enemy Creation: Describes what Battlers are, and how to make enemies.
- Enemy Attacks: How to make attacks and bullets, and manipulate the arena and soul.
Downloading Kristal
Installing and playing mods
Game options
File structure
mod.json and mod.lua
Libraries
Save data
Game and Kristal variables and functions
Important tips
Using objects
Creating new objects
Extra notes
Collision
DrawFX
Sprites and the Sprite object
Custom fonts
Sounds and music
External libraries
Utility functions
Global variables
Debug shortcuts
Debug menus
Making an actor
ActorSprite
Default animations
Creating a party member
Using and overriding functions
Types of Items
Default items
Inventory
Defining a spell
Making rooms
Using rooms in your mod
The Map class
Game.world functions
Events and Controllers
Existing events
Characters
Types of Characters
Battle areas and World bullets
Making a cutscene
Starting cutscenes
The Text object
In-text modifiers
Creating a shop
Overridable functions
Shop states
Shopkeepers
Making an encounter
Game.battle functions
Battle and PartyBattler states
PartyBattlers and EnemyBattlers
Creating an enemy
Overridable functions
Misc. functions and variables