Türkiye'nin en yeni Ultima Online, Counter-Strike, LoL, Dota 2, E-spor oyunları ve daha birçok oyunla ilgili Türkçe oyun haber, bilgi, topluluk platformu. Türkiye'nin en yeni Ultima Online, Counter-Strike, LoL, Dota 2, E-spor oyunları ve daha birçok oyunla ilgili Türkçe oyun haber, bilgi, topluluk platformu.
  • ANASAYFA
  • FORUM
  • DOKÜMAN
  • DOWNLOAD
  • DISCORD
  • İLETİŞİM
   Üye ol    Giriş
    Doküman > Ultima Online > Sphere > Script Dersi - Rand Fonksiyonları

Script Dersi - Rand Fonksiyonları

  • Fahrenait
  • May 03, 2006
  • 0 Yorumlar
  • 2.6K Görüntüleme
Evet şimdi de pek bilinmeyen bir fonksiyonu aciklayalim elimizden geldiğince..
Fonksiyonumuzun ismi RANDBELL

Rastgele sayi uretmenin degis*k
 bir yolu.

Sphere'da dort adet rastgele sayi uretme yolu var.

1. Rand(x) seklinde olan ki (0) ile (x-1) arasinda rastgele bir sayi uretir ve uretilen sayi doner..

2. x ve y sayilari arasinda bir sayi uretmek icinse {x y} kulanilir..

3. a ve b rastgelecek sayilar olsun. Ama birinin sansinin daha fazla olmasini istiyoruz degilmi.. Onu da {a 2 b 1} seklinde yapariz. a nin gelme sansi 3 te 2 b nin gelme sansi ise 3 de 1 dir...

4. Ve geldik asıl konumuza .. RandBell fonksiyonumuz can seklinde bir egri hesaplar..

Genel olarak Randbell fonksiyonu skill gain (yetenek puani) ve craft malzemelerinin yapim sanslarinda kullanilmak uzere yapilmistir . Eger kavranilirsa cok fazla satir yerine 3- 5 satir ile mukemmel bir skill gain sistemi yapilabilir..

Diger rastgele sayi ureticilerinden farklı olarak 2 parametreye sahiptir..

Randbell( diff, variance )

Bu fonksiyonu aciklamak aslında baya zor..

Asagida gordugunuz gibi bir grafik cikiyor karsimiza..

[URL=http://imageshack.us][IMG]http://img512.imageshack.us/img512/2199/randbell6dv4mp.jpg[/IMG][/URL]

yukardaki sekilde yatay eksendeki sapma sıfırdır. Dikey eksen ise 0 en dusuk ve 500 en yuksek 

noktalaridir. bir nevi min ve max degerleri diyebiliriz. bu da bize bir basari orani sagliyor...Nerden nereye ? demin belirttigimiz sayilari alirsak 0% dan 50.0% ye kadar..

tabi her iki kosulu da vermeliyiz...karsitlik <variance> ve diff degeri.. 

Diff degerimiz 0 ise donen deger herzmn icin 500 olacaktir.. <diff> = (<variance>) yaparsak eger donen deger 250 olacaktir.

ornegin ..

src.say <EVAL RANDBELL(7,10)>

standart sapmasi 10 olan egrideki 7 degeri bize 325 degerini veriyor.. 

yada bunu bir scrıpt icinde aciklarsak.. 

mesela mevcut skill ve gereken skill seklinde ..

[FUNCTION skillchance]
// VAR.SKILL_REQ,VAR.SKILL_CURR
// fonk. cagrilmadan bunlari tanimlamak gerek. 
var.skill_req 1000
var.skill_curr 600

var.skill_diff <eval <var.skill_req> + -<var.skill_curr>>

var.skill_bell <eval randbell( <var.skill_diff>, 10.0 )>
if ( <var.skill_diff> < 0 )
var.skill_bell <eval 1000 +- <var.skill_bell>>
endif
return <var.skill_bell>


[function 1122]

say <skillchance>

Üye Ol veya Giriş Yap

Bu içeriğe yorum atmak istiyorsanız hemen üye olun veya giriş yapın.

Yorumlar (0)

Henüz yorum yapılmamış
Sadece kayıtlı kullanıcılar yeni yorum yapabilir.
Beğeni Takipçi Üye Takipçi
Benzer Sayfalar
  • Script Dersi - Events

    July 09, 2007

  • Script Dersi - Tag Fonksiyonu

    July 10, 2007

  • Script Dersi - Algoritma

    July 09, 2007

  • Script Dersi - Tag Kullanımı

    November 21, 2007

  • Script Dersi - If sorgusu

    July 09, 2007



  • Son Forumlar
  • Sayfalar
  • wilddeath
    Paladin UO 500 TL 1 VS 1 PVP TURNUVASI

    Ultima Online 6 hours önce

  • Venus
    World of UO 17 Şubat'ta Yeniden Başlıyor

    Sunucular 1 weeks önce

  • wilddeath
    Paladin UO

    Sunucular 3 weeks önce

  • Nefrelius
    Yeni karakter isim kontrolü

    Sphere Scripting 3 weeks önce

  • UO Victory
    Şuan oynanacak uzun soluklu server

    Sunucular 1 months önce

  • Erlik UO
    Erlik UO II ServUO - RunUO

    Sunucular 2 months önce

  • beth
    Tc Simülasyonu Uo Server

    Sunucular 2 months önce

  • dealer666
    UO AOS PvP Free Shard

    Sunucular 2 months önce

  • Bütün bir yıl çok çalıştılar, çok fazla mücadele ettiler ve artık sona geldiler.

    ESL One Cologne 2017

    June 30, 2017

  • Activision yetkililerinin yaptığı açıklamaya göre Cod:MW Remastered, Infinite Warfare’den ayrı bir oyun olarak satılmaya başlanacak.

    Call of Duty Modern Warfare Remastered açıklandı!

    June 24, 2017

  • Artık gelenekselleşen Steam mevsim indirimlerinin en sevileninin zamanı geldi kapımıza dayandı.

    Steam Yaz İndirimi 2017 Rehberi

    June 22, 2017

  • Ultima Online için unoffical DLC

    Ultima LandFall

    June 18, 2017

  • Simple Radar - Kullanışlı ve Basit Radar

    June 03, 2017

  • CS:GO FPS Arttırma ile ilgili detaylı bilgilendirici faydalı döküman

    CS:GO FPS Arttırma ile İlgili Herşey

    May 28, 2017

  • Easy Vibrance enhancer v1.3.0.1

    May 09, 2017

  • Vibrance GUI

    March 31, 2017

Menü

ANASAYFA
FORUM
DOKÜMAN
DOWNLOAD
İLETİŞİM
Ideamedia
© 2004 - 2023 Ultima-Strike. Her hakkı saklıdır.