21.YILTürkiye'nin en eski ve aktif online oyun platformu, Ultima Online, Counter-Strike ve diğer online oyunlar hakkında Türkçe haber, bilgi ve forum sunuyor. Türkiye'nin en eski ve aktif online oyun platformu, Ultima Online, Counter-Strike ve diğer online oyunlar hakkında Türkçe haber, bilgi ve forum sunuyor.
  • ANASAYFA
  • ULTIMA ONLINE
  • FORUM
  • DOKÜMAN
  • İNDİR
   Üye ol    Giriş
118
39
  1. Anasayfa
  2. UO Scriptleri
  3. Sphere Scripts
  4. Events
  5. Level Sistemi By Skul
Basic

Level Sistemi By Skul

  • Basic
  • 2009-05-02 13:22
  • 0 Yorumlar
  • 2661 Görüntüleme
[comment credits]
This is a 56b script, compatible with feb 8th, 2008 release.
v0.3.0

Simple features, edit as you wish and leave comment here :)
-Simple leveling
-Simple stat gain to <skillclass.statsum> (statsum=xx in [skillclass xx] in sphere_skills.scp)
-Feature to add as many Power Hour times as you want.
-+50% /party exp gains whenever in a party at all times
-+75% guild exp gains whenever in a guild

Installation:
-Add EventsPlayer=e_level to sphere.ini
-Add EventsPet=e_exp to sphere.ini

Scripted by Skul,
www.marchadium.ca

[defname level_system_defnames]
levelsys_minimum_elapsed 60*3 //3 dk boyunca saldırmalısınız experience alıcağınız yaratığa.

levelsys_extra_party_exp 50 //50% extra party experience
levelsys_extra_guild_exp 75 //75% extra guild experience
levelsys_extra_guild_war_exp 200 //200% extra exp for attacking/killing someone at war with your guild.
levelsys_extra_powerhour_exp 200 //200% exp at power hours

levelsys_combat_exp 100 //100% combat experience.
levelsys_crafting_exp 100 //100% experience when crafting an item.

levelsys_leveling_difficulty 25 //25% difficulty, you can set this above 100%

levelsys_config_party_exp 1 //1 or 0 to enable or disable party experience sharing
levelsys_config_guild_exp 1 //1 or 0 to enable or disable guild experience sharing
levelsys_config_crafting_exp 1 //1 or 0 to enable or disable crafting experience

levelsys_powerhour_times 2 //amount of times set to enable power hour
levelsys_powerhour_time1 00 //first time, set to 00 (midnight)
levelsys_powerhour_time2 15 //second time, set to 12 (noon)

[plevel 0]
level

[function level]
sdialog d_level_dialog

[function exp_gain]
if (<argn1>) || (strmatch(<strarg <args>>,levelup))
if (<ischar>)
if (<isplayer>)
if (<def0.levelsys_config_party_exp>)
if (<isinparty>)
for 0 <eval <party.members> +-1>
local.exp=<party.member.<local._for>.total_exp_extras <args>>
if (<def0.levelsys_config_guild_exp>)
if (<memoryfindtype.0400.link>)
if !(<party.member.<local._for>.memoryfindtype.0400.link>==<memoryfindtype.0400.link>)
party.member.<local._for>.tag0.exp += <total_exp <local.exp>>
party.member.<local._for>.sysmessage @91 [Exp Gain]: <eval <strarg <local.exp>>> experience ve <eval <strarg <streat <local.exp>>>> party experienceı kazandınız .
party.member.<local._for>.levelup_check
endif
else
party.member.<local._for>.tag0.exp += <total_exp <local.exp>>
party.member.<local._for>.sysmessage @91 [Exp Gain]: <eval <strarg <local.exp>>> experience ve <eval <strarg <streat <local.exp>>>> party experienceı kazandınız .
party.member.<local._for>.levelup_check
endif
else
party.member.<local._for>.tag0.exp += <local.exp>
party.member.<local._for>.sysmessage @91 [Exp Gain]: You gained <eval <strarg <local.exp>>> experience ve <eval <strarg <streat <local.exp>>>> party experienceı kazandınız.
party.member.<local._for>.levelup_check
endif
endfor
if (<def0.levelsys_config_guild_exp>)
if (<memoryfindtype.0400.link>)
for 0 <eval <memoryfindtype.0400.link.member.count> +-1>
if (<memoryfindtype.0400.link.member.<local._for>.isonline>)
local.exp=<guild.member.<local._for>.total_exp_extras <args>>
memoryfindtype.0400.link.member.<local._for>.tag0.exp += <total_exp <local.exp>>
if (<eval <strarg <streat <streat <streat <local.exp>>>>>> > 0)
memoryfindtype.0400.link.member.<local._for>.sysmessage @91 [Exp Gain]: <eval <strarg <local.exp>>> experience ve <eval <strarg <streat <streat <local.exp>>>>> guild experienceı ve <eval <strarg <streat <streat <streat <local.exp>>>>>> guild savaş experienceı kazandınız.
else
memoryfindtype.0400.link.member.<local._for>.sysmessage @91 [Exp Gain]: <eval <strarg <local.exp>>> experience ve <eval <strarg <streat <streat <local.exp>>>>> guild experienceı kazandınız .
endif
memoryfindtype.0400.link.member.<local._for>.levelup_check
endif
endfor
endif
endif
else
if (<def0.levelsys_config_guild_exp>)
if (<memoryfindtype.0400.link>)
for 0 <eval <memoryfindtype.0400.link.member.count> +-1>
if (<memoryfindtype.0400.link.member.<local._for>.isonline>)
local.exp=<guild.member.<local._for>.total_exp_extras <args>>
memoryfindtype.0400.link.member.<local._for>.tag0.exp += <total_exp <local.exp>>
if (<eval <strarg <streat <streat <streat <local.exp>>>>>> > 0)
memoryfindtype.0400.link.member.<local._for>.sysmessage @91 [Exp Gain]: <eval <strarg <local.exp>>> experience ve <eval <strarg <streat <streat <local.exp>>>>> guild experienceı ve <eval <strarg <streat <streat <streat <local.exp>>>>>> guild savaş experienceı kazandınız.
else
memoryfindtype.0400.link.member.<local._for>.sysmessage @91 [Exp Gain]: <eval <strarg <local.exp>>> experience ve <eval <strarg <streat <streat <local.exp>>>>> guild experienceı kazandınız.
endif
memoryfindtype.0400.link.member.<local._for>.levelup_check
endif
endfor
else
local.exp=<total_exp_extras <args>>
tag0.exp += <total_exp <local.exp>>
sysmessage @91 [Exp Gain]: <total_exp <local.exp>> Experience kazandiniz.
levelup_check
endif
else
local.exp=<total_exp_extras <args>>
tag0.exp += <total_exp <local.exp>>
sysmessage @91 [Exp Gain]: <total_exp <local.exp>> Experience kazandiniz.
levelup_check
endif
endif
else
if (<def0.levelsys_config_guild_exp>)
if (<memoryfindtype.0400.link>)
for 0 <eval <memoryfindtype.0400.link.member.count> +-1>
if (<memoryfindtype.0400.link.member.<local._for>.isonline>)
local.exp=<guild.member.<local._for>.total_exp_extras <args>>
memoryfindtype.0400.link.member.<local._for>.tag0.exp += <total_exp <local.exp>>
if (<eval <strarg <streat <streat <streat <local.exp>>>>>> > 0)
memoryfindtype.0400.link.member.<local._for>.sysmessage @91 [Exp Gain]: <eval <strarg <local.exp>>> experience ve <eval <strarg <streat <streat <local.exp>>>>> guild experienceı ve <eval <strarg <streat <streat <streat <local.exp>>>>>> guild savaş experienceı kazandınız.
else
memoryfindtype.0400.link.member.<local._for>.sysmessage @91 [Exp Gain]: You gained <eval <strarg <local.exp>>> experience ve <eval <strarg <streat <streat <local.exp>>>>> guild experienceı kazandınız.
endif
memoryfindtype.0400.link.member.<local._for>.levelup_check
endif
endfor
else
local.exp=<total_exp_extras <args>>
tag0.exp += <total_exp <local.exp>>
sysmessage @91 [Exp Gain]: You gained <total_exp <local.exp>> experience.
levelup_check
endif
else
local.exp=<total_exp_extras <args>>
tag0.exp += <total_exp <local.exp>>
sysmessage @91 [Exp Gain]: <total_exp <local.exp>> Experience kazandiniz.
levelup_check
endif
endif
else
if (<memoryfindtype.02.link>)
memoryfindtype.02.link.exp_gain <args>
endif
endif
endif
endif

[function exp_gain_death]
for x 0 <eval <attacker> +-1>
if (<attacker.<local.x>.elapsed> < <ddef0.levelsys_minimum_elapsed>)
if (<uid.<attacker.<local.x>.uid>.isplayer>)
if (<def0.levelsys_config_party_exp>)
if (<uid.<attacker.<local.x>.uid>.isinparty>)
local.party_exists=
if (<local.parties>)
for 1 <local.parties>
if (<uid.<attacker.<local.x>.uid>.party.member.0.uid>==<local.party_master<dlocal.x>>)
local.party_exists=<local._for>
endif
endfor
endif
if !(<local.party_exists>)
local.parties += 1
local.party_master<dlocal.parties>=<uid.<attacker.<local._for>.uid>.party.member.0.uid>
local.party_totalexp<dlocal.parties> += <eval <eval <attacker.<local.x>.dam> *<def0.levelsys_combat_exp>> /100>
else
local.party_totalexp<dlocal.party_exists> += <eval <eval <attacker.<local.x>.dam> *<def0.levelsys_combat_exp>> /100>
endif
else
uid.<attacker.<local.x>.uid>.exp_gain <eval <eval <attacker.<local.x>.dam> *<def0.levelsys_combat_exp>> /100>, <uid>
endif
else
uid.<attacker.<local.x>.uid>.exp_gain <eval <eval <attacker.<local.x>.dam> *<def0.levelsys_combat_exp>> /100>, <uid>
endif
else
uid.<attacker.<local.x>.uid>.exp_gain <eval <eval <attacker.<local.x>.dam> *<def0.levelsys_combat_exp>> /100>, <uid>
endif
endif
endfor
if (<local.parties>)
for 1 <local.parties>
uid.<local.party_master<dlocal._for>>.exp_gain <local.party_totalexp<dlocal._for>>, <uid>
endfor
endif

[function total_exp_extras]
if (strmatch(<strarg <args>>,levelup))
local.exp=<eval <tag0.expneeded> +-<tag0.exp>>
else
local.exp=<argn1>
endif
if (<ispowerhour <def0.levelsys_powerhour_times>>)
local.exp=<eval <eval <local.exp> *<def0.levelsys_extra_powerhour_exp>> /100>
endif
if (<def0.levelsys_config_party_exp>)
if (<isinparty>)
local.partyexp=<eval <eval <local.exp> *<def0.levelsys_extra_party_exp>> /100>
endif
endif
if (<def0.levelsys_config_guild_exp>)
if (<memoryfindtype.0400.link>)
local.guildexp=<eval <eval <local.exp> *<def0.levelsys_extra_guild_exp>> /100>
if (<def0.levelsys_extra_guild_war_exp> > 0)
if (<uid.<strarg <streat <args>>>.notogetflag <uid>>==5)
local.guildwarexp=<eval <eval <local.exp> *<def0.levelsys_extra_guild_war_exp>> /100>
endif
endif
endif
endif
return <local.exp>, <local.partyexp>, <local.guildexp>, <local.guildwarexp>

[function total_exp]
if (<argv> > 0)
for 0 <eval <argv> +-1>
local.return += <argv[<local._for>]>
endfor
endif
return <dlocal.return>

[function total_crafting_exp]
if (<argv> > 0)
for 0 <eval <argv> +-1>
if (<eval <def.<strarg <streat <argv[<local._for>]>>>> +-0c0000000> >= 0) && (<eval <def.<strarg <streat <argv[<local._for>]>>>> +-0c0000000> <= 54)
if (<serv.skill.<eval <def.<strarg <streat <argv[<local._for>]>>>> +-0c0000000>.key>==<serv.skill.<strarg <streat <argv[<local._for>]>>>.key>)
if !(<isempty <strarg <argv[<local._for>]>>>)
local.return += <strarg <argv[<local._for>]>>
endif
endif
endif
endfor
endif
return <dlocal.return>

[function levelup_check]
while (<tag0.exp> >= <tag0.expneeded>)
levelup
endwhile

[function levelup]
effect 3,i_fire_column,15,15,1 0,7
sound snd_spell_flamestrike
sound snd_spell_lightning
tag0.level += 1
message @91,0 [+Level Up+]
dorand 3
begin
local.x=<eval {1 10 3 5 5 1}>
ostr += <local.x>
end
begin
local.x=<eval {1 10 3 5 5 1}>
odex += <local.x>
end
begin
local.x=<eval {1 10 3 5 5 1}>
oint += <local.x>
end
enddo
if !(<tag0.expneeded>)
tag0.exp=
tag0.expneeded=1000
else
tag0.exp -= <tag0.expneeded>
tag0.expneeded += <eval <eval <tag0.expneeded> *<def0.levelsys_leveling_difficulty>> /100>
endif
sysmessage @91 [Level Up]: Level Atladınız <dtag0.level>

[function ispowerhour]
if (<argn1> > 0)
for 1 <argn1>
if (strmatch(<ddef0.levelsys_powerhour_time<dlocal._for>>:*,<streat <serv.rtime>>))
local.return=1
endif
endfor
endif
return <dlocal.return>

[events e_level]
on=@click
if (<tag0.level>)
message (Level: <dtag0.level>)
endif
return 0

on=@skillmakeitem
if (<def0.levelsys_config_crafting_exp>)
exp_gain <eval <eval <total_crafting_exp <act.skillmake>> *<def0.levelsys_crafting_exp>> /100>
endif

on=@gethit
if (<src.ischar>)
if (<eval <hitpoints> +-<argn1>> < 0)
src.exp_gain <eval <eval <hitpoints> *<def0.levelsys_combat_exp>> /100>, <uid>
else
src.exp_gain <eval <eval <argn1> *<def0.levelsys_combat_exp>> /100>, <uid>
endif
endif
return 0

on=@death
exp_gain_death
return 0

[events e_exp]
on=@click
if (<notogetflag>==6)
message @38 (Level: <qval <eval <eval <maxhits> +<ostr>> /50> < 1 ?1:<eval <eval <maxhits> +<ostr>> /50>>)
else
message (Level: <qval <eval <eval <maxhits> +<ostr>> /50> < 1 ?1:<eval <eval <maxhits> +<ostr>> /50>>)
endif
return 0

on=@gethit
if (<src.ischar>)
if (<eval <hitpoints> +-<argn1>> < 0)
src.exp_gain <eval <eval <hitpoints> *<def0.levelsys_combat_exp>> /100>, <uid>
else
src.exp_gain <eval <eval <argn1> *<def0.levelsys_combat_exp>> /100>, <uid>
endif
endif
return 0

on=@death
exp_gain_death
return 0

[dialog d_level_dialog]
0,0
page 0
resizepic 71 64 9270 341 201
dtext 96 88 00bd Level Bilgi Sayfasina hoş geldiniz <name>.
dtext 100 131 00bd Level -
dtext 100 171 00bd Experience -
dtext 100 211 00bd Gereken Experience-
resizepic 280 120 9350 104 38
resizepic 280 163 9350 104 38
resizepic 280 206 9350 104 38
dtext 288 131 00bd <dtag0.level>
dtext 288 216 00bd <dtag0.expneeded>
dtext 288 173 00bd <dtag0.exp>

[dialog d_level_dialog button]

[eof]

Değerlendirmeler

0 0

Total votes: 0

Üye Ol veya Giriş Yap

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

Discord ile Bağlan
Twitch ile Bağlan
Steam ile Bağlan
Google ile Bağlan

Yorumlar (0)

Henüz yorum yapılmamış
Sadece kayıtlı kullanıcılar yeni yorum yapabilir.


Ultima-Strike Discord
Benzer Sayfalar
  • Level sistemi

    2013-04-12 16:46

  • U-S Puan'a göre level sistemi

    2006-05-02 21:07

  • Geniş Çaplı Level sistemi

    2011-09-18 09:03

  • U-S Puan'a Göre Level Sistemi Aktif!

    2008-11-29 06:33

  • Orc Mağarası Level 1

    2008-07-10 06:44



  • Son Forumlar
  • Sayfalar
  • Montana LoveLACe
    Paxhistoria yapay zeka destekli web tabanlı...

    Diğer Oyunlar 1 gün önce

  • boosterx
    UO:Nimloth Yeniden Doğuyor !

    Sunucular 5 gün önce

  • Ege ERKEK
    2025 CS 1.5 TÜRK SUNUCUSU AÇILDI

    Sunucular 1 hafta önce

  • Vanq
    UO Lord British Gazinosu #5 Yayında!

    Duyurular 1 hafta önce

  • Algos
    Üyeliği 15 yıl ve üzerinde olanlar.

    Ultima Online 1 hafta önce

  • Deathwave
    Valheim’e Ultima Online Modu

    Ultima Online 1 hafta önce

  • Ege ERKEK
    Elit Donanım Modülü (EDM) | Üretimin Doruğu (Yeni...

    Ultima Online 1 hafta önce

  • JoannaLevesQue
    Üyeliği 18 yıl ve üstünde olanlar.

    Ultima Online 2 hafta önce

  • Ege ERKEK
    Kader Masası | Seçimin Yazgını Belirleyecek (Yeni...

    Ultima Online 2 hafta önce

  • Ege ERKEK
    İçerik Kaşifi Aramızda!

    Duyurular 2 hafta önce

  • Venus
    World of UO'da Geçmişe Yolculuk Başladı

    Sunucular 2 hafta önce

  • Nefrelius
    Alcor UO Reborn

    Sunucular 3 hafta önce

  • Ege ERKEK
    Ultima Online'da Alkol Üretme Sistemi!

    Ultima Online 3 hafta önce

  • Lucretius
    Son yıllarda UO tercihiniz: RP, PP (Power Play)...

    Ultima Online 3 hafta önce

  • megastro.uokings
    Nephilim Pvp

    Sunucular 3 hafta önce

  • MMORPG'de Devrim Yaptı: Sınıf Tanımayan Ultima Online!

    2025-12-27 21:13

  • Ultima Online'ın Oynanışını Tamamen Değiştiren Harita Kararı!

    2025-12-23 23:17

  • Yeni Başlayanlar İçin Ultima Online

    2025-11-27 19:07

  • Skill seçimlerinizi planlamak artık çok daha kolay

    Ultima Online Karakter Yapılandırma Aracı Bölümü Açıldı!

    2024-10-31 22:47

  • Ultima Online topluluğu, ClassicUO'nun sadece web client olarak kullanılabileceğinin açıklanmasının ardından tepkili.

    Resmi UO, Oyuncuları İkiye Böldü: Web Client Yeterli mi?

    2024-10-14 17:45

  • Ultima Online, ClassicUO ile resmi işbirliği yapıyor! Performans iyileştirmeleri, geniş oyun penceresi ve daha fazlası geliyor.

    Ultima Online, ClassicUO ile Resmi İşbirliğine Gidiyor

    2024-09-26 14:21

  • Centred#

    2024-07-08 22:50

  • CentrED+ 7.9

    2024-07-08 22:34

Menü
  • ANASAYFA
  • FORUM
  • DOKÜMAN
  • İNDİR
  • İLETİŞİM
  • Bağlantılar
  • CS 1.6 indir
  • CS 1.6 Türkçe
  • CS 1.6 Bot
  • CS 1.6 CFG
  • CS 1.6 Rate Ayarları
  • UO Server
  • Ghost Mouse indir
  • FPS Nedir?
  • Ultima Online PVP Server
  • Makroman
  • UO Karakter Yapılandırma
    © 2004 - 2026 Ultima-Strike. Her hakkı saklıdır.