A BBS-hálózat Commodore 64-es játékkézikönyve: keress csaknem 2900 cím között, nézd meg, ki és mikor készítette, olvass róluk, és cserélj csalásokat, tippeket a többi hívóval.
Elérhető:
teletypegames.org:2331, böngészőben a bbsweb-en, és a TTG Gate BBS-en át is
Ruby-alkalmazás a rubbs gemre építve, mint a Teletype BBS, az Alexandria BBS és a WarpEngine BBS.
Két arca van egy porton:
A hívás a rubbs BBS::Terminal kérdésével indul: a RETURN elfogadja a tippet, az 1 a modern arcot, a 2 a C64-est választja.
| Mi | Forrás | Licenc |
|---|---|---|
| A katalógus: cím, év, kiadók, fejlesztők, tervezők, zeneszerzők, műfajok, játékmódok, sorozat | Wikidata: minden videojáték, amelynek platformja a Commodore 64 (P400 = Q99775) | CC0 |
| Egy játékról | az angol Wikipédia-cikk bevezetője, kérésre lekérve | CC BY-SA 4.0, a képernyőn feltüntetve |
| Csalások és tippek | a hívók; egy admin ellenőrzi, mielőtt megjelennek | a hívóké |
A katalógus pillanatképe a boarddal együtt érkezik (config/catalog.json.gz); a futó board hetente újraolvassa a Wikidatát, és az új példányt a data/-ban tartja. Sikertelen frissítéskor a régi pillanatkép marad. Az év a C64-re megadott első megjelenési dátum, ha a Wikidatában van ilyen, különben a legkorábbi dátum, ezért néhány játékteremi átiratnál a játékteremi év látszik.
A GameBase64-et nem használjuk: a licence tiltja, hogy a GB64-adatok a GB64 Team írásos engedélye nélkül nyilvános boardra kerüljenek. Ha megadják, egy GB64-importáló kiegészítheti a Wikidata-katalógust.
Modern terminálon:
| Billentyű | Művelet |
|---|---|
| F2 | Cím keresése |
| F3 | Véletlen játék |
| Games menü | By year, By genre, By company, With tips |
| Enter vagy Alt-B | A játék Wikipédia-bevezetője |
| Alt-T | A játék tippjei |
| Alt-D | Tipp hozzáadása (az Alt-S elküldi) |
| F10 | A menü |
| Alt-X | Kilépés |
Commodore 64-en a főmenü: S keresés, Y év szerint, G műfaj szerint, C cég szerint, R véletlen játék, T tippes játékok, I a boardról, Q kilépés. Egy játék oldalán: W Wikipédia, T tippek, A tipp hozzáadása, Q vissza.
Az új tipp egy adminra vár; addig csak a beküldője látja a köszönetet. Egy hívás három tippet küldhet, 30 másodpercenként egyet, és a board óránként legfeljebb 30-at fogad.
| Változó | Alapérték | |
|---|---|---|
COMMODEX_BBS_CATALOG_SEED |
config/catalog.json.gz |
a képpel érkező pillanatkép |
COMMODEX_BBS_CATALOG |
data/catalog.json.gz |
a frissítés által írt pillanatkép |
COMMODEX_BBS_CATALOG_TTL |
604800 |
ennyi másodperc után olvassa újra a Wikidatát; 0: soha |
COMMODEX_BBS_WIKIPEDIA_CACHE |
200 |
a memóriában tartott Wikipédia-bevezetők |
COMMODEX_BBS_TIPS_DB |
data/tips.sqlite3 |
a tippek |
COMMODEX_BBS_TIPS_SEED |
config/tips.yml |
a boarddal érkező, eleve jóváhagyott tippek |
COMMODEX_BBS_DISCORD_WEBHOOK |
üres (ki) | minden új tippnél szól; titok, a szerveren a .env-ben |
Az adminok a szerveren moderálják a tippeket:
docker exec commodex-bbs bin/tips list # a várakozó tippek
docker exec commodex-bbs bin/tips approved # a jóváhagyottak
docker exec commodex-bbs bin/tips approve ID # mostantól látszik
docker exec commodex-bbs bin/tips reject ID # sosem látszik
A bin/refresh-catalog egy fejlesztői checkoutban új pillanatképet ír a Wikidatából.
A masterre pusholás a Woodpeckerből élesít (RuboCop, compose-ellenőrzés, ci-deploy commodex-bbs); a konténer neve commodex-bbs, a helye /srv/stacks/commodex-bbs, a data/ megmarad a deployok között. Az entrypoint induláskor frissíti a rubbs-t.
A kód a házi rétegezést követi: a lib/domain (GameModel, TipModel, SummaryModel; a katalógus-, Wikidata-, Wikipédia- és tipp-repository; CatalogService, AboutService, TipService; a CommodexBBS kompozíciós gyökér) semmit sem tud a telnetről, a lib/ui pedig a UI::Modern-t és a UI::Petscii-t tartalmazza. A katalógus a memóriában él (az egész board kb. 30 MB), a tippek SQLite-ban, így a bin/tips és a board ugyanazt látja.