Tyhmät kysymykset (I/2009)

Voit pyytää apua ohjelmointiongelmiin täältä.
Taatero
Advanced Member
Posts: 384
Joined: Tue May 27, 2008 6:06 pm

Re: Tyhmät kysymykset

Post by Taatero »

Olisiko mitään hajua, miksi drawtoimage ei toimi, kun lukittelee kuvapauskureita?
EDIT:ongelma ratkaistu, en lukinnut näyttöä...
EDIT2: tarvitaan sittenkin apua... Eli drawtoscreenit ja drawtoimaget ei toimi, kun on lukittanut jonkun kuvapuskurin (ja avannut sen myös). Hauska olisi myös tietää, miten nuo drawtoimaget/screenit toimavat, eli lukitsevatko nekin puskureita.
[color=#40BF00][u]koodaaja[/u][/color] wrote:Täyden turvan takaamiseksi avain olisi myös kuljetettava offlinenä suoraan tulevien viestien lähettäjältä niiden vastaanottajalle laitakaupungin hämärissä yöneljältä ja varmistettava, ettei kumpaakaan osapuolta seurata. Popliinitakkia suositellaan.
phons
Guru
Posts: 1056
Joined: Wed May 14, 2008 10:11 am

Re: Tyhmät kysymykset

Post by phons »

Ei niihin tarvitse lukita sitä... 1. Näyttöön pirretään automaattisesti. 2. DrawToScreen on vain sitä varten että piirtäminen palautetaan näyttöön, muutenhan kaikki piirtyisi imgaeen. Älä käytä tätä loopissa. Itellä on ollu vähän buginen kun piirsin koko ajan uusiks saman, loopissa.
Image
Taatero
Advanced Member
Posts: 384
Joined: Tue May 27, 2008 6:06 pm

Re: Tyhmät kysymykset

Post by Taatero »

phons wrote:Ei niihin tarvitse lukita sitä... 1. Näyttöön pirretään automaattisesti. 2. DrawToScreen on vain sitä varten että piirtäminen palautetaan näyttöön, muutenhan kaikki piirtyisi imgaeen. Älä käytä tätä loopissa. Itellä on ollu vähän buginen kun piirsin koko ajan uusiks saman, loopissa.
Siis käytän yhdessä kohdassa pickimagecolor2 -komentoa sen tuoman merkittävän nopeusedun takia. Mutta sen käytön jälkeen en pysty piirtämään enään kuviin drawtoimagella, vaikka kuvapuskuri olisi vapautettu.
[color=#40BF00][u]koodaaja[/u][/color] wrote:Täyden turvan takaamiseksi avain olisi myös kuljetettava offlinenä suoraan tulevien viestien lähettäjältä niiden vastaanottajalle laitakaupungin hämärissä yöneljältä ja varmistettava, ettei kumpaakaan osapuolta seurata. Popliinitakkia suositellaan.
shimo

Re: Tyhmät kysymykset

Post by shimo »

Miten voin spawnata vihollisia randomina kartan datakerroksille?
(vihujen spawnaamiseen tarkoitettuja tilejä on esim. 10 ja vihollinen laitetaan randomina johonkin niistä)
MAVmaggot
Advanced Member
Posts: 468
Joined: Fri Aug 31, 2007 10:18 pm
Location: bitspace

Re: Tyhmät kysymykset

Post by MAVmaggot »

Läpikäy kaikki tilet, etsi datakerroksien haluttu tile ja luo. Koodina se näyttää jotenkin tällaiselta;

Code: Select all

For y=1 To MapWidth()
For x=1 To MapWidth()
    If GetMap2(3,x,y)=haluttudata Then
        vihu.VIHUT = New(VIHUT)
        ObjectToMap(vihu\obj,x,y)
    EndIf
Next x
Next y
Glaxo
Newcomer
Posts: 5
Joined: Mon Mar 30, 2009 10:57 pm

Re: Tyhmät kysymykset

Post by Glaxo »

Code: Select all

FrameLimit 40 'rajoita nopeutta

kartta = LoadMap("Media\cdm2.til","Media\tileset.bmp")
PlayObject kartta,0,0,1

ukko = LoadObject ("Media\guy.bmp",72)

Repeat

    'Ukon ohjaus
    If LeftKey() Then TurnObject ukko,5
    If RightKey() Then TurnObject ukko,-5
    If UpKey() Then MoveObject ukko,2
    If DownKey() Then MoveObject ukko,-2

    CloneCameraPosition ukko

    DrawScreen

Forever
Terve,olen uusi tulokas coolbasicin saralla ja tarvitsisin hieman neuvoa kyseisen koodin kanssa. Elikkä tuo kartan lataus koodirivi, niin mikä on siinä olevan viimeisen tiedoston käyttötarkoitus? Olen nimittäin kokeillut koodia siten, että olen lisännyt riville oman mappini, mutta jostain syystä ohjelma ei ole suostunut avaamaan sitä ja siksi ajattelinkin kysyä, että liittyykö se tuohon viimeiseen tiedostoon, koska en tiedä mikä on sen tarkoitus.
Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Tyhmät kysymykset

Post by Awaclus »

Glaxo wrote:

Code: Select all

FrameLimit 40 'rajoita nopeutta

kartta = LoadMap("Media\cdm2.til","Media\tileset.bmp")
PlayObject kartta,0,0,1

ukko = LoadObject ("Media\guy.bmp",72)

Repeat

    'Ukon ohjaus
    If LeftKey() Then TurnObject ukko,5
    If RightKey() Then TurnObject ukko,-5
    If UpKey() Then MoveObject ukko,2
    If DownKey() Then MoveObject ukko,-2

    CloneCameraPosition ukko

    DrawScreen

Forever
Terve,olen uusi tulokas coolbasicin saralla ja tarvitsisin hieman neuvoa kyseisen koodin kanssa. Elikkä tuo kartan lataus koodirivi, niin mikä on siinä olevan viimeisen tiedoston käyttötarkoitus? Olen nimittäin kokeillut koodia siten, että olen lisännyt riville oman mappini, mutta jostain syystä ohjelma ei ole suostunut avaamaan sitä ja siksi ajattelinkin kysyä, että liittyykö se tuohon viimeiseen tiedostoon, koska en tiedä mikä on sen tarkoitus.
Se kartahko, joka on cdm2.til -tiedostossa, kertoo vain, miten kuvat piirretään ja missä on törmäystunnistus. Tileset.bmp taas sisältää nuo kuvat, joita cdm2.til asettelee johonkin hienohkoon järjestykseen. Sanoinko asiani tarpeeksi selvähkösti?
Glaxo
Newcomer
Posts: 5
Joined: Mon Mar 30, 2009 10:57 pm

Re: Tyhmät kysymykset

Post by Glaxo »

Chaosworm wrote:
Glaxo wrote: Se kartahko, joka on cdm2.til -tiedostossa, kertoo vain, miten kuvat piirretään ja missä on törmäystunnistus. Tileset.bmp taas sisältää nuo kuvat, joita cdm2.til asettelee johonkin hienohkoon järjestykseen. Sanoinko asiani tarpeeksi selvähkösti?
No, jos mitenkään viitsisit niin olisi mukava saada vielä hieman selvennystä asiaan. :) Eli jos teen kartan tilesterillä niin laitanko sen tuohon viimeiseen kohtaan?
Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Tyhmät kysymykset

Post by Awaclus »

Glaxo wrote:
Chaosworm wrote:
Glaxo wrote: Se kartahko, joka on cdm2.til -tiedostossa, kertoo vain, miten kuvat piirretään ja missä on törmäystunnistus. Tileset.bmp taas sisältää nuo kuvat, joita cdm2.til asettelee johonkin hienohkoon järjestykseen. Sanoinko asiani tarpeeksi selvähkösti?
No, jos mitenkään viitsisit niin olisi mukava saada vielä hieman selvennystä asiaan. :) Eli jos teen kartan tilesterillä niin laitanko sen tuohon viimeiseen kohtaan?
Laitat sen tilesterillä tehdyhkön kartan ensimmäiseen kohtaan, toiseen kohtaan sen kuvatiedoston, jota olet käyttänyt siinä tilesetihkönä. Luultavasti olet käyttänyt tuota Tileset.bmp -tiedostoa siinä tilesettinä, mutta jos olet käyttänyt jotain muutahkoa, niin silloin muutat siihen sen.

On muuten vähän hankalahkoa puhua selkeähkösti, jos yrittää kovahkosti onnistua signatureni kamppanjahkossa.
skorpioni-cb
Advanced Member
Posts: 364
Joined: Wed Dec 03, 2008 3:48 pm
Location: Turku

Re: Tyhmät kysymykset

Post by skorpioni-cb »

Tämä ei varmaan ole tyhmä kysymys, mutta en jaksanut tehdä omaa viestiketjua. Ongelma on että esim. tilegen ohjelmassa on oma ikkuna tallennukselle sekä lataukselle, niin miten sen saa tehtyä.
EDIT:

Pate5
Me molemmat tiedämme ettei SDK lisäohjelmaa saa enään mistään, eli tarkoitin jotain muuta tapaa.

EDIT:

Jani
Kun laitoin kaikki paikalleen, niin en saanut mitään lisäohjeita. Anteeksi Jani, mutta miten saa cbFun ohjeet?

EDIT:

Nyt kun saan lisää ikkunoita niin kertokaa miten niihin saa näkymään polussa olevat kansiot ja tallenteet, sekä ohjelmat (Kun olen laittanut valmiita ohjelmia oma kansioon.)?

Last edited by skorpioni-cb on Tue Mar 31, 2009 4:39 pm, edited 4 times in total.
En tiedä, mitä tiedän, mutta tiedän ettei se ole mitään kaunista.

I know not what I know, but I do know that it's not beautiful.
Pate5
Artist
Artist
Posts: 551
Joined: Tue Aug 28, 2007 4:53 pm
Location: Vantaa

Re: Tyhmät kysymykset

Post by Pate5 »

skorpioni-cb wrote:Tämä ei varmaan ole tyhmä kysymys, mutta en jaksanut tehdä omaa viestiketjua. Ongelma on että esim. tilegen ohjelmassa on oma ikkuna tallennukselle sekä lataukselle, niin miten sen saa tehtyä.
Tämä on saatu aikaan cbAPI -nimisellä Marcoderin tekemällä dll:llä. Taitaa tulla SDK:n mukana.
CoolBasic henkilökuntaa
Graafikko
Jani
Devoted Member
Posts: 741
Joined: Fri Oct 31, 2008 4:53 pm

Re: Tyhmät kysymykset

Post by Jani »

skorpioni-cb wrote:Tämä ei varmaan ole tyhmä kysymys, mutta en jaksanut tehdä omaa viestiketjua. Ongelma on että esim. tilegen ohjelmassa on oma ikkuna tallennukselle sekä lataukselle, niin miten sen saa tehtyä.
EDIT:

Pate5
Me molemmat tiedämme ettei SDK lisäohjelmaa saa enään mistään, eli tarkoitin jotain muuta tapaa.

Ei pidä paikkaansa.
Tässä on Aavesoturin paketti.
Dead men tell no tales. Also, Python rocks!
Codegolf: 99 bottles of beer (oneliner) - Water map partition
Glaxo
Newcomer
Posts: 5
Joined: Mon Mar 30, 2009 10:57 pm

Re: Tyhmät kysymykset

Post by Glaxo »

Code: Select all

FrameLimit 40 'rajoita nopeutta

kartta = LoadMap("Media\cdm2.til","Media\tileset.bmp")
PlayObject kartta,0,0,1

ukko = LoadObject ("Media\solttu.bmp",72)

Repeat

    'Ukon ohjaus
    If LeftKey() Then TurnObject ukko,5
    If RightKey() Then TurnObject ukko,-5
    If UpKey() Then MoveObject ukko,2
    If DownKey() Then MoveObject ukko,-2

    CloneCameraPosition ukko

    DrawScreen

Forever
Kysyisin tällä kertaa, että mikä tuossa on ongelmana? Koska en onnistunut saamaan omia mappeja toimimaan, päätin sitten tehdä edes oman ukon ja käyttää valmista mappia ja tilesettiä, mutta sekään ei toiminut. Ohjelma sanoo aina vain että ei pysty avaamaan kyseistä "solttua", joten johtuuko se väärästä tiedostomuodosta vai mistä? koska olen kyllä tallentanut sen bmp:nä ja laittanut sen tuonne media kansioon polun mukaisesti.
Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Tyhmät kysymykset

Post by Awaclus »

Glaxo wrote: Kysyisin tällä kertaa, että mikä tuossa on ongelmana? Koska en onnistunut saamaan omia mappeja toimimaan, päätin sitten tehdä edes oman ukon ja käyttää valmista mappia ja tilesettiä, mutta sekään ei toiminut. Ohjelma sanoo aina vain että ei pysty avaamaan kyseistä "solttua", joten johtuuko se väärästä tiedostomuodosta vai mistä? koska olen kyllä tallentanut sen bmp:nä ja laittanut sen tuonne media kansioon polun mukaisesti.
Hmm, mikähkös tuo virheilmoitus tarkahkolleen on?

Kannattaa katsoa, salliiko virushkoturvahkosi CoolBasicin ja jos sinulla on Vista, avaa CoolBasic järjestelmänvalvojana. Nämä saattavat auttaa jos tiedostojen lataaminen on se ongelmahko.
phons
Guru
Posts: 1056
Joined: Wed May 14, 2008 10:11 am

Re: Tyhmät kysymykset

Post by phons »

Ah, klassinen... :P ...ehkä... No, oletko tallentanut pelisi johonkin? Jos olet se ei tietenkään toimi koska se ei löydä tuota media kansiota, eri asia jos se on CB:n kanisossa missä kääntäjäkin on.

Edit: JES!! Se löytyi!:
D44. Tallensit sen jonnekin, missä ei ollut alakansiota "Media", jonka sisällä olisi bittikartta "guy.bmp". Ennen tallentamista se toimii, koska oletuksena etsitään alakansiota "Media" ja sieltä bittikarttaa "guy.bmp" CB:n kansiosta, ja sieltähän moiset löytyvät.

Jälleen seuraa koodaajan monen monta kertaa toistettu ohjeistus. Pitänee tallentaa, että voi tulevaisuudessa vain copypasteta, kovin monta kertaa tämän olen jo joutunut selittämään.

Ensin teet kansion projektillesi. Parasta on toki nimetä se projektin mukaan. Tähän kansioon tallennat koodin ja myöhemmin .exen. Sitten teet siihen alakansion "Media" tai "Kuvat", "Images" tai ihan mitä huvittaa. Sinne sitten kaikki media/kuvat. (Jotkut tykkäävät tehdä omat alakansiot kuville, äänille ja tekstitiedostoille erikseen.)

Nyt sinun ei tarvitse kirjoittaa koodiisi muuta kuin "guy = LoadImage("Media\guy.bmp")", ja homma pelaa. Toki sinun pitää muuttaa alakansion nimi vastaamaan sitä minkä teit sekä lisätä sinne jotain ladattavaa.

Sitten, kun projekti alkaa olla julkaisukunnossa, siirrät lähdekoodin (.cb -tiedosto) muualle talteen, kirjoitat readmen jossa selität kaikkea jännää (ohjeet ja tekijät) ja laitat sen .exen keralla pelin kansioon. Sitten koko roska .rariksi ja upit nettiin. Paras tarkistaa, mieluummin toisella koneella, että lataus ja peli toimivat.

Ja sitten foorumeille jakamaan linkkiä ja ylistämään omaa projektia.
Kiitos kuuluu koodaajaalle
Last edited by phons on Tue Mar 31, 2009 7:18 pm, edited 1 time in total.
Image
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Tyhmät kysymykset

Post by koodaaja »

Siis cb:n mediakansioon vai ohjelman mediakansioon? ;D Koodi näyttää oikein toimivalta, joten veikkaan ongelman löytyvän jostain tiedostokikkailusta.

Tiedostomuoto voi periaatteessa olla väärin, mutta jos tallensit .bmp:nä ja lataat .bmp:nä, ei ongelmia pitäisi syntyä.
Glaxo
Newcomer
Posts: 5
Joined: Mon Mar 30, 2009 10:57 pm

Re: Tyhmät kysymykset

Post by Glaxo »

koodaaja wrote:Siis cb:n mediakansioon vai ohjelman mediakansioon? ;D Koodi näyttää oikein toimivalta, joten veikkaan ongelman löytyvän jostain tiedostokikkailusta.

Tiedostomuoto voi periaatteessa olla väärin, mutta jos tallensit .bmp:nä ja lataat .bmp:nä, ei ongelmia pitäisi syntyä.
Cb:n media kansioon laitoin tuon tekeleeni ja silloin ei toiminut sekään ja sama juttu mappien kanssa, tosin mappien kanssa olen tehnyt jotai väärin uskoakseni, koska niiden tekeminen on vielä todella alkutekijöissään. Ja aiempiin viesteihin viitaten, olen suorittanut ohjelman järjestelmän valvojana ja virustorjunta ei torju mitään ohjelmaan liittyvää. Kokeilen nyt antamianne ohjeita, jos kykenen, mutta kiitoksia näistä.
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Tyhmät kysymykset

Post by koodaaja »

Siis laitoit piirroksen media-kansioon, vai koodin/exen? Jos sinulla on piirros siellä ja koodi/exe muualla, se ei löydy koska sinulla ei ole media-alakansiota siellä. Jos taas laitoit koodin/exen media-kansioon, kaikista poluista on otettava "Media/" pois. Toivon mukaan olin tarpeeksi epäselvä, kysy toki lisää jos on tarvis.
Glaxo
Newcomer
Posts: 5
Joined: Mon Mar 30, 2009 10:57 pm

Re: Tyhmät kysymykset

Post by Glaxo »

Sain homma pelaamaan Phonsin ohjeen avulla, joten kiitoksia siitä. Elikkä oman ukon sain toimimaan, mutta vielä olisi mukava saada lisätietoa mappien teosta, esim jos joku viitsisi linkittää joitain tutoriaaleja esimerkiksi tai aiheeseen liittyviä keskusteluja, niin olisin tyytyväinen.
shimo

Re: Tyhmät kysymykset

Post by shimo »

MAVmaggot wrote:Läpikäy kaikki tilet, etsi datakerroksien haluttu tile ja luo. Koodina se näyttää jotenkin tällaiselta;

Code: Select all

For y=1 To MapWidth()
For x=1 To MapWidth()
    If GetMap2(3,x,y)=haluttudata Then
        vihu.VIHUT = New(VIHUT)
        ObjectToMap(vihu\obj,x,y) //PositionObject...
    EndIf
Next x
Next y
vihut spawnaa keskelle karttaa, onko pakko kayttää ObjectToMap;ia?
Locked