Page 6 of 18

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Thu May 31, 2012 9:30 pm
by skorpioni-cb
Latexi95 wrote:
skorpioni-cb wrote: Ei toiminut, mulla tuli vain Fatal errorii
Siis "Can't create default window."? No olisit heti sanonut. :lol:
Se johtuu siitä, että cbE ei saa luotua ensimmäistäkään ikkunaa ja se valitettavasti johtunee siitä, että koneesi näytönohjain ei tue kaikkia niitä ominaisuuksia mitä cbE vaatii toimiakseen. :(
Kertoisitko mitä se vaatii toimiakseen, pitäisiköhän mun päivittää mun näyttiksen ajurit vai mitä

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Thu May 31, 2012 9:34 pm
by esa94
skorpioni-cb wrote:
Latexi95 wrote:
skorpioni-cb wrote: Ei toiminut, mulla tuli vain Fatal errorii
Siis "Can't create default window."? No olisit heti sanonut. :lol:
Se johtuu siitä, että cbE ei saa luotua ensimmäistäkään ikkunaa ja se valitettavasti johtunee siitä, että koneesi näytönohjain ei tue kaikkia niitä ominaisuuksia mitä cbE vaatii toimiakseen. :(
Kertoisitko mitä se vaatii toimiakseen, pitäisiköhän mun päivittää mun näyttiksen ajurit vai mitä
Päivitä näyttis

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Thu May 31, 2012 9:34 pm
by Tuxi
Kokoruututila tiputtaa näytön virkistystaajuuden 60 hertsiin, mikä sotkee näytön asetukset ainakin tällä vanhalla näytöllä, jota käytän. Onko tuo vain minulla ilmenevä asia? Jos ei, SCREEN-funktion voisi ottaa parametrinä myös virkistystaajuuden.

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Sun Jun 03, 2012 2:43 pm
by valscion
Versio 0.1.0 julkaistu!
Siirryimme käyttämään versionumerointia, sillä se helpottaa kummasti edistymisen seurantaa.

Lataa alta itsellesi sopivin paketti: cbEnchantedin Windows-versio vaatii, että Microsoft Visual C++ 2010 Redistributable Package (x86) on asennettuna koneella.
Windows-paketti sisältää kaksi eri 32-bittistä julkaisuversiota cbEnchantedista:
  1. testable kansiossa on exet, joiden avulla voit testata jo käännettyjä CB-exe tiedostoja. Käytä komentoriviä ja kutsu kyseistä exeä niin että ensimmäisenä parametrina on testattavan ohjelman exen tiedostopolku TAI tiputa testattava exe cbEnchantedin exe-tiedostoon. Tiedostopolussa ei saa olla välilyöntejä.
  2. compiler kansiossa on muokatut versiot CBCompiler.exe-tiedostosta, joissa on korvattu wanhan CB:n runtimet cbEnchantedilla. Kun vaihdat tämän CoolBasicin asennuskansiosta löytyvän IDE\CBCompiler.exe tiedoston paikalle, saat heti käännettyä cbEnchanted-ohjelmia.
Lukekaa cbEnchantedin GitHub-wikiä, josta löytyy yleistä tietoa projektista. Katsokaa etenkin sivu Erikoisuuksia ja eroavaisuuksia.

Muutokset edelliseen versioon: Tämän julkaisun tunnetut bugit

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Sun Jun 03, 2012 2:53 pm
by Harakka
Saisikohan tähän ympättyä vielä funktiorajan poiston?

Edit: Projektit, jotka käyttävät cbnetwork.dll:ää heittävät herjaa ainakin testable-exeen pudotettuna. "Incorrect library version (cbNetwork.dll)"

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Sun Jun 03, 2012 3:13 pm
by Konstaduck
Miten saisi sen komentorivin pois sieltä taustalta, kun ajan Exet? Siis kun CB:llä ihan normaalisti teen EXEN, avaan sen, niin siellä taustalla on se komentorivi. Kokoruudullahan tämä ei haittaa, mutta kun pelit on siinä 800 X 600 ikkunassa...

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Sun Jun 03, 2012 4:34 pm
by Sami The Great
Harakka wrote:Saisikohan tähän ympättyä vielä funktiorajan poiston?

Edit: Projektit, jotka käyttävät cbnetwork.dll:ää heittävät herjaa ainakin testable-exeen pudotettuna. "Incorrect library version (cbNetwork.dll)"
Tietääkseni funktiorajavika on kääntäjässä eikä runtimessa. Funktiot muistaakseni laitettiin taulukkoon käännösvaiheessa, ja taulukko oli määritelty liian pieneksi.

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Sun Jun 03, 2012 4:56 pm
by MaGetzUb
Harakka wrote:Saisikohan tähän ympättyä vielä funktiorajan poiston?

Edit: Projektit, jotka käyttävät cbnetwork.dll:ää heittävät herjaa ainakin testable-exeen pudotettuna. "Incorrect library version (cbNetwork.dll)"
DLL ominaisuuksia ei ole vielä tehtynä.

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Sun Jun 03, 2012 5:25 pm
by valscion
Harakka wrote:Saisikohan tähän ympättyä vielä funktiorajan poiston?
Saa. Pistetään seuraavaan pakettiin tuolla CBCompilerilla, mutta cbEnchantedin runtimella ne kääntäjät. En ollut itse varma että kumpi kääntäjä tuolla oli, se normaali vaiko tuo modattu.
Konstaduck wrote:Miten saisi sen komentorivin pois sieltä taustalta, kun ajan Exet? Siis kun CB:llä ihan normaalisti teen EXEN, avaan sen, niin siellä taustalla on se komentorivi. Kokoruudullahan tämä ei haittaa, mutta kun pelit on siinä 800 X 600 ikkunassa...
Et saa sitä tällä hetkellä mitenkään pois päältä. Ei se mielestäni haittaa vielä, varsinkaan kun sieltä konsolista sammuttaminen on tällä hetkellä se ainoa varsinainen hätä-exit jos ohjelma jää jumiin. Muutoin joutuu käyttämään tehtävienhallintaa ja tuhota prosessi sieltä.

Tämä toivomus on jo oikeastaan trackerissa: https://github.com/VesQ/cbEnchanted/issues/12

EDIT: Huomatkaa, että päivitin julkaisuviestiin tiedot uusista erikoisfunktioista, jotka tähän julkaisuun sisältyivät.

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Mon Jun 04, 2012 8:55 pm
by KillBurn
Kokeilen tehdä tällä yhtä projektia, mutta kohtasin ainakin nämä ongelmat. Safeexit off-komento ei toimi, eli peliloppuu aina jos painetaan esciä. Lisäksi Objectorder kaataa ohjelman mikäli sitä kutsutaan tyyppiobjektin kanssa. Lisäksi fps tuntuu hyppivän/tippuvan, vaikkei ruudulla tapahtuisi erikoisemmin mitään. Mutta jatkan projektia ja yritän saada jotain näytettävää ;)
EDIT:

Jahas. Uusi versio on tullut. Kokeilen vielä sillä.

EDIT:

Samat ongelmat on vielä tallella. Noh uudella versiolla peli kaatuu heti alussa...


Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Mon Jun 04, 2012 10:22 pm
by valscion
Ikävä kuulla että ei toimi :( emme kyllä voi tehdä asialle mitään ellet anna meille koodia, jolla ongelmat huomattaisiin. Edes exe auttaisi alkuun.

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Mon Jun 04, 2012 11:22 pm
by KillBurn
Tuo safeexit-bugi olikin oma vika. Mutta jos haluatte voin antaa vaikka koko paketin testikäyttöön, jotta nuo mahdolliset bugit löytyisi.

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Tue Jun 05, 2012 8:42 am
by valscion
KillBurn wrote:Mutta jos haluatte voin antaa vaikka koko paketin testikäyttöön, jotta nuo mahdolliset bugit löytyisi.
Kuulostaisi ihan toimivalta ajatukselta. Olen itse ainakin hyvin skeptinen sen suhteen että objectorder bugaisi tyyppiobjektien kanssa, varmaan siellä on jotain muuta taustalla. FrameLimitiin ei kannata FPS:n tarkkaan arvoon luottaa sillä se antaa järjestelmälle käskyn odottaa ohjelman suorittamista hetken ja siksi sen tarkkuudessa voi olla paljonkin heittelyä.

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Tue Jun 05, 2012 3:09 pm
by KillBurn
Laitoin YV:tä VesQ:lle. Siinä on pakettina projektini.

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Wed Jun 06, 2012 5:09 pm
by Tuxi
Löydin yhden vielä mainitsemattoman eroavaisuuden/bugin Enchantedin ja originaalin välillä:

Code: Select all

Print MouseX()+" "+MouseY()
PositionMouse 150, 150
Print MouseX()+" "+MouseY()
Drawscreen
Print MouseX()+" "+MouseY()
WaitKey
cbEnchancted päivittää hiiren sijainnin drawscreenin kohdalla, vaikka hiiri asetettaisiin uudelleen positionmouse-komennolla. Tästä johtuen 3. rivillä oleva print palauttaa vanhat hiiren koordinaatit (samat kuin ensimmäinen print), vaikka edellisellä rivillä koordinaatit asetetaan uudelleen.

Jos koodia haluaa kokeilla originaali-CoolBasicilla pitää print-komento muuttaa joksikin muuksi, koska drawscreen sekoittaa tulostuksen. cbE:ssä print tulostaa tekstin konsoliin, mikä on mielestäni erinomainen uudistus.
EDIT:

Uudemmalla versiolla kokoruututila ei toimi ollenkaan.

EDIT:

Tein tuota ominaisuutta/bugia hyödyntäen ärsyttävän ohjelman, joka "tuplaa" hiiren:

Code: Select all

SCREEN 1024,768
FrameLimit 85
PositionMouse ScreenWidth()/2,ScreenHeight()/3
DrawScreen
mX = ScreenWidth()/3
mY = ScreenWidth()/2
Repeat
    PositionMouse mX, mY
    mX = MouseX() + dX
    mY = MouseY() + dY
    DrawScreen
Forever
[/edit]

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Wed Jun 06, 2012 5:26 pm
by Latexi95
Tuxi wrote:Löydin yhden vielä mainitsemattoman eroavaisuuden/bugin Enchantedin ja originaalin välillä:

Code: Select all

Print MouseX()+" "+MouseY()
PositionMouse 150, 150
Print MouseX()+" "+MouseY()
Drawscreen
Print MouseX()+" "+MouseY()
WaitKey
cbEnchancted päivittää hiiren sijainnin drawscreenin kohdalla, vaikka hiiri asetettaisiin uudelleen positionmouse-komennolla. Tästä johtuen 3. rivillä oleva print palauttaa vanhat hiiren koordinaatit (samat kuin ensimmäinen print), vaikka edellisellä rivillä koordinaatit asetetaan uudelleen.

Jos koodia haluaa kokeilla originaali-CoolBasicilla pitää print-komento muuttaa joksikin muuksi, koska drawscreen sekoittaa tulostuksen. cbE:ssä print tulostaa tekstin konsoliin, mikä on mielestäni erinomainen uudistus.
Itseasiassa tämä ominaisuus/bugi korjautui tässä muiden syötteiden lukemisen uudistusten myötä eli seuraavassa julkaisussa tätä ei ole. :)

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Wed Jun 06, 2012 9:02 pm
by KillBurn
Setupcollisionissa huomasin olevan saman tyylisen bugin kuin objectorderissa, ettei se toimi tyyppiobjektien kanssa. Vai onko tuo setupcollision vielä niin pahasti kesken, ainakaan se ei tue pikselintarkkaa törmäystä. Odottelen innolla uutta versiota.

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Wed Jun 06, 2012 9:29 pm
by Latexi95
KillBurn wrote:Setupcollisionissa huomasin olevan saman tyylisen bugin kuin objectorderissa, ettei se toimi tyyppiobjektien kanssa. Vai onko tuo setupcollision vielä niin pahasti kesken, ainakaan se ei tue pikselintarkkaa törmäystä. Odottelen innolla uutta versiota.
Mitä nyt siis tarkoitat "tyyppiobjekteilla"? CloneObjectilla luotuja objekteja? En ole kyllä huomannut itse ongelmia tuon SetupCollisionin kanssa.
Pikselintarkka törmäyshän ei toimi CB:ssäkään niin sen tekemisessä ei ole kiirehditty. Kyllä se tullaan jossain vaiheessa toteuttamaan, kun ensiksi kaikki CB:ssä toimivat ominaisuudet saadaan tehtyä.

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Wed Jun 06, 2012 10:54 pm
by KillBurn

Code: Select all

Function particle(hp,id,amount,speed#,grav#,obj,part)
For i=1 To amount
    newParticle.ParticleS= New(ParticleS)
    newParticle\obj=CloneObject(Par(id))
    CloneObjectPosition newParticle\obj,obj
    newparticle\hp=hp
    newparticle\id=id
    newparticle\speed=speed#
    newparticle\grav=grav#
    RotateObject newparticle\obj,Rand(0,360)
    ObjectOrder newparticle\obj,-1'Kaataa pelin
Next i
EndFunction 
koodissa kohta objectorder kaataa pelin, mutta vain jos parametri on -1. Hieman samaan tapaa peli kaatuu, jos yrittää määritellä törmäystä tyyliin pelihahmo,vihollinen\obj,2,2,2.

Re: cbEnchanted - uudelleenkirjoitettu runtime

Posted: Wed Jun 06, 2012 11:16 pm
by Konstaduck
Milloin olisi seuraava versiota tulossa?
Haluan niin päästä piilottamaan sen komentorivin sieltä takaa... :lol: