játékfejlesztés.hu
FórumGarázsprojectekCikkekSegédletekJf.hu versenyekKapcsolatokEgyebek
Legaktívabb fórumozók:
Asylum:    5444
FZoli:    4892
Kuz:    4455
gaborlabor:    4449
kicsy:    4304
TPG:    3402
monostoria:    3284
DMG:    3172
HomeGnome:    2919
Matzi:    2519

Pretender:    2498
szeki:    2440
Seeting:    2306
Geri:    2188
Orphy:    1893
Joga:    1791
Bacce:    1783
MaNiAc:    1735
ddbwo:    1625
syam:    1491

Dwarf
Dwarf
Kategória: 2d ügyességi
A projectről:
A játék egy szupermario szerű ügyességi játék lesz, amely a tervek szerint a nagy klasszikusokat(commander keen, lode runner, mario) fogja parodizálni, ez alatt értem hogy rátévedhettek majd ezekben látott pályákra, vagy más utalás is lesz rájuk. :)

Természetesen amint kész lesz a játék kiadom a forráskódot. A játékot nyomon követni napi szinten a weboldalamon tudjátok, persze ide is igyekszem kitenni a plusz infót.

Természetesen bármilyen kritikát, ötletet, infót szívesen veszek :).
A project honlapja, letölthető verzió:
Fejlesztőeszköz, segédeszközök:
dev c++
SDL
;
MSpaint
Fejlesztés kezdete: Tervezett befejezés:
2009
2009.03.20
Beküldve:
2009.01.28 02:15
Fejlesztő:
Mester_G: (1 fő)
Elérhetőség:
A csapat honlapja
e-mail: mgr@freemail.hu
Tagok:
beküldő: Avvoltoio
regisztrált tagok:



Fejlesztés állapota:
Ideiglenes felfügggesztve
Ideiglenes felfügggesztve
Készültség: 10%

Képek - Dwarf
játékmenet közben, még igen szegényen
játékmenet közben, még igen szegényen
2009.01.28. 02:51

Fejlesztési napló - Dwarf
Avvoltoio 2009.05.05. 02:26
A fejlesztés folytatódik, kötelező programként készítettem egy amőba játékot, ezért csúszott a játék fejlesztése megint, 2-3 héten belül(amikor lelesznek a kötprogok zárva) felkerül az is a weboldalamra, és remélhetőleg addigra ebből a játékból is feltehetek majd egy épkézláb verziót.
Avvoltoio 2009.02.03. 03:01
Itt az új videó a játékról, benne van a lassú háttér, ugrás, esés, csúszás, valamivel kisebb blokkok:
http://www.youtube.com/watch?v=KVW57pUiSe4
vagy itt nézheted még meg:
http://avvoltoio.extra.hu
Avvoltoio 2009.01.31. 11:15
Köszönöm mindenkinek a segítséget, az ugrás-esés-csúszás meglett csinálva :). jelenleg egy ellenséget dolgozok ki, és külön lassabban haladó hátteret(vagyis a távoli hegyek, felhők, várak, lassan fognak haladni). Újabb videót a jövőhét elején teszek fel.
Avvoltoio 2009.01.28. 02:55
elkészült az első videó a játékmenetről
még csak az alapok vannak meg
megtekinthetitek a főoldlamon
http://avvoltoio.extra.hu/
vagy itt:
http://www.youtube.com/watch?v=4_QpmY3Tw3k

Hozzászólások - Dwarf
Avvoltoio - Tag | 11 hsz       Online status #117296   2009.09.13 14:14 GMT+1 óra  
a project ideiglenesen felfüggesztve.
Sajnos mivel első játék túlságosan is összevissza a programkód, értem ez alatt hogy tabulálatlan, kommentek alig vannak, rossz megoldásokat használtam sok helyen, amit ma már teljesen másképpen csinálnék.
Ami eddig elkészült, vagyis ami a youtube-videóban is látható belőle letölthető a weboldalamról, a forráskód az előbb említett okok miatt viszont nem.

A felfüggesztés meddig tart?
igazából lehet hogy amint a jelenleg készülő játékom(The Wreckhunter) készen lesz folytatom, de azon is gondolkozom hogy hagyom az sdl-t, és mivel a grafika(az a nagyon kevés ami kész) amúgy is 320x240 felbontásban készült, lehet hogy inkább mobiltelefonra újraírom j2me-ben.
   
Avvoltoio - Tag | 11 hsz       Online status #108492   2009.04.07 00:37 GMT+1 óra  
Köszi
Inkább a törpe grafikáján butítottam le, kicsinyítettem(most már egy blok alá befér a törp), nem pedig a hátteret javítottam, mert túl sokat a grafikával nem nagyon akarok bíbelődni mikor már sok sok új játékötletem van, és ezt lassan befejezném, persze még sok munka van hátra, de már a következő készítendő játékon jár az agyam.
Sajnos egy kertészeti könyvelő program + egyetem hátráltatta a fejlesztést, de újra gőzerővel szeretnék nekifogni a játéknak.

Ezt a hozzászólást Avvoltoio módosította (2009.09.13 14:15 GMT+1 óra, ---)
   
Burwor - Törzstag | 244 hsz       Online status #103907   2009.02.03 06:29 GMT+1 óra  
Láttam a videót. Szerintem jó lett.
A törpe garfikája nem illik a háttérhez továbbra sem... Ahhoz "túl kidolgozott"

Szerk: Ha lesz pár felszedhető cuccos és pár ellenség, akkor minigamnek már el is fogadnák
Ez egy jó alap egy egyszerű platform játékhoz
   
nadam - Törzstag | 364 hsz       Online status #103888   2009.02.03 03:35 GMT+1 óra  
A Paint .NET is egy jó középút ha inkább programozó vagy mint grafikus. Ha egyelőre nincs kedved/időd nagyon komoly grafikus programot megtanulni, de az MSPaint-et már kinőtted akkor jó választás. Én ezt használom. Bár lassan úgy érzem ki fogom nőni.
   
Avvoltoio - Tag | 11 hsz       Online status #103886   2009.02.03 03:16 GMT+1 óra  
Köszi
A photoshop sajnos túl nagy gépigényű a laptopomhoz, esetleg ha találok valami régebbi verziót ami azon futna majd azzal készítem.
A tilestudioról már hallottam, feltétlen kipróbálom

Az ugrás-esés-csúszás késznek mondható, lassulva ugrik, gyorsulva esik, legnagyobb esési gyorsaságot is meghatároztam 140px/sec, akkor csúszik egy kicsit a karakter ha egy bizonyos távolságot ment oldalra, meg csináltam egy nagyon egyszerű hátteret
   
Burwor - Törzstag | 244 hsz       Online status #103878   2009.02.03 02:35 GMT+1 óra  
Megpróbálhatod a rajzokat photoshoppal.
Én azonban inkább ezt ajánlom neked: TileStudio
Tartalmaz egy tile szerkesztőt, egy mapeditort, és a végeredményt a programozható export segítségével hozzá tudod igazítani a programodhoz: akár includolt programsorokban akarod tárolni az adatot, akár külső fájlokban.
   
Burwor - Törzstag | 244 hsz       Online status #103877   2009.02.03 02:15 GMT+1 óra  
Idézet
Elf :
A téglalap helyett jobb lenne a sprite maszkját nézni, mert akkor tényleg pontos ütközésvizsgálat lenne. Vagy esetleg mindkettőt, a téglalap és a maszk ütközését is nézni kellene, mert ha tényleg átesne a padlón akkor a maszkos módszerrel azt nem lehet megállapítani.
Nem is olyan egyszerű dolog ez, pedig nem tűnik bonyolultnak.



Első körben egyáltalán nem érdemes így elbonyolítani. A pixelperfect vizsgálat ehhez a játékhoz teljesen felesleges. Téglalap-téglalappal ütközés se egyszerű, de bőven elég. Rengeteg játék tovább megy ezen annyiban, hogy minden egyes tile-ra egy boundot lehet megadni. A bound megmondja hogy az adott tile alulról, felülről, jobbról, balról átjárható-e. Ebben a játékban minden irányból átjárhatatlan tile-ok vannak. De ha egy csak felülről átjárhatatlant készítesz, akkor az egy olyan platform lesz, amire alulról fel lehert ugrani.

A legtöbb játék tudja még a 45°-os boundingot is. A Jack Jazz Rabbit tudja ennek a felét is a 22.5°-os és persze a 67.5°-s lejtőket. De ezeket nehezebb leprogramozni (sokkal).

AZ fpeti által, meg az általam leírt fizikához nem nehéz hozzáadni rugós pályaelemeket (rálépsz és nagy sebességgel kilő felfelé). A vízben való mozgást is egszerű megvalósítani vele, csak a gravitációval való y irány növelgetést kell lejebb venni, vagy teljesen elhagyni.
Valaki összeszedhetné az infókat egy csokorba egy Platform játék tutorial cikk megírásához
   
Burwor - Törzstag | 244 hsz       Online status #103876   2009.02.03 02:04 GMT+1 óra  
Én is írtam már jó pár platform játékot.
Amit fpeti mondott úgy kell csinálni.
A gravitációt mindig hozzáadod az y sebességhez, az ugrás egy egyszeri negatív irányú y sebességet ad. Amikor meg van az új sebesség akkor leellenörzöd hogy ne lépjen túl egy határt (érdemes végsebességet állítani mindkét irányra), csak akkor nézed meg az ütközést!
Ha valamelyik irányra találtál ütközést, akkor azt az irányt 0-ra veszed teljesen (vagy -0.5%-el felszorzod, akkor egy kicsit visszapattan). Csak ezután szokás vizsgálni azt, hogy milyen sprite-ot is kell berakni (hősünk járkál, vagy az esés animációját). Ezután jöhet még az hogy ha a játékos megnyomta az ugrás gombot, akkor megnézni hogy az y sebesség 0-e ÉS hogy van-e alatta platform! (különben az ugrás ívének legtetején is tudna még egyet ugrani.)
Az ütközés vizsgálat más mese, de ha okosan megadtál végsebességet az esésnek, akkor nem fog átesni a platformon. Azt kell vizsgálni, hogy ezzel az eséssel a következő pozíciója már a falban lenne-e, ha igen, akkor a fal tetejére állítod az y koordinátát és 0-ra az y sebeséget. Az x hasonlóan. így még néha át tud esni ferdén, amikor két fal csak a sarkán érintkezik. Szóval kell még ide egy kis varázslat...
   
Drpuma - Tag | 39 hsz       Online status #103740   2009.01.31 11:45 GMT+1 óra  
Szerintem Próbáld meg a rajzokat Photoshop-pal.
Abba sok mindent lehet!
Az élet nagyon szar játék, de a grafikájában elbámulnék.
   
Seeting - Törzstag | 2306 hsz       Online status #103668   2009.01.30 04:50 GMT+1 óra  
Mondjuk a saját játékaimban így szoktam:

Dark Basic

Kód:
    rem ugrás
    if pdJump#(1)=TRUE
         inc pdJump#(5),1.0 rem ez a léptető

         pdJump#(4)=pdJump#(2)/pdJump#(5)
         pdSelfJump#=pdSelfJump#+pdJump#(4)
         if pdJump#(5)=pdJump#(3) then pdJump#(1)=FALSE
         pdHandleJumpingDirections()
    endif

    rem leesés
    if pdJump#(1)=FALSE and pdJump#(5)>0
         dec pdJump#(5),1 rem visszaléptetés

         pdJump#(4)=pdJump#(2)/pdJump#(5)
         pdSelfJump#=pdSelfJump#-pdJump#(4)
    endif


A pdJump(2)-ben van tárolva az ugrás force, nálam ez 3.0. A pdJump(4) tartalmazza az emelkedés két állapota közti külömbséget. A pdJump(3) pedig azt tartalmazza hogy hány 'szakaszra' legyen osztva az ugrás, magyarul, hogy mennyire legyen smooth. Ha a pdJump(5) eléri a pdJump(3) értékét, akkor elérte a maximumot szal onnantól leesik.

A pdSelfJump#-ot kell hozzáadni az Y-hoz akkor érzékelhető az ugrás.
   
Seeting - Törzstag | 2306 hsz       Online status #103667   2009.01.30 03:58 GMT+1 óra  
Idézet
kicsy :
Idézet
Seeting :
- Van a Player Y, ami a játékosod magassági pontját határozza meg ugye.
- Csinálj egy változót aminek a kezdeti értéke annyi, mint amennyi most a konstansod (vagy 2x annyi, majd próbálgasd).
- Ezt a változót ugrásnál mindíg adogasd hozzá a Player Y-hoz, ezután pedig vond le az említett változóból a 20%-át (valtozo-(valtozo*0.2).
- Ennek hatására egyre kisebb lesz a játékost felemelő erő, egy ponton pedig átfordul minuszba és leesik.



Ez így nem fordul negatívba, hiszen mindig egyre kevesebbet vonsz le a változóból - nullához fog tartani az értéke.



Ja tényleg! Akkor előtte le kell tárolni a változó 20%-át egy másikba.
   
Matzi - Szerkesztő | 2519 hsz       Online status #103661   2009.01.30 02:00 GMT+1 óra  
Egy minimális fizika szimulációval könnyen megoldható a kérdés, van egy sebesség (v), van egy gravitáció (g = 10), és van a pozíció (y). Az eltelt idő a t.
Minden lépésben:
y += v*t;
v -= g*t;

Sokkal több probléma akad mondjuk átlós síkokkal, meg mozgó elemekkel, platformokkal.
If your game idea starts with the story it’s not a game idea.
Stories in games are optional.
   
dothumour - Tag | 75 hsz       Online status #103655   2009.01.30 00:41 GMT+1 óra  
Idézet
Elf :
A téglalap helyett jobb lenne a sprite maszkját nézni, mert akkor tényleg pontos ütközésvizsgálat lenne.


Ez azért már kicsit ---==[Overkill]==---. Elég ha sprite aljára van rajzolva a figura lába, így máris jó a téglalap-alapú ütköztetés.
٩(͡๏̯͡๏)۶

   
Elf - Törzstag | 932 hsz       Online status #103654   2009.01.30 00:28 GMT+1 óra  
Idézet
dothumour :
Az elegáns megoldás erre mondjuk az ha nem a sprite aktuális pozícióját vizsgálod a talaj ellen, hanem az előző és az aktuális pozíció közötti szakaszra nézed meg, hogy ütközik-e a talajjal. Én az előző és az aktuális pozíció között rajzolható téglalapot használnám az ütközésvizsgálathoz.


A téglalap helyett jobb lenne a sprite maszkját nézni, mert akkor tényleg pontos ütközésvizsgálat lenne. Vagy esetleg mindkettőt, a téglalap és a maszk ütközését is nézni kellene, mert ha tényleg átesne a padlón akkor a maszkos módszerrel azt nem lehet megállapítani.
Nem is olyan egyszerű dolog ez, pedig nem tűnik bonyolultnak.
I, Robot
1. A robotnak nem szabad kárt okoznia emberi lényben.
2. A robot engedelmeskedni tartozik az emberi lények utasításainak.
3. A robot tartozik saját védelméről gondoskodni.
   
sirpalee - Tag | 1282 hsz       Online status #103653   2009.01.30 00:27 GMT+1 óra  
Vagy az a szebb ha a sebességgel eltorzítod az ütközési mesh-t. Mert ha az előző és a következő közötti pozíciót nézed, az hibákat adhat.
raytraceisten és übermedic
   
dothumour - Tag | 75 hsz       Online status #103652   2009.01.30 00:12 GMT+1 óra  
Idézet
Elf :
Azt viszont nem tudom, hogyan lehet jól lekezelni, hogy mi van akkor, ha olyan gyorsan mozog a figura, hogy már beleesne a talajba? A kirajzolás előtt visszatesszük a talaj szintjére? Vagy hogyan?



Ha már beleesne a talajba, az még a jobbik eset, de ha már átesne a talajon az az igazán gáz. Pl.: két szint egymás felett, és a másodikon ugrunk - itt bizonyos esetekben áteshet a másodikról az elsőre.
Az elegáns megoldás erre mondjuk az ha nem a sprite aktuális pozícióját vizsgálod a talaj ellen, hanem az előző és az aktuális pozíció közötti szakaszra nézed meg, hogy ütközik-e a talajjal. Én az előző és az aktuális pozíció között rajzolható téglalapot használnám az ütközésvizsgálathoz.

Szép ábrák.
٩(͡๏̯͡๏)۶

   
Elf - Törzstag | 932 hsz       Online status #103651   2009.01.29 23:54 GMT+1 óra  
Idézet
dothumour :
@Elf: Mi a helyzet akkor, ha az ugrás kiindulási pontja magasabban van, mint ahova esni fog? Akkor milyen értéket kell kivenni a szinusztáblából? (Ha túl sokat esik lefelé, megint felfelé fog esni...) Vagy, ha visszaér a kiindulási magasságba - és nincs alatta talaj - akkor esik tovább konstans értékkel? Vagy, hogy? (Tényleg érdekel.)


Még nem írtam platform játékot, ezért csak tippelgetek, hogyan is kellene jól megcsinálni.

Mi a helyzet akkor, ha az ugrás kiindulási pontja magasabban van, mint ahova esni fog?
Erre itt egy lehetséges megoldás, szinusztáblásan:

(most látom, hogy a kép jobb széle lemarad, ott az van, hogy elmozdulás: -10)

Azt viszont nem tudom, hogyan lehet jól lekezelni, hogy mi van akkor, ha olyan gyorsan mozog a figura, hogy már beleesne a talajba? A kirajzolás előtt visszatesszük a talaj szintjére? Vagy hogyan? Itt látszik mire gondolok:


Erre mi az igazán "elegáns" megoldás?
I, Robot
1. A robotnak nem szabad kárt okoznia emberi lényben.
2. A robot engedelmeskedni tartozik az emberi lények utasításainak.
3. A robot tartozik saját védelméről gondoskodni.
   
dothumour - Tag | 75 hsz       Online status #103650   2009.01.29 23:53 GMT+1 óra  
Idézet
Avvoltoio :
A színusosan megoldandó ugrásra, esésre én is gondoltam, csak a kivitelezéséig még nem jutottam el.


Egy tipp: Csináld, amit fpeti mondott. Plusz ránézhetsz még erre is.
٩(͡๏̯͡๏)۶

   
Avvoltoio - Tag | 11 hsz       Online status #103649   2009.01.29 23:35 GMT+1 óra  
Köszi a sok tippet az ugráshoz
jelenleg igen külön sebessége van az oldalirányú mozgásnak(50 pixel/sec), és az ugrásnak(100 px/s), és esésnek(100 px/s), A színusosan megoldandó ugrásra, esésre én is gondoltam, csak a kivitelezéséig még nem jutottam el, de következő lépésként azt csinálnám meg, a csúszás ötlete pedig tetszik, eddig nem is jutott eszembe, pedig sok játékban az is rendkívül jó élethűre csinálta a mozgást

Amúgy a sprite animáció 7-7 lépésből áll jobbra-balra, plusz van még néhány kész ami még nincs beépítve.

kicsy: úgy tényleg nem fordulna magától, de ha eléri mondjuk a 0.5-öt(amit elfog) akkor megoldható könnyen hogy onnantól ne levonogassa hanem növelje az értéket 20%-al
   
fpeti - Törzstag | 1290 hsz       Online status #103636   2009.01.29 15:31 GMT+1 óra  
Ha fizikásabb mozgás kéne, én egy vízszintes és egy függőleges mozgási sebességet adnék neki (ez tul. egy 2d-s vektort ad ki), és akkor az elmozdulások ezeket próbálnák meg változtatni, pl gravitáció növelné az y irányú sebességet (ha nincs alatta semmi), az ugrás meg negatív irányba hatna egy nagyot elugráskor, és a gravitáció a levegőben ezt fordítaná pozitívan automatice. Ezzel le lehet kezelni a tehetetlenségi dolgokat is (csúszás-súrlódás, nem egyből áll meg).
Plusz még egy nagy előnye, mivel nem bedrótozott, extra erőket is hozzá lehet adni.
   
kicsy - Szerkesztő | 4304 hsz       Online status #103635   2009.01.29 14:49 GMT+1 óra  
Idézet
Seeting :
- Van a Player Y, ami a játékosod magassági pontját határozza meg ugye.
- Csinálj egy változót aminek a kezdeti értéke annyi, mint amennyi most a konstansod (vagy 2x annyi, majd próbálgasd).
- Ezt a változót ugrásnál mindíg adogasd hozzá a Player Y-hoz, ezután pedig vond le az említett változóból a 20%-át (valtozo-(valtozo*0.2).
- Ennek hatására egyre kisebb lesz a játékost felemelő erő, egy ponton pedig átfordul minuszba és leesik.



Ez így nem fordul negatívba, hiszen mindig egyre kevesebbet vonsz le a változóból - nullához fog tartani az értéke.
kicsy ● SilentVertigo Team - project Solarah
http://blog.yscik.com
   
dothumour - Tag | 75 hsz       Online status #103632   2009.01.29 13:55 GMT+1 óra  
@Elf: Mi a helyzet akkor, ha az ugrás kiindulási pontja magasabban van, mint ahova esni fog? Akkor milyen értéket kell kivenni a szinusztáblából? (Ha túl sokat esik lefelé, megint felfelé fog esni...) Vagy, ha visszaér a kiindulási magasságba - és nincs alatta talaj - akkor esik tovább konstans értékkel? Vagy, hogy? (Tényleg érdekel.)
٩(͡๏̯͡๏)۶

   
Elf - Törzstag | 932 hsz       Online status #103631   2009.01.29 13:45 GMT+1 óra  
Esetleg egy szinusztábla? (egy tömb előre letárolt szinusz értékekkel?) Azt adogatod hozzá mindig a player y pozíciójához és kész.
I, Robot
1. A robotnak nem szabad kárt okoznia emberi lényben.
2. A robot engedelmeskedni tartozik az emberi lények utasításainak.
3. A robot tartozik saját védelméről gondoskodni.
   
Seeting - Törzstag | 2306 hsz       Online status #103623   2009.01.29 10:13 GMT+1 óra  
Látom a videóból, hogy az ugrásnál mindíg konstansot adogatsz hozzá meg vonogatsz le. Ha alkalmazod a középiskolában tanult számtani sorozatok elvét akkor sokkal szebb és élethűbb ugrást is kreálhatsz ezzel a technikával. Leírom hogyan csináld:

- Van a Player Y, ami a játékosod magassági pontját határozza meg ugye.
- Csinálj egy változót aminek a kezdeti értéke annyi, mint amennyi most a konstansod (vagy 2x annyi, majd próbálgasd).
- Ezt a változót ugrásnál mindíg adogasd hozzá a Player Y-hoz, ezután pedig vond le az említett változóból a 20%-át (valtozo-(valtozo*0.2).
- Ennek hatására egyre kisebb lesz a játékost felemelő erő, egy ponton pedig átfordul minuszba és leesik.
- Ha van ellenőrzésed a játékos és a talaj ütközésére, akkor ebbe a blokkba írd bele azt is, hogy kinuláázod ennek a változónak az értékét. Így nem fog a végtelenségig esni.
   
Burwor - Törzstag | 244 hsz       Online status #103622   2009.01.29 09:55 GMT+1 óra  
Helló!
Szerintem ne szenvedj az animációval sokat. Az ilyen játékokban nem szokott csak a járás 10 frame-ből állni. 2 max 3 frame-et szoktak használni.
Persze nem azt mondom hogy ne legyen, mert pl a Prince of Persia is a gyönyörüen animált lépésről lett híres. Csak ez elég nagy falat ha nem vagy grafikus, vagy nem automatikusan állítod elő...
   
Avvoltoio - Tag | 11 hsz       Online status #103541   2009.01.28 02:15 GMT+1 óra  
Mester_G: : Dwarf
   
> 1 <