Stratégiai játék fejlesztése start
2009-08-01T13:37:50+02:00
2009-12-17T19:00:42+01:00
2022-07-19T04:22:57+02:00
  • Pontosan így gondolkodom én is. 5 éve programozok, és én is úgy kezdtem, hogy egy újsághoz kapott cd-n a pascal anyagokat elolvastam és megcsináltam, sz..t se értettem belőle, de ahogy egyre többet és többet foglalkoztam a témával... Most pedig java játékot csinálok, weblapokat, php, javascript, ajax (a kedvencem). :D

    Szóval én is csak azt tom mondani: ne add fel bármi történik. Én is írtam pár ótvaros programot, amit akkor jónak láttam, most meg kettéröhögném...de legközelebb ugyanaz már jobban ment, és azután meg még jobban. Így tanul az ember.
    Mutasd a teljes hozzászólást!
  • Üdv.

    Szerintem első kőrben valamilyen hobby játékfejlesztői csapathoz társulj be, hogy lásd hogyan megy egy fejlesztés, legyen siker élményed és lásd nem 2 nap hanem hónapok évek egy játék nem összedobott lefejlesztése. Motiváló egy ilyen "mission impossible" projekt,de ha hosszú ideig csinálod nincs siker élmény,megunod és elvész a lelkesedés. Arról nem is beszélve, menet közben jön rá az ember, hogy mennyi mindent nem tud és fényévekre van a megvalósítástól.

    Mutasd a teljes hozzászólást!
  • Még annyit, hogy többszálon futó alkamazásban kéne gondolkozni? De egy-egy unit(figura) egy-egy szál esetleg?


    Aki nem túl tapasztalt az biztos igent mondana erre, de gyorsan felejtsd el. Ha gondolod összedobok egy példaprogramot (1-2nap míg oda jutok) mondjuk Pascal, C vagy Java nyelven (melyik a jobb?), és láthatod mire gondolok. Lehet többszálú a programod, de konkrétan az egységeket nem kell így szétszedni. De többszálú programot is kár így az elején írni.

    Én úgy szoktam hasonlót, hogy csinálok egy rekordot, ami egy sprite minden adatát tartalmazza. (mozgás típusa, X, Y koordináta, számlálók, képe stb.) Csinálok egy tömböt X elemmel, maximum X sprite-ot kezelhetünk. A sprite-ok adatait beállítom, majd minden körben egy ciklus végigmegy minden sprite-on és attól függően hogy milyen mozgást végez meghívja a szükséges eljárást, ami mozgatja a figurát. Ezzel a módszerrel mindegyik figura független a többitől, bármelyik meghalhat vagy újraéledhet, és "korlátlan" számú mozgatható.

    mondjuk így (ez nagyjából egy Pascal kód lesz):

    for sprite:=0 to 100 do begin case mitcsinal[sprite] of 1:gondolkodik; 2:jobbra megy; 3:ballra megy; 4:meghal; end; end;

    Persze meg kell írni mondjuk a gondolkodik eljárást is, és ott mondjuk generálsz egy véletlen számot és ha a szám egyenlő 1-el akkor a mitcsinal értékét beállítod 2-re, és a következő körben már jobbra megy a figura.
    Mutasd a teljes hozzászólást!
  • Na ne már, VB-ben XNA. Ez merénylet az emberiség ellen. Jó hogy nem már F#-ban.
    Mutasd a teljes hozzászólást!
  • Ha esetleg valaki dotnetben programozna, mondjuk játékot, meg grafikát, most találtam egy kulcsszót: XNA

    tutorial
    Mutasd a teljes hozzászólást!
  • - 2D grafika (nézet 4 irányból: É-K-D-Ny)

    Matematikailag, elvek, megoldások kiötlése szempontjából viszont rendben van minden itt belül:


    Akkor nem mondok újdonságot azzal hogy a felsorolt játékok 2 és fél dimenziósak, ugye? :)
    Mutasd a teljes hozzászólást!
  • Mit kapsz, ha összeszorzod a 6-ot és a 9-et? Hmm.. 42?
    Mutasd a teljes hozzászólást!
  • Köszi!

    Csak a megfelelő kulcsszavakat kell kitalálni :)

    MEgfelelő kérdést, hogy megkapjuk válaszul, hogy 42
    Mutasd a teljes hozzászólást!
  • Még annyit, hogy többszálon futó alkamazásban kéne gondolkozni? De egy-egy unit(figura) egy-egy szál esetleg? Vagy egy kilőtt lövedéknek külön szál? Van ilyesmire szükség?
    Mutasd a teljes hozzászólást!
  • Köszönöm a reakciót, választ, érdekes amit írtál. Ezen most elgondolkozom.
    Mutasd a teljes hozzászólást!
  • Vannak "körök", ugyanúgy, mint a Marió vagy Pac-Man játékokban.

    Végülis minden halad, fejlődik folyamatosan. A program futása kb. úgy zajlik, hogy
    1.-felhasználói események kezelése (kattuntunk valahol).
    2.-minden egység mozgatása, beleértve a gazdasági eseményeket is, harcokat stb.
    3.-játéktér kirajzolása.
    4.-kis pihenés és ugrás az elsőpontra.

    E közben mérheted az időt, és beállíthatod, hogy egy esemény várakozzon X ideig, pl. hogy a gépi ellenfél mondjuk a játék kezdete után 5 percel támadjon a játékosra, vagy kigondolsz egy random értéket. De kissebb dolgokat is lehet, kell így időzíteni, mondjuk egy figura sétál "A" időt lefelé, majd "B" ideig ácsorog, míg újra kigondolja merre menjen. Ha leraksz egy facsemetét a pályára akkor az bizonyos idő elteltével nőhet. Mondjuk csinálsz egy változót amit minden körben növelsz egyel és ha az értéke nagyobb mint 1000 akkor a fa "lép egy szintet", a számlálót nullázod és kezdődik elölről.
    Hogy bejön havonta az adó, hogy egy ház X ideig épül meg, ezt mind lehet így időzíteni, elég csak számolni az FPS-t, vagy lekérdezni az időt "időnként"

    Az RTS lényege, hogy nincsenek "körök", minden nagyjából független a többi egységtől, eseménytől. Erre csinálhatsz tesztprogramot is rögtön. Mondjuk csinálsz egy "sprite-ot" (ami lehet egy pont vagy kocka a képernyőn), ami annyit csinál, hogy "gondol egy számot", addig várakozik, majd gondol egy számot és annyival lépked (körönként 1-2 pixelt) jobbra. Az adatokat egy rekordban /tömbben tárold, csinálj mondjuk 10-20 elemű tömböt. Ennyi "sprite-ot" elhelyezel a képernyő bal szélén (egymás fölé/alá ajánlott), és elindítod őket. Ha jól csinálod, akkor ugyanaz a 3 soros program teljesen fügetlenül fogja kezelni, irányítani az összes "figurát", és akár 1000 figurát is elhelyezhetsz így a képernyőn, csak a tömb méretét kell növelni (meg a ciklust).
    Esetleg írhatsz bonyolultabb mozgatást is ha tudsz, mondjuk véletlenszerűen mozognak a 4 irányba, vagy ugrálnak néha. Amíg csak egy ilyen elem van a képen az addig kevésbé érdekes,de amikor 20 figura mozog egymástól teljesen függetlenül az már látványos, izgalmas dolog.
    Mutasd a teljes hozzászólást!
  • Azt hiszem ezt most közkívánatra teszem közzé:

    Így kell keresni

    Ez pedig az első találat

    Mutasd a teljes hozzászólást!
  • Mutasd a teljes hozzászólást!
  • Valóban térjünk vissza.
    A téma engem feltüzelt, elkezdtem foglalkozni, és kielemezni, hogy miből is áll mondjuk egy AOE.

    Rájöttem, hgoy a mélye érdekel igazán. A grafika az bármi lehet, sőt, az a jó, ha a megjelenítés technikailag független az adatoktól és az AI-tól.

    Most keresgéltem egy csomót a neten, de nem találtam arra vonatkozólag leírást, flowchartot, design patternt, vagy bármit, ami a mélyéről szól, például hogyan megy végbe egy kör a játékban (valami kör, vagy időegység csak van RTS-ben, is nem csak a körökre osztottban), esetleg objektum hiarachiára vonatkozólag egy példát.

    Amíg válaszoltok, vagy adtok tippeket, megnézem az itteni tudástárat is, hátha van valami ezzel kapcsolatban.

    plusz egy tipp a végére: dotnet + WPF.
    Azaz c#-ban nagyon jól, könnyedén lehet osztályokkal lemodellezni egy ilyen struktúrát. WPF meg - bár nem kimondottan erre való - , de tud akár 3D megjelenítést, illetve animációt, hangot, stb. Kezdetnek, DirectX helyett, mellett talán jó kiindulás lehet, de persze teljesen más világ a kettő.
    Mutasd a teljes hozzászólást!
  • Azért a 2D és/vagy szöveges alapú böngészős stratégiai játéktól a Blender 3D játékmotorja elég nagy ugrás. Érdekes a téma, nem szeretném, hogy OFF miatt lezárásra kerüljön, szóval térjünk vissza az eredeti témához. (Ez persze csak az én véleményem.)
    Mutasd a teljes hozzászólást!
  • De valami 2D játékról volt szó az elején. Bár lehet mondjuk felülnézeti, vagy kicsit döntött, és akkor bevonható a 3D.

    Szerintem majdnem mindegy, hogy valami kész rendszert ír, vagy meglévőt használ. Akinek van 1-2 év tapasztalata, esetleg mondjuk Turbo Pascal-ban készített már 3D programot, az lehet könnyebben ír saját 3D motort, mint megtanuljon megismerni egy idegent. És ha saját 3D fájl formátumot is kidolgozott már, akkor a szerkesztőprogramot is hamarabb megírja, mint hogy tanulja fél évig a profi programokat (amik nem biztos, hogy mindenben megfelelnek).
    Egy játékmotort meg (tapasztalattal) meg lehet írni egy hét alatt, utána már csak csiszolni kell (pár éven át ). Nem azt mondom, hogy mindenki ezt válassza, de ez is egy lehetőség. (Főleg ha csak szórakozás, időtöltés a programozás.)

    Az meg szinte biztos, hogy nem érthet mindenhez az ember, de az elején mikor egyedül akar összehozni az ember valamit akkor nagyjából mindent neki kell csinálni. Szóval az ember egy ideig "mindenes", aztán majd kialakul hogy miben lesz "profi" -ha lesz.
    Mutasd a teljes hozzászólást!
  • Mért?
    Ezek szerint blenddel is kivitelezhető a játék.
    Mutasd a teljes hozzászólást!
  • Nincs mit két hét alatt remekül meg lehet tanulni belőle ami kell, utána meg egy fél év, és azt is tudni fogod, amit nem akartál.

    Egyébként nem gyengén eltértünk a témától..
    Mutasd a teljes hozzászólást!
  • thanks a lot matt383, it is great
    Mutasd a teljes hozzászólást!
  • A blender játékmotorját még sosem használtam, de jónak tűnik. Az biztos, hogy jobb, mint írni egy sajátot. A modellezés viszont szerintem lényegesen kézreállóbb, és könnyen tanulható. Csak annyi az egész, hogy foglalkozni kell vele akkor is, amikor már unod, hogy még mindig nem sikerül megvalósítani valamit.
    Mutasd a teljes hozzászólást!
  • Igen, azokat láttam, csak hát vonzó lenne, hogy egy eszközzel menne a modellezés, animációkészítés + a játékkészítés is.
    Nem kellene több eszközzel tökölni, kompabilitásokkal szüttyögni, stb.
    Mutasd a teljes hozzászólást!
  • Na de most komolyan csinált már vele valaki kicsit komolyabb 3d-s játékot?


    Azt nem tudom, de fafa animacios filmeket igen, lasd Elephants dream meg Big buck bunny...
    Mutasd a teljes hozzászólást!
  • Illetve még egy kérdés: Megy win 7 alatt?
    Mert ma éjjel akarom telepíteni :)
    Mutasd a teljes hozzászólást!
  • Mindenesetre az oldala meggyőző.
    Illetve az hogy ingyenes, és pár mb az egész :)
    Na jó tudom, le lehet szedni crack-elt 3dsmaxet is...

    Na de most komolyan csinált már vele valaki kicsit komolyabb 3d-s játékot?

    Érdekelnének a tapasztalatok.
    Mutasd a teljes hozzászólást!
  • matt383: 2 hónapig küzdöttem vele, aztán a 3D max-ban egy hét alatt többet tudtam. Nagyjából notepad <-> Visual Studio a különbség kezelésben.


    En meg 3ds Max meg Lightwave 7 utan talaltam a Blendert millioszor kezreallobbnak...
    Mutasd a teljes hozzászólást!
  • Stratégiai játék...

    ... ha csak szórakozásból, magadnak, vagy tanulásképpen, akkor nem túl magasra téve a lécet élvezetes lehet a dolog, és vicces.

    Egyszer GameMakerban akartam összerakni egy fociprogramot, érdekes volt a gépi játékos random mozgása, repkedtek, mint a lepkék :) Egy ilyen GameMaker vagy DarkBasic szerű segédrendszer a grafika kezelését leveheti az ember válláról.
    Persze, ha csak szórakozik, vagy tanul, hobbifejlesztés, akkor jó.

    Egyszer egy haverom iratott velem SimCity programot C64 Basicben. Annak is érdekes eredménye volt. Joysticckel irányítóttuk és karakterek voltak a házak. Lehetett építeni, volt valami adó is...
    Mutasd a teljes hozzászólást!
  • "Mert ha beleölök már pár évet esetleg, akkor jó lenne ha vmi pozitív eredménnyel járna a dolog :) "
    OGRE

    matt383: 2 hónapig küzdöttem vele, aztán a 3D max-ban egy hét alatt többet tudtam. Nagyjából notepad <-> Visual Studio a különbség kezelésben.
    Mutasd a teljes hozzászólást!
  • Mielőtt még beszól valaki egyáltalán nem értek a 3d-s játékfejlesztéshez, csak érdeklődőm.

    A blender játékmotorja mennyire jó?
    Azaz készített már valaki normális, nagyobb 3d-s játékot benne?
    Anno nézegettem, és a példák között ilyen békával a folyón átugrálos játékot lehetett megnézni, ami néha el is szállt vmi hibával.

    Mondjuk egy unity3d eszközzel szemben jobbnak tekinthető?

    Egyikhez sem értek, csak gondolkozom, hogy valamennyire hobbi szinten belevágjak. Annyi lelki erőm, időm nincs, hogy most saját 3d engine-t álljak neki fejlesztgetni.

    Szóval nem arra lennék kíváncsi, hogy melyik ingyenes, melyik tartalmaz modellező eszközt, stb.

    Hanem inkább a játékmotor stabilitásra.
    Melyik megbízhatóbb.
    Mert ha beleölök már pár évet esetleg, akkor jó lenne ha vmi pozitív eredménnyel járna a dolog :)
    Mutasd a teljes hozzászólást!
  • Hát kipróbáltam én is, vagyis megnéztem 1-2 tutorialt, nagy lendülettel kezdtem bele, hogy majd tök jó dolgokat fogok csinálni. Hát... rájöttem ismét, hogy ehhez a 3D grafikához nincs türelmem... A vonalakat ide-oda húzni...
    Mutasd a teljes hozzászólást!
  • Itt egy ebook, az alapoktól tanít a Blender használatára.

    Tommy380: ha belejöttél, könnyen kezelhető, kényelmes.
    Mutasd a teljes hozzászólást!
abcd