Jau galiu pristatyti naują žaidimo versiją. Taip sutapo, kad yra nemažai pokyčių ir versijos numeris yra "apvalus", t.y. 0.6.
Kas naujo:
Be jau minėtų naujovių:
http://minoslabyrinth.blogspot.com/2011/01/mino-labirintas-naujienos.html
dvi pagrindinės:
1) pakeičiau IDE. Dabar source yra VS2008 express edition projektas.
2) ištaisyta labai daug klaidų (ačiū jrs0ul ir VS2008).
Parsisiųsti išeities kodus:
http://www.mediafire.com/?9lxsxw7m4zwrcxm
Parsisiųsti windows binary:
http://www.mediafire.com/?10yb0xwo23u7k0d
Žinomos klaidos:
kartais blogai skaičiuojama randominių daiktų kaina;
priešininkai vis dar vietom sugalvoja, kad jų taikinys - siena ir bėga į ją:)
labiau ne klaida, bet nebaigta dalis - viskas, kas susiję su įgūdžiais, gerokai nebaigta.
Žinomos NEklaidos:
pats visą laiką pagalvoju: "WTF? kur mano pinigai?" Reikalas tas, kad net žaidėjo minotauras treniruojasi automatiškai prieš varžybas, jei turi pinigų ir liko laisvų dienų iki varžybų. Kol kas nepadariau, kad tai galima būtų atjungti, todėl kartais erzina, kai tikslas surinkti 260 auksinių, o kas savaitę atsiima 35.:)
Na kaip ir visada nieks neveikia. Ant wine lūžta po "Parameters loaded from file"
AtsakytiPanaikintiVisual studio yra gerai daryti windows buildams, bet nevisi žmones naudoja IDE ir Ms operacines sistemas. Kada bus bent elementarus meikfailas ??? Padaryčiau pats, ale nėra kur komitinti... (svn repositorija tarp source forge panašu kad vis dar neaktyvi)
O bainarius gi gali laisvai uploadinti į http://sourceforge.net/projects/minoslabyrinth/files/, nieks ten jų bent neištrins. O dabar išvis atrodo kad čia koks warezas :D Piratų-lamerių archyvų formatas Rar :D ir mediafire :D
Pardon,
AtsakytiPanaikintiužsiupdeitinau wine iš 1.0 į 1.2 ir žaidimas pagaliau pasileido ! Ir šopas veikia, yay! Ir labirintas nebelūžta. Na va dabar bus galima atidžiau pažaisti.
Ar yra koks būdas išskyrus susirasti-kompą-su-linux-ir-wine-ir-išbandyt-ant-jo, kaip galėčiau išsiaiškinti, kodėl pas tave lūžta, o pas mane ne?
AtsakytiPanaikintiNevaryk ant mediafire, ten bent jau laukti šimto metų (skaityk - sekundžių) nereikia, kad parsisiųstum kokią smulkmeną.:) O rar kuo nusikalto? Jis suspaudžia, jis mano kompe, to užtenka, kad jį naudočiau.
Sudėtinga man su sourceforge, kažką padariau:
https://sourceforge.net/projects/minoslabyrinth/
bet nesu tikras, ar taip reikia. Gal gali kelias žodžiais paaiškint, kas ten ir kodėl? Ilgąjį variantą (Site documentation) aš pradėjau skaityti, bet čia, manau, ilgam.
Kaip sukurti makefile? Pasiskaičiau, kas tas yra, bet negi "rankutėmis" viską surašyti? Kaip garantuoti, kad gerai surašysiu?
O, tai gerai, kad pasileido, bet pirmas iš daugelio aukščiau parašytų klausimų vis tiek lieka atviras.:)
AtsakytiPanaikintiSimple, parsisiunti Sun(turbūt jau dabar Oracle) Virtualbox, susikuri virtualia mašina, parsisiunti Ubuntu 32 bitų iso, užsimountini suinstaliuoji. Trunka gal 15-20 minučių.
AtsakytiPanaikintiViskas turi gatavą linuxų dėžę windozeje, tada sudo apt get install g++, allegro ir eini rašyt meikfailo.
Kokie būna tie meikfailai?
Aš žinau:
gnu-make - paprasta, daug darbo rankutėmis, didelis suderinamumas
Scons - meikfailas yra maža pythono programėlė, mažiau darbo, man asmeniškai labai patinka, kažkada rašiau apie tai savo bloge http://jrs0ul.com/en/reply/?msg=21
AutoTools - kažkas baisaus ir sudėtingo. Bet nemažai kas juos naudoja, tipo kai rašai ./configure paskui make ir make install, ten kažkaip pagal super duper skriptą padaro meikfailą...
Daugiau: http://en.wikipedia.org/wiki/List_of_build_automation_software
Tai va, turi meikfailą, tada rašai konsolėj arba superiniam teksto redaktoriuj "make" arba kitokia komandą ir matai outputą kas vyksta ir kas blogai
O raras tai yra kažkoks uždaras third party standartas, skirtas pakuoti per torrentus platinamiem filmam ir žaidimam :D Tūlas kompų vartotojas katik susimetęs windowsus ar liunixa jo neturės ir jam reiks sukt galvą kaip čia parsisiust kokį Winrar ar kitokį šūdą :)
Uj dar pamiršau apie source forge, na jau zipa ar rara uploadint tai ten pigiau grybo, prisilogini ir uploadini per web interfeisą kaip ir per ta tavo mediafire.
AtsakytiPanaikintiDėl repositorijos, siūlau į kompa įsirašyt tortoise-svn + kažkoki svn serveri(Aišku, aš asmeniškai būčiau labiau už Mercurial). Pažaisti. Na juk būna kodini, ir kažką pridirbi ir jau negali sugrižt su ctrl+z į ta vietą kai viskas buvo gerai, va tam ir naudojami visokie svn, git, hg, etc. Jei ir vienas dirbi, versijų kontrolės sistema turi būt tavo geriausias draugas :)
Na ir kai bus aišku galėsi konsolėj parašyt svn commit souceforge :D (nebepamenu kaip ten tiksliai) ir tavo visos dienos darbas nukeliaus į servą.
ai šen negalėjau užmigt tai pasirašiau makefile ant gnu-make(tikiuosi blogspotas neiškraipys):
AtsakytiPanaikinti#------------------------------
all:
g++ sources/*.cpp sources/agent_states/*.cpp sources/game_states/*.cpp main.cpp `allegro-config --cflags` `allegro-config --libs` -o minos
#-------------------------------
(sekanti eilutė po all turi prasidėt tabu(ne tarpais))
Viso labo tik dvi eilutės. Toks lazy, kasdieniniam darbui netinka, bet vienkartiniam sukompiliavimui pats tas. Aišku teko ištrint creature.cpp ir camera.cpp nes kaip supratau jie yra šiukšlės :) Ir vėl man reikėjo taisyt helpers.h ir dadėti cstdlib nes JAME yra rand funkcija o ne kažkur kitur :)
Dabar viskas veikia for real be jokiu supistu wine, tik norėtusi fullscreeno, nes mano netbooko max res 1024x600, tai langas vos itelpa :(
Taip, tu teisus, creature ir camera tiek .cpp, tiek .h failai nereikalingi. Kai vakar įdėjau į sourceforge, atrodo, jų atsikračiau.
AtsakytiPanaikintiAčiū už makefile, dar nieko nenutuokiu apie juos, tai, jei nesunku, patikrink sourceforge, ar gerą įdėjau.
Kas dėl fullscreen, tai config.ini pakeisk antrą 0 į 1.
Na blogai, check this out http://sourceforge.net/projects/cannibal/, į failus dažniausiai dedasi archyvai, t.y. zipai, o ne palaidi failai
AtsakytiPanaikintiKoda krauk į svn.
http://harfordhackerspace.org/2009/07/sourceforge-and-tortoisesvn-tutorial/
gal dar tiks
O su žaidimu yra bėdų, visu pirma itemsu ir parametru failai. Eilutės baigiasi /r/n simboliais, bet ant windowsu šis kombo yra tas pats kas ir/n, todėl nėra nė vieno itemo.
Pajamiau hexeditoriu ir nutryniau visus /r, itemsai atsirado, bet į labirinta vis dar nepavyksta įeit - lūžta. Aiškinuos.
Program received signal SIGSEGV, Segmentation fault.
AtsakytiPanaikinti0x0808002b in Game::generate_random_labyrinth (this=0x815fee0) at sources/game.cpp:1389
1389 map[i][j] = false;
Any ideas ?
anyways, uždėjau apsauga masyvui kad neviršytu to _mapXdiv ar kas ten ir nebelūžta
AtsakytiPanaikintiPatalpinau zip'us. Aš, kaip tūlas developeris, winzip'o neturėjau, tai kaip ir tas pats š išeina, kaip su winrar.:)
AtsakytiPanaikintiPanaikinau visuose failuose 0D simbolius, žaidimas atidaro, bet kai noriu pats atsidaryt ir pažiūrėti su notepad'u, tai viskas "sulipę" ir sunkiai įskaitoma. Tai kiekvieną kartą kai noriu kažką keisti teks hexeditorių jungt ir keist vėl į /r/n arba kapstytis po tą krūvą?
Dėl segfault idėjų turiu - išeina už masyvo ribų. Kol kas reikėtų įdėti
assert((i < _mapXDim) && (i > 0) && (j < _mapYDim) && (j > 0));
(na ir #include , aišku) ir pažiūrėti ar tikrai taip yra. Jieškosiu kaltų.:)
Perkelti
AtsakytiPanaikinticells[x][y]._x = x;
cells[x][y]._y = y;
(1312 ir 1313 eilutės)
virš
if (((x < 3) || (x > 4)) || ((y < 3) || (y > 4)))
Labai kvaila klaida:)
na aš ten gamedev.lt idėjau packa su visais mano "pakeitimais", o dėl eilučiu pabaigų, tai ne failus su hexeditorium reik keist(čia tik aš tai galiu daryt :D), o reikia taisyt parseri, kad karpytų eilutes kas /r ARBA /n ir kad suparsinto tekso eilučiu gale nekabėtų /r kaip koks snarglis.
AtsakytiPanaikintiNotepadas iš vis yra pornografija, normalus editorius teisingai rodys tiek failą kuris baigias vien /n tiek kur /r/n.
O beje kur dingsta mano pinigai :D ?
Išdaužiau kriterius ale pinigų sumažėjo.
Plius nei iš šio nei iš to man retsykiais užsideda statulos efektas, nors nė pro viena nebuvau prabėgęs :S
Ką reiškia mistinis itemsas "default" ?
Su touchpadu žaisti nepatogu o neina padaryt valdymo ir su pele... ir su klaviatūra ?
cituojant "O beje kur dingsta mano pinigai :D ?
AtsakytiPanaikintiIšdaužiau kriterius ale pinigų sumažėjo"
treniruotės kainuoja, jei nusipirkai prenumeratą pas rtfb į sporto salę, tai mokėk (nenusipirkti kol kas negalima).:D
Defaultinis itemas reiškia, kad dar neturėjau fizinių galimybių nupaišyt paveiksliukus. Yra ten pora "test" itemų, kurie irgi keisti, prašom nekreipt į juos dėmesio.
cituojant "Su touchpadu žaisti nepatogu o neina padaryt valdymo ir su pele... ir su klaviatūra ?"
Sukėlė šypseną vaizdas, kaip jrs0ul "kankina" touchpadą.:) Ir koks valdymas turėtų būti?
Na tarkim vaikštai su rodyklėm ar wasd o gazuojiesi su tarpu.
AtsakytiPanaikintiDar būtų cool kad kai minotauras atakuoja pasikeistu kadras tipo būtų su nuleista galva ir atstatytais ragais, būtų aiškiau kas vyksta.
Mistaipas ant kažkurio tai mygtuko "list of most recen event" (berods) turi būt recent
Ką reiškia slankyklės apačioj kairėj nuogalių screene ?
Rodo, kokiu santykiu minotauras treniruos pagr. savybes (jei pats žaidėjas neišnaudoja dienų savo nuožiūra):
AtsakytiPanaikintipirma agility
antra power
trečia senses
ketvirta stamina