Uyarlama sadece TC Offlineshop için geçerlidir. bu konudaki "K" envanter sistemine göre yapılmıştır;
başka bir "K" envanter kullanıyorsanız değiştirmeniz gereken yerler olacaktır.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
başka bir "K" envanter kullanıyorsanız değiştirmeniz gereken yerler olacaktır.
Offlineshop.cpp açın ve aratın
Değiştirin
Aratın
Değiştirin
Kod:
int cell; cell = ch->GetEmptyInventory(pItem->GetSize());
Değiştirin
Kod:
int cell; if (pItem->IsDragonSoul()) cell = ch->GetEmptyDragonSoulInventory(pItem); #ifdef WJ_SPLIT_INVENTORY_SYSTEM else if (pItem->IsSkillBook()) cell = ch->GetEmptySkillBookInventory(pItem->GetSize()); else if (pItem->IsUpgradeItem()) cell = ch->GetEmptyUpgradeItemsInventory(pItem->GetSize()); else if (pItem->IsStone()) cell = ch->GetEmptyStoneInventory(pItem->GetSize()); else if (pItem->IsSandik()) cell = ch->GetEmptySandikInventory(pItem->GetSize()); #endif else cell = ch->GetEmptyInventory(pItem->GetSize());
Aratın
Kod:
if (cell != -1) { pItem->AddToCharacter(ch, TItemPos(INVENTORY, cell)); }
Değiştirin
Kod:
if (cell != -1) { if (pItem->IsDragonSoul()) pItem->AddToCharacter(ch, TItemPos(DRAGON_SOUL_INVENTORY, cell)); #ifdef WJ_SPLIT_INVENTORY_SYSTEM else if (pItem->IsSkillBook()) pItem->AddToCharacter(ch, TItemPos(INVENTORY, cell)); else if (pItem->IsUpgradeItem()) pItem->AddToCharacter(ch, TItemPos(INVENTORY, cell)); else if (pItem->IsStone()) pItem->AddToCharacter(ch, TItemPos(INVENTORY, cell)); else if (pItem->IsSandik()) pItem->AddToCharacter(ch, TItemPos(INVENTORY, cell)); #endif else pItem->AddToCharacter(ch, TItemPos(INVENTORY,cell)); }
Aratın
Kod:
int iEmptyPos = ch->GetEmptyInventory(item->GetSize());
Değiştirin
Aratın
Değiştirin
Offlineshop_manager.cpp açın ve aratın
Değiştirin
Aratın
Değiştirin
Source ile işimiz bukadar şimdi. uiofflineshopbuilder.py açın ve aratın
Değiştirin
TC Offlineshop 'K' Envanteri Uyarlaması
Metin2 özel sunucularında oyun içi envanterin sınırlarını genişletmek ve daha fazla eşya saklama imkanı sunmak için geliştirilen sistemlerden biridir. Bu yazıda, TC Offlineshop sistemine 'K' envanteri entegrasyonunu detaylıca ele alacağız. Bu entegrasyon, oyuncuların offline durumdayken bile eşya alım-satımı yapabilmesi için kritik öneme sahiptir. Bu sistem, Metin2 özel sunucu geliştirme dünyasında sıkça kullanılan ve C++ tabanlı sistemlerde yer bulan önemli bir özelliktir.
TC Offlineshop Nedir?
TC Offlineshop, Metin2 özel sunucularında oyuncuların offline iken dahi eşya ve item satışı yapabilmelerini sağlayan gelişmiş bir sistemdir. Oyuncular, belirli slotlarda eşyalarını sergileyebilir ve diğer oyuncular bu eşyalardan satın alma yapabilir. Ancak standart envanter sınırlamaları nedeniyle, bu sistem sınırlı sayıda eşya barındırabilmektedir. İşte burada 'K' envanteri devreye girer. 'K' envanteri ile birlikte, sunucularda daha fazla eşya depolama kapasitesi oluşturulabilir.
'K' Envanteri Nedir?
'K' envanteri, Metin2'de standart envanterin ötesine geçen, yani 45x9'dan daha fazla slot sunan bir sistemdir. Bu sayede oyuncular çok daha fazla eşyayı envanterinde tutabilir. 'K' envanteri genellikle C++ kaynak kod seviyesinde geliştirilir ve hem auth hem de game sunucusunda değişiklikler yapılmasını gerektirir. Bu sistem, Metin2 geliştiricileri arasında popülerdir çünkü hem oyuncu deneyimini artırır hem de sunucu içi ekonomiyi destekler.
TC Offlineshop ile 'K' Envanteri Entegrasyonu
Bu entegrasyon işlemi, TC Offlineshop sistemine 'K' envanteri desteğini eklemeyi amaçlar. Bu sayede oyuncular, offline iken dahi 'K' envanterindeki eşyaları satışa sunabilir. İşlem sırasında yapılması gereken temel adımlar şunlardır:
1. Game Sunucusu Kaynak Kodları üzerinde 'K' envanteri desteği aktif edilmeli.
2. TC Offlineshop modülünde envanter kontrolü yapan fonksiyonlar güncellenmeli.
3. DB (veritabanı) tarafında gerekli alanlar genişletilmeli.
4. Client tarafında da envanter arayüzü 'K' envanteri destekleyecek şekilde yapılandırılmalı.
Geliştirme Aşamasında Dikkat Edilmesi Gerekenler
C++ sistemlerde yapılan bu tür değişiklikler, hata riskini artırır. Bu nedenle dikkatli test aşamalarından geçirilmelidir. Ayrıca, TC Offlineshop modülünün orijinal yapısı korunarak sadece envanter sınırları genişletilmelidir. Bu sayede sistemde oluşabilecek çakışmalar minimuma indirgenir. Python GUI veya Py Root dosyalarında da envanter kontrolü için küçük değişiklikler gerekebilir.
Sonuç
TC Offlineshop 'K' envanteri uyarlaması, Metin2 özel sunucularında kullanıcı dostu ve gelişmiş bir alışveriş sistemi sunar. Bu entegrasyon, hem sunucu sahipleri hem de oyuncular için değerli bir yenilik olarak değerlendirilebilir. Doğru uygulandığında, sunucu performansını etkilemeden güçlü bir envanter çözümü sağlar.
TC Offlineshop 'K' Inventory Adaptation
Expanding inventory limits and providing more storage space for items in Metin2 private servers is one of the systems developed for this purpose. In this article, we will detail the integration of the 'K' inventory into the TC Offlineshop system. This integration is critical for allowing players to trade items even while they are offline. This system is commonly used in the world of Metin2 private server development and found within C++ based systems.
What is TC Offlineshop?
TC Offlineshop is an advanced system that allows players on Metin2 private servers to sell items even while they are offline. Players can display their items in specific slots and other players can purchase these items. However, due to standard inventory limitations, this system can only accommodate a limited number of items. Here is where the 'K' inventory comes into play. With the 'K' inventory, more storage capacity can be created on servers.
What is 'K' Inventory?
'K' inventory is a system in Metin2 that goes beyond the standard inventory, offering more slots than the typical 45x9 layout. This allows players to store many more items in their inventory. The 'K' inventory is usually developed at the C++ source code level and requires modifications in both the auth and game servers. This system is popular among Metin2 developers because it enhances player experience and supports in-game economy.
Integration of TC Offlineshop with 'K' Inventory
This integration aims to add 'K' inventory support to the TC Offlineshop system. As a result, players can sell items from their 'K' inventory even while offline. The basic steps required during the process are:
1. Enable 'K' inventory support in the game server source codes.
2. Update functions that check inventory in the TC Offlineshop module.
3. Expand necessary fields in the database (DB).
4. Configure the inventory interface on the client side to support the 'K' inventory.
Considerations During Development
Modifications made in C++ systems increase the risk of errors. Therefore, careful testing stages must be implemented. Additionally, the original structure of the TC Offlineshop module should be preserved while only expanding the inventory limits. This minimizes potential conflicts within the system. Small changes may also be needed in Python GUI or Py Root files for inventory control.
Conclusion
The TC Offlineshop 'K' inventory adaptation offers a user-friendly and advanced trading system in Metin2 private servers. This integration can be considered a valuable update for both server owners and players. When applied correctly, it provides a robust inventory solution without affecting server performance.
Kod:
int iEmptyPos = 0; if (item->IsDragonSoul()) iEmptyPos = ch->GetEmptyDragonSoulInventory(item); #ifdef WJ_SPLIT_INVENTORY_SYSTEM else if (item->IsSkillBook()) iEmptyPos = ch->GetEmptySkillBookInventory(item->GetSize()); else if (item->IsUpgradeItem()) iEmptyPos = ch->GetEmptyUpgradeItemsInventory(item->GetSize()); else if (item->IsStone()) iEmptyPos = ch->GetEmptyStoneInventory(item->GetSize()); else if (item->IsSandik()) iEmptyPos = ch->GetEmptySandikInventory(item->GetSize()); #endif else iEmptyPos = ch->GetEmptyInventory(item->GetSize());
Aratın
Kod:
item->AddToCharacter(ch, TItemPos(INVENTORY, iEmptyPos));
Değiştirin
Kod:
if (item->IsDragonSoul()) item->AddToCharacter(ch, TItemPos(DRAGON_SOUL_INVENTORY, iEmptyPos)); #ifdef WJ_SPLIT_INVENTORY_SYSTEM else if (item->IsSkillBook()) item->AddToCharacter(ch, TItemPos(INVENTORY, iEmptyPos)); else if (item->IsUpgradeItem()) item->AddToCharacter(ch, TItemPos(INVENTORY, iEmptyPos)); else if (item->IsStone()) item->AddToCharacter(ch, TItemPos(INVENTORY, iEmptyPos)); else if (item->IsSandik()) item->AddToCharacter(ch, TItemPos(INVENTORY, iEmptyPos)); #endif else item->AddToCharacter(ch, TItemPos(INVENTORY,iEmptyPos));
Offlineshop_manager.cpp açın ve aratın
Kod:
int cell; cell = ch->GetEmptyInventory(pItem->GetSize());
Değiştirin
Kod:
int cell; if (pItem->IsDragonSoul()) cell = ch->GetEmptyDragonSoulInventory(pItem); #ifdef WJ_SPLIT_INVENTORY_SYSTEM else if (pItem->IsSkillBook()) cell = ch->GetEmptySkillBookInventory(pItem->GetSize()); else if (pItem->IsUpgradeItem()) cell = ch->GetEmptyUpgradeItemsInventory(pItem->GetSize()); else if (pItem->IsStone()) cell = ch->GetEmptyStoneInventory(pItem->GetSize()); else if (pItem->IsSandik()) cell = ch->GetEmptySandikInventory(pItem->GetSize()); #endif else cell = ch->GetEmptyInventory(pItem->GetSize());
Aratın
Kod:
if (cell != -1) { pItem->AddToCharacter(ch, TItemPos(INVENTORY, cell)); }
Değiştirin
Kod:
if (cell != -1) { if (pItem->IsDragonSoul()) pItem->AddToCharacter(ch, TItemPos(DRAGON_SOUL_INVENTORY, cell)); #ifdef WJ_SPLIT_INVENTORY_SYSTEM else if (pItem->IsSkillBook()) pItem->AddToCharacter(ch, TItemPos(INVENTORY, cell)); else if (pItem->IsUpgradeItem()) pItem->AddToCharacter(ch, TItemPos(INVENTORY, cell)); else if (pItem->IsStone()) pItem->AddToCharacter(ch, TItemPos(INVENTORY, cell)); else if (pItem->IsSandik()) pItem->AddToCharacter(ch, TItemPos(INVENTORY, cell)); #endif else pItem->AddToCharacter(ch, TItemPos(INVENTORY,cell)); }
Source ile işimiz bukadar şimdi. uiofflineshopbuilder.py açın ve aratın
Kod:
if player.SLOT_TYPE_INVENTORY != attachedSlotType and player.SLOT_TYPE_DRAGON_SOUL_INVENTORY != attachedSlotType:
Değiştirin
Kod:
if (player.SLOT_TYPE_INVENTORY != attachedSlotType and player.SLOT_TYPE_DRAGON_SOUL_INVENTORY != attachedSlotType and player.SLOT_TYPE_SKILL_BOOK_INVENTORY != attachedSlotType and player.SLOT_TYPE_UPGRADE_ITEMS_INVENTORY != attachedSlotType and player.SLOT_TYPE_STONE_INVENTORY != attachedSlotType and player.SLOT_TYPE_SANDIK_INVENTORY != attachedSlotType):
TC Offlineshop 'K' Envanteri Uyarlaması
Metin2 özel sunucularında oyun içi envanterin sınırlarını genişletmek ve daha fazla eşya saklama imkanı sunmak için geliştirilen sistemlerden biridir. Bu yazıda, TC Offlineshop sistemine 'K' envanteri entegrasyonunu detaylıca ele alacağız. Bu entegrasyon, oyuncuların offline durumdayken bile eşya alım-satımı yapabilmesi için kritik öneme sahiptir. Bu sistem, Metin2 özel sunucu geliştirme dünyasında sıkça kullanılan ve C++ tabanlı sistemlerde yer bulan önemli bir özelliktir.
TC Offlineshop Nedir?
TC Offlineshop, Metin2 özel sunucularında oyuncuların offline iken dahi eşya ve item satışı yapabilmelerini sağlayan gelişmiş bir sistemdir. Oyuncular, belirli slotlarda eşyalarını sergileyebilir ve diğer oyuncular bu eşyalardan satın alma yapabilir. Ancak standart envanter sınırlamaları nedeniyle, bu sistem sınırlı sayıda eşya barındırabilmektedir. İşte burada 'K' envanteri devreye girer. 'K' envanteri ile birlikte, sunucularda daha fazla eşya depolama kapasitesi oluşturulabilir.
'K' Envanteri Nedir?
'K' envanteri, Metin2'de standart envanterin ötesine geçen, yani 45x9'dan daha fazla slot sunan bir sistemdir. Bu sayede oyuncular çok daha fazla eşyayı envanterinde tutabilir. 'K' envanteri genellikle C++ kaynak kod seviyesinde geliştirilir ve hem auth hem de game sunucusunda değişiklikler yapılmasını gerektirir. Bu sistem, Metin2 geliştiricileri arasında popülerdir çünkü hem oyuncu deneyimini artırır hem de sunucu içi ekonomiyi destekler.
TC Offlineshop ile 'K' Envanteri Entegrasyonu
Bu entegrasyon işlemi, TC Offlineshop sistemine 'K' envanteri desteğini eklemeyi amaçlar. Bu sayede oyuncular, offline iken dahi 'K' envanterindeki eşyaları satışa sunabilir. İşlem sırasında yapılması gereken temel adımlar şunlardır:
1. Game Sunucusu Kaynak Kodları üzerinde 'K' envanteri desteği aktif edilmeli.
2. TC Offlineshop modülünde envanter kontrolü yapan fonksiyonlar güncellenmeli.
3. DB (veritabanı) tarafında gerekli alanlar genişletilmeli.
4. Client tarafında da envanter arayüzü 'K' envanteri destekleyecek şekilde yapılandırılmalı.
Geliştirme Aşamasında Dikkat Edilmesi Gerekenler
C++ sistemlerde yapılan bu tür değişiklikler, hata riskini artırır. Bu nedenle dikkatli test aşamalarından geçirilmelidir. Ayrıca, TC Offlineshop modülünün orijinal yapısı korunarak sadece envanter sınırları genişletilmelidir. Bu sayede sistemde oluşabilecek çakışmalar minimuma indirgenir. Python GUI veya Py Root dosyalarında da envanter kontrolü için küçük değişiklikler gerekebilir.
Sonuç
TC Offlineshop 'K' envanteri uyarlaması, Metin2 özel sunucularında kullanıcı dostu ve gelişmiş bir alışveriş sistemi sunar. Bu entegrasyon, hem sunucu sahipleri hem de oyuncular için değerli bir yenilik olarak değerlendirilebilir. Doğru uygulandığında, sunucu performansını etkilemeden güçlü bir envanter çözümü sağlar.
TC Offlineshop 'K' Inventory Adaptation
Expanding inventory limits and providing more storage space for items in Metin2 private servers is one of the systems developed for this purpose. In this article, we will detail the integration of the 'K' inventory into the TC Offlineshop system. This integration is critical for allowing players to trade items even while they are offline. This system is commonly used in the world of Metin2 private server development and found within C++ based systems.
What is TC Offlineshop?
TC Offlineshop is an advanced system that allows players on Metin2 private servers to sell items even while they are offline. Players can display their items in specific slots and other players can purchase these items. However, due to standard inventory limitations, this system can only accommodate a limited number of items. Here is where the 'K' inventory comes into play. With the 'K' inventory, more storage capacity can be created on servers.
What is 'K' Inventory?
'K' inventory is a system in Metin2 that goes beyond the standard inventory, offering more slots than the typical 45x9 layout. This allows players to store many more items in their inventory. The 'K' inventory is usually developed at the C++ source code level and requires modifications in both the auth and game servers. This system is popular among Metin2 developers because it enhances player experience and supports in-game economy.
Integration of TC Offlineshop with 'K' Inventory
This integration aims to add 'K' inventory support to the TC Offlineshop system. As a result, players can sell items from their 'K' inventory even while offline. The basic steps required during the process are:
1. Enable 'K' inventory support in the game server source codes.
2. Update functions that check inventory in the TC Offlineshop module.
3. Expand necessary fields in the database (DB).
4. Configure the inventory interface on the client side to support the 'K' inventory.
Considerations During Development
Modifications made in C++ systems increase the risk of errors. Therefore, careful testing stages must be implemented. Additionally, the original structure of the TC Offlineshop module should be preserved while only expanding the inventory limits. This minimizes potential conflicts within the system. Small changes may also be needed in Python GUI or Py Root files for inventory control.
Conclusion
The TC Offlineshop 'K' inventory adaptation offers a user-friendly and advanced trading system in Metin2 private servers. This integration can be considered a valuable update for both server owners and players. When applied correctly, it provides a robust inventory solution without affecting server performance.
