[ARHIIV] mängumeistrid
Pole sisse logitud. [Logi sisse ]
Mine lehekülje algusesse
Prinditav versioon | Telli teema e-mailile | Lisa lemmikutesse  
 Lehekülgi:  1  2
Random ümardamine..
pr0str33t
Level 6


Liitunud: 28.3.2010
Postitusi: 238
[EEMAL]




postitati 8.1.2011 18:30 Tsiteeri
Random ümardamine..



Terv.. mul platformeri mängus väike probleem ...
kui korjan teemante , siis ta lisab suvalise arvu teemante ( kuni viieni ), ning oleks vaja teada kuidas ümardada seda .. hetkel lisab komadega..
Teemanti create eventis :
Kood:

t_lisa=random(5);

mis ma sinna lisama pean ??
ma ei taha et ta komadega lisaks, ega et ta lisaks ainult 5 teemantit ..

Päkapikk põrgus v0.3 Engine ~55% valma ...

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
Bproof
Level 6
Avatar

Liitunud: 23.5.2010
Postitusi: 262
[EEMAL]




postitati 8.1.2011 19:02 Tsiteeri


round(random(5)) oli vist nii
ja kui ma ei eksi siis see manualis kirjas, loe läbi , see game makeri piibel

Vaata kasutaja profiili Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
batoonike



Liitunud: 2.4.2005
Postitusi: 378
[EEMAL]




postitati 8.1.2011 19:48 Tsiteeri


ceil(random(5)), muidu mõnikord korjad teemanti üles ja saad 0 teemantit, mis lõhnaks bugi järele.
Aktsioon III: batoonike<br>Kambakas II: batoonike, whitepower1, tenno11
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
Bproof
Level 6
Avatar

Liitunud: 23.5.2010
Postitusi: 262
[EEMAL]




postitati 9.1.2011 00:01 Tsiteeri


siis saaks ju nii ka et

round(random(4)) + 1
eksis loos käib 0-4 ja 0 ei saa kuangi olla sest lisandub 1

Vaata kasutaja profiili Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
batoonike



Liitunud: 2.4.2005
Postitusi: 378
[EEMAL]




postitati 9.1.2011 00:20 Tsiteeri


Või

var a;

a = 1;
repeat(4)
a + = round(random(1))
Aktsioon III: batoonike<br>Kambakas II: batoonike, whitepower1, tenno11
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
jorss
Level 12


Liitunud: 25.1.2005
Postitusi: 951
[EEMAL]




postitati 9.1.2011 00:34 Tsiteeri


wtf batoonike, mis asi see on?
Platform II: -DMI-; H0lx&jorssJõulumäng I: h0lx&jorssKambakas I: jorss, Perfoon
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
pr0str33t
Level 6


Liitunud: 28.3.2010
Postitusi: 238
[EEMAL]




postitati 9.1.2011 11:04 Tsiteeri


kasutan seda batoonikese viimast , ning püüan endale ka selgeks teha . aga tänud :)
Päkapikk põrgus v0.3 Engine ~55% valma ...

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
h0lx
Kohalik sitapea
Avatar

Liitunud: 10.4.2006
Postitusi: 1826
[EEMAL]




postitati 9.1.2011 15:03 Tsiteeri


roundiga ümardades saab küll 5 teemandit ka. flooriga ei saa.
http://i47.tinypic.com/x0w83p.gif
Moonwalk
Platform II: -DMI-; H0lx&jorssJõulumäng I: h0lx&jorss
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
Bproof
Level 6
Avatar

Liitunud: 23.5.2010
Postitusi: 262
[EEMAL]




postitati 9.1.2011 16:26 Tsiteeri


Tsitaat:
Tsitaat: h0lx
roundiga ümardades saab küll 5 teemandit ka. flooriga ei saa.


ja aga round(random(5)) võib anda küll 5 aga ta võib anda ka 4

nieit parim lahendus on mu arust round(random(4)) +1

Vaata kasutaja profiili Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
xaxk
Level 5
Avatar

Liitunud: 23.9.2007
Postitusi: 219
[EEMAL]




postitati 9.1.2011 17:01 Tsiteeri


Tsitaat:
Tsitaat: jorss
wtf batoonike, mis asi see on?


4 korda loosib, kas lisab algväärtusele 1 veel 1 või 0.

Siin sobiks ceil() kõige paremini imo.

Tsitaat:
Tsitaat: gmmeiter
hirmus lahe oleks mõni hommik kõrbenud haugiga vasta pead saada rõdul.

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
jorss
Level 12


Liitunud: 25.1.2005
Postitusi: 951
[EEMAL]




postitati 9.1.2011 17:21 Tsiteeri


ma saan aru mida see kood teeb, aga ma ei saa aru, miks keegi midagi sellist peaks kirjutama.
Platform II: -DMI-; H0lx&jorssJõulumäng I: h0lx&jorssKambakas I: jorss, Perfoon
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
valter
1


Liitunud: 19.1.2005
Postitusi: 1553
[EEMAL]




postitati 9.1.2011 17:30 Tsiteeri


Tsitaat:
Tsitaat: batoonike
Või

var a;

a = 1;
repeat(4)
a + = round(random(1))


või:

var mingiasi njaa duh lol;

mingiasi = 1+0;
repeat(1+3) {
lol=1*(1-0.5*2+2/2);
njaa=random(lol);
duh=round(njaa);
mingiasi+=0;
mingiasi=mingiasi+duh;
}


//saab ka veel pikemalt .. (troll)

http://www.dmgamez.pri.ee/GRONGO1/uss_walk.gif
Ralli I: dm11Veresaun III: dm11<br>Emo1: icedude, valter8bit I: võistlus kestabAktsioon III (2009): -<br>Aasta mäng 2009: Pilvemees, valter<br>Vabateema II: valter
Vaata kasutaja profiili Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum
InCreator
baksjor!
Avatar

Liitunud: 18.12.2005
Postitusi: 1230
[EEMAL]




postitati 9.1.2011 17:43 Tsiteeri


script: kiire_random_viis

var a;

repeat(32000)
if (random(2) >= 1) a+= .00125;

return (ceil(a)+1);

koodis kasutad

t_lisa = kiire_random_viis();

A window is technically a wallhack.
Emo2: InCreator
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
Bproof
Level 6
Avatar

Liitunud: 23.5.2010
Postitusi: 262
[EEMAL]




postitati 9.1.2011 20:29 Tsiteeri


nagu välk selgest taevast tuli mul siis :

5 -=round(random(4))

:D

Vaata kasutaja profiili Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
h0lx
Kohalik sitapea
Avatar

Liitunud: 10.4.2006
Postitusi: 1826
[EEMAL]




postitati 9.1.2011 21:08 Tsiteeri


teemante+=1+(round(random(4));

töötab ja on lihtne, miks asju keeruliseks ajada, ega see ioccc ei ole.

http://i47.tinypic.com/x0w83p.gif
Moonwalk
Platform II: -DMI-; H0lx&jorssJõulumäng I: h0lx&jorss
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
batoonike



Liitunud: 2.4.2005
Postitusi: 378
[EEMAL]




postitati 9.1.2011 22:18 Tsiteeri


No ma räägin et ceil(random(5)), aga on ikka vaja pikemalt teha.

Sel juhul on kõik arve 1-st 5ni võrdselt kah. Kui sa teed 1 + round(random(4)) siis tuleb 1te ja 5te harvemini ja teisi arve tihedamini. Mängus mingi random rassi valikul on see suht oluline juba, kuna esimest ja viimast rassi tuleks siis 2+ korda harvemini kui teisi.

Mitte, et see mingi lambiteemantite korjamisel mingit tähtsust omaks.
Aktsioon III: batoonike<br>Kambakas II: batoonike, whitepower1, tenno11
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
h0lx
Kohalik sitapea
Avatar

Liitunud: 10.4.2006
Postitusi: 1826
[EEMAL]




postitati 9.1.2011 23:30 Tsiteeri


sul on õigus, GMi random numbrid on miskipärast imelikud aga kui üles ümardada, on distributsioon ühtlane.
http://i47.tinypic.com/x0w83p.gif
Moonwalk
Platform II: -DMI-; H0lx&jorssJõulumäng I: h0lx&jorss
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
batoonike



Liitunud: 2.4.2005
Postitusi: 378
[EEMAL]




postitati 10.1.2011 18:36 Tsiteeri


Kui random täiesti ideaalselt töötaks oleks ikka sama probleem roundi-ga. Näiteks round(random(3)):

Randomi väärtuste vahemik => mis me lõpuks saame

0.00 - 0.4999... => 0
0.5 - 1.4999 => 1
1.5 - 2.4999 => 2
2.5 - 3 => 3

Esimese ja viimase arvu sagedus jääb roundi kasutades väiksemaks, kuna esimesele ja viimasele arvule jääb ainult "pool" ühikut, samas kui teistele jääb terve ühik. Ala 0 kuni 0.49 võrreldes 0.5 kuni 1.5. Esimene on kõvasti väiksem vahemik.


*Nende piiripealsete arvude täpsuse osas ma pole kindel aga idee on selline.
Aktsioon III: batoonike<br>Kambakas II: batoonike, whitepower1, tenno11
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
jorss
Level 12


Liitunud: 25.1.2005
Postitusi: 951
[EEMAL]




postitati 10.1.2011 19:43 Tsiteeri


oota aga miks siis ceil()ist ei piisa, vaid on vaja mingi kahtlane moodustis kirjutada?
Platform II: -DMI-; H0lx&jorssJõulumäng I: h0lx&jorssKambakas I: jorss, Perfoon
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
batoonike



Liitunud: 2.4.2005
Postitusi: 378
[EEMAL]




postitati 10.1.2011 20:12 Tsiteeri


Piisabki. Milles küssa? See pikk teema oli nii ilmselge troll ju...
Aktsioon III: batoonike<br>Kambakas II: batoonike, whitepower1, tenno11
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
jorss
Level 12


Liitunud: 25.1.2005
Postitusi: 951
[EEMAL]




postitati 10.1.2011 21:53 Tsiteeri


9/10 sel juhul :mad::mad::mad:
Platform II: -DMI-; H0lx&jorssJõulumäng I: h0lx&jorssKambakas I: jorss, Perfoon
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
Kampsinussu
Level 2


Liitunud: 4.9.2006
Postitusi: 23
[EEMAL]




postitati 10.1.2011 23:31 Tsiteeri


Kui nüüd päris juuksekarva lõhki ajada, siis tegelikult ka ceil(random(5)) ei ole päris korrektne. Kui vaadata random funktsiooni dok-i, siis seal on kirjas, et random(5) tagastab väärtuseid 0-st 5-ni, kusjuures 5 on ise on välistatud (maksimaalne väärtus oleks 4.9999...).

Kui kasutada ceil-i, on kaduvväike võimalus, et tulemuseks on ikkagi 0 (kui random(5) tagastab 0-i).

Ühtlase distributsiooniga arve [1,2,3,4,5] saab kui kasutada 1 + floor(random(5)).

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
batoonike



Liitunud: 2.4.2005
Postitusi: 378
[EEMAL]




postitati 11.1.2011 08:47 Tsiteeri


Oled sa kindel, et random(5) saab 0.000... tagastada? Sellega seoes oleks pidanud aastate jooksul ikka mõnda errorit märkama. Peaks vist mingi programmi tegema, mis palju kordi (ceil(random(5)) == 0) -i otsib.

Distributsioon maakeeli on "jaotus" muidu :)
Aktsioon III: batoonike<br>Kambakas II: batoonike, whitepower1, tenno11
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
Kampsinussu
Level 2


Liitunud: 4.9.2006
Postitusi: 23
[EEMAL]




postitati 11.1.2011 10:29 Tsiteeri


Võib, aga see tõenäosus on üli-üli-väike, antud juhul oleks see 1-l juhul 500000000000000000000-st.

Nii loen välja dok-ist, seega testida ikka võib (võimalik, et ajan jama). Aga siis soovitaks piisavalt väikses vahemikus, nt. random(0.00....10) mõned korrad :lala:

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
batoonike



Liitunud: 2.4.2005
Postitusi: 378
[EEMAL]




postitati 11.1.2011 23:02 Tsiteeri


testprogramm: http://batoonike.indrek.org/randomonnull.gmk

Ei tule nulli eriti. Kontrollisin 20 millionit * trillion korda kas (ceil(random(0.0001)) == 0) ja ei tulnud kordagi. Kui random(5) puhul peaks 5 * 10 astmel 19 kandis ühe korra juhtuma siis random(0.001)-ga peaks seda kõvasti tihedamini juhtuma juba.

Samas ma olen üsna kindlalt lugenud mingist katsest GMC-s, kus keegi genereeris öö otsa random arve ja sai random(x) = 0 mitmel korral. Tõenäoliselt kasutasid nad küll vanemat GM versiooni.
Aktsioon III: batoonike<br>Kambakas II: batoonike, whitepower1, tenno11
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
 Lehekülgi:  1  2

Hetkel loevad seda teemat:
Mitte ühtegi - 1 külaline

Mine lehekülje lõppu





Foorumi algbaas põhineb XMB mootoril, modifitseeritud Valter Pundi poolt
Kodulehekülg on tehtud Valter Pundi poolt vpundi ät gmail punkt komm