Što vam je potrebno za izradu igre na računalu. Odabir programa za izradu igre

Svake godine raste broj ljudi koji igraju računalne ili mobilne igre. Ljudi ih nazivaju igračima koji ne mogu zamisliti svoj život bez igračaka. Mnogi ih smatraju bolesnim ljudima koje treba liječiti. Ali u isto vrijeme postoje ljudi koji su naučili zarađivati ​​na igračima stvarajući nove igre. U ovom slučaju, mnogi igrači razmišljaju o stvaranju igre sami.


Danas stvaranje igara zahtijeva manje vremena i truda nego prije 5-10 godina. Za to su razvijeni različiti programi za modeliranje trodimenzionalne grafike i pokretači za izradu igara. Samo trebate biti strpljivi.

Ako želite kreirati vlastitu igru, morate imati neko iskustvo u igranju. Ako korisnik igra vrlo rijetko, bit će prilično teško napraviti kvalitetan proizvod. Da biste kreirali pravu igru, morate slijediti logiku igre i biti svjesni svih aspekata svijeta igre.

Da biste napravili dovoljno dobru igru, morate zamisliti gameplay i smisliti nove ideje. Ako napravite jedinstvenu igru, lakše ćete pronaći igrače. Vrijedno je zapamtiti da za stvaranje igre morate imati određeno znanje u ovom području. Morate naučiti programske jezike, naučiti koristiti trodimenzionalne editore. Da biste to učinili, na internetu možete pronaći mnogo različitih članaka i programa.

Stvaranje igre

U početku morate odabrati žanr u kojem će se igra kreirati. Osnovna ideja važan je dio svake igre. Najčešće igre temelje se na žanru pucačina iz prvog lica. Utrke su također vrlo popularne. Da biste saznali popularnost određene igre, samo prebrojite njihov broj u određenoj kategoriji.

Akcijske igre i pucačine su pucačke igre u kojima morate ubiti sve neprijatelje. Strategije i RTS su također vrlo popularni. Osim toga, još uvijek postoji ogroman broj žanrova koji također imaju pravo na život.

Nakon odabira žanra, morate početi stvarati scenarij. Ovo je vrlo važan dio stvaranja igre. Scenarij bi trebao imati zaplet, glavnog lika, neprijatelje ili suparnike, kraj. Također vrijedi poraditi na sučelju i grafici igre.

Ako početnik počne stvarati igru, to će za njega biti prilično kompliciran proces, jer to zahtijeva motor koji početnik korisnik ne može napraviti. Da biste to učinili, trebali biste koristiti poseban dizajner igara. Možete pokušati naučiti programske jezike i sami napisati motor ili koristiti gotov.

Početnicima se preporučuje korištenje konstruktora. Ovo je poseban program koji ima strukturu buduće igre. Elementi i objekti moraju biti postavljeni i skripte moraju biti uključene. Takvi konstruktori stalno proširuju broj svojih funkcija, dok cijena programa raste. Ako nema želje trošiti novac na dizajnera igara, tada možete koristiti besplatne uslužne programe.

Ako koristite motore igara, morate imati nešto znanja o programiranju. Budući da je motor skup funkcija i objekata, razvojni programer ne treba stvarati nikakve akcije. Sve što trebate već je u motoru. Za izradu grafika i njihovo povezivanje sa skriptama morat ćete koristiti posebne editore.

Stvaranje vlastite igre vrlo je složen i dugotrajan proces. Korisniku početniku se ne preporučuje da to preuzme, ali ako postoji dodatni novac, možete naručiti igru ​​u specijaliziranim studijima. Istovremeno, programeri će uzeti u obzir sve želje.

Ovaj vodič detaljno opisuje kako stvoriti igru: razraditi ideju, odabrati alat i organizirati razvojni proces tako da teče lako i vodi do rezultata.

Bok ljudi. U ovom ću članku biti krajnje iskren s vama i reći ću vam kako sami kreirati igru. Unaprijed vas upozoravam da je izrada video igre teška i dugotrajna. A ako vaš cilj nije još jedan klon zmije, Tetris ili bilo koja druga igra iz korak-po-korak tutoriala, morat ćete uložiti puno truda u to.

Previše je ljudi, pokušavajući napraviti svoju prvu igricu, bezglavo zaronilo u motor i odustalo od ideje jer je "preteško", "umoran sam", "ne vidim napredak". Zapravo, radi se samo o gomili glupih izgovora koji se pojavljuju zbog "nišana", odnosno želje da se odmah rade igre velikog kalibra, poput The Witcher ili Final Fantasy.

Riječ je o projektima na kojima čitavi timovi stručnjaka, timovi od stotina ljudi, rade nekoliko godina, tako da čak i da jako želite i potrošite cijeli život, nećete moći napraviti isti proizvod velikih dimenzija.

Vaša prva utakmica je trening, draft, ali ne i remek-djelo. Čak i stvaranje jedne razine najjednostavnije igre s pikselima u početku može biti porazno, a odabirom nečeg ogromnog, jednostavno nećete imati ideju odakle početi, pa ćete potrošiti puno vremena na detalje koji apsolutno nisu bitni.

Glavni zadatak je stvoriti proizvod koji možete igrati sami. Nije me briga radi li se o dvobojnoj linearnoj platformi za koju je potrebno 7 minuta. Uspjeli ste, niste klonuli duhom, niste odlučili odustati od svega, što vas već čini boljim, niste od onih koji su očajavali i odustali!

Pustite svoju mamu, brata, prijatelje, tko god želite. Oni će kritizirati, jer su navikli vidjeti igre kao masivne projekte. Ignorirajte, jer, prvo: sami ste kreirali svoju prvu igru, drugo, sljedeći put ćete je učiniti bržom i boljom, i treće, uskoro ćete postići razinu vještine koju će svi oni tražiti da ih pustite da igraju.

Vaša bi igra trebala odražavati vaše vještine. Sve treba raditi dosljedno: pojavila se ideja - provjerite mogućnost njezine provedbe - ako nema mogućnosti, pokušajte naučiti - stekavši vještinu, implementirate ideju. I tako treba raditi svaki put. S vremenom bacite pogled na Asset Store, možda već postoji neki fragment nad kojim grbite nekoliko dana.

Konačno - nešto poput riječi rastanka: najvjerojatnije se pokušavate razvijati paralelno sa svojim studijem ili poslom. Ponekad će proći tjedni prije nego što nađete vremena, ali ako stvarno želite biti uspješni u ovom području, pronađite te sate i povećajte svoje vještine. Upamtite, svatko može odustati, ali ne može svatko doći do kraja.

Internet je danas prepun raznih tutorijala, videa za obuku i besplatnog softvera. Sve to omogućuje svakome tko ima puno slobodnog vremena i ideju da napravi vlastitu računalnu igru. Međutim, također je potrebno imati jasno razumijevanje samog procesa i njegovog slijeda.

Koju igru ​​napraviti?

Najvjerojatnije osoba koju zanima "Kako sami napraviti igru?" već imaju ideju. Najčešće je to neka vrsta modifikacije neke od igara koje je igrao. Možda vašoj omiljenoj igri nešto nedostaje pa ste to odlučili dodati (razmislite o tome ima li vaša igra mogućnosti modificiranja: ugrađeni editor ili MOD-alat).

Na primjer, žanr MOBA igara stvoren je u uređivaču WarCraft 3 (sada popularna Dota pojavila se upravo zahvaljujući širokim mogućnostima uređivača).

U svakom slučaju, ideja će biti polazište. Odatle biste trebali početi.

Ideja

Ali za svaki slučaj, ako se pitate "Koju igru ​​napraviti?" - članak će vam pomoći u potrazi za idejama.

Komponenta igranja vaše ideje o igri odredit će žanr igre i platformu.

Žanr i platforma buduće igre

Kad birate žanr, imajte na umu da biste trebali početi s nečim kratkim i jednostavnim. Prva palačinka je najčešće kvrgava, ali ako možete ispeći ovu palačinku, vaši razvojni mišići će ojačati i sljedeći put ćete moći učiniti nešto više.

Zatim se odlučite za platformu. Ovo je nevjerojatno važno, jer igrivost ovisi o platformi. Na primjer, napraviti dinamičnu pucačinu u kojoj točnost udarca ovisi o reakciji i fokusiranje na mobilnim uređajima sa zaslonom osjetljivim na dodir nije dobra ideja.

Koncept

Nakon što razmislite, sjednite i opišite koncept igre. Isprva to mogu biti samo teze, koje potom prelaze u logično izrečene misli. Ako to nije bilo moguće učiniti, preispitajte svoju ideju i riješite se kontradikcija.

Odredite što bi trebalo privući potencijalne igrače, odnosno samu njegovu filozofiju. Na primjer, ponudite da postanete jedini vladar male otočne zemlje ili da upravljate borbenim zrakoplovom izravno iz kokpita, pravovremeno prebacujući potrebne prekidače.

Sada na značajke vaše igre. Najvjerojatnije se puno eksperimentatora već okušalo u vašem žanru, ali još uvijek morate smisliti nešto svoje, inače neće biti interesa za projekt. Evo malog primjera:

Primjer

Koncept: simulator male trgovine.
Posebnost: Vi osobno pregovarate s dobavljačima, privlačite nove kupce i očajnički pokušavate preživjeti u surovoj stvarnosti.
Objasnite koji čimbenici utječu na uspjeh i razgovarajte o ključnim značajkama mehanike igre.
Ne pokušavajte dodati stavke koje ne želite implementirati. Vaša bi igra trebala biti nešto za što biste sami htjeli platiti.
Zadnji korak je da sve nacrte stavite u mapu, a zatim u ladicu. Nakon par tjedana vratite im se jer možete izgubiti i želju i fitilj, a bolje je proći kroz ovu fazu prije početka projekta nego ostaviti sve na pola.

Plan razvoja


Jasan razvojni plan čvrsta je osnova za vaš projekt i čvrst temelj za vaš razvoj kao programera igara

Ovaj plan će biti kostur vaše igre, tako da ovdje trebate spomenuti svaki detalj, svaki mikromomenat, sve što smatrate važnim. Oni koji rade igre sami mogu i bez planova (pod uvjetom da imaju puno iskustva), ali ako nemate previše tima ili iskustva ispod sebe, onda sve treba snimiti.

Jasan raspored kada početi programirati ili crtati prvu umjetnost možete posjedovati samo vi, stoga s vama dijelim općenite točke, čije kršenje može vratiti nekoliko tjedana unatrag ili vas čak natjerati da napustite ideju ​stvaranje vaše prve igre.

  1. Vaš plan bi trebao biti dizajniran za mjesec dana, ne više. Stoga vjerujte svojoj intuiciji i počnite jednostavno. Bolje završiti ranije nego propustiti rok.
  2. Čim shvatite da vas ovaj proizvod ničemu ne može naučiti, stavite ga na policu i zaboravite. Možete testirati svoje vještine pokretanjem sličnog projekta od nule.
  3. Čak i najbolji developeri nastoje postati još cool, stoga bi svaka nova igra trebala započeti s mišlju "Bit ću bolji nego prošli put."
  4. Nemojte ignorirati planiranje. U razvoju bilo kojeg projekta postoje male "više sile" i gotovo ih je nemoguće predvidjeti, pa je lakše jednostavno uzeti u obzir vrijeme utrošeno na njihovo uklanjanje u rasporedu. Zakazano za 8 sati? Slobodno ih pretvorite u 12.
  5. Dizajn je jedna od posljednjih stvari o kojoj bi programer početnik trebao razmišljati. Vaš je posao "razviti svoje vještine", pa provedite vikend implementirajući nekoliko novih mehanika (koje vam prije nisu bile poznate) umjesto da slikate.
  6. Razdvojite svoj plan na nekoliko dijelova. Dostizanje ovih prekretnica dobar je način za povećanje motivacije. Ako ne možete ispuniti svoje tjedne potrebe, pojednostavite cjelokupni plan.
  7. Nemojte si postavljati previše apstraktne zadatke. Umjesto "Dotjerati lik", napišite "uvesti nove mehanike pucanja" ili "promijeniti izgled tijekom udarca" - jasne ciljeve puno je lakše postići.
  8. Šaljite sebi pisma ne e-poštom svaki ponedjeljak. Trebali bi sadržavati sve radnje izvršene u proteklom tjednu. Uspoređujući sve e-poruke za mjesec, možete vizualno vidjeti napredak.
  9. Provedite barem sat vremena tjedno igrajući svoj proizvod. U konačnici, nitko ne može učiniti VAŠE igre boljim od vas.
  10. Nakon što provedete dva tjedna bez rada na projektu, bit ćete zbunjeni i izgubit ćete nit, što će vas prisiliti da počnete ispočetka. Upravo u ovoj točki većina ljudi odustane i odustane od ideje stvaranja vlastite igre.
  11. Gubljenje vremena na zvuk i atmosferu u vašoj prvoj igri nevjerojatno je besmisleno. Glavna stvar: razviti gameplay, jer postoje remek-djela koja se sastoje od običnih pokretnih piksela.
  12. Ako ste nešto radili više od sat vremena i još uvijek ne ide, potražite pomoć. Zašto stagnirate tjedan dana jer vam je bilo neugodno otvoriti temu na forumu?
  13. Dopustite drugima da isprobaju vašu igru. Da, kritike će odmah pljuštati, ali ne biste trebali obraćati pozornost na to. Čak su i projekti vodećih studija često klevetani, ali to ih ne sprječava da nastave stvarati remek-djela, zar ne?
  14. Nemate neograničene resurse – stoga morate postaviti realne, dostižne ciljeve.
  15. Nakon što dotjerate svoju prvu igru, odmah smislite nekoliko novih ideja i krenite s novim projektom. Ne zaboravite primijeniti ono što ste prije naučili.
  16. Provjeri .

Prijeđimo na stvaranje naslova. Začudo, zaplet je ovdje gotovo potpuno zanemaren. Najvažnije je zapisati sve aspekte mehanike igre i objasniti kako rade. Uglavnom, sadržaj je ono što je u osnovi priručnika za igru.

Sada svaku tezu sadržaja nadopunjujemo detaljnim opisom svake sitnice, i to činimo što je jasnije moguće, inače mogu nastati problemi s implementacijom.

Konačno, trebate pokazati svoj plan svima koje ćete koristiti u razvoju. Moguće je da se neke ideje neće realizirati ili će vam se ponuditi ugodnije alternative. Nakon što je dobio jasnu predodžbu o svom dijelu posla, iskusni stručnjak će odmah dati nekoliko komentara.

Izbor razvojnih alata



Motor je srce vaše igre, birajte odgovorno, pogledajte članak

Početniku će biti lakše uzeti gotov motor nego razviti vlastiti.
Svaki motor ima svoje karakteristike. Neki će vas natjerati da naučite programirati, a neki čak i ne trebaju razlikovati proceduru od funkcije, imaju vizualne alate za programiranje.

Ako damo iznimno široku klasifikaciju, tada se motori mogu podijeliti u dvije vrste: za dvodimenzionalne projekte (GameMaker: Studio, RPG Maker XV) i za trodimenzionalne igre (Unity, Unreal Development Kit i Source)

Pogledajte neke službene video upute i pokušajte sami napraviti nešto u motoru. Ako vam se ovaj zadatak činio neodoljivim, pokušajte surađivati ​​s programerom, možda će neki dečki biti inspirirani vašom idejom i pomoći vam da je doradite.

Prototip

Sljedeća faza je testna verzija. Zvuk i grafika ovdje nisu bitni, glavno je da sve funkcije rade točno onako kako ste zamislili. Usput, budite strpljivi, jer ćete morati raditi promjene dok ne počnete uživati ​​u igri.

Također, budite spremni na potrebu stvaranja gotovog prototipa od nule. Odmah kalibrirajte kontrolu: trebala bi biti što praktičnija i intuitivnija. U protivnom će razočarani igrač tražiti gumb za izlaz.

Ova faza je poliranje vašeg dizajna igre. Faza traženja i isprobavanja različitih opcija.

Grafika i zvuk

Odmah odlučite koji vam je spektar boja potreban. Ako se radi o jednostavnom 2D platformeru punom piksela, onda nema smisla angažirati orkestar i cijeli tim grafičkih dizajnera – gubitak vremena i novca. Istodobno, ne biste trebali štedjeti na resursima ako su oni doista potrebni za puni izraz vaše ideje. Slobodno kombinirajte tuđe ideje. Jedina zabrana je kršenje autorskih prava.

Ovdje trebate skicirati crtež. Usput, nije potrebno znati crtati, jer većina indie projekata koristi pixel art, zbog njegove jednostavnosti i popularnosti. Ako se ipak odlučite za trodimenzionalni projekt, morat ćete angažirati stručnjake za izradu složenih modela likova.

Konačno, stvorite neke fragmente svemira igre. Ovo su koncepti kako razina izgleda ili kako likovi komuniciraju izvan igranja. Vrijeme je da oživite svoje ideje!

Blender je jednostavan i besplatan editor za izradu 3D modela.
Photoshop je neizostavan za obradu dvodimenzionalnih slika, a odlično radi i s teksturama.
net vam omogućuje brzo stvaranje pixel arta.
Zvukovi, zajedno s grafikom, stvaraju osjećaj atmosfere u vašoj igri. Na usluzi vam je ogroman skup gotovih knjižnica zvuka za besplatne programe, a melodije koje nedostaju mogu se snimiti kod kuće, glavna stvar je nabaviti mikrofon.

Pročišćavanje

Igrajte ono što ste stvorili, i to što je češće moguće. Tako da možete vidjeti svu grubost. Naučite jedno pravilo - ili dovedite element u idealno stanje ili ga uklonite. Na primjer, ako vam se igrivost razine čini previše monotonom, pokušajte je učiniti raznolikijom.
Stalno se pozivajte na filozofiju igre kako biste izbjegli trenutak kada se projekt pretvori u hrpu nekoherentnih razina i likova.
Ispolirajte grafiku i zvuk - proces je vrlo dugotrajan, ali atmosfera ovisi o njemu.

Testna faza

Nakon što imate verziju igre prije izdanja (nemojte je brkati s prototipom), prijeđite na traženje grešaka i grešaka. Bit će bolje da pronađete njih, a ne potencijalne igrače prvog dana nakon izlaska.

Usredotočite se na stvari koje nisu u skladu s vašim stilom igranja. Na primjer, idite na dijelove karte koji nisu uključeni tijekom glavnog igranja. Testiranje ponekad oduzima više vremena od samog razvoja, a njegova brzina ovisi o broju i profesionalnosti testera.

Ako postoji nevjerojatno mnogo grešaka, prvo popravite one najambicioznije. Stoga ih počnite tražiti što je prije moguće - to će vam dati više vremena za promjene. Osim toga, ponudite da se igrate s prijateljima i poznanicima. Pogled izvana omogućit će vam da primijetite mnoge nijanse koje sami nikada ne biste pogodili. Osim toga, potpuno je besplatno.

Otpuštanje

Organizirajte promotivnu kampanju: potaknite interes na društvenim mrežama, naručite recenzije gaming blogerima i ne zaboravite na web stranicu s forumom, jer fanovi će se morati negdje okupiti!
Odaberite distribucijsku platformu. Malo je vjerojatno da ćete odmah htjeti uložiti u hosting ili namjenske servere, stoga obratite pozornost na popularne stranice kao što su Steam, GOG, Humble, Play Market i slično. Zapamtite da vlasnici naplaćuju određeni postotak troškova, tako da ovo pitanje zahtijeva detaljnu studiju.
Ne zaboravite na podršku igre čak i nakon izlaska. Nastavite s popravljanjem grešaka, objavljivanjem dodatnih sadržaja ili skočite ravno u nastavak!

U članku je sve navedeno kao teza, ali u isto vrijeme daje se opća ideja o punom ciklusu izdavanja igre. Ne treba odmah računati na milijune dolara zarade, jer igrice su prije svega kreativnost.

Mnogi možda ne vjeruju u vas. Što je tu je: sigurno će biti par večeri kada ćete poželjeti odustati od svega, ali ne treba odustajati. Zapamtite: stvarno dobar proizvod zahtijeva puno vremena, novca i živaca.

p.s.

Ako imate pitanja ili trebate pomoć - pišite u odjeljak foruma, primam obavijesti - uvijek ću odgovoriti i pomoći kako god mogu.

Naravno, moderni veliki projekti igara poput WoW-a ili StarCrafta rezultat su dugogodišnjeg rada iskusnih programera, koji također zahtijevaju značajna financijska ulaganja. Da biste prihvatili takav projekt, morate imati barem diplomu, određeno iskustvo i organizacijske talente. Međutim, složenost projekta nije uvijek mjerilo njegove uspješnosti i ne jamči interes igrača. I svatko se može okušati u stvaranju igara, iako manje tehnički složenih, ali koje mogu pobuditi interes i korisnika i, možda, velikih tvrtki koje proizvode igre. Za to nije potrebno niti poznavanje programskih jezika.

Prvo, većina modernih igara opremljena je alatima koji vam omogućuju da promijenite svijet igre tako da: crtate nove i labirinte, transformirate izgled likova i objekata igre, čak dizajnirate nove misije i zadatke. To omogućuje, na temelju istog StarCrafta ili 3D pucačine, računalnu igru ​​vlastitog dizajna, u kojoj će izvorna igra biti izuzetno teška. Postoje motori za igre posebno dizajnirani za stvaranje igara.

3D Game Maker jedan je od najpopularnijih motora koji vam omogućuje stvaranje vlastite 3D igre. Zbog iznimne jednostavnosti sučelja, pomoću njega se u samo 10 minuta može stvoriti potpuna 3D igra. Odabiremo žanr igre koja se stvara, određujemo broj potrebnih razina (sustav vam omogućuje dizajn do 20 različitih razina), odabiremo glavnog lika među gotovim modelima. Igrica se već može pokrenuti i testirati, iako je rad na njoj, naravno, tek počeo. Uostalom, igra je još uvijek lišena onog najvažnijeg, onog što zadržava pažnju i interes korisnika - zapleta. Stoga je također potrebno odabrati protivnike, razmisliti o drugim potrebnim detaljima. Trošak razvoja ove igre je 35 USD - prilično podnošljiv iznos za kreatore igara.

3D Game Studio je najmoćniji alat za izradu 3D i 2D igrica, a programiranje kao takvo praktički nije potrebno. Skup svih vrsta predložaka situacija, primjera i efekata daje dizajneru igre prilično široku paletu alata za realizaciju svojih fantazija. Prirodni efekti, zrcalne površine, sjene, prozirne površine - svi ovi atributi mogu se u potpunosti koristiti u razvoju interijera igre. Gotovi elementi sučelja igre također se daju razvojnom programeru, omogućujući korisniku da komunicira s igrom na moderan i praktičan način. Profesionalna verzija ovog motora koštat će 900 dolara, ali početnička verzija je puno jeftinija - samo 70 dolara.

Ako vam se 3D svjetovi ne sviđaju, obratite pozornost na Game Maker - on vam daje bezgraničan prostor za maštu, omogućujući vam stvaranje računalne igre u 2D formatu. Odabiremo predmete, razmišljamo o njihovoj interakciji. Slike se mogu nacrtati u bilo kojem grafičkom uređivaču i uvesti u sustav. Igra može biti opremljena zvučnim efektima i signalima. Sučelje je iznimno jednostavno i logično, idealno za početnike.

Program je dizajniran za stvaranje dvodimenzionalnih igara bez korištenja programskih jezika. Umjesto redaka koda, zamjenjuju se gotove akcije likova igre. Korisnik samo treba stvoriti objekte igre, opskrbiti ih dvodimenzionalnim spriteovima ili animacijom, stvoriti pravila za interakciju između objekata, rasporediti objekte po razinama. Možete crtati grafike i animacije izravno u Game Makeru bez korištenja programa trećih strana.

U ovom programu izvrsne su igrice odozgo prema dolje i platformeri s bočnim pogledom.

"Game Maker" također će biti zanimljiv naprednim programerima, mogućnost dodavanja vlastitog programskog koda također je dostupna ovdje.

Besplatna verzija programa ni na koji način ne ograničava obične korisnike u usporedbi s plaćenom verzijom Game Maker Pro. Plaćena verzija daje pristup složenim softverskim modulima koji su zanimljivi samo pravim profesionalnim programerima.


Vrlo jednostavan dizajner 2D igara. Nije potrebno poznavanje programskih jezika.

Za razliku od Game Maker-a, Construct 2 može kreirati igre za iOS, Android, Facebook, Chrome Web Store, Desktop Windows, Windows 8 Apps, Web (HTML5), Kongregate i mnoge druge platforme.

Ovo je kvalitetniji program, ali i pohlepniji za novcem. Program je besplatan dok ne želite prodati svoju igru. U tom slučaju morat ćete kupiti licenciranu verziju. Na web stranici programera postoji i posebna trgovina u kojoj možete kupiti resurse za izgradnju svoje igre: setove zvukova, glazbu, detaljne upute.

Preporučujemo Tutorial "TDS od A do Z" (stvaranje top-down pucačke igre).


Programi za izradu 3D igrica (Site stranica)

"3D Rad" je najjeftinija opcija među motorima za 3D igre. Program se općenito može koristiti besplatno, a uz uplatu od 5 dolara dobivate najnovija ažuriranja na dan izlaska (u besplatnoj verziji ažuriranja se pojavljuju tek nakon tri mjeseca). Najčešće se ovaj motor koristi za stvaranje trkaćih igara.

Program ima jednostavno i intuitivno sučelje, nije opterećeno sitnicama.

"3D Rad" podržava instalaciju zasebnih dodataka, ima unaprijed instalirane AI modele, mape sjena i teksture. Moguće je kreirati online igre.


NeoAxis Game Engine SDK

Izvrstan motor za igre s jednostavnim sučeljem i visokokvalitetnom grafikom. Dizajniran za stvaranje igara u gotovo svim žanrovima.

Temeljeno na motoru Ogre3D. Programski jezik je C# i C++ i .NET platforma, ali moguće je bez programiranja zahvaljujući posebnim bibliotekama gotovih akcija. Za motor postoje različiti dodaci i ekstenzije koje su razvili korisnici trećih strana. Moguć je izvoz za 3dsMax i Maya, Autodesk Softimage i Blender. Podržani su PSSM (Parallel-Split Shadow Map) shaderi, osvjetljenje i sjene.

NeoAxis Engine se distribuira pod 4 vrste licenci: Nekomercijalna - besplatna za nekomercijalne projekte; Indie licenca - 95/295 dolara (pojedinačno / tim); Komercijalno - $395/995 (pojedinačno/tim); Izvorna licenca - od 9.800 USD.

Glavna prednost ovog motora za igre je maksimalna pogodnost i jednostavnost. Osim toga, motor su razvili domaći programeri, zahvaljujući čemu prema zadanim postavkama ima ruski jezik. Kada kupite licenciranu verziju, dobivate visokokvalitetnu tehničku podršku na svom materinjem jeziku.


Opsežan alat koji sadrži sve što vam može zatrebati za izradu igre. Paket Unity 3D uključuje grafički mehanizam koji u potpunosti iskorištava mogućnosti DirectX-a i OpenGL-a, ugrađeni uređivač 3D modela, zasebne programe za kreiranje i obradu shadera, sjena, krajolika, fizike i zvukova, kao i bogate biblioteke skripti. Uz Unity 3D možete potpuno zaboraviti na programe trećih strana ili njihovu upotrebu svesti na minimum.

"Unity 3D" je pogodan za stvaranje igara bilo kojeg žanra. Podržane platforme su konvencionalna računala (Windows XP/Vista/7, OSX), mobilni uređaji (Android, iOS, Blackberry), igraće konzole (Wii, Playstation 3, Xbox), internetski preglednici (Flash, Web Player).

Postoji poseban sustav zajedničkog razvoja - Asset Server, koji vam omogućuje razvoj igre kao dio cijelog tima izravno putem interneta.

Jedini nedostatak je da za korištenje "Unity 3D" morate poznavati računalno programiranje barem na prosječnoj razini. Unatoč bogatoj biblioteci gotovih praktičnih softverskih rješenja i snažnom mehanizmu za skriptiranje s trenutnom kompilacijom, morat ćete sami napisati dio koda u JavaScriptu ili C#.


Unreal Development Kit (UDK)

Jedan od najpopularnijih pokretača igara u profesionalnom okruženju programera igara. Unreal Engine je korišten za izradu igara kao što su serija Unreal Tournament, serija Mass Effect, XCOM, Borderlands 2, DmC: Devil May Cry i deseci i stotine manjih igara.

"UDK" podržava sljedeće platforme: PC, Xbox 360, PlayStation 3, Wii, Android.

Ovaj motor je izvorno dizajniran za stvaranje 3D pucačina, ali postoje i mogućnosti za stvaranje igara srodnih žanrova: slashers, avanture, MMO igre.

Motor igre izvrstan je u stvaranju animacija lica, složene arhitekture zgrada, obrade složenih fizičkih objekata. Kao dio "UDK" ima sve potrebne alate za stvaranje animacija, tekstura, zvukova, razina, modela, softverskih skripti. Postoji ugrađena biblioteka koja sadrži više od 1000 struktura, druge 3D modele, standardne teksture i zvukove. Postoji mogućnost programiranja na posebnom jeziku "Unreal Script" (stvoren na temelju C ++).

"UDK" možete koristiti besplatno, sve dok ne odlučite službeno objaviti svoju igru ​​kreiranu na ovom motoru. U ovom slučaju, morat ćete izdvojiti za skupu licencu.


CryENGINE 3 besplatni SDK

"CryENGINE 3" je vrhunac modernih pokretača igara, pružajući fotorealističnu grafiku s podrškom za DirectX 11 i treću generaciju shadera. Treća verzija motora nastala je 2009. godine. Serije igara Far Cry i Crysis, online igra Aion, kao i deseci manje poznatih računalnih igara stvoreni su na ovom motoru.

Crytek je odlučio besplatno distribuirati ovaj već popularni game engine. Ali besplatnost vrijedi točno do trenutka kada želite službeno objaviti igru ​​stvorenu na ovom motoru. Licencirana verzija je skuplja od svih sličnih programa, ali vrijedi novca.

Na "CryENGINE 3" možete kreirati igre za platforme: PC, PlayStation 3 i Xbox 360.

Možete uvesti teksture iz grafičkih programa "3ds max", "Maya" kao i iz prethodnih verzija motora.

Pokazalo se da je motor CryENGINE 3 vrlo popularan, ima cijelu zajednicu koja govori ruski, zahvaljujući kojoj možete lako pronaći sve vrste materijala za obuku, kao i odgovore na određena pitanja.


Kako razviti RPG igru ​​u tjedan dana od nule i bez budžeta. dio I

RPG za tjedan dana? Od nule? Je li uopće moguće?
Riskirala sam i uspjela sam.

Internet je pun izvora informacija dostupnih malim, neovisnim (indi) programerima igara. Na jednom takvom javnom forumu, tijekom svađe, imao sam neopreznost izlanuti da kad bih dobio tjedan dana vremena, računalo sa svježom instalacijom Windowsa i dobru internetsku vezu, mogao bih napraviti pristojnu igru ​​bez trošenja novčić na njemu. Ne, sigurno se neće moći natjecati s Halo 2 ili nečim sličnim (da mogu napraviti ovakvu igru ​​u tjedan dana, davno bih dao otkaz na poslu), ali bit će prilično zanimljivo i igrivo.

Tom Bampton, autor mjesečnog Game of the Day Game Reviews (www.gameinaday.com), rekao je: "Samo naprijed!" Zatim je dodao dodatni uvjet - moram to učiniti bez korištenja postojećih motora za igre. Dopušteno mi je koristiti samo osnovne biblioteke/API-je.

Prvo sam odustao od te ideje. Nisam imao previše vremena uzeti tjedan dana odmora od razvoja trenutnog projekta igre na poslu. Ali onda sam pomislio: kvragu s tim, jer što je tjedan dana? U tipičnoj tvrtki, kao što je EA, radni tjedan traje 40 sati. Pa zašto ne napraviti igru ​​ne u jednom kalendarskom tjednu, već u 40 čistih sati? Već je stvarniji - ali nisam želio stvoriti još jedan Tetris ili Arkanoid. A što je s igranjem uloga - jednim od najtežih žanrova igara? Je li moguće?

Znao sam da će biti izuzetno teško. Ali prihvatio sam izazov.

Osim toga, detaljno sam zapisao što i kako radim, opisao napredak razvoja. Mislio sam da bi to moglo biti zanimljivo programerima igara - ili barem dobiti zabavne zapise o tome kako sam pao ničice u blato, ako iznenada ne uspijem. Sve što sam smislio bio je dugačak, lutajući zapis o mojim aktivnostima po satu. Pokušao sam to promijeniti na način da čitanje ne izaziva dosadu. Kako se to dogodilo, procijenite sami.

Dakle, evo kako sam napravio igru ​​u jednom tjednu od nule, i to bez budžeta. Ako ste previše lijeni za čitanje i želite brzo skočiti na kraj priče da vidite kako izgleda konačni proizvod i vidite sve njegove greške, verziju igre za Windows možete preuzeti ovdje: http://www .rampantgames.com/hackenslash.html

PLANIRANJE
Cilj
Napravite RPG stare škole u stilu starih igara iz ranih 80-ih, s pogledom odozgo prema dolje, kao što su The Temple of Apshai, Ultima III i Telengard. Igrač će se kretati kroz sobe u tipičnoj tamnici, boreći se s raznim čudovištima "mačem i magijom". Postupno će poboljšati svoje sposobnosti stjecanjem iskustva, napredovanjem, stjecanjem čarobne opreme.

Međutim, igra će se sastojati od više od same borbe. Igrač će također imati opciju prošuljati se pokraj čudovišta ili pregovarati s njima. Bit će zaključana vrata i škrinje, te jedinstvene značajke tamnice koje imaju neočekivane učinke. Igra neće imati dugačke opise ili dijaloge – uglavnom će biti tipični hack & slash. Slijedit ćete put dok ne budete dovoljno jaki da se suočite s konačnim šefom, dovršite zadatak i sigurno se vratite kući (vaša početna soba).

Pravila razvoja

Pravilo #1: Vrijeme razvoja ograničeno je na tjedan dana (uključujući 40 sati)
Ukupno ne bi trebalo potrošiti više od 40 sati na razvoj igre. To će uključivati ​​vrijeme provedeno u stvarnom radu na igri i razmišljanju o njoj. Pauze u razvoju duže od deset minuta neće se računati. Ovo bi bio "savršen" radni tjedan od 40 visokoučinkovitih sati.

Potpuno funkcionalna alfa verzija bit će napravljena za 40 sati. Daljnje dorade, kao što je konačno otklanjanje pogrešaka igre, izrada instalacijskog programa za distribuciju u ukupnom vremenu neće biti uzete u obzir, u ovoj fazi neće biti dodane nove funkcionalnosti. Dokumentacija procesa razvoja također se ne uzima u obzir.

Pravilo #2: Koristite samo besplatne alate
Uz izuzetak softvera koji dolazi s instalacijom sustava Windows, koristi se samo besplatni softver, ako je moguće otvorenog koda. Poanta ovoga je pokazati da vam nisu potrebni skupi (ili čak jeftini) alati za razvoj igre. Ovo pravilo ne utječe na opremu poput skenera, mikrofona i digitalne kamere – ako ih nemate, pretpostavit ćemo da se mogu od nekoga posuditi.

Pravilo #3: Bez motora, samo standardne biblioteke/API-ji
Igra mora biti kreirana "od nule" bez korištenja postojećih pokretača igre. Bez varanja i stvaranja igre ili bilo kojeg njezinog dijela pomoću dizajnera igara ili pomoću sličnog softvera.

Alati
Kodirati:

Python 2.3 (http://www.python.org/)
Python Win
PyGame (http://www.pygame.org/)
Py2exe - za kompajliranje onoga što se događa u izvršnu datoteku za distribuciju. (http://starship.python.net/crew/theller/py2exe/)

Gimp 2.0 (http://gimp-win.sourceforge.net/)
MS Paint (onaj koji dolazi s Windowsima) - za lijepljenje snimaka zaslona snimljenih tipkom PrintScreen (GIMP je to iz nekog razloga odbio učiniti)
Besplatne teksture preuzete su s (http://www.textureartist.net/textures/index.htm) i (http://www.mayang.com/textures/)

Audacity (http://audacity.sourceforge.net/) plus moj mikrofon ili besplatni.

Dinamika (Plan) radova
Rasporedi su napravljeni da se kasnije prekrše, ali su i dalje potrebni za kontrolu napretka i redova, te po potrebi za prilagođavanje.

Sat 1-10: Osnovna arhitektura
Dizajn motora i glavne komponente. Dobijte prikaz svijeta na ekranu. Moram implementirati mogućnost pomicanja testnog igrača po svijetu i gledanja stvari, a zatim pretvoriti ono što se događa u uređivač igre.

Sat 11-20: Mogućnosti igrača
Implementacija svih glavnih značajki za igrača - kretanje, napad, otvaranje vrata, smrt, skupljanje stvari i korištenje inventara. Napravite žičani prikaz svih objekata u okruženju kako biste testirali igračevu sposobnost interakcije sa svijetom.

Sat 21-30: Revitalizacija svijeta
Dodajte umjetnu inteligenciju, događaje u igri, zamke, specijalne efekte. Do kraja ovog razdoblja trebao bih imati prilično kompletan tehnički demo, uključujući sve glavne značajke igre.

Sat 31-40: Dodavanje sadržaja i pravila
Nabavite potpunu igru ​​iz techno demonstracije. Dodajte sav dodatni sadržaj. Za postizanje potpunosti i ravnoteže mehanike igre. Ispolirajte sve za što imate vremena, dodajte specijalne efekte, animacije itd.

Nakon 40 sati: Testiranje i puštanje igre
Testirajte i popravite pronađene greške (bez dodavanja novih značajki!) Skupite sve zajedno i stavite na Internet. Kompletna dokumentacija.

Hackenslash Dev Diary: igra tjedna

Sat 1 - Divlji dizajn i osnovne klase
Ovaj sat je potrošeno na stvaranje nekih osnovnih klasa za igru ​​- i njihovo korištenje u daljnjem dizajnu. Svijet će biti predstavljen kao niz prostorija povezanih portalom. Sve na svijetu temelji se na sobama, baš kao što je bilo u starim avanturističkim igrama ili MUD-ovima. Većina objekata u igri predstavljena je kao "GameObject" koji ima položaj i sadržaj (može sadržavati i druge objekte - karta može sadržavati sobe, soba može sadržavati škrinju, škrinja može sadržavati mač.. . i mislim da mač može sadržavati nekoliko soba, ali nećemo to učiniti.)

Stvaram objekte stvorenje (stvorenje) i igrač (Igrač)
Generiram skup atributa za stvorenja i ubacujem ih u klasu. Očigledno sam štreber koji previše igra RPG igre. Još ne znam točno kako će izgledati i raditi mehanika igre.
Izrađujem objekt sobe koji nasljeđuje GameObject. Soba ima širinu, visinu i zidove - i ništa drugo u ovom trenutku.

Postupno počinjem shvaćati kako će sve funkcionirati i unositi potrebne ispravke. U ovoj fazi niti ne pokušavam koristiti PyGame i program ne prikazuje ništa osim konzole. Ali smatram da je sve što je učinjeno veliki napredak!

Sat 2 - PyGame 101
Svrha ovog sata je inicijalizirati PyGame, dobro, i početi crtati barem nešto na ekranu. Zapravo, većinu svog vremena provodim čitajući PyGame dokumentaciju, pokušavajući shvatiti što je tamo i kako, budući da nemam previše iskustva s PyGameom ili SDL-om.

Ovaj sat završava programom koji prikazuje prazan ekran ispunjen crnom bojom. Nije impresivno. Zapravo, iza ovog prozora krije se mnogo toga. Postoji petlja igre, prebacivanje okvira, višestruki pozivi klase i puno neaktivnih stubova. Ali to ne čini crni ekran još impresivnijim.

3. sat - Kad bi zidovi imali uši, grdio bih ih jako.
Svrha ovog sata je definirati obrise sobe zidovima i prikazati ih na još crnom ekranu. Za ovo trebam prostor i trebam grafiku. Morate provesti puno vremena u GIMP-u, uređujući teksture preuzete s interneta, tako da se pretvore u odgovarajuće pločice. Stvaram klasu upravitelja teksture. I popunjavam uzorak strukture sobe. Također sam proveo malo više vremena pregledavajući PyGame dokumentaciju kako bih pronašao bilo što drugo što bih mogao upotrijebiti da olakšam posao.

Sat je prošao. Još uvijek imam isti crni ekran. Nije bilo zidova, i nema.

4. sat - hotel ima slobodnu sobu
Nakon što sam se borio s nekim pogreškama u sintaksi, napokon sam uspio postići da se zidovi pojave na ekranu. Istina, prikazani su netočno, nisu na naznačenom mjestu, pa čak i s utorima između segmenata. Užasno je. Ali uz malo dotjerivanja i uređivanja, dobio sam nešto što je izgledalo kao soba na ekranu, 10 puta 10 kvadrata.

Bez detaljnog plana projekta, vrlo je lako zbuniti se kada ste obavili određeni posao i pitati se "Što je sljedeće?" Odlučio sam da ako je crtanje jedne sobe dobro, onda je crtanje dvije dvostruko bolje.

Za pohranjivanje kreiranih soba, kreirao sam datoteku "minidungeon".
Počet ću dodavati logiku za "portale" - otvore u zidovima za odlazak u druge prostorije (i pružiti sve informacije o pomaku potrebne za ispravno prikazivanje susjednih soba).

Sat 5 - Hackenslash dobiva više soba

Promijenio sam naslov prozora u "Hackenslash!". Samo zato što je cool.
Napravio sam mapu objekata za pohranjivanje soba i klasu MapMaster koja sadrži nekoliko mapa.
Dodao sam drugu sobu i povezao se s prvom preko portala.
Susjedne sobe povezane su s trenutnom kroz portale i sada se prikazuju na ekranu.
Ispravio sam neke pogreške pri isjecanju tako da se zidovi koji se djelomično protežu izvan prozora ispravno prikazuju.

6. sat - tijekom kojeg usavršavamo svoje vještine crtanja

Dodana je klasa vrata, a također su postavljene karte za postavljanje vrata (vrata moraju biti zajednička za dvije sobe). (Edit: Šteta što ga nikad nisam koristio!)
Napravio sam još 3 zidne pločice, spojio ih u jednu sliku.
Grafički izgled zidova varira ovisno o vrsti.
Radim jednostavnu grafiku za pogled odozgo prema dolje.

Sati 7-8 - vrtnje i uzvici!

Shvatio sam kako rotirati bitmape u PyGameu.
Postigao sam glatku rotaciju testnog playera. Za ispravljanje kuta rotacije potrebno je mnogo podešavanja.
Naučio sam kako koristiti fontove u PyGameu i stvaram neke klase za prikaz i animiranje teksta.
Dodana klasa za automatsku obradu teksta, budući da će se ova funkcionalnost često koristiti u budućnosti.

Sati 9-11 - Elementi - brrr!

I tu opet trebam riješiti pitanje "Što dalje?".

Sobe trebaju više zanimljivih elemenata, pa morate napraviti njihov popis. Ne znam kako bih ih sistematizirao, pa sam odlučio krenuti od onih općih. Uveo sam tri statična elementa koja se mogu naći u tipičnoj prostoriji tamnice: tepih, stup (blok s istom funkcionalnošću kao zidovi) i ljestve (omogućuju vam premještanje na novu lokaciju)

Odlučio sam da elementi mogu zauzeti više od jedne pločice i mogu se rotirati za bilo koji stupanj. (Edit: retrospektivno, vrlo glupo rješenje - proveo sam previše vremena implementirajući ga, ali pokazalo se da je gotovo beskorisno.)

Sve u svemu, proveo sam oko tri sata radeći na elementima, razapet između kreiranja grafike i pisanja koda.

Sati 12 - 13 - Treba nam plijen!

Stvaram grafiku i kod za stvari. Nevjerojatno je koliko crtanje može trajati. Posebno je neugodno kada slika izgleda kao da je pile crtalo šapom, ma koliko truda uložili u to.

Stavkama sam dodao puno statistika, uključujući njihovu cijenu, veličinu, utore za opremu i još mnogo toga. S njima se još ne može komunicirati, ali barem se pojavljuju na pravim mjestima u sobi.

14. sat - Tepisi

Kasnim za rasporedom, što da radim?
Crna podloga djeluje previše ružno, pa sam podove unutar sobe popločao tepisima - zasebnim pločicama.

Nakon toga se odjednom pokazalo da sam zaboravio dodati prozirnu pozadinu spriteovima igrača i stvarima. Morao sam potrošiti dosta vremena ispravljajući ovaj propust.

Ali razina sada izgleda super. Pa barem hladniji od crnog.

Sati 15-16 - Klik! Klik!

Bio sam zauzet kontrolom miša i rukovanjem događajima.
Dodana kontrola mišem. Dok je kretanje trzavo, nema glatkog pomicanja razine.
Igrač se može pomaknuti iz sobe, nema provjere sudara.
Ispravio sam nekoliko grešaka.
Mučio GIMP i stvorio prekrasne stepenice.
.
Već je prošlo skoro 17 sati razvijanja, pa počinjem biti malo nervozan. Prošao sam 2/5 puta za kreiranje igre – završio je drugi “radni dan” razvoja. Ono što sam već napravio je impresivno, ali razumijem da je ostalo još mnogo toga za učiniti. Imam još četiri sata da dovršim osnovne značajke igrača i stignem na raspored. Bit će teško... ali svejedno mi nije žao što sam potrošio dodatno vrijeme na crtanje grafika!

17. sat - Lagano kretanje dok ne udarimo čelom u zid

Većinu vremena trošimo na fino podešavanje grafike i popravljanje grešaka.
Dodano otkrivanje sudara i glatko pomicanje kada se igrač pomiče.
Igrač sada može napraviti više koraka (okreta) kao odgovor na akciju miša.

18. sat - Obilaženje pragova

Igrač sada može ići kroz portale u druge sobe.
To uzrokuje kozmetičku grešku s preklapanjem zidova i podova između susjednih soba.
Ispravljeno je mnogo grešaka povezanih s rotacijom, zbog kojih su portali bili neprohodni.

Sat 19 - Stepenice do neba, Pakleni meni

Moj brat se dobrovoljno javio da napravi glazbu za igru. Napravio je glazbu za Void War i ispalo je prilično dobro. Ovo me podsjetilo na reprodukciju zvuka (i glazbe). Čini se da je to prilično lako učiniti u PyGameu, pa ne bi trebalo predugo trajati. (Edit: nikad nisam našao vremena za ovo, nažalost nećete čuti niti jedan zvuk u Hackenslashu.)

Moj sljedeći cilj je rukovanje interakcijama sa stvorenjima i predmetima. Stvarno mi se sviđa način na koji je to učinjeno u igrama The Sims i Neverwinter Nights, kada želite komunicirati s objektom igre, pojavljuje se kontekstni izbornik. Planiram implementirati nešto slično.

Podučavanje stepenica za premještanje igrača u novu sobu.
Malo sam čeprkao po internetu i PyGame dokumentaciji, tražeći da vidim postoji li open source izbornik za sličan izbornik u PyGameu. I nisam ništa našao.
Počeo sam sastavljati svoj jelovnik.

Sati 20 - 21 - Što je s jelovnikom?

Nastavljam raditi na jelovniku. Izbornik se može jednostavno povezati s objektom, točnije objekt generira izbornik, što je olakšalo implementaciju povratne informacije za obradu odabira igrača.
Počeo sam raditi na izborniku stavki. Već se pojavljuje na pravom mjestu i omogućuje odabir neke stavke, ali kada se pritisne, još uvijek ne radi ništa, radi samo gumb za zatvaranje izbornika.

Sat 22 - Zaspati u tijeku

Nastavljam raditi na stvarima - pokušavam implementirati njihovu funkcionalnost i naučiti ih da odgovaraju na naredbe izbornika, uključujući mogućnost dodavanja kontekstualnih informacija. Sada ima malo funkcionalnosti, ali i dalje radi, prikazujući informacije o pokrenutoj naredbi
Poboljšao sam izračun kretanja pri izvođenju raznih radnji, dobio veću mobilnost.

Primjećujem da je već kasno i da sam daleko prekoračio sat predviđen za ovaj posao. Da nisam pazio na ukupno vrijeme razvoja, vjerojatno bih sjedio vani do jutra. Ali budući da sam ograničen s vremenom, gotovo izgubljen sat je stvarno loša vijest. Zanimljivo je kako se prioriteti mijenjaju kad nema dovoljno vremena. Općenito, idem u krevet.

Sat 23 - Parametri borbe!

Modificiram (pa, zapravo tek počinjem) neke od atributa klase stvorenih u prvom satu.
U gornjem desnom kutu kreiram panel koji će prikazati opcije igrača.
Optimizirao sam ovaj prozor tako što sam ga pretvorio u sliku koja se crta brže od fontova. Ova se slika ažurira samo kada se promijene povezani parametri znakova.

Sat 24 - izbornik igrača

Dovršio sam optimizacije za prozor opcija.
Stvoren je skočni izbornik koji se pojavljuje kada igrač klikne na lik.
Napravio sam brzi izbornik za korištenje napitaka, bacanje čarolija itd.
Popravio sam neke greške u izborniku.

Sat 25 - Prije (jednom) piljenja podova i zidova

Jutros mi je u glavi pala ideja (imam li stvarno tako velik mozak da u njega stane toliko ideja?) kako riješiti problem preklapanja zidova u susjednim sobama (vidi opis osamnaestog sata). Što ako okrečim samo pola zidova? Na taj način uopće neće biti preklapanja i ne treba dodavati složenu logiku za otkrivanje i popravljanje preklapanja.

Počinjem raditi na realizaciji ove ideje. Nažalost, u stvari, izmišljeno pojednostavljenje još više otežava crtanje sobe (osobito podova), a možda se neće implementirati tako brzo kao što sam se nadao. Bilo je potrebno oko sat vremena za izradu i otklanjanje pogrešaka u ovom sustavu. Ali vrijedilo je.

Dok sam ispravljao pogreške u kodu, pronašao sam još nekoliko grešaka vezanih uz prijelaz između soba.

BREAK - Kriza!

Upravo sam shvatio da je prošlo više od 3/5 vremena razvoja i da je ostalo manje od petnaest sati da se igra završi. Nakon što sam pogledao raspored potrebnih značajki igre i procijenio da će za svaku implementaciju trebati prosječno sat vremena, shvatio sam da će mi za implementaciju svega trebati oko dvadeset pet sati. Deset sati prije vremena. Projekt je službeno u opasnosti.

Ne mogu prekoračiti vremensko ograničenje. Također je nemoguće privući pomoćnika ili kupiti kod/resurse, jer je predviđeno da ću sam napraviti igru ​​za 40 sati. Moram smisliti kako raditi još učinkovitije - ali već radim s maksimalnom produktivnošću. Čini se da nemam drugog izbora, morat ću ponovno razmisliti o funkcionalnosti i odlučiti koje značajke izbaciti iz igre.

Vrata: Rez! Stvarno želim napraviti vrata u igri. Šteta je odvajati se od ove funkcije - pogotovo jer sam na njoj radio neko vrijeme. Ali još uvijek ima previše posla, poput umjetne inteligencije. I vjerojatno će trebati 2-3 sata da ih natjeram na posao, a ja ih nemam.
Inventar: Pojednostavite! Zaboravite na dodatni inventar i mogućnost mijenjanja oružja po želji. Sve što se pokupi, a ne postane tekuća oprema, odmah će se pretvoriti u novac.
Zamke: Pojednostavite! Želio bih imati mnogo zamki sa zanimljivim i raznolikim posljedicama za njihovo aktiviranje. Nije suđeno da bude. Zamke će imati jednostavan vizualni učinak, nanijeti štetu i privremeno povećati šansu da naletite na slučajno čudovište
Lukovi (malo oružje): Rez! Igra će imati samo oružje za blizinu, na daljinu možete napadati čarolijama.
Spremi/učitaj igru: Pojednostavite! Samo se karakter može spasiti, a ne stanje svijeta. (EDIT: nisam ni to napravio!)
Sustav čestica: Odgodi! Stvaranje sustava čestica premješteno na dno liste prioriteta. Sumnjam da će ih trebati učiniti. Bilo bi lijepo imati impresivne vizuale s česticama čarolija... ali vjerojatno nikad neće.
Čarolije: Pojednostavite! Imao sam ozbiljan koncept o čarolijama: moglo ih se naći u obliku svitaka, a broj je veći od desetak. Tužno je, ali bit će samo nekoliko čarolija: Iscjeljivanje, Oštećivanje, Oslabljivanje, Osnaživanje i Obnavljanje. Prelaskom na razinu možete dopustiti igraču da poboljša čarolije povećanjem broja magičnih bodova.
Animacija čudovišta i igrača: Cut! Slab sam umjetnik da to učinim dovoljno brzo.

Kada odlučujem što neću učiniti (ili što ću odgoditi za kasnije), jednako je važno odlučiti što prvo treba učiniti.

U igri je planirano mnogo stvari koje smatram vrlo važnima - pronalaženje zamki, tajnih vrata (dobro, sada tajnih prolaza) i otvaranje škrinja. Ali ipak je osnova igre borba. Pa sam se odlučio usredotočiti na to, učiniti ga glavnim prioritetom. Postavio sam si cilj, za sat i pol će moja čudovišta oživjeti da ih se može ubiti.

Super, odredili smo prioritete, razvijamo se dalje.

26. sat – Bacimo kockice

Radim na mehanici “kocke”, mehanizmu kojim će se u igru ​​unijeti element slučajnosti. Budući da nemamo stvarno ograničenje kocke, možemo dobiti slučajni broj u bilo kojem željenom rasponu. Na primjer, od 1 do 33, ili od 6 do 17. Pa mogu baciti kockice, usporediti što je palo sa svojim napadom i obranom neprijatelja. Ako je bačeni broj veći od obrane, napad je uspješan.

Na primjer, recimo da imam ukupnu vrijednost napada 15. Napadam čudovište koje ima 10 obrana. Moje šanse su 15 od 25 (25 =15 +10) ili 3 od 5. Dakle, igra će generirati nasumični broj između 1 i 25, a ako je veći od deset, ja ću pobijediti.

Nanesena šteta se računa na malo drugačiji način. Dodao sam "oklop" braniču i "oštećenje" napadaču. Generiram nasumični broj od 1 do njihovog zbroja i zatim oduzimam oklop. Ako je rezultat manji od jedan, šteta se ne nanosi. U suprotnom, jednak je rezultatu. Stoga, ako čudovište s 10 oštećenja napadne igrača s 5 bodova oklopa, igra će generirati broj od 1 do 15, od kojeg će oduzeti 5, ono što se događa je nanesena šteta.

Ovo objašnjenje i opis trajali su dulje nego njihova implementacija.

Na kraju sata smanjio sam veličinu područja prikaza tamnice, sada je dio prozora s desne strane u potpunosti posvećen korisničkom sučelju, ova je promjena malo poboljšala performanse. Također sam se uvjerio da kretanje igrača ne ovisi o broju slika.