3xMG

From ICO wiki
Revision as of 00:37, 5 November 2012 by Mamolvog (talk | contribs)
Jump to navigationJump to search

Kirjeldus

Shootsy on XNA's loodud 2D point & shoot mäng. Eesmärgiks on koguda võimalikult palju punkte enne kui aeg otsa saab. Sisaldab punktitulemusi ja edetabelit. Täpsem informatsioon analüüsis.

Analüüs

Shootsy on XNA's loodud 2D tulistamismäng, kus mängija eesmärgiks on teatud aja jooksul võimalikult palju punkte koguda. Kuna talv on tulemas, siis valisime esimeseks teemaks just talve.

Mängija kontrollida on lumepalle laskev kahur, milles on alguses kakskümmend lumepalli. Iga poole sekundi jooksul laetakse üks lumepall kahurisse. Tsükkel kestab esialgu viis sekundit, mille lõppedes hakkab ta algusest peale. Mängijale näidatakse laadimise tsükkli kulgemist ning kui tsükkel on vahemikus 67%-70%, siis on kasutajal võimalus vajutada nuppu, mis lõpetab ülejäänud tsükkli koheselt ja algab algusest peale (tsükkli pikkus ja laetud lumepallide hulk võib muutuda, optimaalsed väärtused selguvad mängu testimise käigus).

Kahurit ohjab mängija hiirega. Vasak nupuvajutus tulistab lumepalli sihitud kohta. Eesmärgiks on võimalikult palju vastaseid elimineerida, et oma punktitulemust suurendada. Aega on mängijal kuuskümmend sekundit (võib veel muutuda). Vastaseid asuvad tervel mänguväljal erinevatel kaugustel. Lähemal asuvad tegelased (suuremad) annavad vähem punkte kui need, kes on kaugemal (väiksemad). Liigub ringi ka sõbralikke tegelasi, kelle pihta tulistada ei tohiks, vastasel juhul kaotab mängija punkte.

Mängija on statsionaarne, kuid mänguväli on tegelikult suurem kui mängija näeb. Liigutades hiirt ekraani servadesse on mängijal võimalik vaadata vasakule ja paremale (võib-olla ka üles/alla). Selle funktsionaalsuse realiseerimine võib osutuda kõige keerulisemaks, aga suhtume optimistlikult ja proovime selle töökorda saada.

Teine probleeme tekitav koht on visuaalne pool ja igasugu tegelaste animatsioonid. Ükski meeskonna liige ei ole veel oma kunstilise poolega silma paitsnud ja seetõttu võib mängu visuaalne pool tagasihoidlikuks kujuneda.

Tööjaotus

Kuna meeskond on mahult väike, siis oleme plaaninud mahukamad asjad koos läbi võtta. Koodi kirjutavad kõik liikmed. Toon siinkohal välja mõned aspektid, millele võiksid meeskonna liikmed iseseisvalt tähelepanu pöörata.

  • Martin Molvõgin - Projektijuht. Loob mängu visuaalset poolt. Mänguvälja programmeerimine. Lumekahurist tulistamise realiseerimine.
  • Matthias Mõttus - Kasutajaliidese kujundus ja programmeerimine. Mänguvälja programmeerimine. Tegelaste programmeerimine. Tulemuse programeerimine.
  • Mauri Molvõgin - Mängumenüüde loomine ja programmeerimine. Mänguvälja programmeerimine. Lumepallide laadimise tsükkel ja "turbo" laadimise realiseerimine. Edetabelid.

Must have

  • Edetabelid: Kindlasti peaks mängus olema edetabel, kuhu saaks mängijate tulemused paremuse järjestuses kirja panna. Edetabel võiks salvestada minimaalselt top kümne mängijate tulemused. Mängusessioni lõppedes võiks kasutajalt küsida nime ja kirja panna tulemuse, kuupäeva ning kellaaja.
  • Funktsionaalne mängumenüü: Mängus peaks olema menüü, mille kaudu on võimalik alustada oma mängusessiooni, näha edetabeleid, sättida seadistusi või sulgeda mäng. Milliseid seadistusi sättida saab on veel lahtine, sest heliefektid ja muusika ei ole prioriteediks ning seetõttu ei ole helitugevuse sättimisel alguses mõtet. Uurime ka teisi võimalusi, näiteks vahetamine klaviatuuri/hiire ja xBoxi puldi vahel. Mängu peaks saama ka pausile panna vajutades ESC nuppu ning sealt kas jätkata mängu, alustada uuesti, sättida seadistusi või katkestada pooleliolev mängusessioon.
  • Asjalik kasutajaliides: Mängijal peab olema hea ülevaade oma lumepallide arvust, ajast, punktisummast ning kahuri laadimise tsükkli kulgemisest.
  • xBox puldi tugi: Kuna xBoxi puldi tugi on üks nõuetest, siis peame ka selle kindlasti täitma.
  • Klaviatuurilt/Hiirelt juhtimise tugi.

Nice to have

  • Vastased "tulistavad" vastu: Üks mängu valikutest, kus vaenlased loobivad kasutajat lumepallidega samal ajal kui kasutaja üritab neid maha saada. Mäng saab läbi siis, kui mattud lumepallide alla (ajalimiiti ei ole).
  • Powerupid: Sisse luua elemendid, mis annavad erinevaid boonuseid lühikeseks ajahetkeks. Neid saab koguda ning teatud klaviatuuri nuppudega aktiveerida mängija soovil. Boonusteks võiksid olla näiteks lõpmatuseni lumepalle, vastaste tardumine, ajaboonus ja muid. Ideid on palju, aga kõigi realiseerimine võtab palju aega.
  • Heliefektid: Heli jätame alguses tahaplaanile, arvatavasti lisame selle funktsionaalsuse esimesena kui peaks aega üle jääma. Samuti peab lisama võimaluse helitugevuse reguleerimiseks seadistuste menüüst.
  • Taustamuusika: Nagu heliefektidega on taustamuusika hilisem teema, millele peab ka lisama võimaluse helitugevuse reguleerimiseks (heliefektidest erineva skaalaga).
  • Tulemuse kordaja: Saab pidevalt boonuspunkte ning läheb kordades paremaks teatud arvu vastaste alistamisel. Muidugi selle saamiseks peab täpsus olema saja protsendine.
  • Öine režiim, kus kasutaja peab lisaks sihtima WASD nuppudega projektorit, mis valgustab sihtmärke.
  • Erinevad teemad: Alustuseks toimub mäng talvistes oludes. Lisana võiks mängus olla valik erinevate teemadega maailmu. See tähendab, et tuleb muuta kõik visuaalne pool. Tehnilise poole pealt võib põhimõtteliselt kõik sarnaseks jätta, kuid võimalusel saab ka seal teemadekohaseid muudatusi sisse tuua. Näiteks saab sama kontseptsiooni muuta ümber Teiseks Maailmasõjaks, kus mängija kontrollib kuulipildujat MG 42.
  • Unreal Engine 4 mängu mootor.

Logi

27. oktoober

Meeskonna loomine.

28. oktoober

Idee arutlus - sai välja mõeldud mõningad lisad, mis võiksid meie mängus olla. Mängu põhiidee on meeskonnavahel lahti seletatud. Teatud osad (nimi, tegelased) on veel selgumisel, kuid ei takista projekti algust.

Loodud sai ka wiki leht.

4. november

Lisasime analüüsi. Täpsustasime omavahel mängu detaile (nimi, teema, tegelased) ning arutasime, kuidas teatud aspekte mängus võiks realiseerida (kahuri laadimine, mänguväli ja vaateväli).