Skip to content

DangarStu/JACL

Repository files navigation

JACL Adventure Creation Language v4.7

JACL is an interactive fiction authoring system with console and web-based
interpreters. Games are plain-text source files; no compilation step is
needed.

Building from source
--------------------

    cd src
    ./configure
    make install

If the configure script does not exist, generate it with:

    autoconf

The configure script will detect your platform and available libraries,
then build the appropriate interpreters. Binaries are placed in the bin/
directory.

Options:
  --with-language=LANG  Set the interpreter language. Supported values:
                        english (default), french, german, indonesian

  Example: ./configure --with-language=french

Optional dependencies:
  ncurses  - Required for 'jacl' (GlkTerm console interpreter)
  libfcgi  - Required for 'fcgijacl' (FastCGI web interpreter)

If these libraries are not found, the corresponding interpreters will be
skipped. The remaining interpreters (bjorb, cjacl, cgijacl) have no
external dependencies beyond a C compiler.

Interpreters:
  jacl      - console interpreter (GlkTerm + ncurses)
  cjacl     - console interpreter (CheapGlk, no dependencies)
  cgijacl   - standalone web server interpreter
  fcgijacl  - FastCGI web interpreter (for use behind Apache/nginx)
  bjorb     - utility for packaging game resources

Quick start
-----------

    bin/jacl projects/grail.jacl

For the full language reference see the Author's Guide:

    guide/index.html

Desktop app
-----------

Pre-built desktop apps -- an Electron shell around cgijacl with the full
web interface (clickable map, images, sound) -- are on the Releases page:

    https://github.com/DangarStu/JACL/releases/latest

Debian / Ubuntu (apt):

    curl -fsSL https://apt.dangarmarine.com.au/jacl.gpg | sudo gpg --dearmor -o /usr/share/keyrings/jacl.gpg
    echo "deb [signed-by=/usr/share/keyrings/jacl.gpg] https://apt.dangarmarine.com.au stable main" | sudo tee /etc/apt/sources.list.d/jacl.list
    sudo apt update && sudo apt install jacl-desktop

  macOS        download the .dmg from the Releases page
  Other Linux  download the .AppImage from the Releases page (runs anywhere)

Deploying to Apache
-------------------

    cd src
    sudo make apache

This installs fcgijacl behind Apache with mod_fcgid, copies all games
and static assets, deploys the Author's Guide to /guide/, and generates
a landing page at /var/www/html/index.html listing every game that has
`constant game_publish true` in its source.

VS Code syntax highlighting
----------------------------

    code --install-extension editors/vscode-jacl/jacl-0.1.0.vsix

About

Interpreted language for writing interactive fiction.

Resources

License

Stars

4 stars

Watchers

3 watching

Forks

Packages

 
 
 

Contributors