Strategická: Lepší dokumentace
This commit is contained in:
parent
f70cb47027
commit
b0739b93bd
2 changed files with 81 additions and 4 deletions
55
README.md
Normal file
55
README.md
Normal file
|
@ -0,0 +1,55 @@
|
|||
Strategická hra na soustředění KSP 2022.
|
||||
========================================
|
||||
|
||||
Copyright (C) 2022 Jiří Kalvoda <jirikalvoda@kam.mff.cuni.cz>
|
||||
Copyright (C) 2022 David Klement
|
||||
Copyright (C) 2022 Martin Koreček
|
||||
|
||||
Some parts of code is from OSMO:
|
||||
|
||||
Copyright (C) 2020 - 2022 Martin Mareš
|
||||
Copyright (C) 2020 - 2022 Jiří Setnička
|
||||
Copyright (C) 2021 - 2022 Jiří Kalvoda
|
||||
|
||||
And MHD game on SKSP2021:
|
||||
|
||||
Copyright (C) 2022 Jiří Kalvoda <jirikalvoda@kam.mff.cuni.cz>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
Koncept hry
|
||||
===========
|
||||
|
||||
Jedná se o programovací hru postavenou okolo web serveru a JSON API.
|
||||
|
||||
Hra se hraje v tazích po 10 až 60 sekundách. V každém tahu si každý soutěžící stáhne
|
||||
stav hry a odpoví svým tahem. Ten se pak centrálně vyhodnotí.
|
||||
|
||||
Předpokládá se, že hráči upravují svůj program v závislosti na aktuálním stavu hry.
|
||||
|
||||
|
||||
Instalace
|
||||
=========
|
||||
|
||||
Viz `server/README.md`
|
||||
|
||||
Hry
|
||||
===
|
||||
|
||||
Momentálně je implementována jediná hra -- Obsazování území.
|
||||
Viz `pravidla.md`.
|
||||
|
||||
Web server do ovšem psaný dostatečně obecně na to aby šli další hry přidat.
|
||||
Podívejte se do `server/hra/game.py` a případně do `server/hra/web/game.py`,
|
||||
kde je zobrazování stavu hry jako webové stránky.
|
|
@ -15,17 +15,38 @@ Velké poděkování patří Medvědovi a Jirkovi Setničkovi, jejichž kód vyk
|
|||
postgres=# CREATE DATABASE ksp_strathra_devel WITH OWNER=$(UŽVATELSKÉ JMÉNO);
|
||||
|
||||
# Naplníme databázi
|
||||
bin/db_init
|
||||
bin/db_init [--drop]
|
||||
|
||||
# Přístup do orgočásti webu
|
||||
bin/create_user --org root <heslo>
|
||||
|
||||
#
|
||||
bin/build nebo bin/update
|
||||
|
||||
./flask run
|
||||
|
||||
# Po běžných úpravách není potřeba balíček přeinstalovávat
|
||||
|
||||
## Instalace na produkční server
|
||||
## CMD ovládání
|
||||
|
||||
TODO: Upravit (momentálně pouze vykradeno)
|
||||
Některé části serveru se nedají ovládat přes web, je nutné pouštět skripty v adresáři
|
||||
`bin`. Před spouštěním je nutné aktivovat venv!
|
||||
|
||||
Vytváření nové hry (konfigurace přepsáním programu):
|
||||
./bin/create_game
|
||||
|
||||
Každý uživatel při vzniku dostane také testovací hru (parametry v `hra/lib.py`).
|
||||
|
||||
Ovládání hry:
|
||||
./bin/control_game
|
||||
|
||||
Aby fungovali automatické kroky, je nutné nechat běžet
|
||||
./bin/control_game [id] --autosteps
|
||||
|
||||
Vytváření (orgovského) účtu:
|
||||
./bin/create_user [--org]
|
||||
|
||||
## Instalace na produkční server
|
||||
|
||||
# Pro systém s jádrem < 5.4 zvýšit net.core.somaxconn (jako root)
|
||||
[ "`cat /proc/sys/net/core/somaxconn`" -lt 4096 ] && echo net.core.somaxconn=4096 >> /etc/sysctl.conf && sysctl -p
|
||||
|
@ -44,6 +65,7 @@ TODO: Upravit (momentálně pouze vykradeno)
|
|||
vi authorized_keys
|
||||
|
||||
# Pushnout data (jako svůj uživatel v složce s README)
|
||||
bin/build nebo bin/update
|
||||
bin/deploy
|
||||
|
||||
# Nainstalovat venv
|
||||
|
@ -53,7 +75,7 @@ TODO: Upravit (momentálně pouze vykradeno)
|
|||
pip install -c constraints.txt --editable .
|
||||
|
||||
# Inicializovat databázi (už jako mo-web)
|
||||
bin/db_init
|
||||
bin/db_init [--drop]
|
||||
|
||||
# Pustit web
|
||||
uwsgi --http 127.0.0.1:8000 --master -p 4 -w hra.web:app
|
||||
|
|
Loading…
Reference in a new issue