Getting Started

First things first

 * Turn on Developer Mode

How Fleshcult Works
Fleshcult originated as a web-based game, so it used to run on a server. The split between "server" and client still exists, even though they're both on the same machine, communicating via IPC rather than over a network. There is no web server, it's just two programs talking to each other.

What happens when you click on a link:
 * 1) Chromium Embedded Framework (aka CEF) is the browser engine I'm using. It receives your click.
 * 2) It sends a fake address to the server half. e.g. 		 http://localdynamic/fire_minion
 * 3) The game logic is written in Python, and that Python program looks up the function associated with the address and runs it.
 * 4) The Python program needs to send back some results, so it picks an HTML template to fill in with variables. These are in a template language called Jinja2.
 * 5)  CEF receives the new page and shows it to you.

Background sets
You can put new backgrounds into the game by putting them in a mod folder and writing a CSS file that points the game to them.

More about CSS modding

Visual/UI
You can rearrange and format the UI with CSS, but if you want to add brand new parts, you'll need to edit the HTML. Jinja has a some extra funky stuff with curly braces you'll need to learn about so you can substitute game variables into the page, loop over lists, etc.

There's also everything else Chromium supports, like Javascript, audio, even WebGL. The one thing you can't do is load stuff from the real internet, because I hijacked the bit that does that. You wouldn't want to anyway, because this is an old version of Chromium without an auto-updater, so it's not safe to use on the real internet.

More about HTML modding

New Characters/Dialogue
(Not yet!)

Fleshcult has a bunch of data files for characters and sex scene messages in JSON format. It'll have a series of built-in editors that let you edit these that you can get to from the main menu.

Find out more about:
 * Dialogue Editor
 * Archetype Editor (for characters)
 * Equipment Editor (for transformations)
 * Tome Editor
 * Location Editor

New Game Mechanics
(Not yet!)

More about Python modding

Creating a new mod
Click on Open Mods Folder in the Mods menu. This folder is where you can work on your mod while it's in development or install other mods manually. Steam Workshop operates out of its own folder.


 * 1) Copy paste the example mod folder.
 * 2) Rename it. The naming convention is 'username_modname', where username is just something to distinguish between different mods with the same name. It's not related to your steam username or anything.
 * 3) Rename the .ini and .css files to be the same name as your mod folder.
 * 4) Edit the contents of the .ini to give it a new display name, description, author and other metadata.
 * 5) Find out more about the different files inside the mod folder.