Autorul poate fi contactat la adresa: Login pentru adresa
Arena Wars este un joc turn based in care doi playeri se lupta intre ei.
Scopul este sa il invingi pe adversar si acesta sa ramana astfel fara puncte de viata.
Am pornit de la ideea jocurilor 1vs1 de strategie in care fiecare player detine niste carti cu diferite abilitati pe care le poate folosi in fiecare tura.
Cred ca este util deoarece este un joc in care trebuie sa analizezi ce face intotdeauna adversarul si astfel sa iei o decizie in privinta asta, deci este si distractiv si iti si imbunatateste abilitatile de decizie.
Fiecare player isi alege o clasa cu care va juca. In functie de clasa aleasa, fiecare player va avea abilitati diferite.
Jucatorii vor incepe cu H puncte de viata (HP) si S stamina (SP). Acest numar e variabil in functie de clasa aleasa.
Scopul este sa il aduci pe adversar la 0 puncte de viata.
Jocul decide random (dupa un coin toss) cine incepe primul.
Apoi, fiecare player, pe rand (fiind turn based), alege o actiune pe care o va face. Lista de actiuni cuprinde:
Jocul se va folosi de un buzzer pentru a avea sunete cand sunt folosite diverse abilitati, sau cand un jucator castiga.
Lista de piese:
Fiecare clasa incepe cu health points si stamina points mentionate in paranteza mai jos, si are urmatoarele abilitati specifice clasei. In plus, fata de cele mentionate, fiecare player are optiunea de rest, care umple 4HP si 4SP.
Fiecare Normal Attack consuma 3SP, pe cand Special Attack-urile consuma 5SP. Ultimate ability-ul foloseste tot SP-ul.
Clasele din care jucatorii isi pot alege sunt urmatoarele:
Pentru dezvoltare software am folosit:
Cod: adrianzatreanu_arenawars_cod.zip
Pentru randomness este folosit un timer.
Codul este impartit in mai multe fisiere:
Fisierul principal este arena.c, unde este functia main care initializeaza butoanele, timerul, etc, si care apeleaza functia de meniu.
Apoi, sunt apelate functiile din fisierul screens.c, cum ar fi meniul, regulile, sau chiar functia de Play.
Cand a inceput jocul, si UI-ul este desenat, fiecare player alege o abilitate care este apelata din fisierul abilities.c.
Cel mai bine pot arata rezultatele obtinute cu un filmulet si niste poze.
Rezultatul este un joc care a fost dus la capat, care contine un meniu si un UI pentru joc, cu 5 clase jucabile, exact cele descrise mai sus. Un video demonstrativ este postat mai jos.
A fost un proiect challenging, pe care am stat multe ore, atat pe partea de hardware cat si pe partea de software, luandu-mi mult sa fac LCD-ul sa mearga.
Consider ca a meritat efortul, dupa timpul depus am ajuns sa am ceva concret, ceva de care sa fiu mandru.
Nu am mai lucrat inainte nici cu Arduino sau ceva similar, deci a fost nevoie sa depun un efort mai mare decat colegii care au mai lucrat inainte cu asta.
Imi doream de mult sa fac un proiect cu interfata grafica si consider ca acesta a iesit chiar misto!
Un video demonstrativ. Enjoy! https://www.youtube.com/watch?v=jeX2GIqjFQQ
Arhiva completa, cu poze si cod: adrianzatreanu_arenawars.zip
13 aprilie: Am ales proiectul si am primit aprobarea din partea asistentului.
20 aprilie: Am adaugat descrierea proiectului, titlul, regulile jocului si lista de piese.
4 mai: Am adaugat schema electrica a proiectului si am updatat lista de piese.
10 mai: Am terminat placuta de baza.
15 mai: Am adaugat si butoanele si LCD-ul pe placuta de test si sunt functionale.
17 mai: Am implementat meniul principal, de selectie a regulilor/de a juca jocul.
20 mai: Am implementat UI-ul principal pentru joc.
23 mai: Finalizat software-ul.