Giter Site home page Giter Site logo

anlumo / tttod Goto Github PK

View Code? Open in Web Editor NEW
4.0 3.0 0.0 10.67 MB

To the Temple of Doom!

License: GNU Affero General Public License v3.0

JavaScript 0.51% Rust 97.97% HTML 0.09% SCSS 1.43%
ttrpg rpg roleplaying vtt tabletop indianajones archeology

tttod's Introduction

To the Temple of Doom!

This is an adaptation of the game by that name by Storybrewers Roleplaying available for free here to the web.

It allows a group of people to play the game online (voicechat is also necessary but not provided). So, this is not a game by itself, just a tool that manages the hidden information needed for playing, and also keeping track of the character stats and conditions.

How to install

There is no convenient way to deploy the system currently, but that might come later. The application comes in two parts, the client side and the server side. Both are written in Rust, but the client side is compiled to Web Assembly, so it can be run in any modern web browser.

Server Side

You need to install the Rust environment, for example via rustup. Then navigate to the root directory of this project and enter

cargo run

It will take care of downloading all dependencies, building the binary for the current platform and running it. Note that there is a config file called config.yaml you might need to edit. The program also accepts a limited amount of command line flags, you can find out more by running

cargo run -- --help

Client Side

In addition to the Rust environment mentioned in the previous section, you also need to install npm for building the frontend. After you have done so, navigate to the tttod_frontend directory and enter

npm install
npm start

This will run the development environment (and also install the dependencies and compile the Rust part). Creating the files for web server deployment can be done with

npm run-script build

Deployment

The backend can serve the static files as well. When you run

npm run-script build

to build the frontend, the static files are stored in tttod_frontend/dist. Copy the content of this directory to wherever you want to serve the files from. Then edit config.yaml to point to that directory (server.static_path).

Using the System

Most of the things should be self-explanatory and most of the text is included on the web pages anyways, but it helps to read the original rules in full to know what's going on (it's not a long document anyways). If you navigate to the main path of the web site, you can enter a game name. Every player who enters the same name will participate in the same game. You need 3 to 5 players to proceed, and the server does verify this number.

Licenses & References

The sourcecode (and only the sourcecode!) in this repository is licensed under the AGPLv3. See COPYING.txt in this directory for more information.

Most of the text visible to the user has been copied from the original game linked in the first section. Permission has been kindly granted under the limitation that the software author earns no money from this work and that the original source is referenced. These terms have been complied with to the best of the ability of the software author. However, these parts are thus not licensed under the AGPLv3!

The images and fonts have been taken from various online sources under different licenses. Notably, the file named explosion.jpg is also only available for non-commercial purposes. You can find all of them here:

Images

Fonts

tttod's People

Contributors

anlumo avatar jan-ka avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.