Jeste li za malo takmičenje?

23

Jeste li za malo takmičenje?

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Napisano: 28 Jul 2016 18:04

Pa za Linux skini kod i sam iskompajliraj Very Happy

Dopuna: 28 Jul 2016 18:14

@Srki
Inventar je definitivno u planu. Aliasi za stvari su bili u planu, pa su ispali iz plana, ali možda opet upadnu Smile

U svakom slučaju, ako posle ovog takmičenja budem i dalje radio na ovoj igri, verovatno ću odraditi posao malo detaljnije... lepi tipski podaci (tipovi za svaku vrstu objekta, prototipovi, nasleđivanje, itd...), gui za kreiranje igre (možda neki qt da radi na svim platformama), poseban player za igru koji će simulirati konzolu, ali će dozvoliti i prikaz slike, puštanje zvuka, možda i videa, verovatno i neki rich text (boldovana slova, različiti fontovi) i još po nešto.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4575

Srki_82 ::
Pa za Linux skini kod i sam iskompajliraj Very Happy


Ma mrzi me Mr. Green Mislio sam da imaš već iskompajliran projekat, nema veze, radi na Wine-u Razz

I kod mene je došlo do promena. Kao što sam najavio, projekat je prebačen u RoR (osnovni princip je i dalje isti). Preko rute kontroler prima korisnikovo pitanje i šalje nazad rezultat u realnom vremenu (Ajax). Razmišljam i o tome da napišem neki jednostavan API (sa definisanjem kategorija i nekih drugih parametara) no otom potom. Ako sve bude proteklo po planu projekat ću da objavim na Heroku za par dana da isprobate Public Beta verziju Smile



offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Napisano: 29 Jul 2016 9:03

Za Linux je generalno zeznutno praviti binarne datoteke, jer jedni imaju jednu standardnu c++ biblioteku, drugi drugu, jedni imaju jedne verzije paketa, drugi druge ili ih uopšte nemaju. Zato je već nekako standardno da uzmeš kod i iskompajliraš ga sam na svojoj mašini za svoj Linux. Druga varijanta je da iskompajliram različite verzije za svaku popularniju Linux distribuciju.

Dopuna: 29 Jul 2016 10:56

Woho, inventar i više naziva za istu stvar su završeni napravljeni. Sad ću da se bacim na priču... razmišljam nešto kao džin te je zarobio u kavez kao kućnog ljubimca i ti sad treba da se nekako izvučeš i pobegneš od njega. Videćemo kako će ići Smile

offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4575

Obzirom da je gotov sav posao vezan za programiranje (front-end ni ne računam, to je oko pola sata posla) i da je pisanje definicija užasno dosadno, počeo sam da pišem mali prevodioc (Lake) u Javi za DSL Swan koji će mi iznimno olakšati dosadan posao:

on "Kako si"     "Dobro, hvala na pitanju :)" end on "Kako si *"     jump "Kako si" end

Lake pomoću Tokenizer komponente razlaže Swan kod u tokene kreirajući Swan Token Model (STM) koji izgrađivač tagova (TagBuilder) koristi kako bi kod pretvorio u AIML (evo i dijagrama koji prikazuje proces prevođenja). U suštini ovo je običan source-to-source kompajler, ali mi je mnogo lakše da pišem ovako nego da kucam tagove, a i biće korisno svima koji rade sa AIML i svako će moći da po specifikaciji napiše prevodioc i u drugim jezicima (C++, Python, Ruby...) Smile

Prva verzija prevodioca će da ima samo osnovne funkcionalnosti, nakon takmičenja ću da nastavim dorađivanje prema specifikaciji AIML 2.0.

offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4575

Hmm, ovo je bilo mnogo lakše nego što sam mislio da će biti Very Happy

Kompajler za sada uspešno prevodi osnovne strukture u AIML:

on "Kako da *"      "Otkud ja to znam?" end on "Šta si rekao"      "Rekao sam, \"Bravo!\"" end
<category> <pattern>KAKO DA *</pattern> <template>Otkud ja to znam?</template> </category> <category> <pattern>ŠTA SI REKAO</pattern> <template>Rekao sam, "Bravo!"</template> </category>
Još da implementiram struktuiranje u TagBuilder i mogu da nastavim sa definicijama - evo i trenutne specifikacije.

Scopes sam implementirao preko listi - kada se oformi novi scope (recimo, ulazak u if petlju), lista sa procedurama dobija token sa tipom procedure i argumentom start. Kada kompajler učita end komandu, uzima tip poslednjeg dodatog tokena, dodaje argument end i uklanja poslednju dodatu proceduru. Ako je poslednja procedura bila template, automatski uklanja sve ostale (jer, ako nijedna procedura nakon template nije započeta, znači da je kategorija gotova i da tokeni mogu da se šalju TagBuilder komponenti).

offline
  • Pridružio: 14 Feb 2008
  • Poruke: 12391

Nakon duže pauze zbog nekih obaveza, konačno sam stigao da uradim nešto.

The gamepad is strong with this one Mr. Green


Nisam ni znao da Unity ima rešenje za gamepad kontrolu UGUIA. Krenuo sam da pišem skriptu koja će omogućiti gamepad input u meniju i saznam da postoji već rešenje za to.
Tako da je ostalo samo da isprogramiram public funkcije koje će pozvati eventi dugmeta.

Uskoro počinje pisanje drugog nivoa, u "izvlačenju" su sledeći žanrovi :
2D Shoot 'em up
3D MOBA
3D Survival Horror

Sviđa mi se premisa ove treće Wink

Prvi nivo je sa strane programiranja skoro gotov.
Ispravljeni bugovi, igrivost je tu, treba tweakovati samo težinu, jer je nenormalna sada, napraviti još nekoliko modela i šminku, ali ne verujem da ću mnogo vremena tome posvetiti.
Doduše sigurno ću uraditi MyCity kombi vozilo Very Happy

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Toliko od mene Smile Igrica je igriva, pričica je napisana, ima tu još dosta grešaka, ali šta da se radi Smile
U suštini, program ne radi ništa komplikovano. Najkomplikovaniji deo je upoređivanje stringova preko regex-a i traženje komandi. Na taj način sam odradio jednostavan parser koji je, moram priznati, prilično glup Smile

Neki bolji način bi bio da sa se model malo raširi tako da svaki objekat ima imenicu ili imenice koje ga predstavljaju, prideve koji ga opisuju i glagole za koje ima definisanu radnju. Tako bi parser imao mnogo više informacija i mogao bi da obraćuje dosta komplikovanije rečenice. Osim toga, mogao bih da uvedem i neke veznike pa da recimo "take this and that" parser prepozna i izbaci 2 komande "take this" i "take that". Nažalost, za sve to treba dosta vremena... dobar parser se piše prilično dugo, a još duže testira Very Happy

Prostor za podoljšanje postoji i u delu za ispis opisa. Trenutno je svaki opis samo običan tekst. Bilokakvo menjanje sadržaja sobe zahteva i ručno menjanje opisa. Umesto toga, bih mogao da napravim funkcije, koje bi na osnovu vrste objekta (soba, stvar, izlaz, itd...) i objekata koji se u njemu nalaze, same pripremile opis. Uz to verovatno bih mogao da napravim i neki mali templating endžin za tekstualni opis objekata, pa da u samom tekstu mogu da se koriste neka grananja, promenljive i slično, npr: "He was very {if obj.tall}tall{else}short{endif} man.". Na taj način bi se opis "sam" menjao u zavisnosti od trenutnog stanja igre.

Šta još fali... recimo promenljive koje bi uticale na samu igru. Recimo glad, žeđ, energija i slično. Sve u svemu, uz malo više truda i slobodnog vremena, mogla bi da se napravi mnogo bolja igra Smile

Evo i verzije za Windows. Ovog puta je osim exe datoteke tu i još jedna u kojoj se nalaze podaci za igru. Potrebno je da se obe datoteke naleze u istom direktorijumu prilikom pokretanja igre: https://www.mycity.rs/must-login.png

offline
  • Pridružio: 12 Okt 2010
  • Poruke: 10904

Ne radi.



Koja god komanda da se ukuca, ne izbacuje nikakav odgovor.

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Radi kako je isprogramirano Smile Probaj "look at box", probaj "look at lock".

offline
  • Pridružio: 12 Okt 2010
  • Poruke: 10904

Aha, radi Mr. Green
Mislio sam da je greška, pa rekoh da prijavim smešak

Ko je trenutno na forumu
 

Ukupno su 776 korisnika na forumu :: 42 registrovanih, 9 sakrivenih i 725 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 357magnum, A.R.Chafee.Jr., Bane san, bufanje, cavatina, darkangel, debeli, delrey, DonRumataEstorski, esx66, Frunze, galerija, Georgius, ikan, jackreacher011011, kikisp, Krvava Devetka, kubura91, kybonacci, Leonov, Lošmi, mercedesamg, milan.vukovic, mile23, milos.cbr, nemkea71, NoOneEver Dreams, nuke92, operniki, powSrb, Raso75, rodoljub, S2M, sasa87, sasakrajina, Singidunumac, stegonosa, Trpe Grozni, vathra, zeo, ZetaMan, šumar bk2