metin2 de iç itemlerinize eklediğin cevherlerin vermiş olduğu özellikler constants.cpp dosyasındaki aiAccessorySocketEffectivePct kısmındaki oranlara göre hesaplanır.
tabi teoride öyle ama pratikte pekte öyle çalışmıyor. Bu fix bu durumu düzeltmenize yarar.
Fixden Önce
Fixten Sonra
Fix;
Metin2 Özel Sunucularında Accessory Percent Fix Sistemi
Metin2 özel sunucu geliştirme sürecinde, oyuncuların ekipmanlarını geliştirmelerine olanak tanıyan sistemlerden biri de 'Accessory Percent Fix' yani 'Takı Yüzdesi Düzeltme' sistemidir. Bu sistem, oyuncuların takı (ring, necklace gibi) item'larını daha yüksek yüzdelere kadar yükseltmelerini sağlar. Normal Metin2 sunucularında takıların belirli bir seviyeye kadar yükseltilebilmesi mümkünken, özel sunucularda bu sistem daha da geliştirilerek yüzdelik artışlar sağlanabilir. Bu sayede oyuncuların karakter güçlerini artırmaları kolaylaşır ve oyun deneyimi daha keyifli hale gelir.
Neden Accessory Percent Fix Gereklidir?
Metin2 özel sunucularında oyuncular genellikle güçlü item'lar elde etmek için yoğun çaba sarf ederler. Ancak standart sistemlerde takılar belli bir seviyeye kadar yükseltilebildiği için, bu süreçte bazı sınırlamalar oluşur. Accessory Percent Fix sistemi, bu sınırlamayı kaldırarak oyuncuların daha fazla yükseltme yapabilmesini sağlar. Özellikle PvP sunucularında güçlü ekipmanlar çok önemlidir ve bu sistem sayesinde oyuncular daha dengeli bir mücadele ortamı yaratılır.
Sistem Nasıl Çalışır?
Bu sistem genellikle C++ tabanlı sunucu kaynak kodlarında geliştirilir. Oyun sunucusunun 'game' modülünde bulunan item yükseltme mekanizması üzerinde değişiklik yapılır. Sistem, oyuncunun takıya uyguladığı yükseltme işlemini tanımlanan yüzdelik aralığa göre hesaplar. Örneğin, normalde %70 şansla yükselen bir takı, bu sistemle %90'a kadar çıkartılabilir. Bu, hem oyuncu motivasyonunu artırır hem de sunucunuzun diğerlerinden farklı olmasında büyük rol oynar.
Python GUI ve Script Entegrasyonu
Sistem genellikle Python ile yazılmış GUI arayüzlerle entegre çalışır. Bu sayede admin paneli üzerinden yüzdelik oranlar kolayca ayarlanabilir. Ayrıca py root klasörlerinde yer alan script dosyalarında yapılan değişiklikler ile sistem aktif hale getirilir. Bu scriptler, oyuncunun yükseltme işlemi sırasında hangi şansla başarılı olacağını belirler. UIScript dosyalarında ise kullanıcı arayüzüne özel butonlar veya bilgi ekranları eklenerek sistem daha kullanıcı dostu hale getirilir.
Database (DB) Ayarları
Bu sistem ayrıca DB tarafında da değişiklikler gerektirir. Takıların yükseltme verileri, sunucu veritabanında tutulur. Yeni sistemle birlikte bu veriler daha fazla değer alabilecek şekilde yapılandırılır. Auth sunucusu ile oyun sunucusu arasında senkronizasyon sağlanarak, her yükseltme işlemi doğru şekilde veritabanına yazılır. Bu, sunucu güvenliği açısından kritik öneme sahiptir.
Compile ve Source Edit İşlemleri
Sistemin düzgün çalışması için source edit işlemleri yapılır. C++ tabanlı sunucu kaynak kodları derlenerek yeni sistem entegre edilir. Bu işlemler sırasında Metin2 Compile araçları kullanılır. Hataların önlenmesi için test sunucularında bu sistem öncelikle denenmelidir. Geliştirme sürecinde Martysama gibi kaynaklar da destek sağlayabilir.
Sonuç
Accessory Percent Fix sistemi, Metin2 özel sunucularında oyuncu memnuniyetini artıran önemli bir özelliktir. Hem teknik hem de oyun içi denge açısından düşünüldüğünde, doğru uygulandığında sunucunuzun popülerliğini artıracaktır. Metin2 Lobby olarak bu tür gelişmiş sistemleri sunucularınıza entegre ederek oyuncularınız için daha keyifli bir deneyim yaratabilirsiniz.
Accessory Percent Fix System on Metin2 Private Servers
During the process of developing Metin2 private servers, one of the systems that allow players to enhance their equipment is the 'Accessory Percent Fix' system. This system allows players to upgrade accessories like rings and necklaces up to higher percentages. While standard Metin2 servers limit upgrades for accessories up to certain levels, this system can be enhanced on private servers to provide percentage increases. This makes it easier for players to strengthen their characters and enhances the overall gaming experience.
Why Is Accessory Percent Fix Necessary?
On Metin2 private servers, players often invest significant effort to obtain powerful items. However, standard systems only allow accessories to be upgraded up to certain levels, creating limitations. The Accessory Percent Fix system removes these limitations, allowing players to perform more upgrades. In particular, strong equipment is very important in PvP servers, and this system helps create a more balanced combat environment.
How Does the System Work?
The system is generally developed within C++ based server source codes. Modifications are made to the item enhancement mechanism located in the 'game' module of the server. The system calculates upgrade attempts on accessories according to predefined percentage ranges. For instance, an accessory with a 70% chance to upgrade can be increased up to 90% with this system. This boosts player motivation and differentiates your server from others.
Python GUI and Script Integration
The system typically works integrated with GUI interfaces written in Python. This allows administrators to easily adjust percentage values through control panels. Changes made in script files located in the py root folder activate the system. These scripts determine the success rate during upgrade attempts. Additionally, special buttons or information screens can be added into UIScript files to make the user interface more user-friendly.
Database (DB) Settings
This system also requires modifications on the DB side. Upgrade data for accessories is stored in the server database. With the new system, these values are configured to accept higher numerical inputs. Synchronization between the auth and game servers ensures each upgrade is correctly recorded in the database, which is critical for server security.
Compile and Source Edit Operations
To ensure proper functionality, source edit operations are performed. C++ based server source codes are compiled to integrate the new system. During these processes, Metin2 Compile tools are used. Errors should be prevented by testing the system first on test servers. Resources such as Martysama can provide support during development.
Conclusion
The Accessory Percent Fix system is an important feature that increases player satisfaction on Metin2 private servers. When considered both technically and in terms of in-game balance, its correct implementation will increase your server's popularity. At Metin2 Lobby, integrating such advanced systems into your servers can create a more enjoyable experience for your players.
Kod:
const int aiAccessorySocketEffectivePct[ITEM_ACCESSORY_SOCKET_MAX_NUM + 1] = { 0, 10, 20, 40 };
tabi teoride öyle ama pratikte pekte öyle çalışmıyor. Bu fix bu durumu düzeltmenize yarar.
Fixden Önce
Fixten Sonra
Fix;
Kod:
//Arat; for (int i = 0; i < ITEM_APPLY_MAX_NUM; ++i) { if (m_pProto->aApplies[i].bType == APPLY_NONE) continue; long value = m_pProto->aApplies[i].lValue; if (m_pProto->aApplies[i].bType == APPLY_SKILL) { m_pOwner->ApplyPoint(m_pProto->aApplies[i].bType, bAdd ? value : value ^ 0x00800000); } else { if (0 != accessoryGrade) value += MAX(accessoryGrade, value * aiAccessorySocketEffectivePct[accessoryGrade] / 100); m_pOwner->ApplyPoint(m_pProto->aApplies[i].bType, bAdd ? value : -value); } } //Değiştir; for (int i = 0; i < ITEM_APPLY_MAX_NUM; ++i) { const auto& apply = m_pProto->aApplies[i]; if (apply.bType == APPLY_NONE) continue; long value = apply.lValue; if (apply.bType == APPLY_SKILL) { m_pOwner->ApplyPoint(apply.bType, bAdd ? value : value ^ 0x00800000); } else { if (accessoryGrade > 0) { long totalBonus = 0; for (int j = 0; j < accessoryGrade; ++j) { totalBonus += MAX(1, value * aiAccessorySocketEffectivePct[j + 1] / 100); } value += totalBonus; } m_pOwner->ApplyPoint(apply.bType, bAdd ? value : -value); } }
Kod:
#Arat; def __AppendAccessoryMetinSlotInfo(self, metinSlot, mtrlVnum): ACCESSORY_SOCKET_MAX_SIZE = 3 cur=min(metinSlot[0], ACCESSORY_SOCKET_MAX_SIZE) end=min(metinSlot[1], ACCESSORY_SOCKET_MAX_SIZE) affectType1, affectValue1 = item.GetAffect(0) affectList1=[0, max(1, affectValue1*10/100), max(2, affectValue1*20/100), max(3, affectValue1*40/100)] affectType2, affectValue2 = item.GetAffect(1) affectList2=[0, max(1, affectValue2*10/100), max(2, affectValue2*20/100), max(3, affectValue2*40/100)] mtrlPos=0 mtrlList=[mtrlVnum]*cur+[player.METIN_SOCKET_TYPE_SILVER]*(end-cur) for mtrl in mtrlList: affectString1 = self.__GetAffectString(affectType1, affectList1[mtrlPos+1]-affectList1[mtrlPos]) affectString2 = self.__GetAffectString(affectType2, affectList2[mtrlPos+1]-affectList2[mtrlPos]) leftTime = 0 if cur == mtrlPos+1: leftTime=metinSlot[2] self.__AppendMetinSlotInfo_AppendMetinSocketData(mtrlPos, mtrl, affectString1, affectString2, leftTime) mtrlPos+=1 #Değiştir; def #DeğiştirryMetinSl#D#DeğiştirsoryMetinSlInfo(self ACCESSORY_SOCKET_MAX_SIZE = 3 cur=min(metinSlot[0], ACCESSORY_SOCKET_MAX_SIZE) end=min(metinSlot[1], ACCESSORY_SOCKET_MAX_SIZE) affectType1, affectValue1 = item.GetAffect(0) affectType2, affectValue2 = item.GetAffect(1) percentList = [0, 10, 20, 40] affectList1=[0] affectList2=[0] for pct in percentList[1:]: affectList1.append(max(1, affectValue1 * pct / 100)) affectList2.append(max(1, affectValue2 * pct / 100)) mtrlPos=0 mtrlList = [mtrlVnum] * cur + [player.METIN_SOCKET_TYPE_SILVER] * (end - cur) for mtrl in mtrlList: affectString1 = self.__GetAffectString(affectType1, affectList1[mtrlPos+1]) affectString2 = self.__GetAffectString(affectType2, affectList2[mtrlPos+1]) leftTime = 0 if cur == mtrlPos+1: leftTime=metinSlot[2] self.__AppendMetinSlotInfo_AppendMetinSocketData(mtrlPos, mtrl, affectString1, affectString2, leftTime) mtrlPos+=1
Metin2 Özel Sunucularında Accessory Percent Fix Sistemi
Metin2 özel sunucu geliştirme sürecinde, oyuncuların ekipmanlarını geliştirmelerine olanak tanıyan sistemlerden biri de 'Accessory Percent Fix' yani 'Takı Yüzdesi Düzeltme' sistemidir. Bu sistem, oyuncuların takı (ring, necklace gibi) item'larını daha yüksek yüzdelere kadar yükseltmelerini sağlar. Normal Metin2 sunucularında takıların belirli bir seviyeye kadar yükseltilebilmesi mümkünken, özel sunucularda bu sistem daha da geliştirilerek yüzdelik artışlar sağlanabilir. Bu sayede oyuncuların karakter güçlerini artırmaları kolaylaşır ve oyun deneyimi daha keyifli hale gelir.
Neden Accessory Percent Fix Gereklidir?
Metin2 özel sunucularında oyuncular genellikle güçlü item'lar elde etmek için yoğun çaba sarf ederler. Ancak standart sistemlerde takılar belli bir seviyeye kadar yükseltilebildiği için, bu süreçte bazı sınırlamalar oluşur. Accessory Percent Fix sistemi, bu sınırlamayı kaldırarak oyuncuların daha fazla yükseltme yapabilmesini sağlar. Özellikle PvP sunucularında güçlü ekipmanlar çok önemlidir ve bu sistem sayesinde oyuncular daha dengeli bir mücadele ortamı yaratılır.
Sistem Nasıl Çalışır?
Bu sistem genellikle C++ tabanlı sunucu kaynak kodlarında geliştirilir. Oyun sunucusunun 'game' modülünde bulunan item yükseltme mekanizması üzerinde değişiklik yapılır. Sistem, oyuncunun takıya uyguladığı yükseltme işlemini tanımlanan yüzdelik aralığa göre hesaplar. Örneğin, normalde %70 şansla yükselen bir takı, bu sistemle %90'a kadar çıkartılabilir. Bu, hem oyuncu motivasyonunu artırır hem de sunucunuzun diğerlerinden farklı olmasında büyük rol oynar.
Python GUI ve Script Entegrasyonu
Sistem genellikle Python ile yazılmış GUI arayüzlerle entegre çalışır. Bu sayede admin paneli üzerinden yüzdelik oranlar kolayca ayarlanabilir. Ayrıca py root klasörlerinde yer alan script dosyalarında yapılan değişiklikler ile sistem aktif hale getirilir. Bu scriptler, oyuncunun yükseltme işlemi sırasında hangi şansla başarılı olacağını belirler. UIScript dosyalarında ise kullanıcı arayüzüne özel butonlar veya bilgi ekranları eklenerek sistem daha kullanıcı dostu hale getirilir.
Database (DB) Ayarları
Bu sistem ayrıca DB tarafında da değişiklikler gerektirir. Takıların yükseltme verileri, sunucu veritabanında tutulur. Yeni sistemle birlikte bu veriler daha fazla değer alabilecek şekilde yapılandırılır. Auth sunucusu ile oyun sunucusu arasında senkronizasyon sağlanarak, her yükseltme işlemi doğru şekilde veritabanına yazılır. Bu, sunucu güvenliği açısından kritik öneme sahiptir.
Compile ve Source Edit İşlemleri
Sistemin düzgün çalışması için source edit işlemleri yapılır. C++ tabanlı sunucu kaynak kodları derlenerek yeni sistem entegre edilir. Bu işlemler sırasında Metin2 Compile araçları kullanılır. Hataların önlenmesi için test sunucularında bu sistem öncelikle denenmelidir. Geliştirme sürecinde Martysama gibi kaynaklar da destek sağlayabilir.
Sonuç
Accessory Percent Fix sistemi, Metin2 özel sunucularında oyuncu memnuniyetini artıran önemli bir özelliktir. Hem teknik hem de oyun içi denge açısından düşünüldüğünde, doğru uygulandığında sunucunuzun popülerliğini artıracaktır. Metin2 Lobby olarak bu tür gelişmiş sistemleri sunucularınıza entegre ederek oyuncularınız için daha keyifli bir deneyim yaratabilirsiniz.
Accessory Percent Fix System on Metin2 Private Servers
During the process of developing Metin2 private servers, one of the systems that allow players to enhance their equipment is the 'Accessory Percent Fix' system. This system allows players to upgrade accessories like rings and necklaces up to higher percentages. While standard Metin2 servers limit upgrades for accessories up to certain levels, this system can be enhanced on private servers to provide percentage increases. This makes it easier for players to strengthen their characters and enhances the overall gaming experience.
Why Is Accessory Percent Fix Necessary?
On Metin2 private servers, players often invest significant effort to obtain powerful items. However, standard systems only allow accessories to be upgraded up to certain levels, creating limitations. The Accessory Percent Fix system removes these limitations, allowing players to perform more upgrades. In particular, strong equipment is very important in PvP servers, and this system helps create a more balanced combat environment.
How Does the System Work?
The system is generally developed within C++ based server source codes. Modifications are made to the item enhancement mechanism located in the 'game' module of the server. The system calculates upgrade attempts on accessories according to predefined percentage ranges. For instance, an accessory with a 70% chance to upgrade can be increased up to 90% with this system. This boosts player motivation and differentiates your server from others.
Python GUI and Script Integration
The system typically works integrated with GUI interfaces written in Python. This allows administrators to easily adjust percentage values through control panels. Changes made in script files located in the py root folder activate the system. These scripts determine the success rate during upgrade attempts. Additionally, special buttons or information screens can be added into UIScript files to make the user interface more user-friendly.
Database (DB) Settings
This system also requires modifications on the DB side. Upgrade data for accessories is stored in the server database. With the new system, these values are configured to accept higher numerical inputs. Synchronization between the auth and game servers ensures each upgrade is correctly recorded in the database, which is critical for server security.
Compile and Source Edit Operations
To ensure proper functionality, source edit operations are performed. C++ based server source codes are compiled to integrate the new system. During these processes, Metin2 Compile tools are used. Errors should be prevented by testing the system first on test servers. Resources such as Martysama can provide support during development.
Conclusion
The Accessory Percent Fix system is an important feature that increases player satisfaction on Metin2 private servers. When considered both technically and in terms of in-game balance, its correct implementation will increase your server's popularity. At Metin2 Lobby, integrating such advanced systems into your servers can create a more enjoyable experience for your players.
