UO-Dev Arama

 



İçerde : 1 misafir, 0 üye : --- Sayfalar: 1
Yazar

gizemli


Yasaklı
Skill Title: Apprentice
Online durumu
Toplam Mesaj: 57
Oyun Tarzı: Rp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 33
Mesaj #92524   14-07-2017 03:49 GMT    
        
Merhaba arkadaşlar.

Kendi çapımda birşeyler yapmaya çalışıyorum. Bir konuda takıldım yardımlarınızı istiyorum.
Skill gain olayını skillin aralığına göre yaptırmak istiyorum.
Mesela Alchemy'den örnek vereyim
30-50 skill aralığında Lesser Poison yapınca adama skill gelmesini istiyorum bunu nasıl yapabilirim acaba?


Yakında

https://www.britainuo.com

https://www.facebook.com/britainultimaonline/

Yazar

M.CANILIK


UO-Dev Üyesi
Skill Title: Expert
Online durumu
Toplam Mesaj: 345
Oyun Tarzı: Pvp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 30
Mesaj #92533   14-07-2017 09:54 GMT    
        
En basit olarak "lesser poison'un" skillmake kısmında istediği alchemy skill'ini artıra bilirsin. Elindeki scriptlerde bu değer nedir bilmiyorum ama 25.0 yaparsan 30 - 50 arası skill alabilir adv_rate altından ph açıksa büyük ihtimalle sonrasında da alır. Ama sen 30 ile 50 arasında "yalnızca" lesser poison ile skill kasılmasını istiyorsan o zaman @skillsuccess triggeri altında alchemy skill'ine ayarlama geçmen gerekir.



Yazar

gizemli


Yasaklı
Skill Title: Apprentice
Online durumu
Toplam Mesaj: 57
Oyun Tarzı: Rp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 33
Mesaj #92534   14-07-2017 09:57 GMT    
        
on=*success ile ayrı bir fonksiyon tanımlıyorum zaten hocam fakat yapılan pot'un hangi pot olduğunun kontrolünü yapamadım maalesef


Yakında

https://www.britainuo.com

https://www.facebook.com/britainultimaonline/

Yazar

M.CANILIK


UO-Dev Üyesi
Skill Title: Expert
Online durumu
Toplam Mesaj: 345
Oyun Tarzı: Pvp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 30
Mesaj #92535   14-07-2017 10:01 GMT    
        
Çok çok basit bir şekilde, craft menüsü altındaki button dan alakadar potion yapıldığında karaktere ctag ver. Skillsuccess yada success kısmında ctag'ı ve skill aralığını sorgulat. Şartlar uygunsa gain aldır.



Yazar

gizemli


Yasaklı
Skill Title: Apprentice
Online durumu
Toplam Mesaj: 57
Oyun Tarzı: Rp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 33
Mesaj #92536   14-07-2017 11:04 GMT    
        
tag çok mantıklı gelmiyor. çünkü neredeyse her iteme tag vermem gerekli tüm skiller ile alakalı daha kolay bir yolu olmalı


Yakında

https://www.britainuo.com

https://www.facebook.com/britainultimaonline/

Yazar

4s3d3


UO-Dev Üyesi
Skill Title: Journeyman
Online durumu
Toplam Mesaj: 205
Oyun Tarzı: Rp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 29
Mesaj #92538   14-07-2017 11:32 GMT    
        
Lesser Potun butonu neyse ilk onu öğren kardeşim yada potların button aralıkları mesela 1den 30a kadar gibi dialog Button kısmında
Kod:
On=1 30 yap
// 5 Lesser Pot diyelim
If (<Argn> == 5)
If (<Src.Alchemy> > 30) && (<Src.Alchemy> < 50) // Skill 30dan büyük 50den küçükse
/// Itemi yaptır bu kısımda
Src.Alchemy +=1 // Her yaptığında +1 artsın gibi
Endif
Endif
Basit mantık daha farklı yollarlada yapabilirsin sana kalmış bu düz mantık sadece


 gizemli

Yazar

gizemli


Yasaklı
Skill Title: Apprentice
Online durumu
Toplam Mesaj: 57
Oyun Tarzı: Rp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 33
Mesaj #92540   14-07-2017 12:35 GMT    
        
@4s3d3 teşekkür ederim hocam şöyle birşey yaptım lazım olan olursa bakabilir.

Kod:
[ITEMDEF i_potion_PoisonLess]
NAME=Lesser Poison
ID=i_bottle_GREEN
TYPE=T_POTION
TDATA1=i_bottle_empty
Value=10
RESOURCES=i_reag_nightshade 1, i_bottle_EMPTY
SKILLMAKE=ALCHEMY 0

ON=@Create
    MORE1=s_poison
    MORE2=40.0
    [red]alchemylesser[/red]


[function alchemylesser]
if ((<Src.alchemy]> == 0) && (<src.skilltotal> < 7000))
if ((<Src.alchemy> > 300) && (<Src.alchemy> < 500))
    if (rand(5) == 1)
Src.Alchemy +=1
endif
endif
endif


Son güncelleme: TheRaskol tarafından 14-07-2017 14:07 GMT, 798 Gün önce düzenlendi.


 4s3d3
Yakında

https://www.britainuo.com

https://www.facebook.com/britainultimaonline/

Yazar

M.CANILIK


UO-Dev Üyesi
Skill Title: Expert
Online durumu
Toplam Mesaj: 345
Oyun Tarzı: Pvp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 30
Mesaj #92541   14-07-2017 12:50 GMT    
        
Alıntı
4s3d3 :
Lesser Potun butonu neyse ilk onu öğren kardeşim yada potların button aralıkları mesela 1den 30a kadar gibi dialog Button kısmında
Kod:
On=1 30 yap
// 5 Lesser Pot diyelim
If (<Argn> == 5)
If (<Src.Alchemy> > 30) && (<Src.Alchemy> < 50) // Skill 30dan büyük 50den küçükse
/// Itemi yaptır bu kısımda
Src.Alchemy +=1 // Her yaptığında +1 artsın gibi
Endif
Endif
Basit mantık daha farklı yollarlada yapabilirsin sana kalmış bu düz mantık sadece



Hatalı olur böyle yaparsa, keza menüyü açıp buttona bastıkça gain alır oyuncu potionu yapmadan.

@gizemli

functionda hata var, ben script işinden anladığını düşündüğüm için mantık anlatıyordum sana ama düzenleyeyim.;

Kod:
[function alchemylesser]
if ((<Src.alchemy> > 300) && (<Src.alchemy> < 500) && (<skilllock[0]> == 0) && (<src.skilltotal> < 7000))
      if (rand(5) == 1)
           Src.Alchemy +=1
      endif
endif


Fakat güzel düşünmüşsün eşya üretilmedikçe gain alamazlar.


 gizemli

Yazar

4s3d3


UO-Dev Üyesi
Skill Title: Journeyman
Online durumu
Toplam Mesaj: 205
Oyun Tarzı: Rp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 29
Mesaj #92542   14-07-2017 12:56 GMT    
        
Benim yazmamda ki amaç Tag vermek gereksiz onu göstermek.



Yazar

gizemli


Yasaklı
Skill Title: Apprentice
Online durumu
Toplam Mesaj: 57
Oyun Tarzı: Rp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 33
Mesaj #92543   14-07-2017 12:58 GMT    
        
Çok yorucu bir gain süreci olacak eğer bir gün sunucu açarsam craftlara

Eskiden bu şekildeydi skill aralığına göre yapıyordun item ama artık rp ve pp dediğimiz serverların pvp den tek farkı taş yok


Yakında

https://www.britainuo.com

https://www.facebook.com/britainultimaonline/

Yazar

M.CANILIK


UO-Dev Üyesi
Skill Title: Expert
Online durumu
Toplam Mesaj: 345
Oyun Tarzı: Pvp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 30
Mesaj #92544   14-07-2017 13:15 GMT    
        
Normal şartlarda ADV_RATE üzerinden;

ADV_RATE=10.0,100.0,800.0

10.0 -> 0.0 ila 30.0 skill aralığında toplamda 10.0 yetenek kullanıldığı taktirde 0.1 gain alınmasını sağlar
100.0 -> 30.0 ila 80.0 skill aralığında toplamda 100.0 yetenek kullanıldığı taktirde 0.1 gain alınmasını sağlar
800.0 -> 80.0 ila 100.0 skill aralığında toplamda 800.0 yetenek kullanıldığı taktirde 0.1 gain alınmasını sağlar

Rakamları düşürürsen hızlı yetenek kasılır yükseltirsen, yavaşlar. Ben bütün sunucularımda ADV_RATE kullandım tabi ki taming,lockpicking,healing gibi ikincil eşyalar üzerinden işlem yaptırdığımız yetenekler hariç.


@4s3d3
ctag zararsızdır karakter oyundan çıktığı zaman ctag'lar da silinir. Ayrıca karakterin belirlenmiş eşyayı yapıp yapmadığını tag vermeden ancak arkadaşın yapmış olduğu gibi yapabilirsin. Fakat bu da şimdi aklıma gelen bir buga sebebiyet verebilir. @gizemli bir keg'e lesser poison potion koy ve player karakterle kegden potion çıkart. Tahminim doğruysa kegden çıkan potion da newitem yani @create ile gelicek ve player bu doldurma işleminden gain alabilecek.


 gizemli

Yazar

gizemli


Yasaklı
Skill Title: Apprentice
Online durumu
Toplam Mesaj: 57
Oyun Tarzı: Rp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 33
Mesaj #92546   14-07-2017 13:27 GMT    
        
Aynen süper düşündün kegden çıkarınca da veriyor gain bunu çözmem lazım

ADV_RATE ile yapmamın nedeni aynı ürünle gmlemesin kimse skilli biraz uğraştırsın

Kod:
[function alchemylesser]
IF (<SRC.TARG.BASEID>!=i_bottle_empty)
src.sysmessage bla bla
if ((<Src.alchemy> > 300) && (<Src.alchemy> < 400) && (<src.skilltotal> < 7000))
      if (rand(5) == 1)
           Src.Alchemy +=1
      endif
endif
endif


Son güncelleme: TheRaskol tarafından 14-07-2017 14:07 GMT, 798 Gün önce düzenlendi.


Yakında

https://www.britainuo.com

https://www.facebook.com/britainultimaonline/

Yazar

4s3d3


UO-Dev Üyesi
Skill Title: Journeyman
Online durumu
Toplam Mesaj: 205
Oyun Tarzı: Rp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 29
Mesaj #92547   14-07-2017 13:34 GMT    
        
Alıntı
M.CANILIK :
Çok çok basit bir şekilde, craft menüsü altındaki button dan alakadar potion yapıldığında karaktere ctag ver. Skillsuccess yada success kısmında ctag'ı ve skill aralığını sorgulat. Şartlar uygunsa gain aldır.


Alıntı
gizemli :
tag çok mantıklı gelmiyor. çünkü neredeyse her iteme tag vermem gerekli tüm skiller ile alakalı daha kolay bir yolu olmalı


@M.CANILIK
şimdi neden yazdığım belli olur umarım ama sen yinede tag vererek yapabilirsin basit Dialog menülerinde tag gereksizdir. bana değilde, ben göstermeden arkadaşa somut örnek sunsaydın daha güzel olabilirdi bana anlatmana gerek yok kendime yeticek kadar bilgim var. eksik kaldığım yerlerde foruma yazarsam sende anlatırsın kardeşim

NOT: Göstermiş olduğum örneği Functiona çevirmek yerine direk skill dialog menüsüne eklenirse zaten birşeylerin fixlenmesine gerek kalmaz.



Yazar

M.CANILIK


UO-Dev Üyesi
Skill Title: Expert
Online durumu
Toplam Mesaj: 345
Oyun Tarzı: Pvp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 30
Mesaj #92550   14-07-2017 13:59 GMT    
        
Yo hayır, hala böyle bir sorguyu yapabilmek için, yapılan eşyanın bilgisini bir yere kayıt etmen gerekiyor. Buyur madem taglara ihtiyacın yok böyle bir şey için arkadaşa bir örnek ver herhangi bir buga takılmadan. Dialog menüsünden eşyayı craft ettirmiyorsun, eşyanın yapılabilmesi için gerekli koşullara sahip olunup olunmadığını kontrol ettiriyorsun. Eşyayı üretme kısmı "makeitem" functionu ile geliyor. Bu function hardcoded olduğu için üzerinde oynama yapamazsın. MAKEITEM functionu kendinden sonra item_defname, amount keyleriyle çalışır. Craft menülerini kontrol edersen uygun koşullar sağlandıktan sonra makeitem xx yazıldığını görürsün. Makeitem ayrıca, yapılan ürünün SKILLMAKE kısmındaki skill'i tetikletir. O yüzden skill altında @success yada fix eventi altında @skillsuccess triggeri ile craft menüsünden yaptığın itemin bilgisini bu eşyayı üreten karakter üzerinde saklatırsan, sorgulatmasını da yapabilirsin. Script üzerinde örnek göstermek gerekirse;

onbutton xx (lesser poisonun button)

Kod:
if (sorgular, sorgular)
src.makeitem xxx (lesser poison id)
src.ctag.lesserpoison 1
elseif
bla bla
endif


buradan sonra ister skill altında @success ister event altında @skillsuccess (dikkat skillsuccess kullanıcak olursan skillkey'i de girmen gerekiyor)

Kod:
@success
if (<src.ctag.xx> == 1)
if (rand(5)
src.xxx +1
endif
endif


Bunu destekleyip extra gainlerden kurtulmak için adv_rate'e imkansız rakamlar girmen gerekiyor.



Yazar

4s3d3


UO-Dev Üyesi
Skill Title: Journeyman
Online durumu
Toplam Mesaj: 205
Oyun Tarzı: Rp
Emulatör: 0.56b
Tecrübe: Player
Yaş: 29
Mesaj #92552   14-07-2017 19:20 GMT    
        
biz çok farklı şeyleri anlatıyoruz farkındamısın ? Ben konuya değil dialog üzerine tartışmaya yorum yaptım. Ama konunun çözümünde bir nevi haklısın tabi burada şöyle şöyle demek yerine adama örnekle konuyu göstersen daha sağlıklı olurdu. Ben konunun çözümü hakkında arkadaşa zaten detaylı mesaj attım.


Son güncelleme: 4s3d3 tarafından 14-07-2017 20:04 GMT, 798 Gün önce düzenlendi.



Sayfalar: 1



Benzer Konular

KonularMesajlarSon gönderenTarih
runuo server kurulumu yardım1tarantula28-04-2019
skill title4Jada13-11-2018
Sphere kapanma hatası - yardım14xwerswoodx19-10-2018
Staff title yardım3nefrelius15-06-2018
Npc Bow yardım6mahsuni21-06-2018


Keywords:

ultima online, RunUO, ultima online download, sphere scripting, role play, uo grafik, second age ultima, uo loop, macroman, pvp server, server kurulumu, sphere, multool, ml mulls, 56b 55r 55i, htmlgumps, client 4x, client edit, sphere release, osi, rp server, sunucular, ghost mouse, inside uo, kingdom reborn, stygian abyss, uo nasıl oynanır, mondain's legacy, age of shadows, world build, grandmaster, ultima online pvp, player dosyaları, ultima online indir, frp game, RunUO 1.0.0, razor, uo rice, hue editör, skill tools, ultima online patch, axis, world build, verdata, verdata patcher, map editör, gump editör, mul patcher, aos mulls, scriptler, anim edit, anim publish, hues mul, hosting vps, event dialog, account sistemi, skill gain, static yapımı,