LED Fight – gra zręcznościowa

LED Fight – gra zręcznościowa

INFORMACJA: Poniższy post nie wydostał się z Poczekalni :(

Zdjęcie układu podczas rozgrywki
Witam. Jestem nowym użytkownikiem tego serwisu i chciałbym od razu podzielić się czymś co sam zrobiłem. Jest to pierwszy projekt elektroniczny jaki wykonałem, więc proszę nie szczędzić od uwag, dzięki którym będę wiedział co powinienem robić lepiej. Przejdźmy do rzeczy:

Projekt o nazwie „LED Fight”, to autorska gra zręcznościowa dla dwóch osób. Jest to moja własna koncepcja, ale oczywiście przy jej realizacji czerpałem wiedzę z wielu źródeł. Zasadę działania gry najlepiej opisać słowem „przepychanka”. Do dyspozycji mamy 11 pól do walki. Gracze ustawiają się naprzeciw sobie. Gdy gra się rozpoczyna, pola walki ustawione są w pozycji startowej. Oznacza to, że gracze posiadają po swojej stronie po tyle samo własnych pól, a środkowe pole jest polem starcia. Przykładowo gracz zielony posiada po swojej stronie 5 zielonych pól, gracz niebieski, po swojej stronie 5 niebieskich pól, a środkowe pole jest koloru turkusowego (wynika z połączenia zielonego z niebieskim). Celem gry jest zdobycie wszystkich pól. Aby to osiągnąć, każdy z graczy ma do dyspozycji swój pad z dwoma przyciskami. Przycisk lewy (zielony) odpowiada za zbieranie bonusów, przycisk prawy (czerwony) odpowiada za walkę o pola. Po starcie gracze powinni jak najszybciej naciskać przyciski walki. Jeśli, któryś z graczy będzie naciskał odpowiednio szybciej niż przeciwnik, zyska pole. Oprócz tego w grze funkcjonuje pole bonusowe. Pole to może przyjąć trzy kolory reprezentujące bonus możliwy do zebrania przez graczy poprzez naciśnięcie przycisku zbierania bonusów na swoim padzie. Pierwszy bonus, koloru czerwonego, jest bonusem odejmującym. W przypadku jego zebrania tracimy natychmiast jedno pole. Drugi bonus, koloru zielonego, to bonus dodający. Analogicznie do poprzedniego, jego zebranie skutkuje uzyskaniem natychmiast jednego pola. Trzeci bonus, koloru niebieskiego, jest tak zwanym bonusem relaksu. Jego zebranie powoduje, że gracz, który go uzyskał może odpocząć od walki przez określoną ilość czasu, podczas gdy przeciwnik nieprzerwanie musi walczyć, by utrzymać pozycję. Informacja o tym, który z graczy zebrał bonus relaksu znajduje się na dedykowanym dla każdego gracza polu, umiejscowionym po jego stronie. Kiedy gracz zbierze ten bonus, pole to zapala się na niebiesko. Gra trwa tak długo, aż jeden z graczy nie uzyska wszystkich pól, włącznie z polem środkowym.

 

Opis tego co znajduje się na płytce:

Model 3D układu

  1. Diody informujące o zebraniu bonusu relaksu
  2. Dioda bonusów
  3. Pola walki
  4. Rejestry przesuwne 74HC595
  5. Mikrokontroler ATmega8A
  6. Moduł zasilania ze stabilizatorem 7805
  7. Złącze zasilania
  8. Złącze programatora ISP
  9. Złącze pada gracza 2
  10. Złącze pada gracza 1
  11. Wyprowadzenie kanału pomiarowego ADC
  12. Złącze wyświetlacza LCD
  13. Potencjometr kontrastu wyświetlacza LCD

Użyte elementy elektroniczne:

  • Mikrokontroler ATmega8A – jednostka sterująca
  • Rezystory :
    • 10 kΩ (x1) – rezystor podciągający pin RST, mikrokontrolera ATmega8 do VCC
    • 100 Ω (x26) – rezystory ograniczające prąd płynący przez diody, dopasowane do koloru niebieskiego i zielonego
    • 150 Ω (x1) – rezystor ograniczający prąd płynący przez diodę koloru czerwonego
  • Kondensatory elektrolityczne :
    • 10 µF (x2) – magazynowanie energii
    • 100 µF (x1) – redukcja tętnień napięcia
    • 47 µF (x1) – magazynowanie energii
  • Kondensatory ceramiczne/tantalowe :
    • 100 nF (x3) – filtrowanie zakłóceń
    • 100 nF (x1) – kondensator ustalający napięcie odniesienia dla ADC
    • 330 nF (x1) – filtrowanie zakłóceń
  • Potencjometr 10 kΩ (x1) – regulacja kontrastu wyświetlacza LCD
  • 8-bitowe rejestry przesuwne 74HC595 (x3) – obsługa większej ilości diod LED
  • Stabilizator napięcia L7805CV – stabilizacja napięcia wejściowego na 5 V
  • Złącze śrubowe dwupinowe – podłączenie zasilania
  • Goldpiny – do połączenia programatora, padów i wyświetlacza LCD
  • Taśma łączeniowa – podłączenie wyświetlacza LCD
  • Podstawki pod układy scalone

 

Schemat układu:

Schemat cz.1/2Schemat cz.2/2

 

Ustawienia gry, które można modyfikować wedle uznania:

  • Liczba pól
    Dostępne opcje [3, 5, 7, 9, 11]
    Określa ile pól wykorzystywanych jest podczas rozgrywki. Maksymalna liczba pól do wykorzystania to 11. Przy wybraniu mniejszej wartości pomijane pola pozostają nieaktywne.
    Domyślna wartość : 11.
  • Czułość padów
    Dostępne opcje [1, 2, 3, 4]
    Określa jak duża musi być różnica pomiędzy ilością przyciśnięć klawisza walki, aby zyskać jedno pole. Przykładowo, jeżeli parametr ten jest równy 1, aby zdobyć jedno pole, gracz musi nacisnąć przycisk walki tylko raz, zakładając, że w tym czasie przeciwnik nie naciska. Kiedy parametr ten wynosi 4, aby zdobyć pole, należy nacisnąć 4 razy. Każde naciśnięcie przycisku przez przeciwnika w czasie kompletowania 4 przyciśnięć redukuje naliczone przyciśnięcia o 1.
    Domyślna wartość : 2
  • Częstość bonusów
    Dostępne opcje [od 100ms do 2000ms, co 100ms]
    Określa, co jaki czas podejmowana jest próba losowa, mogąca potencjalnie wygenerować bonus. O wystąpieniu lub niewystąpieniu bonusu decyduje parametr [Szansa na bonus].
    Domyślna wartość : 2000ms.
  • Szansa na bonus
    Dostępne opcje [10%, 11%, 12%, 14%, 16%, 20%, 25%, 33%]
    Określa jakie jest prawdopodobieństwo wystąpienia pojedynczego bonusu, podczas podejmowania próby losowej. O częstości podejmowania prób losowych decyduje parametr [Częstość bonusów].
    Domyślna wartość : 20%.
  • Bonus odejmujący
    Dostępne opcje [TAK, NIE]
    Określa czy podczas rozgrywki bonus odejmujący ma być aktywny. Ustawienie opcji NIE powoduje, że bonus nie będzie generowany.
    Domyślna wartość : TAK
  • Bonus dodający
    Dostępne opcje [TAK, NIE]
    Określa czy podczas rozgrywki bonus dodający ma być aktywny. Ustawienie opcji NIE powoduje, że bonus nie będzie generowany.
    Domyślna wartość : TAK
  • Bonus relaksu
    Dostępne opcje [TAK, NIE]
    Określa czy podczas rozgrywki bonus relaksu ma być aktywny. Ustawienie opcji NIE powoduje, że bonus nie będzie generowany.
    Domyślna wartość : TAK
  • Szybkość autoclick
    Dostępne opcje [od 100ms do 1000ms, co 20ms]
    Określa jaka będzie szybkość sztucznego naciskania, przy zebranym bonusie relaksu. Przykładowo wartość 100ms oznacza, że kiedy gracz zbierze bonus relaksu, jego przeciwnik będzie musiał naciskać przycisk walki co najmniej z szybkością jednego naciśnięcia co 100ms, aby nie stracić pola.
    Domyślna wartość : 160ms
  • Czas autoclick
    Dostępne opcje [od 1000ms do 20000ms, co 100ms]
    Określa jak długo będzie trwało sztuczne naciskanie, przy zebranym bonusie relaksu. Przykładowo wartość 1000ms oznacza, że kiedy gracz zbierze bonus relaksu, nie będzie musiał sam naciskać przycisku walki przez 1000ms.
    Domyślna wartość : 5000ms
  • Automatyczne wygaszanie bonusu odejmującego
    Dostępne opcje [TAK, NIE]
    Określa czy bonus odejmujący, będzie automatycznie wyłączany przy następnej próbie losowej, która nie wygeneruje innego bonusu.
    Domyślna wartość : TAK

Na koniec krótki filmik, który ma tylko przedstawić zasadę działania:

INFORMACJA: Poniższy post nie wydostał się z Poczekalni :(

Ocena: 5/5 (głosów: 2)

Podobne posty

4 komentarzy do “LED Fight – gra zręcznościowa

Odpowiedz

anuluj

Masz uwagi?