What Skills or Tools Do I Need to Use Kristal?
Updated
To use Kristal, you need two things before you start: the LÖVE framework (the engine Kristal is built on) and working knowledge of Lua — or a willingness to learn it. The official site is explicit on this point: "you must know Lua, or be willing to learn it." If you have never programmed before, expect to spend time on Lua fundamentals before you can build anything meaningful. If you already write Lua, you can go straight to the wiki and start experimenting.
The two hard requirements
1. LÖVE (the runtime)
Kristal is described as "a powerful DELTARUNE fangame and battle engine, made with LÖVE." LÖVE is the framework that actually runs the game — Kristal is the layer on top of it that gives you DELTARUNE-style worlds, battles, and menus. Practically, this means:
- You install LÖVE first, then run Kristal through it.
- When something breaks at the framework level, the error is often a LÖVE error, not a Kristal one.
- You don't need to master LÖVE to use Kristal, but you do need it installed and working.
2. Lua
Lua is the scripting language you'll use to define battles, characters, cutscenes, and custom logic. The site doesn't soften this: knowing Lua is a prerequisite, not an optional bonus. Two paths work:
- You already know Lua — skip ahead to the wiki and the source code.
- You don't know Lua — the project maintains its own Lua tutorial to get you started. Use it before touching the engine, or you'll be copying code you can't debug.
What you'll actually reference
| Resource | What it's for |
|---|---|
| The wiki | "More information on how to use Kristal" — the primary how-to reference |
| The Lua tutorial | Getting from zero to functional Lua, maintained by the project |
| The source code | Reading how Kristal itself works; also the contribution path |
The site points to the wiki as the place to learn usage, and to the source code for anyone who wants to contribute. Both are first-party, so they match the current version better than scattered tutorials.
A realistic starting order
- Install LÖVE and confirm it runs a trivial project.
- Work through the project's Lua tutorial until you can write and debug a small script on your own.
- Read the wiki's usage pages to understand how Kristal structures worlds and battles.
- Open the source code when you want to see how a specific feature is implemented or want to contribute.
Common sticking points
- Skipping Lua. The most common failure mode is jumping into Kristal with no Lua background, then getting stuck on basic syntax errors instead of engine problems. The site warns about this directly.
- Confusing LÖVE and Kristal. If you're unsure whether a problem is yours or the framework's, check whether the error mentions LÖVE internals.
- Expecting a no-code tool. Kristal is an engine for people who script. There's no indication it's a drag-and-drop creator, and the Lua requirement rules that out.
When Kristal is the right choice
Pick Kristal if you want to build DELTARUNE-style worlds and battles and you're comfortable learning Lua. If you want to make a fangame without writing code, this isn't the tool for that — the Lua prerequisite is the deciding factor. If you're already a Lua developer and a DELTARUNE fan, the combination of the wiki, the Lua tutorial, and open source code gives you everything you need to start.