Tyhmät kysymykset (I/2010)

Voit pyytää apua ohjelmointiongelmiin täältä.
Locked
Herra Siili
Advanced Member
Posts: 308
Joined: Tue Nov 25, 2008 8:06 pm
Contact:

Re: Tyhmät kysymykset (I/2010)

Post by Herra Siili »

jaahas wrote:
Herra Siili wrote:Viestiä kirjoittaessa, vähän sen viestilaatikon alla on kohta, missä voi valita liitetiedoston. Paina siitä ja valitse polku, minne tallensit sen exen.
tarkotaks tallennus muotoa?
Tallennusmuoto on .exe.

Off: Joku muu saa jatkaa tästä. Minua väsyttää niin paljon, ettei ajatus kulje. Öitä!
a.k.a. Gehock
jaahas
Advanced Member
Posts: 307
Joined: Fri Feb 05, 2010 11:36 pm
Location: Tornio

Re: Tyhmät kysymykset (I/2010)

Post by jaahas »

mul on se tallennettu mut miten saan sen tänne laattavaks?
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Tyhmät kysymykset (I/2010)

Post by koodaaja »

jaahas wrote:mul on se tallennettu mut miten saan sen tänne laattavaks?
Teksti-ikkunan alla on "Upload attachment", siihen "Choose..."sta valitset tiedostonimen ja paina "Add the file".
jaahas
Advanced Member
Posts: 307
Joined: Fri Feb 05, 2010 11:36 pm
Location: Tornio

Re: Tyhmät kysymykset (I/2010)

Post by jaahas »

kiitos avusta nyt onnistu
JATothrim
Tech Developer
Tech Developer
Posts: 606
Joined: Tue Aug 28, 2007 6:46 pm
Location: Kuopio

Re: Tyhmät kysymykset (I/2010)

Post by JATothrim »

Herra Siili wrote:
jaahas wrote:
Herra Siili wrote:Viestiä kirjoittaessa, vähän sen viestilaatikon alla on kohta, missä voi valita liitetiedoston. Paina siitä ja valitse polku, minne tallensit sen exen.
tarkotaks tallennus muotoa?
Tallennusmuoto on .exe.

Off: Joku muu saa jatkaa tästä. Minua väsyttää niin paljon, ettei ajatus kulje. Öitä!
Jatkan. (vaikka tulisi myöhässä, menee niin eeppiseksi omalta osaltani :mrgreen: )
idiootti varma liitäohje.
idiootti varma liitäohje.
liiteohje.jpg (68.77 KiB) Viewed 9214 times
Öitä omalta osaltani myös. nuq.
-On selkeästi impulsiivinen koodaaja joka...
ohjelmoi C++:lla rekursiivisesti instantioidun templaten, jonka jokainen instantiaatio instantioi sekundäärisen singleton-template-luokan, jonka jokainen instanssi käynistää säikeen tulostakseen 'jea'.
jaahas
Advanced Member
Posts: 307
Joined: Fri Feb 05, 2010 11:36 pm
Location: Tornio

Re: Tyhmät kysymykset (I/2010)

Post by jaahas »

miten saan itte piirtämän kuvan peliini?
User avatar
Jonez
Devoted Member
Posts: 575
Joined: Mon Aug 27, 2007 8:37 pm

Re: Tyhmät kysymykset (I/2010)

Post by Jonez »

Aivan samalla tavalla kuin Coolbasicin mukana tulevan kuvan: jos haluat ladata kuvan, käytät funktiota LoadImage(), ja jos haluat ladata objektin, käytät LoadObjectia. Jos et osaa käyttää näitä komentoja, suosittelen käymään oppitunnit läpi. Eli se ponnahdusikkuna joka tulee kun avaa cb:n, tai kun painat f8.

Seuraava koodi yrittää ladata kuvan "omakuva.png" samasta kansiosta missä lähdekoodi sijaitsee. Jos koodia ei ole tallennettu, kuva yritetään ladata samasta kansiosta missä Coolbasic.exe on.

Code: Select all

kuva = LoadImage( "omakuva.png" )

Repeat
    DrawImage kuva, 0, 0
    DrawScreen
Forever
Omille peleille kannattaa tehdä aina oma kansio johon pelin lähdekoodi (ja myöhemmin exe) tallennetaan, ja tähän kansioon alakansio jonne tallennat kuvasi.

Omat kuvat kannattaa tallentaa .png-muotoon, koska niissä on hyvä laatu, mutta ne mahtuvat pieneen kokoon.
-Vuoden 2008 aloittelijan ystävä -palkinnon voittaja-
Image <- protestipelikilpailun voittaja.
Space War
koodari13212

Re: Tyhmät kysymykset (I/2010)

Post by koodari13212 »

miten saisin tehtyy hyvän pisteytyksen,kun nyt se menee näin

Code: Select all


Scores=1000
while....
koodia...
wend
Scores2=Scores-yhteisaika
text 0,0,scores2*5
nyt on se probleema,et jos jollain menee liian kauan saattaa tulla -luku
Testi testaa koneen nopeutta ja antaa pisteet
Nytte antaa pisteet:Score-Kattoo paljon on yhteisaika(10 testin keskiarvo aika)

Nyt testien keskiarvo aika on jotai 1050ms,mut oon laittanu et toi keskiarvo jaetaa vielä/10 nii tulee 105(Ei vaihtele tulos nii paljoo,kun ei näytä nii tarkkaa aikaa)
eli nyt toi scores2=1000-105 eli 795
Jos jollai on hidas kone ja keskiarvo aika on yli 1000 nii tulee negatiivinen tulos..ja tarkotuksen ois saada et esim.prossu yli kellotettuna tulis 1000 pistettä enemmän(3dmarkissa tulee jotai 1000 pistettä enemmä).Eli miten teen paremman pisteytyksen?
Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Tyhmät kysymykset (I/2010)

Post by Awaclus »

koodari13212 wrote:miten saisin tehtyy hyvän pisteytyksen,kun nyt se menee näin

Code: Select all


Scores=1000
while....
koodia...
wend
Scores2=Scores-yhteisaika
text 0,0,scores2*5
nyt on se probleema,et jos jollain menee liian kauan saattaa tulla -luku
Testi testaa koneen nopeutta ja antaa pisteet
Nytte antaa pisteet:Score-Kattoo paljon on yhteisaika(10 testin keskiarvo aika)

Nyt testien keskiarvo aika on jotai 1050ms,mut oon laittanu et toi keskiarvo jaetaa vielä/10 nii tulee 105(Ei vaihtele tulos nii paljoo,kun ei näytä nii tarkkaa aikaa)
eli nyt toi scores2=1000-105 eli 795
Jos jollai on hidas kone ja keskiarvo aika on yli 1000 nii tulee negatiivinen tulos..ja tarkotuksen ois saada et esim.prossu yli kellotettuna tulis 1000 pistettä enemmän(3dmarkissa tulee jotai 1000 pistettä enemmä).Eli miten teen paremman pisteytyksen?

Code: Select all

Scores = 1000
FrameLimit 50
While Scores
    Scores -1
Wend
Print Scores
Jotain tämmöistä?
otto90x
Advanced Member
Posts: 349
Joined: Mon Aug 27, 2007 9:00 pm
Location: Lapinjärvi, Finland
Contact:

Re: Tyhmät kysymykset (I/2010)

Post by otto90x »

koodari13212 wrote:Eli miten teen paremman pisteytyksen?
Koska pisteet laskevat kun aikaa kuluu enemmän, voisi jonkun luvun (esimerkissä 10000) jakaa kuluneella ajalla ja näin saada aina positiivisia tuloksia. Esimerkki:

Code: Select all

SCREEN 800,600

For i=500 To 10000 Step 250
    Print "Aika(ms): "+i+" Pisteet: "+Int((10000.0/Float(i))*1000.0)
Next i

WaitKey
Otto Martikainen a.k.a. MetalRain, otto90x, kAATOSade.
Runoblogi, vuodatusta ja sekoiluja.
mikkois
Newcomer
Posts: 43
Joined: Wed Sep 02, 2009 1:16 am
Location: Kokkola

Re: Tyhmät kysymykset (I/2010)

Post by mikkois »

Tämä on ihan pässi kysymys mutta miten saan objektin liikkumaan ruudussa puolelta toiselle eli "kimpoaa" seinästä ja jatkaa matkaa kunnes taas tulee seinä vastaan ja kimpoaa takaisin. :o

koodinpätkä:


Repeat

If LeftKey()Then MoveObject pikku, -1
If RightKey()Then MoveObject pikku, +1
If UpKey()Then MoveObject pikku, 0,-1
If DownKey()Then MoveObject pikku, 0,+1

MoveObject iso,-2

törmäykset=CountCollisions(pikku)
If törmäykset=1 Then Goto uudestaan
DrawScreen

Forever
kooodari13132

Re: Tyhmät kysymykset (I/2010)

Post by kooodari13132 »

koodari tossa ei voi olla mitää framelimittii,ku ohjelma testaa koneen nopeutta^^ jos fps rajotetaa nii ei voi saada tiettyy määrää enempää niit pisteit vaik ois mikä tykki kone...
User avatar
Jonez
Devoted Member
Posts: 575
Joined: Mon Aug 27, 2007 8:37 pm

Re: Tyhmät kysymykset (I/2010)

Post by Jonez »

Tämä on ihan pässi kysymys mutta miten saan objektin liikkumaan ruudussa puolelta toiselle eli "kimpoaa" seinästä ja jatkaa matkaa kunnes taas tulee seinä vastaan ja kimpoaa takaisin.
Oletan että tarkoitat objektia jota ei itse ohjailla.

Käytä ukon (objektin) x- ja y-suuntaiseen liikuttamiseen jotain muuttujaa, joka säilöö tiedon nopeudesta.

Tässä koodissa esimerkiksi kyseiset muutujat olisivat liikeX ja liikeY. Kun liikeX > 0, ukko liikkuu oikealle. Kun liikeX < 0, vasemmalle. Kun liikeY > 0, ukko liikkuu ylöspäin.

Code: Select all

Translateobject ukko, liikeX, liikeY
Kun ukko osuu seinään, haluamme että se kimpoaa. Tämän saa yksinkertaisesti vaihtamalla liikesuunnan vastakkaiseksi (kohtisuorilla pinnoilla. Muulloin homma menee mutkikkaammaksi). Eli kun ukko osuu ylä- tai alareunaan, vaihdamme liikeY-muuttujan vastakkaiseksi vaikka näin:

Code: Select all

liikeY = liikeY * -1
Sama juttu liikeX-muuttujalle, jos ukko osuu ruudun sivuihin.

Mistä sitten tiedämme, että ukko osuu seinään? Normaalin ikkunan koko on 400x300, ja ruudun keskusta on 0, 0 (ellei kameraa siirrellä). näin ollen vasen reuna on -200, oikea 200, yläreuna 150 ja alareuna -150. Mutta jos muutamme resoluutiota (SCREEN-komento), nämä mitat muuttuvat ja joudumme tekemään uudet laskutoimitukset. Tämän voi kiertää helposti käyttämällä cb:n funktioita ScreenWidth() ja Screenheight(), jotka palauttavat käytössä olevan resoluution. Tämä resoluutio jaettuna kahdella kertoo kätevästi ruudun reunojen etäisyyden keskustasta.

Seuraava koodinpätkä tarkastaa onko objektin x-koordinaatti ylittänyt ruudun oikean reunan. Jos on, liikeX muutetaan vastakkaiseksi, eli objekti lähtee vastakkaiseen suuntaan (kimpoaa).

Code: Select all

If ObjectX( ukko ) > ScreenWidth() / 2 Then
    liikeX = liikeX - 1
EndIf
-Vuoden 2008 aloittelijan ystävä -palkinnon voittaja-
Image <- protestipelikilpailun voittaja.
Space War
kooodari31323

Re: Tyhmät kysymykset (I/2010)

Post by kooodari31323 »

sori tuplapostista,mut just tollasta tarttin minkä otto oli tehny =) en huomannu heti oton viesii :D juu sain nyt muokattuu ja tulee jotai 2000 pistet enemmän jos ylikelloilla.Mut sitte viel,et miten saisin viel ns.tasasempii tuloksii? Nyt tulee ekal kerral esim. 8600 ja tokal kerral 8688.Oon tehny tohon 10looppii ja niitten keskiarvol jaetaa toi piste homma.Mut pitäs vielki saada tasasempi tulos. ettei ois tollast 88 pisteen heittoo?
TheFish
Developer
Developer
Posts: 477
Joined: Mon Aug 27, 2007 9:28 pm
Location: Joensuu

Re: Tyhmät kysymykset (I/2010)

Post by TheFish »

kooodari31323 wrote:sori tuplapostista,mut just tollasta tarttin minkä otto oli tehny =) en huomannu heti oton viesii :D juu sain nyt muokattuu ja tulee jotai 2000 pistet enemmän jos ylikelloilla.Mut sitte viel,et miten saisin viel ns.tasasempii tuloksii? Nyt tulee ekal kerral esim. 8600 ja tokal kerral 8688.Oon tehny tohon 10looppii ja niitten keskiarvol jaetaa toi piste homma.Mut pitäs vielki saada tasasempi tulos. ettei ois tollast 88 pisteen heittoo?
88 pistettä 8,6 tuhannesta ei ole kovinkaan iso heitto. Kuiteskin: laita ohjelman alkuun muutaman sekunnin odotus ennen kuin aloitat mittaamisen.
CoolBasic henkilökuntaa
Kehittäjä
koodari33124

Re: Tyhmät kysymykset (I/2010)

Post by koodari33124 »

juu kiitti =) siinä oliki nii että ekassa 2 loopissa saatto kestää vähän kauemmin.Nyt tulee melkee samoi tuloksii kokoajan
rami123
Advanced Member
Posts: 354
Joined: Mon Jun 23, 2008 8:20 pm
Location: Kittilä

Re: Tyhmät kysymykset (I/2010)

Post by rami123 »

Aloin taas koodailemaan pikkasen enemmä cb:llä niin tahtosin selvittää ennen kuin menen tyrimään koko homman, että miten ois mahdollista tehdä sellanen jännä sydeemi kuin pelin tallentaminen? Kaikenmoisia virityksiä tehnyt, mutta aina joku pielessä. Joten lyhyesti, tallentaminen ja siihen palaaminen pelin sammutettua.

Kiitokset etukäteen :)
MrMonday
Advanced Member
Posts: 378
Joined: Fri Oct 10, 2008 2:35 pm

Re: Tyhmät kysymykset (I/2010)

Post by MrMonday »

Itse ainakin tein aikoinaan Elämä-peliini tallennus/lataus jutun sillain että tallensin kaikki muuttujat tiedostoon, siis esmes "save.dat"
ja sitten kun ladataan niin luetaan vaan sieltä ne tiedot ja asetetaan muuttujujien arvot niiden mukaan,
eli käytännössä jatketaan siitä mihin jäätiin edellisellä kerralla.. Toivottavasti ymmärsit ja sait apua :)
jaahas
Advanced Member
Posts: 307
Joined: Fri Feb 05, 2010 11:36 pm
Location: Tornio

Re: Tyhmät kysymykset (I/2010)

Post by jaahas »

miten teen napin tai sellasen että kun esim. kuvan päälle laitetaan hiiri niin kuvan reunat muuttuu keltaseks ja jos sitä painaa se menee jonnekki miten sellanen nappi tehään?
Last edited by jaahas on Tue Feb 09, 2010 10:40 pm, edited 1 time in total.
MrMonday
Advanced Member
Posts: 378
Joined: Fri Oct 10, 2008 2:35 pm

Re: Tyhmät kysymykset (I/2010)

Post by MrMonday »

jaahas wrote:minkä lainen projekti olisi hyvää harjoitusta aloittelioille?
[offtopic] "minkä lainen" tulee yhteen, mutta eipä se maailmaa kaatava virhe ole :lol: [/offtopic]

Joku tekstipeli voisi olla hyvä, ja sitten myös grafiikoiden kanssa, kuten Elämä ;)
ja foorumeilta taitaa myös löytyä esimerkkejä aloittelijoille, joten kokeile mitä löytyy haulla..
Locked