[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4505: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4507: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4508: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4509: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
SloGameDev.net • Poglej temo - Castler

Castler

Če želite svetu pokazati, na čem delate trenutno ali kaj ste naredili, je to pravi kraj.

Castler

OdgovorNapisal/-a pevecyan » To Okt 16, 2012 9:25 pm

Pozdravljeni tudi z moje strani, sem nov v teh vodah s programiranjem iger se ukvarjam slaba pol leta, v 4. letniku gimnazije sem se za maturitetno seminarsko nalogo odločil narediti igro. Zakaj pa ne? :D
Sprva je bila sprogramirana v javi, vendar me je kasneje premamil Microsoftov XNA studio in sem jo zato tudi prestavil.
Gre za 2D sandbox game narejen po stilu terrarie. Grafike niso moje, in jih v prihodnosti mislim zamenjati z lastnimi.
Svet se generira popolnoma naključno, nekaj težav mi povzroča "save game", pri čemer upam na vašo pomoč. :D
Počasi dodajam več elementov in njihovo interakcijo z igralcem, prav tako pa se v prihodnosti obetajo še razni "mobi".
Vsa koda je lastna pogruntavščina in vrjamem da ni v nulo optimizirana. Če bo želja dodam še igro za dolpoteg in preizkus.
Še screenshoot:
Slika

Lep pozdrav, pevecyan :)
pevecyan
novinec
novinec
 
Prispevkov: 18
Pridružen: To Okt 16, 2012 9:09 pm

Re: Castler

OdgovorNapisal/-a impulse9 » Sr Okt 17, 2012 5:17 am

Pozdravljen na forumu!

Izgleda super. :)

Kaj tocno pa te matra pri shranjevanju? V osnovi je to samo preslikava stanja igre v nekaj, kar lahko kasneje preberes nazaj (obicajno nek file na disku). Lahko uporabis tekstovni (INI, JSON, XML ali kaj podobnega) ali pa binarni format. Implementacije so precej preproste, obicajno rabis lib, ki handla serializacijo, ce si pa bolj pustolovske sorte pa lahko ustvaris kaj svojega. To je v osnovi to.
Uporabniški avatar
impulse9
SGD Moderator
SGD Moderator
 
Prispevkov: 397
Pridružen: Pe Jan 10, 2003 10:14 pm

Re: Castler

OdgovorNapisal/-a pevecyan » Sr Okt 17, 2012 3:53 pm

Hello,
ko igro prvic zazenes, se generira svet velik 2000(širina)x(400) kock (array), vsaka kocka ima seveda svoj ID, in uporabljam tri "layerje"; sprednji, zadnji in umesni. Po tem ko se mapa zgenerira, svet razdelim na 50x50 velike chunke, katere pa potem shranim v fajle, problem je ker to shranjevanje traja tudi do minuto ali več in se mi zdi da je to malenkost predolgo. Shranim kar ID v obliki:
1.2.1.23.4
1.2.5.8.1.5
in to v .txt datoteko. Mislim da to ni optimalna rešitev, zato me zanima če bi me lahk mal usmerl, prosim :)
pevecyan
novinec
novinec
 
Prispevkov: 18
Pridružen: To Okt 16, 2012 9:09 pm

Re: Castler

OdgovorNapisal/-a impulse9 » Sr Okt 17, 2012 4:02 pm

Pokazi kodo za shranjevanje, brez tega bo tezko pomagati. :)
Uporabniški avatar
impulse9
SGD Moderator
SGD Moderator
 
Prispevkov: 397
Pridružen: Pe Jan 10, 2003 10:14 pm

Re: Castler

OdgovorNapisal/-a pevecyan » Sr Okt 17, 2012 4:20 pm

Priponke
Castler.zip
(442.16 KiB) Prenešeno 93 krat
pevecyan
novinec
novinec
 
Prispevkov: 18
Pridružen: To Okt 16, 2012 9:09 pm

Re: Castler

OdgovorNapisal/-a impulse9 » Sr Okt 17, 2012 9:12 pm

Ali imas kaksno verzijo, ki ne potrebuje installa?

Na prvi pogled mi koda deluje v redu, moram pa vprasati, zakaj shranjujes po kosckih in ne vsega naenkrat? Ce imas nivoje predefinirane in se med igro ne spreminjajo, potem niti ne rabis shraniti celotnega stanja igre, lahko samo zapises en kazalec na trenutni nivo, igralcev x, y in ostale relevantne podatke. Samo ideja.
Uporabniški avatar
impulse9
SGD Moderator
SGD Moderator
 
Prispevkov: 397
Pridružen: Pe Jan 10, 2003 10:14 pm

Re: Castler

OdgovorNapisal/-a pevecyan » Sr Okt 17, 2012 9:22 pm

V tem je point, to je sandbox igra, kar pomeni da preurejaš teren, gradiš gradove, itd..., zakaj ne shranim cele mape naenkrat? Sem poskusil na zacetku, vendar se proces zaradi rasežnosti sveta niti po 20 minutah shranjevanja ni končal. Noinstall nažalost nimam ker je direkt publish iz Visual Studia.
pevecyan
novinec
novinec
 
Prispevkov: 18
Pridružen: To Okt 16, 2012 9:09 pm

Re: Castler

OdgovorNapisal/-a impulse9 » Sr Okt 17, 2012 11:32 pm

Aha. :) Ce imas ogromno kolicino podatkov, potem je nekako logicno, da vzame veliko casa.

Nekaj idej, ki bi znale bistveno pohitriti zadevo:
- namesto da v zgornjem algoritmu prvo kreiras string in ga nato shranis v datoteko, bi lahko datoteki podatke appendal sproti (ena operacija manj, pri O(N^2) algoritmu se to hitro pozna)
- namesto tekstovne uporabi binarno serializacijo (ker je veliko blizja arhitekturi, je posledicno tudi veliko hitrejsa za branje in pisanje)

V kaksni podatkovni strukturi pa hranis te 'chunke' (sklepam, da mislis spatial particije)?
Uporabniški avatar
impulse9
SGD Moderator
SGD Moderator
 
Prispevkov: 397
Pridružen: Pe Jan 10, 2003 10:14 pm

Re: Castler

OdgovorNapisal/-a Grandy » Če Okt 18, 2012 8:38 am

Grandy
wannabe
wannabe
 
Prispevkov: 118
Pridružen: Po Sep 22, 2003 9:29 am

Re: Castler

OdgovorNapisal/-a pevecyan » Pe Okt 19, 2012 8:28 pm

Grandy, hvala res za tole :) iz 2 minut shranjevanja spravu na okol 50 sekund, impulse9 appendat še nisem probal, bom v kratkem naredil test in poročam rezultate.
pevecyan
novinec
novinec
 
Prispevkov: 18
Pridružen: To Okt 16, 2012 9:09 pm

Re: Castler

OdgovorNapisal/-a Grandy » So Okt 20, 2012 3:56 pm

Hm, samo na 50 sekund, moral bi bit več. Pol zgleda se nekej drucga pokuri veliko časa. Za take stvari priporočam profiler, meni osebno najbolj paše .
Grandy
wannabe
wannabe
 
Prispevkov: 118
Pridružen: Po Sep 22, 2003 9:29 am

Re: Castler

OdgovorNapisal/-a Blodyavenger » Ne Okt 21, 2012 11:54 am

Heya, pozdravljen na SGD-ju .<(15)>

Vidim da imaš kar zanimivo idejo v izdelavi, zgleda res fino.

Kar se tiče shranjevanja pa bi ti priporočal, da shranjuješ samo tisto kar "obstaja".
Torej, če na zgornjem layerju ni nekega tile-a za izrisovat ga preprosto ne shrani.

Mogoče boš pridobil nekaj malega pri velikosti datoteke.
................ ...................
"Don't you dare using uninitialized variables, not in C++"
Uporabniški avatar
Blodyavenger
expert
expert
 
Prispevkov: 716
Pridružen: Pe Sep 12, 2008 3:31 pm
Kraj: Land of the Ten Hares

Re: Castler

OdgovorNapisal/-a pevecyan » Pe Nov 02, 2012 1:46 pm

Živjo,
Igra počasi napreduje, sedaj pa me zanima, kako vi naredite light efekt naprimer če je v igri noč in ima player v roki svetilko.
Moj način je tak, da sem ustvaril še en layer črnih blokov in jim potem določam prozornost vendar, s tem ne dosežem lepih prehodov med svetlim in temnim(glej sliko).
Slika
pevecyan
novinec
novinec
 
Prispevkov: 18
Pridružen: To Okt 16, 2012 9:09 pm

Re: Castler

OdgovorNapisal/-a Blodyavenger » Ne Nov 04, 2012 6:51 pm

Žal ne vem kako narediti to z XNA-jom v osnovi pa gre stvar tako - za preprost "fake lighting" lahko uporabiš blending.
V back buffer izrišeš črnino in na njo slike luči, nato pa vse skupi z blendingom čez sceno izrišeš.
Vem da Retronator obvlada XNA in ti bi znal svetovat kaj več (upaj da se kaj tuki pokaže :) )

Tako zgleda to pri meni:
Slika
................ ...................
"Don't you dare using uninitialized variables, not in C++"
Uporabniški avatar
Blodyavenger
expert
expert
 
Prispevkov: 716
Pridružen: Pe Sep 12, 2008 3:31 pm
Kraj: Land of the Ten Hares

Re: Castler

OdgovorNapisal/-a pevecyan » Ne Mar 10, 2013 8:27 pm

Živjo vsi,
spet se oglašam po dolgem času, kaj sprememb? Seveda!
Slika
- nove teksture (tudi nekaj dinamičnih)
- Sonce(polkoržno premikajoče) in prelivajoča se barva odzadja odvisna od dela dneva.
- dnevno nočni cikel z delujočim svetilkami (dan in noč 600 sekund, vzhod ter zahod 300 sekund) (enkrat umes)
- ter dež z 1 - 7 vrjetnostjo pojavitve
pevecyan
novinec
novinec
 
Prispevkov: 18
Pridružen: To Okt 16, 2012 9:09 pm

Re: Castler

OdgovorNapisal/-a GoranSi » Po Mar 11, 2013 12:49 am

Nice :) Še posebej so mi všeč gore v ozadju. Bi pa popravil algoritem tako, da višina kockice na gori povečuje verjetnost bele barve.

Btw. so še težave s kodo za shranjevanje?

Goran
GoranSi
poizvedovalec
poizvedovalec
 
Prispevkov: 51
Pridružen: Pe Jul 20, 2012 9:01 am

Re: Castler

OdgovorNapisal/-a pevecyan » Po Mar 11, 2013 9:58 am

Shranjevanje je sedaj uredu, gore v odzadju so pa samo slike, ki se samo paralelno premikajo s playerjem.
pevecyan
novinec
novinec
 
Prispevkov: 18
Pridružen: To Okt 16, 2012 9:09 pm


Vrni se na Projekti

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 1 gost

cron