# Game creation notes
- **preconfig** - složka vytvořená CSC při generování - z většiny obsahuje soubory pro ansible pro konfiguraci VMs v sandobxu
- **group_vars**
- **all.yml** - soubor přiřazující jména zařízením v síti
- **shh.yml** - soubor, jenž povoluje ssh ?
- **winrm.yml** - soubor na něco s ansible a windows ??? nevím
- **host_vars**
- **attacker.yml** - soubor nastavující na attacker VM ssh klíč a routing
- **client.yml** - soubor nastavující na client VM ssh klíč a routing
- **router.yml** - soubor nastavující na router VM ssh klíč a routing
- **server.yml** - soubor nastavující na server VM ssh klíč a routing
- **roles**
- **common @ 7d236698** - ??? nejde otevřít
- **interface @ 6f732d41** - ??? nejde otevřít
- **hosts.yml** - nejspíš playbook, netuším na co
- **playbook.yml** - playbook obsahující playe pro kofiguraci routeru a linux hostů
- **provisioning** - složka vytvořená CSC při generování
- **host_vars**
- **attacker.yml** - soubor určující interpretera skriptů na attacker VM
- **roles**
- **attacker**
- **files**
- **fcrackzip_1.0-10_amd64.deb** - debian package programu fcrackzip
- **tasks**
- **main.yml** - playbook obsahujicí tasky, jenž připravují potřebné věci pro hru - např instalace fcrackzip nebo přidání hesla od .zip do wordlistu atd...
- **vars**
- **main.yml** - soubor jenž definuje proměnné
- **client**
- **tasks**
- **main.yml** - playbook zařizující věci potřebné pro hru - přidání uživatele v client VM
- **vars**
- **main.yml** - soubor jenž definuje proměnné
- **hosts/tasks**
- **main.yml** - playbook instalující balíčky potřebné pro hru
- **server**
- **files** - složka obsahující soubory, které budou v server VM nad rámec linuxové instalace
- soubory typu fotky, tabulky, pdfka atd....
- **tasks**
- **main.yml** - playbook konfigurující server VM, playbook přidává uživatele, soubory pro hru, instaluje balíčky atd.
- **vars**
- **main.yml** - soubor jenž definuje proměnné
- **LICENSE** - autorská licence softwaru
- **playbook.yml** - playbook pro základní konfiguraci všech zařízení, z většiny konfigurace logginů
- **requirements.yml** - playbook, definuje přístup k externím ansible playbookům
- **README.md** - prostě readme - textový dokument obsahující informace o softwaru
- **Vagrantfile** - CSCreatorem na základě topology definiton file vygenerovaný soubor na jehož základě dále Vagrant pracuje s VMs. Primární funkcí Vagranfile je popsat typ stroje požadovaného pro projekt a jak tyto stroje nakonfigurovat a zřídit. Vagrant má běžet s jedním Vagrantfilem na projekt a Vagrantfile má být oddán kontole verzí. To umožnuje dalším vývojářům zapojeným do projektu podívat se na kód, použít vagrant up a být na jejich pozici. Soubory Vagrant jsou přenosné na všech platformách, které Vagrant podporuje.
- **game_design.md** - textový soubor popisující design hry, dělený na jednotlivé levely, u každého lvl je popsát výstup danného lvl, zadaní samotného úkolu a odhadovaná doba pro splnění
- **game_design.pdf** - stejné jako game_design.md
- **start.ps1** - bash skript pro spuštění sandboxu pro danne ID studenta v PowerShell
- **start.sh** - bash skript pro spuštění sandboxu pro danné ID studenta
- **topology.yml** - soubor pro CSC, jenž definuje topologii - počet zařízení, jejich typ (host, router, switch), název, popřípadě VBox image, flavor(počet jader a velikost RAM ve VBoxu, jestli to chápu dobře) či ip adrresu. Dále soubor obsahuje network mapping. Na základě tohoto souboru CSC generuje intermediate složku, kterou dále využívá pro build sandboxu.