Játék térkép generálás
2015-11-21T21:14:51+01:00
2015-11-22T12:31:12+01:00
2022-07-19T20:13:16+02:00
khaled98
Lenne egy kisebb problémám, de lehet, hogy valami nagyobba kezdtem bele :)

Szeretnék írni egy játékot (konzolos, labirintus szerű), aminek van pár egyszerű szabálya:
Van egy (pl.) 4x4-es térképünk, összesen 16 mezővel. Minden mezőnek van egy színe (kék,zöld,sárga,rózsaszín). 
Ki kell jutni a labirintusból úgy, hogy:
1. Ha rálépünk egy színre, akkor utána még 2x ugyanolyan színű mezőkre kell rálépni (összesen 3x, helyben járni, visszalépni nem szabad)
2. Szomszédos mezőre szabad lépni, átlósan nem
3. A kijáratot pontosan a harmadik színnel kell elérni

Példa:
[]-vel a bejárat, ()-> ahova ki kell jutni
R  (R)  R   R
R   R   K   K
Z   Z   K   K
Z  [S]  S   S

Itt ugye kénytelenek vagyunk eljutni a (bal felső saroktól számolva) 3,2-es Kék mezőig, mert:

R   (R)    R    R
R    R     K    K
              |        (felfele)
Z    Z     K<- K
                    |  (felfele)
Z   [S]->S->S

(Remélem a példával kicsit érthetőbb :) , bár biztos van aki ismeri ezt a játékot)

A probléma ott jön elő, amikor egy térképet (nxn méretű, négyzet) szeretnék generálni.
Megpróbáltam azzal az elmélettel, hogy ha minden mező körül van még két ugyanolyan színű mező, akkor a térkép bejárható és ezzel játszható, de ez gyakorlatban nem volt igaz.

Próbáltam egy vizuális megoldást is csinálni erre a pályára, csatolva megtaláljátok :)

Van valakinek akármilyen ötlete,tapasztalata, hogy hogyan kéne nekiállni? 
Akármilyen előreléptető hozzászólást örömmel fogadok :)
Köszönöm!

(Java-ban és C++-ban írnám meg, eddigi játszható verzióját (fixen előre beadott pályával) javaban írtam)
Mutasd a teljes hozzászólást!
Nem biztos, hogy minden részletet értettem, de az ilyen jellegű feladatokat úgy is lehet generálni, hogy az üres térképre legyártod a megoldást (tehát két pont között egy szabályoknak megfelelő hosszúságú, kiszínezett útvonalat, részben véletlenszerű próbálgatással), majd a nem használt mezőket megszórod tetszőleges színekkel.
Mutasd a teljes hozzászólást!

  • Köszi szépen, megpróbálom akkor úgy csinálni, ahogyan írtad.
    Akkor az lenne, hogy random kijelöök egy ki és egy bemeneti mezőt, utána a 2 mező között az megoldást, és a környéket meg szinte random színekkel.
    Sajnos nincs map-generálással sok tapasztalatom :/ .
    Mutasd a teljes hozzászólást!
  • Kicsit egyszerűnek tűnik, de ez most a legrövidebb út keresése alapján történik,
    csatoltam egy képet.

    De szerintem már megvan a megoldás rá, egyelőre ez a gyors útvonal jónak néz ki, viszont nem ér semmi, mert "túl könnyű" megoldani :D 
    Ha random irányba megyek (térkép adottságaihoz mérten), akkor sokkal szebbek és nehezebbek lesznek a térképek.

    Köszi az ötletet Tevemadar!
    Mutasd a teljes hozzászólást!
    Csatolt állomány
abcd