praxish

Praxish

Steps toward an open-source reimplementation of the Praxis logic language, which was used for content authoring in the ambitious interactive drama framework Versu.

Usage

To use Praxish in your own project, you’ll first want to import the core library files in the following order:

We also provide a couple of (optional, experimental) core modules that implement different decision-making strategies for autonomous characters:

Then you can look at the various demos for examples of how to integrate Praxish functionality into a game loop:

Development history

The original Praxish paper, published at AIIDE 2023, is probably the best starting point if you want to read more:

@inproceedings{dameris2023praxish,
  title={Praxish: a rational reconstruction of a logic-based DSL for modeling social practices},
  author={Dameris, James and Roman, Rosaura Hernandez and Kreminski, Max},
  booktitle={Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment},
  volume={19},
  pages={407--415},
  year={2023}
}

We archived the version of Praxish described in this paper as a GitHub release, then continued developing new features atop the basic Praxish substrate.

Our next major Praxish-based project (intended to demonstrate an interaction technique called “play what I mean”, or “PWIM” for short) introduced several improvements to the Praxish library:

For a bit more on PWIM, see our FDG 2024 demo paper; the demos/pwim subfolder of this repo; or the separate repo that we used for PWIM development:

@article{kreminski2024cheap,
  title={Cheap and Easy Open-Ended Text Input for Interactive Emergent Narrative},
  author={Kreminski, Max},
  journal={arXiv preprint arXiv:2406.00942},
  year={2024}
}

Praxish development continues today! Stay tuned for more…