İlan
05 Haz 2026 22 çevrimiçi üye Duyurular
Ana Sayfa Quests
Ana Sayfa Forum Quests Metin2 Gelişmiş Ustalık Sistemi (Yetenek Ağacı) - ...
İlan Yan banner placeholder

Metin2 Gelişmiş Ustalık Sistemi (Yetenek Ağacı) - Seviye Atladıkça Kalıcı Bonus!

SemihGULSOY 09.04.2026 01:55 604 görüntüleme 18 cevap
Son Mesaj
SemihGULSOY
Üye
Üye
Katılım13 Oca 2026
Konular8
Mesajlar34
Elmas Konular0
Başarım0
ZirveCoin 0
Ticaret Puanı
+0 -0
09.04.2026 01:55 #1
Bu sistem, oyunculara RPG tarzında karakter uzmanlık seçme imkânı sunmaktadır ,oyuncular NPC ile konuşarak, karakterlerinin sınıfına göre üç farklı uzmanlıktan birini seçebiliyor seçilen uzmanlık, seviye atlandıkça otomatik olarak karaktere bonuslar verir

Sistem tamamen Türkçe ve sade bir şekilde yazıldı
Hem erkek hem de kadın karakterler destekleniyor ,bu sayede tüm karakterler sistemden sorunsuz faydalanabiliyor.
Oyuncular seviye atladıkça, seçtikleri uzmanlığa göre stat bonusları alır
Oyuncular NPC ile konuşarak uzmanlıklarını seçiyor; seçim onaylandıktan sonra bonuslar otomatik olarak uygulanıyor.

Sistem, Metin2’de RPG deneyimini güçlendirmek ve karakter gelişimini daha dinamik hâle getirmek isteyen sunucular için idealdir.
Not: Forumda iyi şekilde taradım fakat buna benzer konu olmadığını gördüm,aynı benzeri varsada bildirirseniz kilitleriz.İllaki hatalar olabiliyor,ustalar yardımcı olursa seviniriz.

Lua:
local uzmanliklar = {
    [0] = { -- Savaşçı (Erkek)
        {isim="Barbar", aciklama="Fiziksel gücü yüksek acımasız savaşçı. Bonus: Can ve Güç.", bonus={ht=2, st=2}},
        {isim="Koruyucu", aciklama="Diğerlerini koruyan sağlam savaşçı. Bonus: Can ve Savunma.", bonus={ht=3, st=1}},
        {isim="Denge", aciklama="Güç ve savunmayı dengeli kullanan savaşçı.", bonus={ht=1, st=1, dx=1}}
    },
    [1] = { -- Ninja (Erkek)
        {isim="Suikastçi", aciklama="Hızlı ve sessiz saldırılarda uzman. Bonus: Çeviklik ve Güç.", bonus={dx=3, st=1}},
        {isim="Gölge Ustası", aciklama="Çevik ve hassas ninja. Bonus: Çeviklik ve Hassasiyet.", bonus={dx=2, st=2}},
        {isim="Denge", aciklama="Çeviklik ve gücü dengeli kullanan ninja. Bonus: Çeviklik, Güç ve Zeka.", bonus={dx=2, st=1, iq=1}}
    },
    [2] = { -- Sura (Erkek)
        {isim="Savaş Sura", aciklama="Fiziksel saldırılarda güçlü sura. Bonus: Güç ve Zeka.", bonus={st=2, iq=1}},
        {isim="Büyü Sura", aciklama="Güçlü büyülerle hasar veren sura. Bonus: Güç ve Zeka.", bonus={st=1, iq=2}},
        {isim="Denge", aciklama="Güç ve büyüyü dengeli kullanan sura. Bonus: Güç, Zeka ve Çeviklik.", bonus={st=2, iq=1, dx=1}}
    },
    [3] = { -- Şaman (Erkek)
        {isim="Toprak Şaman", aciklama="Toprak büyüsü ile can güçlendirir. Bonus: Zeka ve Can.", bonus={iq=3, ht=1}},
        {isim="Su Şaman", aciklama="Su büyüsü ile mana artırır. Bonus: Zeka ve Mana.", bonus={iq=2, ht=2}},
        {isim="Denge", aciklama="Büyü ve canı dengeli kullanan şaman. Bonus: Zeka, Can ve Çeviklik.", bonus={iq=2, ht=1, dx=1}}
    }
}

-- Kadın karakter yönlendirmeleri
uzmanliklar[4] = uzmanliklar[0]
uzmanliklar[5] = uzmanliklar[1]
uzmanliklar[6] = uzmanliklar[2]
uzmanliklar[7] = uzmanliklar[3]

quest uzmanlik_secimi begin
    state start begin
        when login begin
            if pc.getqf("uzmanlik_intro_yapildi") == 0 then
                send_letter("Uzmanlık - Koruyucu ile konuşun")
            end
        end

        when 11000.chat."Uzmanlık Seç" or 11002.chat."Uzmanlık Seç" or 11004.chat."Uzmanlık Seç" begin
            if pc.getqf("uzmanlik_secildi") == 0 then
                local job = pc.get_job()
                if uzmanliklar[job] then
                    local choices = uzmanliklar[job]
                    while true do
                        local secim = select(choices[1].isim, choices[2].isim, choices[3].isim, "Geri")
                        if secim == 4 or not secim then
                            say("Seçim iptal edildi.")
                            return
                        else
                            local secilen = choices[secim]
                            say("Seçiminiz: " .. secilen.isim)
                            say(secilen.aciklama)
                            local onay = select("Onayla", "Geri")
                            if onay == 1 then
                                pc.setqf("uzmanlik_temp", secim)
                                break
                            else
                                say("Başlangıç ekranına dönülüyor.")
                            end
                        end
                    end

                    local secim = pc.getqf("uzmanlik_temp")
                    local secilen = choices[secim]
                    pc.setqf("uzmanlik_secildi", 1)
                    pc.setqf("uzmanlik", secim)
                    pc.setqf("uzmanlik_ismi", secilen.isim)
                    say("Uzmanlık seçiminiz onaylandı: " .. secilen.isim)
                    pc.setqf("uzmanlik_intro_yapildi", 1)
                    pc.setqf("uzmanlik_temp", nil)
                else
                    say("Bu karakter uzmanlık seçemez.")
                end
            else
                say("Zaten uzmanlık seçiminizi yaptınız.")
            end
        end
    end

    state bonus_uygula begin
        when levelup begin
            if pc.getqf("uzmanlik_secildi") == 1 then
                local job = pc.get_job()
                local secim = pc.getqf("uzmanlik")
                local bonuslar = uzmanliklar[job][secim].bonus
                for stat, deger in pairs(bonuslar) do
                    if stat == "ht" then pc.set_ht(pc.get_ht() + deger)
                    elseif stat == "st" then pc.set_st(pc.get_st() + deger)
                    elseif stat == "dx" then pc.set_dx(pc.get_dx() + deger)
                    elseif stat == "iq" then pc.set_iq(pc.get_iq() + deger)
                    end
                end
            end
        end
    end
end


Kodun Orjinali:Talent Tree LUA by Agronaque512

Orijinal kod sadece erkek karakterleri kapsamaktadır. Metin2’de aynı sınıfın kadın karakterleri farklı numaralara sahip olduğu için sistem kadın karakterlerde çalışmıyor.Ben yinede orjinalinide paylaşayım.Siz kendinize göre geliştirebilirsiniz.

Lua:
local specializations = {
    [0] = { -- Warrior
        {
            name = "Barbarian",
            desc = "A brutal warrior with great physical strength. Bonus: Vitality and Strength.",
            bonus = {ht = 2, st = 2}
        },
        {
            name = "Guardian",
            desc = "A solid warrior protecting others. Bonus: Vitality and Defense.",
            bonus = {ht = 3, st = 1}
        },
        {
            name = "Balance",
            desc = "A warrior who maintains a good balance between strength and defense.",
            bonus = {ht = 1, st = 1, dx = 1}
        }
    },
    [1] = { -- Ninja
        {
            name = "Assassin",
            desc = "An expert in quick and stealthy attacks. Bonus: Dexterity and Strength.",
            bonus = {dx = 3, st = 1}
        },
        {
            name = "Shadow Master",
            desc = "An agile ninja with great precision. Bonus: Dexterity and Precision.",
            bonus = {dx = 2, st = 2}
        },
        {
            name = "Balance",
            desc = "A ninja who maintains a good balance between agility and strength.",
            bonus = {dx = 2, st = 1, iq = 1}
        }
    },
    [2] = { -- Sura
        {
            name = "War Sura",
            desc = "A powerful sura specialized in physical attacks. Bonus: Strength and Magic.",
            bonus = {st = 2, iq = 1}
        },
        {
            name = "Magic Sura",
            desc = "A sura who uses powerful spells to deal damage. Bonus: Strength and Magic.",
            bonus = {st = 1, iq = 2}
        },
        {
            name = "Balance",
            desc = "A sura who maintains a good balance between strength and magic.",
            bonus = {st = 2, iq = 1, dx = 1}
        }
    },
    [3] = { -- Shaman
        {
            name = "Earth Shaman",
            desc = "A shaman who uses earth magic to strengthen vitality. Bonus: Intelligence and Vitality.",
            bonus = {iq = 3, ht = 1}
        },
        {
            name = "Water Shaman",
            desc = "A shaman who uses water magic to increase mana. Bonus: Intelligence and Mana.",
            bonus = {iq = 2, ht = 2}
        },
        {
            name = "Balance",
            desc = "A shaman who maintains a good balance between magic and vitality.",
            bonus = {iq = 2, ht = 1, dx = 1}
        }
    }
}
SemihGULSOY
Üye
Üye
Katılım13 Oca 2026
Konular8
Mesajlar34
Elmas Konular0
Başarım0
ZirveCoin 0
Ticaret Puanı
+0 -0
04.05.2026 06:56 #2
teşekkürler hocam emeğinize sağlık biraz değiştirip kullanacağım takıldığım yerler olursa rahatsız ederim eğer müsadeniz olursa eline sağlık
samutm
Üye
Üye
Katılım23 Ara 2025
Konular15
Mesajlar64
Elmas Konular0
Başarım0
ZirveCoin 0
Ticaret Puanı
+0 -0
05.05.2026 11:21 #3
teşekkürler hocam emeğinize sağlık biraz değiştirip kullanacağım takıldığım yerler olursa rahatsız ederim eğer müsadeniz olursa eline sağlık
bilalern10
Üye
Üye
Katılım13 Mar 2026
Konular7
Mesajlar59
Elmas Konular0
Başarım0
ZirveCoin 0
Ticaret Puanı
+0 -0
05.05.2026 19:32 #4
Elinize sağlık, paylaşım için teşekkürler.
atakanki
Üye
Üye
Katılım01 Şub 2026
Konular6
Mesajlar57
Elmas Konular0
Başarım0
ZirveCoin 0
Ticaret Puanı
+0 -0
06.05.2026 23:38 #5
Eline Sağlık
oyunkodu
Üye
Üye
Katılım15 Ara 2025
Konular6
Mesajlar62
Elmas Konular0
Başarım0
ZirveCoin 0
Ticaret Puanı
+0 -0
07.05.2026 20:19 #6
Paylaşım için teşekkürler işime yarar sol hocam.
KaanBULUT
Üye
Üye
Katılım17 Nis 2026
Konular10
Mesajlar55
Elmas Konular0
Başarım0
ZirveCoin 0
Ticaret Puanı
+0 -0
07.05.2026 23:17 #7
Eline sağlık
Cengaver1
Üye
Üye
Katılım06 Nis 2026
Konular7
Mesajlar73
Elmas Konular0
Başarım0
ZirveCoin 0
Ticaret Puanı
+0 -0
07.05.2026 23:21 #8
PAYLAŞIM İÇİN TEŞEKKÜRLER
Bu konuyu görüntüleyenler
1 misafir
Cevap yazmak için giriş yapın.
Benzer Konular
18 cevap
2K görüntüleme
Yeni Fantezi Rölenti Oluşturma Yöntemi
Kirkhammett · 02 Nis 2026
19 cevap
2K görüntüleme
11 cevap
1.9K görüntüleme
Yeni Quest I Kelle Avcısı
EniyiSunucum · 11 Nis 2026
16 cevap
1.9K görüntüleme
65 - 250 Jackpot Sistemi | Quest
Gusav · 28 Mar 2026
6 cevap
1.9K görüntüleme
İlan Yan banner placeholder