This is a site to help gamers playing Colopl's "Runestory" with information about the game, much like a wiki This project is meant to fill the hole that, while there is a few vastly populated wikis in japanese, there are none for the global/english version of the game!
This project is divided into 3 basic pieces:
- Ingestion - How this project gets a baseline for data
- Overrides - How others can contribute to the data
- Website - a site to host the data in a filterable and searchable way
The ingestion piece is done by scraping a well known japanese wiki for Colopls Shirneko Project (Runestory). The tech used are:
- Python - I wanted to learn it and so used it for this part of the project. Be gentle :)
- Beautifulsoup - an excellent library for DOM parsing a websites contents!
- Google Translate API - used to translate the japanese wiki into broken, but legible, english.
The purpose of this piece of the assistant is to fix and/or correct any data provided from the ingestion pipeline. Example fixes are:
- Incorrect stats/skills, as Global Runestory differs from the japanese version.
- Add global exclusive character information, as these will not be in the ingestion based data
- Fix any translation errors into nicer english, etc.
The overrides are done using basic yaml file merging, and taking precedence to the override.yaml. Note: the merging is done in a strictly add/replace manner, so nothing can be removed with the override file.
Tech used for this:
- Python - again, one of my first python forays, so be gentle!
- Pyyaml - seems to be a pretty standard way of manipulating yaml files in pythong
God save me, its awful, but its there.
Tech:
- angularjs
- angular bootstrap
- font awesome
- amateur front end skills
Follow these guidelines for contribution and usage of the project
NOTE: THIS COSTS MONEY, BEWARE DANGER DANGER
To run the ingestion piece:
pip install
- Installs all required python frameworks for working with Runestory Assistant
- Add environment variable
GOOGLE_TRANSLATE_API_KEY
with the value of the developerKey from googles developer console
- this MUST be done in order to get translations to work for ingestion
python -u ingestion/shironeko_scraper.py
- Once properly configured, this will run and output a file to
build/basedata.yaml
. This file will be the fully translated raw baseline data
Overrides are simple yaml addtions to the overrides.yaml
. Simply follow the format prescribed by the data.yaml
for the website, and you'll be fine!
To deploy the website a few scripts have been provided for convenience:
- To deploy:
./deploy.sh
- To teardown:
./teardown.sh