Battle Ships

3. května 2009 v 21:27 | Burda Václav |  programování



Hra lodě - Java.

Aktualizace:
Zdrojový kód najdete na stránce http://kenai.com/projects/ships-battle-java. Ale pozor, hra je stále ve vývoji. Veškeré info o hře budu zveřejňovat tam.


Jedná se o známou multiplayerovou hru lodě. Hra začíná připojením na server, po navázání síťové komunikace jsou hráči vyzváni k rozmístění lodí po hracím poli. Pokud se lodě dotýkají nebo překrývají, jsou označeny červeně a není možné potvrdit rozmístění a přejít ke hře. Rozmístění lodí hráč potvrdí kliknutím na tlačítko "začít hru". Pokud jsou lodě rozmístěné bez kolizí, hra vyčkává na rozmístění druhého hráče. Následuje samotná hra. Hráči se na nepřátelském poli snaží zasáhnout lodě soupeře. Na druhém poli vidí vlastní lodě, střely soupeře a zásahy soupeře. Pod hracím polem je umístěn status bar se jmény hráčů a stavu zásahů. Pod statusem je textové okénko, informující hráče o akcích hry. K hráči promlouvá imaginární velitel vaší flotily. Vyhrává hráč, který jako první potopí všechny lodě protivníka.


Budoucnost:
  • propracovanější ozvučení hry. Nastavení hlasitosti efektů a hudby na pozadí.
  • zlepšení grafiky přidáním bitmap a animací (animované výbuchy střel, lodí) bitmapy lodí, hracího pole.
  • přepsáním serveru zajistit více palarelních her a následné generování výsledků na internetovou stránku. Nyní je pouze zaručena hra dvou hráčů. Server je velmi primitivní, prakticky přeposíla požadavky z jednoho klienta na druhý a opačně.
  • implementovat chat mezi hráči.
  • přepsání GUI, nyní je zčásti generované IDE Netbeans. Slibuji si od toho hlavně zmenšení kódu.
V případě zájmu:
  • implementace umělé inteligence dovolující single player.
  • implementace editoru (bitmapových) lodí. Loď by se načetla i protistraně.

Obrázky:

Zde si hráč rozmisťuje lodě po hrací ploše. Oranžová loď je aktivní, hráč ji může šipkama posouvat a mezerníkem otáčet.
Activní loď

Špatně umístěné lodě.
Špatná pozice lodí.

Začátek hry. Vlevo jsou vlastní lodě, vravo je hrací pole soupeře.
Začátek hry.

Hra v plném proudu. Na status baru je vidět že nad Robotem 1.1 vedu. Zásahy jsou červené, střela do vody je bledě modrá.
Hra


Ukázka kódu:
Ukázka kódu










PS: Nebojte se vložit komentář. Zeptejte se na cokoliv, kritizujte. Pokud něco chcete vědět, ptejte se. Jsem tu pro to.
 


Buď první, kdo ohodnotí tento článek.

Komentáře

1 Payne Payne | E-mail | 23. května 2009 v 13:41 | Reagovat

A co takto poskytnut cele zdrojove kody?

2 Zerog Zerog | 23. května 2009 v 16:09 | Reagovat

Zdrojové kódy mám v plánu zvěřejňovat postupně. Stejně jako celou hru. Dát sem rovnou celý zrojový kod nemá smysl. Jednak je to téměř 4000 řádků a nikdo by se v tom neorientoval. Navíc mám v planu nějaké třídy přepsat.

3 Oli Oli | Web | 15. června 2009 v 1:52 | Reagovat

Taky si myslím, že by bylo dobré poskytnout zdrojáky a paralelně postupně přidávat a vysvětlovat kód po kouskách na webu. Myslím si, že takový systém by byl nejúčinější ;-)

4 Payne Payne | 16. července 2009 v 16:06 | Reagovat

Ako neviem si predstavit co na tej hre moze mat az 4000 riadkov kodu...

Ako tak pozeram tak tie metody co mas vypisane tak robia takmer to iste a predpokladam ze aj vecsina kodu bude len prepisovanie so zmenami par riadkov kodu...

5 Zerog Zerog | 17. července 2009 v 10:55 | Reagovat

Tam de hlavně o to, že vetšinu GUI generoval Netbeans, tudiž je to dost ukecané. Šlo by to přepsat zhruba na polovinu.  

6 Zerog Zerog | 4. prosince 2009 v 7:47 | Reagovat

Tak kód jsem zveřejnil na http://kenai.com/projects/ships-battle-java. Ale predělávám již zmíněné GUI, takže v tuto chvíli není hra hratelná. Avšak můžete spustit jednotlivé GUI třídy (Mover, Timer,..). Kdyby se někdo chtěl přidat do týmu a pomoct s implementací, budu jen rád.

7 Aminux Aminux | 7. ledna 2010 v 10:55 | Reagovat

Až se lépe naučím Javu, možná ti s tim pomohu :-)

8 SonyaPerez21 SonyaPerez21 | E-mail | Web | 7. února 2012 v 17:08 | Reagovat

This is great that people can receive the <a href="http://goodfinance-blog.com/topics/mortgage-loans">mortgage loans</a> moreover, that opens completely new chances.

9 Martin Martin | E-mail | Web | 19. června 2012 v 14:59 | Reagovat

no comment:-)

10 large size evening dresses large size evening dresses | E-mail | Web | 10. ledna 2013 v 5:01 | Reagovat

Good post. I learn something more difficult on completely different blogs everyday. It can all the time be stimulating to read content from different writers and observe just a little something from their store. Id desire to make use of some with the content material on my weblog whether you dont mind. Natually Ill offer you a link in your net blog. Thanks for sharing.
http://www.elsedress.org

Nový komentář

Přihlásit se
  Ještě nemáte vlastní web? Můžete si jej zdarma založit na Blog.cz.