Meeskond: VVA

From ICO wiki
Revision as of 12:32, 1 November 2015 by Ababokin (talk | contribs)
Jump to navigationJump to search

Meeskonna liikmed

  • Vladislav Lahtarin
  • Vladislav Kovaltšuk
  • Aleksandr Babõkin - Projektijuht

Idee

Tahame luua 2D Arkanoid tüüpi mängu, kasutades UNITY keskkonda ja C# keelt.

Analüüs

Valisime oma C# kodutööks mänguloomist Unity keskkonna ja C# programmeerimis keele abil. Unity on mitmekülgne 3D/2D mängu arenduskeskkond, millesse on integreeritud kõik vajalikud tööriistad mängude loomiseks. Samuti annab Unity võimalust luua mänge erinevatele platvormidele: arvutidele, konsoolidele, telefonidele ja veebile. Saame aru, et Unity nõuab suurt juurde õppimise panust, kuid arvame, et selle kasutamine annab meile väga head õppimisvõimalust ning arendab meeskonnatöö oskust. Meie eesmärgiks on luua lihtne, kättesaadav ja haarav mäng, millega saab oma vaba aja veeta. Projektiks oli valitud Arkanoid tüüpi mäng, mis põhineb Atari Breakout mängude seeriale. Tegemist tuleb single player tüüpi mänguga. Mängija kontrollib väikest platvormi, mida saab liigutada horisontaalselt ühest seinast teisse ning ülesandeks on vältida palli kukkumist. Samas on olemas tellised. Palli löök tellise vastu viib selle hävitamisele. Kui kõik tellised antud tasemel on hävitatud, toimub üleminek järgmisele tasemele, uue telliste kogumikuga. Erinevatel tasemetel on erinevad telliste omavaheline paigaldus. Iga tellise hävitamine annab mängijale punkte (Score). See annab võimalust võrrelda oma tulemusi oma sõpradega või teiste inimestega. Loome mängu peamiselt meelelahutuseks, kuid samal ajal ootame, et mingil kasutajal võib isegi nostalgia tekitada. Kindlasti nõuab mängu tegemine palju tööd, panust ja aega ning kindlasti tulevad ette ka mitmeid probleeme, kuid praegu neid välja tuua on küllaltki raske, sest enne seda mitte keegi meist pole selliseid projekte teinud, selle tõttu praegu on keeruline öelda, kas õnnestub see idee meil ellu viia või ei õnnestu.

Nimekiri funktsionaalsusest (Must have)

Kõigepealt valmistame tasemet, kus kogu mäng hakkab toimuma. Loome platvormi, palli ja erinevad tellised. Platvormi saab liigutada vasakule ja paremale. Iseenesest palli kontrollimise võimalust mängijal ei ole, seda saab kontrollida ainult platvori abil. Iga mängu taseme alustamiseks tuleb vajutada klahvi, selleks et pall alustaks oma liikumist. On vaja realiseerida mängija “elu” süsteemi. Algusel neid on kolm tükki, kuid mängu käigus nei saab juurde koguda. Iga tasemega muutub telliste paigaldus ja kasvab palli kiirus, ehk kasvab ka tasemete raskus. Mäng on lõppenud siis, kui on läbitud kõik tasemed või pall on kukkunud ja mängijal enam ei ole elusid. Tuleb realiseerida mängu menüü paneeli, kus saab alustada uut mängu, valida taseme, nupp “Start”, “Menu”, “Replay” ja nupp “Pause”. Samuti saab näha infot mängu koostajate ja versiooni kohta. Kindlasti tuleb teha ka mängu staatus, kus on näha, et kas mängija mängib ja kui palju elusid tal veel on, kas mäng on pausi peal või mitte, kaotas või võitis mängu. Mängu disaini loome ka ise, joonistame kõik objektid graafilises redaktoris. On vaja luua graafikat tausta, palli, telliste ja platvormi jaoks. Et kasutajal poleks igav teeme kõik tasemeid visuaalselt erinevat moodi ja lisame heli, mida saab menüü paneelis välja või sisse lülitada. Mängule teostame installi, et iga tavakasutaja saaks meie mängu lihtsalt ja mugavalt endale arvutisse installida. Oma koodi püüame teha maksimaalselt mugavalt loetatavaks ja vältida vigu. Püüame leida parimaid lahendusi mängu realiseerimiseks ja optimiseerimiseks.

Nimekiri funktsionaalsusest, mis võiks olla (Nice to have)

Mängul võiks olla telliseid, mida on vaja paar korda lüüa, selleks et seda hävitada. Võiks luua selliseid objekte mis hoopis ei saa hävitada. Nende eesmärk on teha taseme läbimist keerukamaks ja nn. “kaitsta” teisi telliseid. Mõnikord võib ilmuda vaenlane, kes tõukab palli. Luua selliseid telliseid, mille hävitamisel ilmub ja hakkab kukkuma kapsel. Kapsel on aktiveeritud kui mängija suudab seda püüda oma platvormiga. Kapslid võivad olla erinevad: mingid neist aitavad, teised aga teevad kahju. Näiteks laiendavad või kitsendavad platvormi, suurendavad palli arvu või annavad pallile rohkem jõudu või hoopis teevad seda nähtamatuks. Võiks luua “teleporte”, kui pall sattub sinna tuleb ta välja teises kohas. Ühel tasemel neid võiks olla päris mitu. Oleks tore kui saaksime kuvata mängu lõppetamisel mängija Score, et ta saaks teada, kui palju ta nei kogenud on.

Valmis mäng

Arendusprotsess

  • 15.10.2015 - Meeskonna loomine
  • 20.10.2015 - Projekti idee valimine
  • 24.10.2015 - Wiki lehe loomine, TFSi konto loomine ja õppejõule kutse saatmine
  • 01.11.2015 - Analüüsi esitamine