Meeskond "Projekt Tank": Difference between revisions

From ICO wiki
Jump to navigationJump to search
Jkruusma (talk | contribs)
Skyndre (talk | contribs)
No edit summary
 
(26 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Programmeerimine CSharp keeles]]
[[Category:Programmeerimine CSharp keeles]]
[[File:Screenshot.jpg|600px|thumb|right|Player Vs Player]]
= Kood =


Terve projekt zip formaadis: http://eee.pri.ee/WindowsGame1.zip<br />
Mängu installer http://enos.itcollege.ee/~jkruusma/tankinstaller.zip <br />
Klasside struktuur on kujutatud failis ClassDiagram2.cd
= Ülevaade =
= Ülevaade =
[[File:Screenshot.jpg|300px|thumb|right|]]


== Intro ==
== Intro ==
Line 10: Line 16:
== Mängu sisu ==
== Mängu sisu ==


== Esialgne kava ==
Aasta on 2069, maailma on järele jäänud kaks viimast leeri - Rohelised ja Punased. Mõlemad võitlevad enda viimaste järel olevate tankidega terve maailma valitsemise üle.
Et võita maailm enda kontrolli alla peab võitma kolmel maal.
Mõlemal mängijal on igal maal 2 elu. Võitlus käib SURMANI!
 
== Kuidas Mängida ==
 
Sõidad kaardi peal ringi tankiga ja proovid teist tanki õhku lasta.<br />
Power Up'id - Ekraanil võib olla korraga 1 kuul või kui oled korjanud D(ouble)-Shoti siis või kaks mürsku korraga lasta. F(ast) Bullet muudab mürsu kiiremaks. Mõlemad power-up'id kestavad 8 sekundit.<br />
Plokid - Adamantiumist plokid on nii tugevad, et need ei lase tanki kui ka mürsku läbi. Vesi on takistuseks vaid Tankile, kuid kuul lendab seal siiski läbi. Mets on strateegidele möeldud, metsas saab kõike teha, aga varjatult.
 
== Nupud ==
 
=== Klaviatuur ===
 
F1: Uusmäng<br />
 
Player One<br />
Nool üles: Tanki Suund üles<br />
Nool alla: Suund alla <br />
Nool vasakule: Suund vasakule<br />
Nool paremale: Suund paremale<br />
Parem Ctrl: Tulistamine<br />
 
Player Two<br />
W: Tanki Suund üles<br />
S: Suund alla <br />
A: Suund vasakule<br />
D: Suund paremale<br />
F: Tulistamine<br />
 
===Xbox===
 
A: Tulistamine<br />
D-Pad: Liikutab tanki<br />
Vasak pöidlapulk: Liikutab tanki<br />
 
= Projekti algne plaan =


* Tank - Juhtimine/Tulistamine, XBoxi tugi
* Tank - Juhtimine/Tulistamine, XBoxi tugi
Line 26: Line 68:
* Visual Studio Team Explorer
* Visual Studio Team Explorer


== Esialgne Tööjaotus ==
== Tööjaotus ==


* Jaan Kruusma - Projekti juht + elud/skoor + wiki
* Jaan Kruusma - Projekti juht + wiki + levelid


* Siim Kündre - Tooriku programmeerimine
* Siim Kündre - Liikumine, tulistamine, power-up


* Madis Kõosaar - Vastased
* Madis Kõosaar - Vastased, Menüü


* Keito Arula - Xbox tugi
* Keito Arula - Xbox tugi


= Hilisem töö =
= Hilisem töö =


== Plaanitud Lisad ==
== Plaanitud Lisad ==


* Power-ups - Miinid, elud, parem mürsk, 2 pauku korraga
* Power-ups - Elud, parem mürsk, 2 pauku korraga


* 2 player mode
* Player Vs Player Mode


* Mitu levelit ja lisa objektid - tunnelid, mäed
* Mitu levelit ja lisa objektid - vesi, puud


* Heli
* Heli


* Vajadusel Graafika upgrade
* Vajadusel Graafika/piltide upgrade
 
* Koodi parandus
 
* Paljad naised ja tasuta õlu
 


* Highscore tabel
= Tähtajaks valminud projekt =


* Koodi parandus
* 2 mängijat
 
* Xbox puldi tugi
 
* Tanki elude loendamine, raundide loendamine, võitude loendamine
 
* Ploki tüübid - mets(saab peitu minna ja ka lasta), vesi(läbi sõita ei saa, aga tulistada saab), kivi(läbi ei tulista ega sõida)
 
* Kuul/Tank käitub erinevalt vastavalt ploki tüübile
 
* Power Up - Double Shot ja Fast Bullet
 
* Levelite parsimine Xmlist
 
* Erinevad levelid, levelite loomiseks/muutmiseks piisab Xml faili muutmisest.
 
 
= Arendus võimalused=
 
* AI - Kui graafiteooriat tulevikus rakendada saaks ka vastased ekraanile sibima
 
* Veel rohkem power-up'e ja leveleid
 
* Erinvad mängu mode'd
 
* Highscore - juhul kui vastaseid oleks


* Paljad naised
* Online mänguvõimalus




= Logi =
= Logi =


=== 16. sept ===
=== Nov 26 ===
 
Installeri lisamine
 
=== Nov 15 ===
 
Menüü täiendused.
 
=== Nov 9 ===
 
Peamenüü valmimine.
 
=== Okt 28 ===
 
Uus power-up fastbullet, kuvatakse F punases kastis.
 
=== Okt 25 ===
 
Tähtaeg on saabunud - Shoki teraapia ja hardcore viimasehetke töö!!<br />
Sitt, Sülg, Veri ja Pisarad!
 
=== Okt 22 ===
 
Käib töö ja vile koos ehk mäng läheb aina paremaks. Üldised täiendused ja mõlema mängija käitumise ühtlustamine.
Levelite tootmine.
 
=== Okt 20 ===
 
Mängu testimine avatud keskonnas (koolis)
Levelite disainimine. Heli lisamine irrKlangi kaudu jäi ära kuna see keeras ülejäänud referencid metsa ja programm jooksis kokku. Xmli parsimine - vastavalt ploki tüübile lisatakse ploki kordinaadid vastavalt tüübile vastavasse arraylisti.
 
=== Okt 19===
 
Plokkide info on kantud xmli, millega tegeleb eraldi klass.
Puldiga saab nüüd tanki juhtida ja tulistada, kuid joystickiga on veel tegemist.
Leveli kuvamine klassis massiiviga osutus pooleldi läbikukkunuks kuna pakub liiga staatilise lahenduse uute levelite loomisele ning arendus käib xmli kallal.
 
=== Okt 18===
 
Helide mängimiseks võtsime kasutusele irrklangi (credits to Tanel Liiv), mille abil saab väga lihtsalt heli mängida kus vaja. Hetkel käib sobivate helide otsimine.
Lisasime mitmeid uusi klasse.


Meeskonna leidmine/tutvumine. Mängu idee tuvustus/arutelu. Esialgse wikispace loomine, pastebini tutvustus, mis hiljem osutus mitte vajalikuks.
=== Okt 17===
 
Player vs Player mode täiustamine.
 
=== Okt 14===
 
Lisasime player 2-e HP arvutamise ja elude arvestuse (peale x suremise mängib player 1 üksi edasi) ning levelite disain asub nüüd eraldi klassis. Samuti parendasime tankide liikumist.
Team Exploreriga on pidevalt jama, mis tõttu tuleb tihti aega raisata tüütute pisiasjade peale.
 
=== Okt 13===
 
Lisatud teise mängija liikumine kuid veel ei tulista.
Power-up`i loomine, testimiseks ilmub ekraanile kast(läbisõidetav), mille ajal tank saab lasta kaks kuuli ehk ekraanil võib siis kaks kuuli korraga olla.
 
=== Okt 12===
 
Loodi uued klassid koodi paremaks paigutuseks.
Draw ning Update meetodi puhastasimine üleliigsetest kontrollidest, mis paigutati uutesse klassidesse.


=== 22. sept ===
=== Okt 11===


XNA algetega tutvumine, tausta ja tanki valik, keyboard - liikumine.
Teise mängija lisamine, kes küll veel ei liigu, aga kuuli naudib surematuna.
Kuuli kontrollide parandamine, kokkupõrgete kontroll teise tankiga.
Üldised koodi parandused.


=== 27. sept ===
=== Okt 4===


Tank sõidab, kuul lendab ja plahvatab. Esimeste bugide eemaldamine.
Peale pikka Heiki ahistamist ja piinamist saime enda projekti tööle team exploreriga, et kõigil meeskonna liikmetel on võimalus sama projekti muuta ja ka allalaadida/üleslaadida. Reaalne rühmatöö saab nüüd alata.
Wiki täiendused.


=== 30. sept ===
=== Sept 30===


Toimus üldkoosolek, mille käigus räägiti kood kõigile üle ning lisati vajalikud kommentaarid. Jagati uued töö ülesanded.
Toimus üldkoosolek, mille käigus räägiti kood kõigile üle ning lisati vajalikud kommentaarid. Jagati uued töö ülesanded.
Proovisime kasutusele võtta erinevaid tiimi projekti haldamisvahendeid ning lõpuks peatusime Codeplexi peal ja lõime sinna endale konto, mida Visual Studio Team Exploreriga kasutada saaks. Esialgu oli seda keeruline tööle saada...  
Proovisime kasutusele võtta erinevaid tiimi projekti haldamisvahendeid ning lõpuks peatusime Codeplexi peal ja lõime sinna endale konto, mida Visual Studio Team Exploreriga kasutada saaks. Esialgu oli seda keeruline tööle saada...  
Wiki@itcollege alustamine.


Wiki alustamine
=== Sept 27===


=== 4. okt ===
Tank sõidab neljas suunas, diagonaalis pole ette nähtud. Kuul lendab otse ja plahvatab vinge pauguga. Esimeste bugide eemaldamine, et tank ei sõidaks seina sisse.


Peale pikka Heiki ahistamist ja piinamist saime enda projekti tööle team exploreriga, et kõigil on võimalus sama projekti muuta ja ka allalaadida/üleslaadida. Reaalne rühmatöö saab nüüd alata.
=== Sept 23===


Wiki täiendus
Tanki liikumine tausta peal.
 
=== Sept 22===
 
XNA algetega tutvumine, tausta ja tanki valik, keyboard - liikumine.
 
Tanki tekstuur ei ole meie enda tehtud (see on mingi tanki blueprintist välja lõigatud).
 
=== Sept 16===
 
Meeskonna leidmine/tutvumine. Mängu idee tuvustus/arutelu. Esialgse wikispace loomine, pastebini tutvustus, mis hiljem osutus mitte vajalikuks.

Latest revision as of 18:35, 6 November 2013

Player Vs Player

Kood

Terve projekt zip formaadis: http://eee.pri.ee/WindowsGame1.zip
Mängu installer http://enos.itcollege.ee/~jkruusma/tankinstaller.zip
Klasside struktuur on kujutatud failis ClassDiagram2.cd

Ülevaade

Intro

Idee on laenatud vanast heast Tanki mängust Battle City. Mäng on läbi aegade säilitanud oma mängitavuse, seda eriti tänu 2 playeri võimalusele ilma milleta mängu ette ei kujutakski. Meie mängu kriteeriumiteks on selle lihtsus ja lõputu mängitavus. Kasutaja saab kohe pulti hüpata ja mängima hakata ilma, et peaks liiga süvenema. KISS - Keep It Simple, Stupid!

Mängu sisu

Aasta on 2069, maailma on järele jäänud kaks viimast leeri - Rohelised ja Punased. Mõlemad võitlevad enda viimaste järel olevate tankidega terve maailma valitsemise üle. Et võita maailm enda kontrolli alla peab võitma kolmel maal. Mõlemal mängijal on igal maal 2 elu. Võitlus käib SURMANI!

Kuidas Mängida

Sõidad kaardi peal ringi tankiga ja proovid teist tanki õhku lasta.
Power Up'id - Ekraanil võib olla korraga 1 kuul või kui oled korjanud D(ouble)-Shoti siis või kaks mürsku korraga lasta. F(ast) Bullet muudab mürsu kiiremaks. Mõlemad power-up'id kestavad 8 sekundit.
Plokid - Adamantiumist plokid on nii tugevad, et need ei lase tanki kui ka mürsku läbi. Vesi on takistuseks vaid Tankile, kuid kuul lendab seal siiski läbi. Mets on strateegidele möeldud, metsas saab kõike teha, aga varjatult.

Nupud

Klaviatuur

F1: Uusmäng

Player One
Nool üles: Tanki Suund üles
Nool alla: Suund alla
Nool vasakule: Suund vasakule
Nool paremale: Suund paremale
Parem Ctrl: Tulistamine

Player Two
W: Tanki Suund üles
S: Suund alla
A: Suund vasakule
D: Suund paremale
F: Tulistamine

Xbox

A: Tulistamine
D-Pad: Liikutab tanki
Vasak pöidlapulk: Liikutab tanki

Projekti algne plaan

  • Tank - Juhtimine/Tulistamine, XBoxi tugi
  • Level - Plokkide loomine, tüüpide määramine
  • AI/Vastased
  • Elud
  • Punktid
  • Menüü
  • Visual Studio Team Explorer

Tööjaotus

  • Jaan Kruusma - Projekti juht + wiki + levelid
  • Siim Kündre - Liikumine, tulistamine, power-up
  • Madis Kõosaar - Vastased, Menüü
  • Keito Arula - Xbox tugi

Hilisem töö

Plaanitud Lisad

  • Power-ups - Elud, parem mürsk, 2 pauku korraga
  • Player Vs Player Mode
  • Mitu levelit ja lisa objektid - vesi, puud
  • Heli
  • Vajadusel Graafika/piltide upgrade
  • Koodi parandus
  • Paljad naised ja tasuta õlu


Tähtajaks valminud projekt

  • 2 mängijat
  • Xbox puldi tugi
  • Tanki elude loendamine, raundide loendamine, võitude loendamine
  • Ploki tüübid - mets(saab peitu minna ja ka lasta), vesi(läbi sõita ei saa, aga tulistada saab), kivi(läbi ei tulista ega sõida)
  • Kuul/Tank käitub erinevalt vastavalt ploki tüübile
  • Power Up - Double Shot ja Fast Bullet
  • Levelite parsimine Xmlist
  • Erinevad levelid, levelite loomiseks/muutmiseks piisab Xml faili muutmisest.


Arendus võimalused

  • AI - Kui graafiteooriat tulevikus rakendada saaks ka vastased ekraanile sibima
  • Veel rohkem power-up'e ja leveleid
  • Erinvad mängu mode'd
  • Highscore - juhul kui vastaseid oleks
  • Online mänguvõimalus


Logi

Nov 26

Installeri lisamine

Nov 15

Menüü täiendused.

Nov 9

Peamenüü valmimine.

Okt 28

Uus power-up fastbullet, kuvatakse F punases kastis.

Okt 25

Tähtaeg on saabunud - Shoki teraapia ja hardcore viimasehetke töö!!
Sitt, Sülg, Veri ja Pisarad!

Okt 22

Käib töö ja vile koos ehk mäng läheb aina paremaks. Üldised täiendused ja mõlema mängija käitumise ühtlustamine. Levelite tootmine.

Okt 20

Mängu testimine avatud keskonnas (koolis) Levelite disainimine. Heli lisamine irrKlangi kaudu jäi ära kuna see keeras ülejäänud referencid metsa ja programm jooksis kokku. Xmli parsimine - vastavalt ploki tüübile lisatakse ploki kordinaadid vastavalt tüübile vastavasse arraylisti.

Okt 19

Plokkide info on kantud xmli, millega tegeleb eraldi klass. Puldiga saab nüüd tanki juhtida ja tulistada, kuid joystickiga on veel tegemist. Leveli kuvamine klassis massiiviga osutus pooleldi läbikukkunuks kuna pakub liiga staatilise lahenduse uute levelite loomisele ning arendus käib xmli kallal.

Okt 18

Helide mängimiseks võtsime kasutusele irrklangi (credits to Tanel Liiv), mille abil saab väga lihtsalt heli mängida kus vaja. Hetkel käib sobivate helide otsimine. Lisasime mitmeid uusi klasse.

Okt 17

Player vs Player mode täiustamine.

Okt 14

Lisasime player 2-e HP arvutamise ja elude arvestuse (peale x suremise mängib player 1 üksi edasi) ning levelite disain asub nüüd eraldi klassis. Samuti parendasime tankide liikumist. Team Exploreriga on pidevalt jama, mis tõttu tuleb tihti aega raisata tüütute pisiasjade peale.

Okt 13

Lisatud teise mängija liikumine kuid veel ei tulista. Power-up`i loomine, testimiseks ilmub ekraanile kast(läbisõidetav), mille ajal tank saab lasta kaks kuuli ehk ekraanil võib siis kaks kuuli korraga olla.

Okt 12

Loodi uued klassid koodi paremaks paigutuseks. Draw ning Update meetodi puhastasimine üleliigsetest kontrollidest, mis paigutati uutesse klassidesse.

Okt 11

Teise mängija lisamine, kes küll veel ei liigu, aga kuuli naudib surematuna. Kuuli kontrollide parandamine, kokkupõrgete kontroll teise tankiga. Üldised koodi parandused.

Okt 4

Peale pikka Heiki ahistamist ja piinamist saime enda projekti tööle team exploreriga, et kõigil meeskonna liikmetel on võimalus sama projekti muuta ja ka allalaadida/üleslaadida. Reaalne rühmatöö saab nüüd alata. Wiki täiendused.

Sept 30

Toimus üldkoosolek, mille käigus räägiti kood kõigile üle ning lisati vajalikud kommentaarid. Jagati uued töö ülesanded. Proovisime kasutusele võtta erinevaid tiimi projekti haldamisvahendeid ning lõpuks peatusime Codeplexi peal ja lõime sinna endale konto, mida Visual Studio Team Exploreriga kasutada saaks. Esialgu oli seda keeruline tööle saada... Wiki@itcollege alustamine.

Sept 27

Tank sõidab neljas suunas, diagonaalis pole ette nähtud. Kuul lendab otse ja plahvatab vinge pauguga. Esimeste bugide eemaldamine, et tank ei sõidaks seina sisse.

Sept 23

Tanki liikumine tausta peal.

Sept 22

XNA algetega tutvumine, tausta ja tanki valik, keyboard - liikumine.

Tanki tekstuur ei ole meie enda tehtud (see on mingi tanki blueprintist välja lõigatud).

Sept 16

Meeskonna leidmine/tutvumine. Mängu idee tuvustus/arutelu. Esialgse wikispace loomine, pastebini tutvustus, mis hiljem osutus mitte vajalikuks.