ScalaQuest
ScalaQuest is an exam project for PPS and LSS courses in UNIBO, made by Riccardo Maldini, Filippo Nardini, Jacopo Corina, Francesco Gorini, Thomas Angelini.
The idea behind the project
The basic idea is to create a framework for the implementation of games of the Interactive Fiction genre, in which the player can use text commands to influence the environment and continue in the game (e.g. Zork).
Official documentation
The official documentation of the project consists in:
- PPS Report and LSS Report. The previous links show a web version of reports, auto-generated from the report sources. You can also consult them in a LaTeX PDF format;
- An appendix document including the Scrum Overview, a summary of what has been done in each Scrum, with an index of linked issues and PR for each one. The document has been incrementally updated at each Scrum Review meeting. The document is also available as a LaTeX PDF;
- The project backlog, publicly available as a GitHub Projects board;
- The official Scaladoc of the Core and CLI modules;
- The official Coverage reports for the Core and CLI modules.
How to use the game creation framework?
Including the cli
jar is sufficient to start programming your CLI game, as the module includes core
as an internal dependency. Importing the core
solely is recommended only if you want to define your personal game interface, different from the standard CLI (a web interface, for example).
You can use core
or cli
libraries by including them as dependencies for your Gradle project. Add this lines to the build.gradle.kts
:
dependencies {
// Add the cli as dependency. This is sufficient to start
// building your game. Change the version to the latest available.
implementation("io.github.scalaquest:cli:1.0.0")
// Add the core as dependency. Change the version to the latest available.
implementation("io.github.scalaquest:core:1.0.0")
}
You can find here the latest version for the core
, and here the latest version for the cli
.
Alternatively, you download the libraries from the release page, and include them as project dependencies.
How to play the example games?
ScalaQuest includes some examples that shows how to correctly use the library. You can use them as your game template, if you don't want to start from scratch. Download the latest EscapeRoom, WizardQuest or PokeQuest releases, unzip the chosen game and run it from your terminal (bin/gamename
for Unix devices, bin/gamename.bat
for Windows ones).