„BPROF:2dm” változatai közötti eltérés

A Miau Wiki wikiből
(Jelenlegi 2DM játék adatstruktúrája)
(Jelenlegi 2DM játék adatstruktúrája)
34. sor: 34. sor:
  
  
=Jelenlegi 2DM játék adatstruktúrája=
+
=Jelenlegi 2DM játék =
 +
==adatstruktúrája==
 
A jelenleg már elkészült 2DM játék adatbeolvasását,adatstruktúráját ki kell nyomozni annak érdekében, hogy a dolgozatban készülő játék kompatibilis lehessen vele.
 
A jelenleg már elkészült 2DM játék adatbeolvasását,adatstruktúráját ki kell nyomozni annak érdekében, hogy a dolgozatban készülő játék kompatibilis lehessen vele.
  
188. sor: 189. sor:
 
  - style.css
 
  - style.css
 
  - util.js
 
  - util.js
 +
 +
 +
==lehetőség a webes rendszerbe való fejlesztéshez(???)==
 +
<div id="COLOR_GREEN-DOT_1" class="card draggable COLOR_GREEN DOT_1" style="right: 4%; bottom: 70%;"></div> itt ebben ha megvaltoztatom a COLOR_GREEN_DOT_1 -eket COLOR_GREEN_DOT_2 -re, akkor at fog váltani 2 pöttyre, és a játék el fogja fogadni amikor odahúzom a 2 pöttyös zöld mezőbe
  
 
=Rendszer megrendelővel egyeztetett követelményei=
 
=Rendszer megrendelővel egyeztetett követelményei=

A lap 2022. november 11., 00:25-kori változata

Ez a szócikk a "Rendszertervezés" tantárgy keretében keletkező dokumentum, mely része a szakdolgozat mellékleteinek.

Fogalmak

(potenciális változók a kódhoz)
  • puzzle: X-szer Y-os háló, melyben a sorfejléc (X) és oszlopfejléc (Y) attribútumok alapján kell elhelyezni az odaillő képet
  • X(i):
  • Y(j):
  • válaszkártya(k):
  • megoldástér(i,j,k):
  • keretrendszer: puzzle megjelenítő szoftver
  • log: minden tevékenység (pl. egérmozgás, billentyű-leütés, billentyű-kombináció) feljegyzése egy fájlban, dátummal felcímkézve (vö. https://miau.my-x.hu/mediawiki/index.php/Excel-makro#Tanfolyami_vez.C3.A9r-feladatok)
  • kiértékelés:

Megrendelői kezdeményezés

Létezik egy 2DM-játék (https://miau.my-x.hu/miau/254/2dm_kemia_demo/), amelyben a feladat egy 3x3-as* hálóban különféle képeket elhelyezni az oszlop- és sor-fejlécek alapján. A létező 2DM-játék log-ja a vágólapra keletkezik a JavaScript lehetőségei mentén. Az új rendszerben a sebezhetőségek minimalizálása, csalás minden mennyiségű kizárása a cél.

Feladat:

  • Új játék tervezését és
  • futtatását támogató keretrendszer kialakítása úgy, hogy
  • a keretrendszer által olyan output kialakítása, mely a jelenlegi 2DM-megoldás által azonnal futtatható

Nem feladat:

  • online kollaboratív munka támogatása
  • adatbázis-alapú megoldás kialakítása



Jelenlegi 2DM játék

adatstruktúrája

A jelenleg már elkészült 2DM játék adatbeolvasását,adatstruktúráját ki kell nyomozni annak érdekében, hogy a dolgozatban készülő játék kompatibilis lehessen vele.

Nyomozás lépései:

1. https://www.cyotek.com/downloads/info/setup-cyowcopy-1.9.0.822-x86.exe alkalmazás segytségével letöltöttem a https://miau.my-x.hu/miau/271/2dm/ weboldal összes fájlját.

2. letöltött adatok:

- img/
 - 00m.png
 - 03-00.png
 - 03-30.png
 - 03-49.png
 - 03h.png
 - 12-00.png
 - 12-30.png
 - 12-49.png
 - 12h.png
 - 18-00.png
 - 18-30.png
 - 18-49.png
 - 18h.png
 - 30m.png
 - 49m.png
 - AD_CLOCK.jpg
 - auth.png
 - auth_alairas.png
 - auth_arc.png
 - auth_dns.png
 - auth_gepeles.png
 - auth_hang.png
 - auth_irisz.png
 - auth_kez.png
 - auth_retina.png
 - auth_ujj.png
 - BLANK_BLANK.png
 - BLANK_C1.png
 - BLANK_C2.png
 - BLANK_C3.png
 - BLANK_R1.png
 - BLANK_R1_BLANK_C1.png
 - BLANK_R1_BLANK_C2.png
 - BLANK_R1_BLANK_C3.png
 - BLANK_R2.png
 - BLANK_R2_BLANK_C1.png
 - BLANK_R2_BLANK_C2.png
 - BLANK_R2_BLANK_C3.png
 - BLANK_R3.png
 - BLANK_R3_BLANK_C1.png
 - BLANK_R3_BLANK_C2.png
 - BLANK_R3_BLANK_C3.png
 - BRW.png
 - circle.png
 - COIN_1E.png
 - COIN_20C.png
 - COIN_2C.png
 - COLOR_DOT.jpg
 - COLOR_FLAG.jpg
 - COLOR_SHAPE.jpg
 - COLOR_TETRIS.jpg
 - DIR_B.png
 - DIR_BC.png
 - DIR_BL.png
 - DIR_BR.png
 - DIR_C.png
 - DIR_L.png
 - DIR_M.png
 - DIR_MC.png
 - DIR_ML.png
 - DIR_MR.png
 - DIR_R.png
 - DIR_T.png
 - DIR_TC.png
 - DIR_TL.png
 - DIR_TR.png
 - dot_1.png
 - dot_2.png
 - dot_3.png
 - EUR_COIN.jpg
 - favicon.ico
 - flag1.png
 - flag1_BRW.png
 - flag1_GRW.png
 - flag1_GRY.png
 - flag2.png
 - flag2_BRW.png
 - flag2_GRW.png
 - flag2_GRY.png
 - flag3.png
 - flag3_BRW.png
 - flag3_GRW.png
 - flag3_GRY.png
 - FLAG_IRL.png
 - FLAG_SMR.png
 - FLAG_SVK.png
 - FRENCH_CARD.jpg
 - GRW.png
 - GRY.png
 - hearts.png
 - hearts_jack.png
 - hearts_king.png
 - hearts_queen.png
 - hexagon.png
 - IRL_1E.png
 - IRL_20C.png
 - IRL_2C.png
 - jack.png
 - king.png
 - LArrow.png
 - logo.jpg
 - pikes.png
 - pikes_jack.png
 - pikes_king.png
 - pikes_queen.png
 - queen.png
 - RArrow.png
 - SMILEY_DIR.jpg
 - SMR_1E.png
 - SMR_20C.png
 - SMR_2C.png
 - SVK_1E.png
 - SVK_20C.png
 - SVK_2C.png
 - tetris_1.png
 - tetris_11.png
 - tetris_12.png
 - tetris_13.png
 - tetris_2.png
 - tetris_21.png
 - tetris_22.png
 - tetris_23.png
 - tetris_3.png
 - tetris_31.png
 - tetris_32.png
 - tetris_33.png
 - tiles.png
 - tiles_jack.png
 - tiles_king.png
 - tiles_queen.png
 - triangle.png
 - TTT_E1.png
 - TTT_E2.png
 - TTT_E3.png
 - TTT_M1.png
 - TTT_M2.png
 - TTT_M3.png
- card-design.css
- carousel.js
- gameProperties.js
- gameScreenEvents.js
- index.htm
- index.js
- style.css
- util.js


lehetőség a webes rendszerbe való fejlesztéshez(???)

itt ebben ha megvaltoztatom a COLOR_GREEN_DOT_1 -eket COLOR_GREEN_DOT_2 -re, akkor at fog váltani 2 pöttyre, és a játék el fogja fogadni amikor odahúzom a 2 pöttyös zöld mezőbe

Rendszer megrendelővel egyeztetett követelményei

optimális (tesztelt):

  • windows 11
  • Intel Core i5 11th gen
  • 16GB ram

választott technológiák:

  • Programnyelv: C#
  • Adattárolás: JSON

Egyéb funkciók

  • UI személyre szabása előre elkészített, akár a felhasználók által személyre szabott téma segítségével

(színvilág/színharmónia nem ellenőrzött, a téma tervezőjének kell figyelnie arra, hogy a felhasznált színek nem olvadnak egybe egymással)

  • nyelvek támogatása, akár a felhasználók által definiált szótár segítségével

(szótár helyessége nem ellenőrzött, nincs kizárva akár a halandzsa nyelv használata sem)

Folyamatábrák

Kvíz tervezésének folyamatábrája:........
Kvíz megírásának folyamatábrája:........
Kvíz kiértékelésének folyamatábrája:........

Rendszer specifikáció

Ajánlott irodalom/demo/minta: http://centroszet.hu/tananyag/ - pl. http://centroszet.hu/tananyag/szervezes2/615_rszletes_rendszerterv.html 

Logikai rendszerterv

Fizikai rendszerterv

Program specifikáció

Program célja

UI tervek

Adattárolás

A keretrendszer az adatokat .json fájlokban tárolja.
ezek: a beállítási adatok (téma,nyelv alapbeállítások), teszt adatok (kérdés,válasz lehetőségek)

"puzzles": [
   {
     "question": "value",
     "correctGridOrder": {
       "1": "C:/Users/x/Y/kep1.png",
       "2": "C:/Users/x/Y/kep2.png",
       "3": "C:/Users/x/Y/kep3.png",
       "4": "C:/Users/x/Y/kep4.png",
       "5": "C:/Users/x/Y/kep5.png",
       "6": "C:/Users/x/Y/kep6.png",
       "7": "C:/Users/x/Y/kep7.png",
       "8": "C:/Users/x/Y/kep8.png",
       "9": "C:/Users/x/Y/kep9.png"
     }
   },…
]

Indoklás:
A JSON fájlok egyszerű olvashatósága, értelmezhetősége miatt bárki létre tud hozni saját témát, nyelv sémát.
Alternatív megoldások elvetésének indoklásai:

  • Egyszerű txt fájlok is megfelelőek a feladatra, ám a JSON fájltípus által biztosított kulcs-érték adatszerkezet nagy segítséget nyújt a fájl manuális átláthatóságához, illetve a programmal való feldolgozhatósághoz.
  • ...

Fejlesztői saját 2DM-játékok

A fejlesztés során az alábbi tartalmi kihívások

1. játék

  • X=3
    • X1=...
    • X2=...
    • X3=...
  • Y=3
    • Y1=...
    • Y2=...
    • Y3=...
  • válaszkártyák (9=3*3)
  1. ...
  2. ...
  3. ...
  4. ...
  5. ...
  6. ...
  7. ...
  8. ...
  9. ...

i. játék

  • X>3
  • Y>3
  • X<>Y

Ötletek

  • Github-on puzzle katalógus repo, amibe bárki bele tud committolni. (A dolgozatíró jóváhagyásával)
  • Ezt fetchelne az alkalmazás és így ott is meg tudna esetlegesen jelenni egy külön marketplace nézet, és innen lehetne aktiválni egy egy témát.
  • puzzle inditasakor a puzzlet letrehozo szemely által elvárt azonosító input (neptun kod,nev,becenév stb (nem kell ezzel foglalkoznom h valid-e,mert nekem elég ha egy string az output))- Ez is belekerülne a logfajlba, mely segítené a teszt írójának beazonosítását.
  • előző ellentéte: puzzle anonim leadásának lehetősége
  • puzzle kiértékelése a tanár részéről:
    • output fajlokat osszeszedi (nem erdekel, hogy hogyan, emaillel beküldik a diákok stb….), és beolvastatja a programmal, ami csinal egy egyszeru excel táblát, akár kimutatásokkal
  • puzzlek között lépkedni lehet előre hátra, ha van több puzzle (ezt a puzzle szerkesztője engedélyhezheti/tilthatja le)
  • teszt folytatasanak engedelyezese is tanartol fuggjon, logolva lesz a szüneteltetés
  • tesztben a kép pathje nem képre mutat,hanem egy más fajta fájlra, akkor ezt le kell kezelni (ilyen hiba case-eket ki kell listázni, és ki kell küszöbölni)
  • más, nem 3x3-mas teszt használatát engedélyezni*


logger teszt irása közben:

logolni fogja a szoftver a user általi: alkalmazás váltást, alkalmazás minimalizálást, és az ezekhez tartozó időpontot is log az egyenlore egy txt fajl “log {timeOfStart}.txt”