This is an old revision of the document!


Pong Multiplayer Game

Introducere

Ce face?

Proiectul implică dezvoltarea unui dispozitiv interactiv de divertisment, conceput pentru a oferi utilizatorilor o experiență de joc captivantă. Acest dispozitiv permite utilizatorilor să selecteze modul de joc (single player sau multiplayer) prin intermediul butoanelor disponibile, pentru un joc de Ping Pong. Apoi, ei interacționează cu joystick-urile dedicate pentru a participa la joc, care se desfășoară într-o serie de „best of 3”, afișându-se pe ecranul conectat. În funcție de rezultat, buzzer-ul va crea un sunet de învingător sau pierzător.

Scopul lui?

Scopul principal al dispozitivului este de a oferi o modalitate distractivă și interactivă de petrecere a timpului liber, aducând împreună elemente clasice de joc și tehnologie modernă.

Alte considerente

Consider că acest joc nu are o utilitate mare în zona educației sau medicinei, dar conferă o notă de nostalgie jucătorilor care au avut primul contact cu un astfel de joc. Prin acest proiect încerc să dezvolt un joc vechi într-un mod cât mai plăcut pentru toată lumea.

Ideea de la care am pornit pentru acest proiect a fost una simplă: îmi doream să fac ceva „catchy”, dar suficient de complicat și interactiv.

Descriere generală

Funcționarea sistemului de joc:

1. Inițializarea joculu:

  • Utilizatorul pornește sistemul și alege, prin interacțiunea cu butonul, modul de joc: singleplayer, multiplayer.

2. Începerea jocului

  • Odată inițializat jocul, acesta va începe, afișând pe ecran scorul actual (0 - 0) și creând jucătorii (cele 2 palete)

3. Procesarea mișcărilor

  • În funcție de modul de joc ales, acțiunea joystick-urilor va afecta poziția paletelor (sau a unei singure palete).
  • Monitorizarea acțiunilor asupra joystick-urilor se va face constant de către placa de acțiune (Arduino).
  • Prin atingerea bilei de joc cu o paletă, bila se va mișca către terenul advers.
  • Afișarea mișcărilor corecte va fi procesată de placa Arduino și transmisă către utilizator prin display-ul LED I2C.

4. Încheierea jocului

  • Jocul se va incheia odată cu atingerea scorului de 2/3 puncte de oricare dintre jucători.
  • Procesarea mișcărilor joystick-urilor va fi oprită.
  • Va fi acționat buzzer-ul pentru a transmite sunetul corespunzător finalului de joc.

5. Rematch

  • Odată cu finalizarea jocului anterior va fi pornită opțiunea de rematch care va reinițializa un joc după formatul anterior.

Hardware Design

Lista componente:

  • 1 x Arduino UNO (sau alta placa aferenta)
  • 2 x Butoane
  • Cabluri
  • 1 x Buzzer
  • 2 x Joystick-uri analogice
  • 1 x Display I2C
  • 1 x Breadboard

Aici puneţi tot ce ţine de hardware design:

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
  • librării şi surse 3rd-party (e.g. Procyon AVRlib)
  • algoritmi şi structuri pe care plănuiţi să le implementaţi
  • (etapa 3) surse şi funcţii implementate

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2024/sseverin/andrei.napruiu.1715034273.txt.gz · Last modified: 2024/05/07 01:24 by andrei.napruiu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0