PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITY PALACKÉHO KATEDRA INFORMATIKY ROČNÍKOVÝ PROJEKT KLOKAN. Informatika, II. ročník



Podobné dokumenty
PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITY PALACKÉHO KATEDRA INFORMATIKY BAKALÁŘSKÁ PRÁCE. Desková hra s podporou hraní po síti Lovci pokladů.

Projekt. Jan Outrata. listopad Jan Outrata (KI UP) Projekt - analýza a návrh listopad / 13

PRAVIDLA HRY S VÝKLADEM...

ROČNÍKOVÝ PROJEKT. Evade

Návod na instalaci a popis změn

Obsah herní sady: 40x dřevěný kámen hrací deska návod

NÁVOD PRO INSTALACI PROGRAMU TAGRA.eu

Varování! Hry jsou nevhodné pro děti do 3 let. Výrobce: BEX Sport AB, Švédsko. Dovozce: STOA-Zahradní minigolf s.r.o.

CHYTRÝ FOTBAL. fotbal.indd :16:03

Hra obsahuje: Příprava na hru: Desková hra pro odvážné dobrodruhy s chladnou hlavou č e s k ý n á v o d

PowerSwitch ver. 1.6

Conference Recorder. Uživatelský manuál

Samuraj & Katana HERNÍ PRAVIDLA 1. CÍL HRY 2. POČET HRÁČŮ 3. OBSAH 4. PŘÍPRAVA KE HŘE

Uživatelská příručka Evidence příchozí a odchozí pošty a elektronický archiv. V prostředí společnosti. Pražská vodohospodářská společnost a.s.

Zahrajeme si kopanou 1

STRATEGIE A TAKTIKA...

Pravidla vybraných deskových her pro potřeby předmětů Projektový seminář 1 a 2 v roce 2011/2012. Tomáš Kühr

Návod: Ulož hru: Stručný popis: Požadavky: Jak začít hrát? Měna. Plynutí času: Hlavní prostředí hry: HRA

Cesta po Evropské unii Cesta za poznáním. Jak hrát tuto hru?

Měření odporu spouště v1.0. návod k obsluze

Manuál programu HPSim

Gymnázium, Praha 6, Arabská 14. Loydova patnáctka. Dokumentace ročníkového projektu. Předmět: Programování Vyučující: Ing. Tomáš Obdržálek Třída: 1.

Hráč, který je na tahu musí vyložit předem daný počet karet z ruky. Počet karet je určen počtem symbolů

TAJ MAHAL MOCNÍ MAHARADŽOVÉ HONOSNÉ PALÁCE

Po obrazovce přejede formule, před kterou se budou postupně objevovat písmena slova formule.

Obsah. Začínáme Viditelné součásti programu Simulace. WOP Menu CNC řízení. CNC Programy. Exec. Grafické okno. Strojní panel. 3D Model.

O soutěži MaSo. Co je to MaSo? Třinácté MaSo, 78 družstev, 46 škol. Organizace. maso.mff.cuni.cz. o dvakrát za rok o nejen počítání o soutěž družstev

SIGMA Optimization Pro. Návod k použití programu a dokovací stanice


HypEd4 Uživatelská příručka 2004 HYPEL

Kontrola pravopisných chyb. Kontrola pravopisu Kontrola gramatiky Nastavení jazyka dokumentu Tezaurus Překlad textu

Algoritmus Minimax. Tomáš Kühr. Projektový seminář 1

MenuLIB KNIHOVNA SIMPLE4 PRO TVORBU UŽIVATELSKÉHO ROZHRANÍ NA PLC MICROPEL

2 HRA V EXPLICITNÍM TVARU

MANUÁL K OBSLUZE REDAKČNÍHO SYSTÉMU / wordpress

PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITY PALACKÉHO KATEDRA INFORMATIKY BAKALÁŘSKÁ PRÁCE. Vytváření a evidence smluv Petr Čulík

Úvod do počítačových sítí

Aplikace Repaint Magic pro úpravu obrázků v MS Word

MA_CZH_CLOCK_UserManual DGT 960 Rev1 1

LuxRiot uživatelský manuál verze Uživatelský manuál Verze , Stasa s.r.o.,pokorného 14, , PRAHA

DIGITALIC MP4 pøehrávaè s DVB-T Uživatelská pøíruèka

WinTV-HVR-930C-HD WinTV-HVR-930C WinTV-HVR-900-HD WinTV-HVR-900

Návod na instalaci verze pro PC a USB. 1) Instalace verze pro PC

CÍL HRY HERNÍ MATERIÁL PŘÍPRAVA HRY

F2 Popis instalace. 1. Obsah. 2. Úvod. 3. Instalace

Fiery Driver Configurator

Pravidla turnaje v malé kopané. O pohár starosty obce Dolní Lánov

MS WINDOWS UŽIVATELÉ

Příručka aplikace Shisen-Sho. Dirk Doerflinger Eugene Trounev Frederik Schwarzer Kontrolor: Frerich Raabe

Manuál pro uživatele on-line hry Pimp Your Landscape. On-line hra Pimp your Landscape Návod pro uživatele

ADDAT HEAT Control - Návod k použití - verze 2.07 (firmware 1.44)

Průvodce instalací a spuštěním. Pro DataPage+ 2012

PRAKTICKÝ NÁVOD K POUŽITÍ PRO DGT XL

Recognoil RRW Manager rychlý návod k obsluze

Příklad generátor fází výstavby a TDA mikro

Self Service Application Instalační manuál

P1 Formule ve sněhu. P2 Double Cola

2. Help Desk z pozice přihlížejícího Vyhledávání v dotazech Zobrazení časů přes limit Nezodpovězené dotazy...

Eufrat a Tigris HRACÍ MATERIÁL PŘÍPRAVA NA HRU. Sestavení monumentů. Příprava hrací desky. Výběr dynastie

Fotogalerie pro redakční systém Marwel Obscura v. 2.0

Vítejte v průvodci instalace a ovládání výukového softwaru edu-learning pro českou verzi Microsoft Office 2007.

Propojení systému MICROPEL a inteligentní elektroinstalace ABB Ego-n

VYTVÁŘENÍ A POUŽITÍ VZDĚLÁVACÍCH MODULŮ

MANUÁL K APLIKACI SOFTRADE. 1.Holandské aukce (sestupné) 2.Holandské aukce (sestupné) s možností navyšování ceny 3.Limitní cena

Uživatelský manuál. A3600 DL ( Data Download)

Strana 1. Vysoké napětí FACTORY MANAGER / Ředitel továrny FRIEDEMANN FRIESE

SEZNÁMENÍ S PROGRAMEM

Autoři: David V. H. Peters a Harry Wu. hra pro 2-5 hráčů

Sbírka tipů pro BUSINESS 24

VAR-NET INTEGRAL Manuál správce VNI 5.1 VAR-NET INTEGRAL. verze 0.2. Manuál správce VNI 5.1

Příprava hry. Průběh hry

Nastavení rodičovského účtu Microsoft

e Utility Report Vyjadřování k existenci sítí

APS mini.ed programová nadstavba pro základní vyhodnocení docházky. Příručka uživatele verze

Tento dokument popisuje instalaci a používání elektronické cvičebnice Styx.

Souhrn. Cíl hry. Autoři: Marco Rusowski a Marcel Süßelbeck

IPFW. Aplikace pro ovládání placeného připojení k Internetu. verze 1.1

eliška 3.04 Průvodce instalací (verze pro Windows 7) w w w. n e s s. c o m

Karty Prší. Anotace: Abstract: Gymnázium, Praha 6, Arabská 14 předmět Programování, vyučující Tomáš Obdržálek

INSTALAČNÍ MANUÁL pro aplikaci ihc-mirf

Objednávky OBX. Objednávkový systém určený k instalaci na PC u zákazníka pro tvorbu offline objednávek zboží

PRAVIDLA FOTBALU 1) HRACÍ PLOCHA. Rozměry hrací plochy. Pokutové území

TeliMan Auerswald-Edition 2. Client-Server TAPI ISDN telefonní ústředna

Verze. Hydroprojekt CZ, a.s. WINPLAN systém programů pro projektování vodohospodářských liniových staveb. Prefabrikované kanalizační šachty

Program pro flexibilní tvorbu evidencí. VIKLAN - Evidence. Uživatelská příručka. pro seznámení se základními možnostmi programu

pro začátečníky pro pokročilé na místě (dle požadavků zákazníka)

QuarkXPress soubor ReadMe

Dinosauří Člověče nezlob se

MLE2 a MLE8. Datalogery událostí

20 years PLM and 3D experience. Hustopeče, 21. května Raytracer

EMC2399. Programové vybavení pro řízení, sběr a zpracování dat pro EMC měření spektrálním analyzátorem Aeroflex řady 2399

Ročníkový projekt. Osadníci z Katanu. Jakub Malý. Uživatelská dokumentace

Edice 2013/2014. Pravidla RFL

Elektronická spisová služba

CUZAK. Uživatelská příručka. Verze

ID Microserver. TCP Server pro čtečky:

ÚVOD 3 SEZNÁMENÍ SE SYSTÉMEM 4

ZoomText 10.1 pro Windows. Dodatek k uživatelské příručce

Jazz Server osobní nastavení uživatele

KOLÉBKA RENESANCE. (Die Wiege der Renaissance)

Transkript:

PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITY PALACKÉHO KATEDRA INFORMATIKY ROČNÍKOVÝ PROJEKT KLOKAN Květen 2010 Libor Valouch Informatika, II. ročník 1

Abstrakt Dokumentace ročníkového projektu Klokan. Jedná se o strategickou deskovou hru. Vytvořenou ve vývojovém prostředí Microsoft Visual Studio 2008 v jazyce C# na platformě.net Framework 3.5. 2

Obsah 1. Popis a analýza Požadavky na projekt Hra Klokan Cíl hry Výchozí situace Pravidla Hry Ukončení hry 2. Uživatelská část Sestavení aplikace Odstranění Spuštění Herní tipy 3. Programátorská část Úvod Vysvětlení pojmů Myšlenka Přehled knihovny Klokan.cs Přehled souboru FormMain.cs 4. Reference 3

1. Popis a analýza Požadavky na projekt korektní implementace pravidel hry (nemožnost provést tah odporující pravidlům, správné ukončení hry, a podobně) algoritmy pro herní strategii, nastavitelná obtížnost hry v adekvátním rozsahu možnost hry dvou lidí, člověka proti počítači, a počítače proti počítači možnost nastavit a kdykoliv změnit obtížnost i v průběhu hry možnost kdykoliv zaměnit počítačového a lidského hráče, nebo černého a bílého hráče (bez ohledu na to, je-li hráčem člověk nebo počítač, změna i v průběhu hry) nápověda nejlepšího tahu ukládání a načítání (ukončených, rozehraných) partií undo/redo tahů do libovolné úrovně prohlížení historie tahů (přehledné zobrazení provedených tahů) zpětné přehrání partie po jejím dokončení (replay) s možností zastavení přehrávání, pohybu v historii stavů hry a opětovného rozběhnutí hry ze zvoleného stavu. Při zastavení přehrávání možnost začít novou hru nebo otevřít uloženou hru. robustnost (program musí reagovat správně na nesprávné uživatelské vstupy, zejména ovládání, vadný formát souboru apod., aplikace nesmí havarovat) vestavěná nápověda grafické uživatelské rozhraní (GUI) zpracované podle standardů program ve spustitelné formě, je-li to pro zprovoznění aplikace nutné pak také instalátor (v odůvodněných případech je přípustná spustitelnost z vývojového prostředí) kompletní zdrojové kódy programu včetně dalších částí nutných pro sestavení aplikace programátorská dokumentace k projektu vytvořená pomocí závazného stylu (PDF verze a zdrojová verze). Obsahuje zejména popis struktury kódu, algoritmy hry včetně herní strategie, postup pro sestavení aplikace. Dokumentace nemusí obsahovat uživatelskou příručku. Hra Klokan Klokan strategická desková hra, jejíž autorem je John Flagg. Hra je určena pro dva hráče, hraje se na čtvercové hrací desce 8 8 polí s 16 bílými a 16 černými kameny (klokany). Ve světě je tato hra známá v několika variantách pod různými názvy (Kangaroo: The Jumping Game, Jump, Kangaroo, Känguruh). Cíl hry Zajmout co nejvíce soupeřových kamenů. Výchozí situace Na začátku hry stojí bílé kameny v prvních dvou řadách, černé kameny pak v posledních dvou řadách. 4

Pravidla Hry Hru začíná bílý hráč, poté se hráči v tazích střídají. Skákat je povoleno v libovolném ortogonálním či diagonálním směru, pokud přeskakovaný kámen leží na sousedním poli a další pole ve směru skoku je volné. Vícenásobné přeskoky jsou dovoleny, hráč jich nemusí využít v plném rozsahu. Mezi jednotlivými přeskoky v rámci vícenásobného skoku může být libovolně změněn směr skákání. Přeskočí-li hráč soupeřův kámen, je tento kámen zajat a odstraněn z desky. Vlastní kámen přeskokem zajat není. Pokud se kámen dostane do poslední řady, je zdvojen (vyměněn za kámen s korunou). Pro zdvojený kámen však platí stejná pravidla jako pro obyčejný kámen. Ukončení hry Pokud hráč ztratil všechny své kameny, prohrál. Pokud hráč nemůže táhnout nebo pokud v posledních 20 tazích nebyl žádný kámen zajat či zdvojen, hra končí. Sečtou se zbývající kameny, zdvojený kámen se počítá jako dva obyčejné. Vítězí hráč, kterému zbyly kameny s větší hodnotou. 2. Uživatelská část Sestavení aplikace Hru je nutné nainstalovat spuštěním instalátoru setup.exe ve složce bin. Instalátor zkontroluje přítomnost platformy.net Framework, pokud ji uživatel již nemá, nabídne její instalaci, dále pokračuje v instalaci samotné hry. Budou vytvořeni zástupci v nabídce Start-Programy a na Ploše. V adresáři C:\Program Files (nebo jiném zvoleném při instalaci) bude vytvořena složka Klokan s vlastní hrou. Odstranění Aplikaci lze odinstalovat přes Start-Ovládací Panely-Přidat odebrat programy nebo spuštěním instalátoru setup.exe. Spuštění Provedeme pomocí jednoho ze zástupců, nebo z adresáře \Klokan\Setup Klokan souborem Klokan.exe 5

Herní tipy: Ve výchozím stavu se hra nachází v režimu hry s počítačem. Jiný způsob lze zvolit v nastavení. Tah lze provést kliknutím na kámen označený kurzorem ruky, zvýrazní se modrým rámečkem a následně provádíte tah (místo položení je také označeno rukou), pro jeho ukončení klikněte na zvýrazněný kámen. Chcete-li zrušit započatý tah, klikněte opět na zvýrazněný kámen. Pro nápovědu nejlepšího tahu zvolte tlačítko "Nejlepší tah". Vaši hru můžete prohlížet výběrem tahu z historie, zobrazí se odpovídající rozestavění kamenů. Pomocí tlačítka "Replay" lze přehrávat historii od zvoleného tahu. Pokud se rozhodnete změnit svůj odehraný tah, je možné od zvoleného tahu v historii pokračovat ve hře. Hru dvou počítačů lze zastavit a opět spustit pomocí tlačítka "Hra počítačů". Ve spodní části jsou uvedeny informace o stavu hry. 3. Programátorská část Úvod Aplikace je rozdělena do dvou hlavních souborů, knihovna Klokan.cs spravuje logiku hry a soubor FormMain.cs který řídí grafické uživatelské rozhraní. Vysvětlení pojmů Skok: jediné přeskočení kamenů. Půltah: tah jednoho hráče, všechny skoky od započetí až po jeho dokončení. Tah: jeden půltah obou hráčů. Figurka = Kámen Myšlenka Ve hře jsou zavedeny tři základní módy, hra dvou lidí, kombinace hry člověka s počítačem a hra dvou počítačů. Hlavní běh hry je rozdělen do dvou automatů, první umožňuje půltahy lidského hráče a druhý počítače. Zvolené herní módy jich vhodně využívají k vybranému způsobu hry. Přehled knihovny Klokan.cs Struktura Pozice: obsahuje řádek a sloupec Třída Půltah: obsahuje seznam typu pozice a metody pro práci s ním Enum Barva: bílá, černá pro rozlišení hráčů Třída Figurka: obsahuje barvu a údaj o zdvojení 6

Třída deska: Hrací desku zastupuje dvourozměrné pole typu Figurka. Pro výpočet tahů počítače je využit algoritmus Minimax. Kontrola opakujících se tahů probíhá ukládáním do zásobníku historiebuffer a kontrolováním opakování nad limit. Přehled důležitých metod: TestOpakovani kontrola opakovaných půltahů. NovaHra nastavení figurek v hrací desce na výchozí hodnoty, vynuluje. historii opakování. Kontrola přetížená metoda určující korektnost zvolené pozice a skoku dle pravidel. Skakej provádí skok, změní pozici figurek v desce a vyhazuje je. HodnotaDesky vrací rozdíl figurek hráčů, tuto hodnotu využívá Minimax. HledejPultah přetížená metoda pro vyhledávání půltahů počítače, algoritmus Minimax. VyberPultah spustí hledání půltahu a náhodně vybírá ze seznamu nejvýhodnějších půltahů Hrej zahajuje výpočet počítače Přehled souboru FormMain.cs Tento soubor obsahuje: Enum Mode: typ hry člověka s člověkem, člověka s počítačem nebo dvou počítačů. Zvolený mód má vliv na chování ovládacích prvků aplikace. Enum FigurkaGraf: pro volbu obrázku figurky deskagraf: dvourozměrné pole typu FigurkaGraf, deska grafických figurek Třídu ZaznamHistorie: vytváří jednotlivé záznamy historie odehraných půltahů Automat půltahu člověka s metodami: FigurkaClick smyčka půltahu, označování figurky ZacatekPultahu zahájení půltahu člověka PokracovaniPultahu skládání půltahu, zobrazování skoků KonecPultahu přidání půltahu do historie, při hře s počítačem se odehraje jeho půltah Automat půltahu počítače s metodami: HrejPocitac smyčka půltahu počítače, volá paralelní vlákno výpočtu Vypocet metoda pro paralelní výpočet půltahu počítače ZobrazKrok animace skoků počítače (voláno pomocí Invoke v primárním vlákně) ZobrazPultah zobrazení celého půltahu počítače (také voláno pomocí Invoke) 7

další důležité metody: Zobraz nastaví aktuální rozestaveni logické desky do grafické, volá metodu Vytvoř obrázek a aktualizuje status strip. VytvorObrazek vykresluje grafickou desku (rozdělení políček, figurky a jejich označení) NovaHra zahájí novou hru (reset historie pultahů, a logické desky) ZmenBarvu hlídá opakování stejných půltahů, přidává půltahy do historie PovolNastaveni aktualizuje ovládací prvky aplikace které je možno v daný okamžik použít KonecHry zobrazí výsledky hry ve status stripu a vyvolá dialog s vítězným hráčem KorekceHistorie mazaní zbytku historie půltahů za označením při pokračující hře Události: FormMain_Load výchozí nastavení hry paneldeska_mousemove nastavuje pozice myši na desce, zobrazuje tool tip názvu políčka, zobrazuje ruku nápovědy skoku dle pravidel listbox_selectedindexchanged zahraje vybraný půltah z historie ZobrazHistorii zobrazí vybraný stav hry z historie listbox_mousehover zobrazení tool tipu historie toolstripbuttonnejpultah_click buton s nápovědou nejlepšího půltahu toolstripbuttonhrejfurt_click buton hry dvou počítačů toolstripbuttonreplay_click přehrání historie toolstripbuttonzpet_click posuv v historii zpět toolstripbuttonvpred_click posuv v historii vpřed novahratoolstripmenuitem_click menu nová hra nacisthrutoolstripmenuitem_click menu otevřít hru ulozithrutoolstripmenuitem_click menu uložit hru konectoolstripmenuitem_click menu konec hry nastavenítoolstripmenuitem_click menu dialog nastavení navodtoolstripmenuitem_click menu dialog návod oprogramutoolstripmenuitem_click menu dialog o programu FormMain_FormClosing dialog uložení hry 8

4. Reference Martin dostál http://dostal.inf.upol.cz/ps1-2.html Wikipedie http://cs.wikipedia.org/wiki/hlavn%c3%ad_strana Poznáváme C# a Microsoft NET http://poznavame-c-msnet.wz.cz/ 9