-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Validace mapy #83
Comments
Jsem si říkala, jak to pojmout... je ok udělat na to zvlášť program map_validator.py a pak ho pouštět nějak $ python map_validator.py map4.json prostě jen když si někdo udělá novou mapu. |
Jaké vidíš výhoday a nevýhody těchto řešení? |
Program speciál: zavařím si mozek, ale budu šťastná Nemyslím, že by se toto dělo tak často a byl to tak zásadní problem. Když na to bude extra program, tak ho pustíme 10x, když to bude v testech, tak se to pustí při každém PR a bude to znovu a znovu kontrolovat, to by u 10 map mohlo trvat(?) (Dá se nastavit Travis, aby pouštěl test, jen když přidáváš určitý typ souboru?). Když na to bude extra program, tak se na to pak třeba nesmí zapomenout. Ten extra program by mohl po kontrole přidat do jsonu "razítko" a do programu pak dopsat, když nenajdeš při načítání na mapě razítko tak ji nepouštěj => není zkontrolovaná, ale to asi úplně neřeší, když se ta mapa pak změní. |
Tak kontrola by neměla být tak náročná. Jestli to u 10 map bude trvat víc než vteřinu, je něco špatně. |
Nehledej teď ideální řešení, ale dostatečné řešení. Nebo líp, nejlepší co tě napadne :) |
Tak já tam dodělám test "Projdi všechny mapy ve složce a zkontroluj" |
OK! To zní dobře. |
Ne všechny mapy jsou teď dobře pro validator. Až budeme zakládat složku s opravdu herníma mapama, tak tam dodělám automatickou kontrolu všech map ve složce.
to nebudeme kontrolovat: jestli je na mapě 8 startů |
Správné pořadí políček je:
|
Ten poslední bod pořadí políček je pro mě matoucí s poznámkou jedno, kolik z nich. Chápu, že na jednom políčku může být jak zeď, tak pusher, tak laser, ale myslím, že jsi říkala, že víc laserů přes sebe být nemůže, víc pusherů taky nedává smysl, naopak více zdí se určitě využívat bude. Jak to tedy funguje? |
Teoreticky můžou být i mapy pro míň robotů. Starty pak fungují podobně jako vlajky:
A ještě chybí:
|
Jo zatím to bere, že třeba nemáš schovaný laser pod pásem, nebo 2 vlajky na sobě a takový ty věci, co nejsou vidět.
|
Jestli by to nemělo být trochu víc rozepsané:
Může být na jednom políčku zem, pas, laser a ještě z jedné strany ohraničení stěnou. Stejně tak pusher by měl asi být u zdi. Laser bud nekončí, nebo končí na zdi - musí byt na dvou vrstvách. Obecně se přiklaním ke kreslení podle pravidla: 1 typ políčka == 1 vrstva mapy. |
Po validaci v kodu vidim to tak:
Posunula jsem start na samostatny radek kvuli testum, ktere obcas stavi start robota na divna mista (ale nikdy na diru). |
Je začátek laseru vždy na zdi? |
V původní hře je začátek i konec vždy na zdi. I na konci hrací plochy je vždycky zeď, když tam končí laser. |
Řešte až po #82.
The text was updated successfully, but these errors were encountered: