flonso / baranka

Software for managing role play game Baranka 2019. Inspired by https://github.com/LucieSteiner/tildawn

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Baranka Live-action role playing game software

Software for managing role play game Baranka 2019. Based on https://github.com/LucieSteiner/tildawn

Requirements

This code is built using the Laravel framework.

PHP Requirements:

  • PHP >= 7.1.3
  • BCMath PHP Extension
  • Ctype PHP Extension
  • JSON PHP Extension
  • Mbstring PHP Extension
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension

Development progress

  • Teams
    • Create with name, initial score and initial score multiplier
    • Update with manual bonus/penalty on score and score multiplier
    • Retrieve basic team information (name, current score and score multiplier)
    • Retrieve the global team ranking based on points per event category
  • Players
    • Create a player with first name, last name, team and an optional unique code identifier
    • Update a player's level, score or code.
    • Identify a player based on
      • An id
      • A code value
    • Store additional player info
    • Retrieve the global player ranking (this can be done by querying all players and sorting them by score)
  • Game phases
    • Start a new game phase, possibility to give a custom phase number (to compute items' based on it)
    • Stop a game phase
  • Items
    • Create an item with name, amount of points gained for discovery, amounts of points gained with the related sidequest, starting phase for its discovery, score multiplier increase value and discovery status.
    • Update an item's found status
      • Distribute discovery points based on game phase and number of players to register it.
      • Discovery points reduce by 100 for each two game phases it is possible to discover the item in
      • Distribute adventure points among player validating it
  • Board game
    • Be able to register points gained in the board game category
  • Quests
    • Be able to register points gained in quests
  • Events
    • Save an event for each gain/loss of points as well as who it benefits to
    • Track which user of the system has performed an action (optional)
    • Compute rankings per event category
  • Custom value settings
    • Configure value used for computations (such as score, item loss of value, ...)

Development server

Install project dependencies:

composer install npm install

Then configure your environment file:

cp .env.example .env

And adapt the parameters to your local configuration with your text editor of choice. Don't forget to generate a fresh key using php artisan key:generate.

Run development server:

php artisan serve

Warning If you are testing the frontend you need to run two instances of php artisan serve because it is single threaded. Simply add API_HOST= and API_PORT= in the .env file with the port and host of the development server instance you DON'T use for displaying the frontend.

If you update the CSS/JavaScript : npm run watch

Important Do not forget to run migrations before starting developing by executing php artisan migrate.

Important folders

Coding standards

The Laravel coding good practices can be found at the following url https://www.laravelbestpractices.com/.

About

Software for managing role play game Baranka 2019. Inspired by https://github.com/LucieSteiner/tildawn


Languages

Language:PHP 87.9%Language:HTML 12.1%