ternence-li / castle-games

Castle's legacy game building environment

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Castle

This is Castle Games, an environment for creating and distributing lua games for Mac, Windows, iOS, Android, and maybe Linux. The Castle team worked on this in 2018-2019. It is currently in stasis while we work on castle.xyz; however, it might still boot up and run games.

Project Structure

  |-- base              # Lua source for the Ghost engine
  |-- cef               # CEF lib for macOS and Windows
  |-- ci                # continuous integration for automatic Castle builds and releases
  |-- common            # crossplatform native code
  |-- desktop           # Castle's React UI source code
  |-- ghost-extensions  # supporting libraries for the Ghost engine
  |-- love              # Love2d source
  |-- macosx            # macOS-specific native code
  |-- megasource        # windows build stuff
  |-- mobile            # mobile source
  |-- node              # Embedded node server for running some cross-platform operations
  |-- openssl           # openssl lib for Ghost engine
  |-- shared-assets     # static assets that need to be included crossplatform
  |-- web               # built JS bundles for Castle's React UI
  |-- win               # Windows-specific native code

Code Style

  • Run format.sh after making changes to native code.
  • For JS code in the desktop UI, see desktop/README.md.

Run on macOS

See macosx/README.md.

Run on mobile

See mobile/README.md.

Run on Windows

Prereqs

Build and run

Use either Git Bash or WSL to run commands in.

  • Make sure Git LFS is initialized.
  • Go into the 'megasource/' directory.
  • Run sh configure_cmake.sh. You don't need to do this every time, but you need to do it at least on the first build.
  • Run cmake.exe --build build --config Debug. If the build succeeds but is unable to write 'Castle.exe', make sure any existing Castle processes are terminated and try again. On WSL, sh kill_castle.sh under 'megasource/' works for terminating Castle processes.
  • Run ./build/Debug/Castle.exe to launch the Castle binary that was built.

Run on Linux

See LINUX.md.

About

Castle's legacy game building environment

License:Other


Languages

Language:C++ 53.8%Language:C 36.7%Language:Lua 2.2%Language:Shell 1.6%Language:HTML 1.3%Language:Objective-C 0.9%Language:Makefile 0.9%Language:CSS 0.5%Language:JavaScript 0.4%Language:CMake 0.3%Language:Assembly 0.3%Language:TeX 0.3%Language:M4 0.2%Language:Java 0.1%Language:Python 0.1%Language:Perl 0.1%Language:C# 0.0%Language:Objective-C++ 0.0%Language:Pascal 0.0%Language:Ada 0.0%Language:Roff 0.0%Language:DIGITAL Command Language 0.0%Language:Batchfile 0.0%Language:PowerShell 0.0%Language:GLSL 0.0%Language:Rich Text Format 0.0%Language:Metal 0.0%Language:NSIS 0.0%Language:CLIPS 0.0%Language:Awk 0.0%Language:Ruby 0.0%Language:Starlark 0.0%Language:SAS 0.0%Language:Module Management System 0.0%Language:Nix 0.0%Language:sed 0.0%