DownloadsGet the Castle client.Frequently Asked QuestionsLearn more about Castle.ExamplesUse this list of examples to bootstrap your game.Quick StartGet started in under 5 minutes.Creating an AccountWhy and how to create a Castle account.Make Your First GameFollow this small tutorial to get oriented with a basic workflow.Describe your Game with a Castle Project FileThis tutorial will provide an overview and motivation for a project file.Adding Games to your ProfileShare games you made by adding them to your profile on Castle.Hosting Your Own GamesLearn how to add games to Castle which are hosted on another service.Game Dimensions and ScalingChange the dimensions and scaling behavior of your Castle game.Manually Make a New Castle Game from ScratchAn educational resource for advanced usersCastle Project File ReferenceThe project file contains the title, description and other metadata about your game.User API ReferenceGet information about users playing your game.Post API ReferenceIntegrate with Castle's post system.Storage API ReferenceStore shared or per-user data in the cloud.Game API ReferenceNavigate to or get information about other games on Castle.UI API ReferenceDisplay user interface elements such as buttons and text boxes that allow users to interact with your game.System API ReferenceGet information about or perform activities relating to the system Castle is running on.Code Loading API ReferenceLow-level functionality for loading Lua code over the network.Community Reference LinksUseful community links for learning about Lua and LÖVE.

Frequently Asked Questions

By The Castle Team // 3-4-2019

What is Castle?

Castle is a platform and a community for making, playing, and sharing games. Right now, Castle is composed of:
  • The Castle community, a group of creators and players who hang out on Discord, Twitter, and in the global chat room within Castle's desktop client.
  • The Castle desktop client, a program for Windows and macOS which lets you build and play Castle games.
  •, a website which contains guides and documentation about Castle, and lets you share web links about Castle games and community members.
  • Community-supported resources for making games, such as share.lua, a library that helps create multiplayer games.
To learn about why Castle exists, check out the Castle manifesto.

How do I make Castle games?

If you have a computer with Windows or macOS and a text editor, you already have most of what you need. Castle games are written in Lua, and run inside the Castle client. Head over to our getting started guide and we'll walk through creating a simple Castle game.

Can I use Castle on Linux?

Castle's underlying tech stack can run on Linux, but we're a small team and don't currently maintain a build of the Castle desktop client for Linux. We might do that at some point, so if this interests you, please let us know!

Can I use Castle on my phone?

We are currently working on making Castle available on iOS and Android!

Is Castle a fantasy console?

No. Castle doesn't impose specific design constraints on its games, or an artificial hardware spec or virtual interface to a machine. You can create anything that can reasonably be expressed in Lua and that can run on a computer.
Castle games use a library called LÖVE which contains some assumptions and constraints in its design. The Castle update loop assumes you use callbacks like love.update(dt) and love.draw().

Does Castle cost money?

It is free to make, play, and share Castle games. We believe in a low barrier to entry for creating games, and we also believe that games are better with other people. Our primary focus is to build a supportive community.
We also believe that game creators should be able to make money without sacrificing the quality of their art. In the future, if we can build a community that helps creators make money, we might take a cut of that money to help us sustain the Castle platform. We don't do this right now.