Online-player of text quests from the "Space Rangers" game in Gemini Protocol.
The capsule is designed as an extension for the GmCapsule gemini server.
The quest-player itself is ported from the space-rangers-quest repo. Many thanks to @roginvs!
![]() |
![]() |
Some quests are translated into several languages: CZE, DE, EN, ES, FR, HU, PL, RU. So the capsule is multilingual.
Preparations
# clone repo
$ git clone https://codeberg.org/cthulhu/gm-space-rangers-quests.git
$ cd gm-space-rangers-quests
# prepare virtual environment
$ python3 -m venv .venv
$ source .venv/bin/activate
(.venv) $ pip install -r requirements.txt
# generate 127.0.0.1 cert
(.venv) $ ./gen-selfsigned-cert.sh
Launch:
(.venv) $ PYTHONPATH=$PYTHONPATH:./ gmcapsuled -c config-local.ini
Open gemini://127.0.0.1/ in gemini-browser (Lagrange recommended).
/borrowed/qm/-- dir for quests from "Space Ranges"/gmsrq/-- gemini capsule/srqmplayer/-- python port of the quest player/content/-- static content, quest images/sounds/tracks99_gm_mod_srquests.py-- GmCapsule server extension
Create migration:
$ pw_migrate create --auto \
--database "sqlite:/./users/gmsrq.sqlite" \
--directory ./gmsrq/migrations \
<migration_name>Migrate:
$ pw_migrate migrate \
--database "sqlite:/./users/gmsrq.sqlite" \
--directory ./gmsrq/migrationsRollback:
$ pw_migrate rollback \
--database "sqlite:/users/gmsrq.sqlite" \
--directory ./gmsrq/migrations/ \
--count 1Localization:
$ pybabel extract --project=gmsrq --version=0.1 -o locale/gmsrq.pot \
srqmplayer/*.py gmsrq/*.py
$ pybabel init -D gmsrq -i locale/gmsrq.pot -d locale -l ru
$ pybabel update -D gmsrq -i locale/gmsrq.pot -d locale
$ pybabel compile -D gmsrq -d locale
