Standalone & CLI Overview
For developers who require maximum control over their environment, Charon offers a flexible standalone distribution. This version is built for those who prefer working outside of a specific game engine or need to automate their data workflows.
1. What is it?
The standalone version is a cross-platform .NET 8 CLI application. It operates as a dual-purpose tool:
Headless CLI: A powerful command-line interface for data manipulation and code generation.
Local HTTP Server: By launching a local server, it provides a high-performance browser-based UI for visual data modeling and editing without requiring an internet connection.
2. Which problem does it solve?
While the engine plugins are great for standard development, the Standalone/CLI version addresses specialized technical requirements:
Custom Pipeline Integration: Easily integrate game data validation and code generation into custom build scripts or tools.
CI/CD Automation: Run data integrity checks and generate source code automatically on build servers (GitHub Actions, Jenkins, etc.).
Modding Toolsets: Distribute a lightweight, engine-agnostic tool to your players, enabling them to create and edit game content safely.
Engine-Agnostic Workflows: Work on game data for custom engines or projects that don’t use Unity or Unreal.
3. For whom?
This version is tailored for advanced users and technical leads who are comfortable with the terminal. It is ideal for:
Tools Engineers building custom development pipelines.
Technical Designers who need a standalone environment for content creation.
Build Engineers automating game data processing in the cloud.
Prerequisites
Standalone application uses dotnet-charon <https://www.nuget.org/packages/dotnet-charon> tool, which is a .NET Core application built for .NET 8.
Download and install NET 8+.
Make sure you have write access to
%PROGRAMDATA%/Charon.
Download and install NET 8+.
Make sure you have write access to
/Users/<username>/.config/Charon.Make sure
dotnetis available from$PATH.
Download and install NET 8+.
Make sure you have write access to
/home/<username>/.config/Charon.Make sure
dotnetis available from$PATH.
Checking Available .NET Versions
# check for dotnet already installed
dotnet --list-runtimes
# output for dotnet --list-runtimes
Microsoft.AspNetCore.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 8.0.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 9.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] # <- this one is fine
Microsoft.NETCore.App 9.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] # <- this one too
Installation and Updates
You can use just two commands to install the command line tool, or use a bootstrap script that will check dependencies and installed software, and then download and run the tool for you.
dotnet tool (recommended)
# install charon globally (run it once)
dotnet tool install -g dotnet-charon
# update global tool
dotnet tool update -g dotnet-charon
# make empty game data file
charon INIT ./gamedata.json
# run editor
charon ./gamedata.json
Bootstrap Script
Two bootstrap scripts which download and run latest version of Charon on your PC:
RunCharon.batfor Windows
RunCharon.shfor Linux or MacOS
Warning
Bootstrap scripts require .NET SDK️ to run, not only bare .NET Runtime.
Both scripts require the dotnet tool to be available in PATH.
- Download one of the scripts into a local folder
charon.Navigate to the local folder
cd charon.Run
RunCharon.batorRunCharon.shdepending on your OS.Wait for the script to automatically download and upgrade
dotnet-charon tool, and display help text.Create an empty file named
RunCharon.bat INIT gamedata.jsonRun in standalone mode:
RunCharon.bat gamedata.json
Or use following bootstrap script:
rem ##### Load and run bootstrap script #####
@echo off
mkdir Charon
cd Charon
curl -O https://raw.githubusercontent.com/gamedevware/charon/main/scripts/bootstrap/RunCharon.bat
./RunCharon.bat INIT ./gamedata.json
rem ##### Start editor #####
./RunCharon.bat ./gamedata.json --log out
##### Load and run bootstrap script #####
mkdir Charon
cd Charon
curl -O https://raw.githubusercontent.com/gamedevware/charon/main/scripts/bootstrap/RunCharon.sh
chmod +x RunCharon.sh
./RunCharon.sh INIT ./gamedata.json
##### Start editor #####
./RunCharon.sh ./gamedata.json --log out
Creating and Editing Game Data
Any empty gamedata.json file could be used as starting point for standalone application launch. The editor will automatically fill the empty file with the initial data.
# charon INIT .\gamedata.json
# or
# copy /y NUL .\gamedata.json >NUL
charon .\gamedata.json --log out
# charon INIT ./gamedata.json
# or
# touch ./gamedata.json
charon ./gamedata.json --log out
After finishing your work, you could just terminate the process with CTRL+C keyboard shortcut or close terminal window.