1.) Bu fonksiyonlar genelde nerelerde kullanılır?
" Fonksiyonlar döngü bloklarının içinde kullanılır ve işlemi gerçekleştirirler . Genellikle if > olarak kullanılırlar fakat daha birçok alternatifi mevcuttur . Örnek verelim;
Bu 70006 itemine tıklandığında Mor İksir efekti çıkarmasını sağlayacaktır .
Bunun gibi güzel küçük sistemleri Gamenize aşağıdaki fonksiyonlar sayesinde ekleyebilirsiniz;
Efekler;
İtem Fonksiyonları;
Bunun yanında unutmamak gerekir, ()-1); yazan yere 0 yazarsanız oynama olmaz +1 yazarsanız 1 artar.
İtem Ara Fonksiyonları;
Unutmamak gerekir ki döngü içerisinde işlem olması şarttır.
Bonus Fonksiyonları;
Bu fonksiyon genellikle case komutundan sonra kullanılır diyebiliriz. İtemin size bonus vermesini veya iksirlerin, Havai Fişeklerin çalışmasını sağlayan fonksiyondur. Bunu kullanım örnekleriyle sıralayalım.
AddAffect(AFFECT_CHINA_FIREWORK, POINT_STUN_PCT, 30, AFF_CHINA_FIREWORK, 5*60, 0, true);
"Havai Fişek Bonusu %30 sersemletici saldırı verir. "
Oradaki, POINT_STUN_PCT 30
Efsun: Kırmızı gösterdiğim yer.
Oranı: Yeşil gösterdiğim yerdir aşağıdaki listeye göre seçip herhangi bir iteme ekleyebilirsiniz.
2 - ) Fonksiyonlar hakkında bilinmesi gerekenler ara fonksiyonlar False, True fonksiyonları;
Fonksiyonlar içerisinde bazı "return false; ", "return true;" gibi fonksiyonlar görebilirsiniz . "return true;" işleme izin verir "return false;" işleme izin vermez . Örnek Return false ile bir void döngü bloğu yazalım.
Bu döngü bloğu var oldukça 351, 352 index kodlu haritalara giriş yapılması için 100. Seviye olmak gerekecektir. Eklemek isteyenler char.cpp'ye ekleyebilirler.
Bunu her şekilde kullanabilirsiniz.
2.1-) Ara Fonksiyonlar, Bilinmesi Gerekenler.
Ara Fonksiyonlar döngü bloğu içerisindeki Ana Fonksiyon (İşlem), Ara Fonksiyon (İşlem sonrası işlem) genellikle bug çözümleri için kullanır, örneğin ChatPacket bir Ara Fonksiyondur chat paketleri Ara Fonksiyon olarak kullanılır bir örnek işleyelim.
Buradaki return false; Ana Fonksiyondur 30. Seviye ve aşağısının COMBO kitabı kullanamamasını söyler. ChatPacket Ara Fonksiyondur oyuncuya 30. Seviye olmasını söyler.
3 - ) Manager, Çağırma Fonksiyonları.
Şimdide Manager Komutlarına deyinelim. Managerler, item dönüşümü, karakter hareket etmesi gibi işlemleri gerçekleştiren fonksiyonlardır. Bunları fonksiyon başlarında çağırabiliriz switchler ilede bölebiliriz.
Örneklendirelim;
Bu itemin RefineSet sayısının Refine_proto üzerinde bulunmadığında vereceği Syserr ve oyuncuya göstereceği ChatPacket. Bu tür bir döngü bloğunda CRefineManager 1. Ana Fonksiyon, sys_err (işlem) 2. Ana Fonksiyon, return false; (işlem 2 ) 3. Ana Fonksiyon, ChatPacket Ara Fonksiyon olarak adlandırılabilir bir döngü bloğunda istediğiniz kadar ana ve ara fonksiyon kullanabilirsiniz.
Source Fonksiyonları: Metin2 Özel Sunucu Geliştirme ve Oyun Çekirdek Sistemleri
Metin2 özel sunucularında[source edit] işlemleri sırasında kullanılan fonksiyonlar, oyunun temel işleyişini sağlayan çekirdek yapıları şekillendirir. Bu yazıda, game core, db core, auth, client src gibi kavramlarla birlikte, C++ system ve Python system üzerinden geliştirilen kaynak kod fonksiyonlarını ele alacağız.
Source Fonksiyonlarının Temeli Nedir?
Source fonksiyonları, bir oyun sunucusunun temel işlevlerini tanımlayan kod bloklarıdır. Metin2 özel sunucu geliştirme sürecinde bu fonksiyonlar, oyuncu girişi, envanter yönetimi, PvP sistemleri, görevler, efektler gibi pek çok özelliği kontrol eder. Bu fonksiyonlar genellikle C++ diliyle yazılır çünkü performans ve güvenlik açısından tercih edilir.
Game Core ve DB Core Kavramları
Oyun çekirdeği (game core) ve veritabanı çekirdeği (db core), Metin2 özel sunucularının iki temel bileşenidir. Game core, oyuncuların etkileşimde bulunduğu tüm mekanikleri içerir. DB core ise bu verileri güvenli ve hızlı bir şekilde saklamaktan sorumludur. Bu çekirdeklerde yapılan fonksiyon değişiklikleri, sunucunuzun performansını doğrudan etkiler.
Auth Sistemi ve Client Kaynak Kodları
Auth sistemi, oyuncuların giriş yaparken kullandığı kimlik doğrulama katmanıdır. Bu sistem, kullanıcı adı, şifre, IP kontrolleri gibi bilgileri işler. Client src tarafında ise kullanıcı arayüzü, grafiksel öğeler ve oyun içi etkileşimler tanımlanır. Bu alanlarda yapılan geliştirmeler, kullanıcı deneyimini ciddi anlamda artırabilir.
Python ve C++ ile Geliştirme
Metin2 geliştirme sürecinde Python, genellikle GUI ve küçük sistemler için kullanılır. Örneğin py root ve uiscript gibi dosyalar arayüz geliştirmede yardımcı olur. C++ ise daha büyük sistemlerin taşeronudur. Martysama gibi geliştiriciler, hem C++ hem de Python kullanarak güçlü sistemler kurar.
PvP Sistemleri ve Kaynak Kod Entegrasyonu
Metin2 özel sunucularında PvP sistemleri, oyunun en önemli dinamiklerinden biridir. Bu sistemlerin doğru çalışması için source edit ile PvP kuralları, skorlamalar ve turnuva sistemleri kodlanmalıdır. Metin2 PvP systems ve metin2 PvP game source terimleri bu bağlamda önem kazanır.
Derleme ve Paketleme Süreci
Oluşturduğunuz sistemleri derlemek için metin2 compile süreçleri takip edilmelidir. Paketleme (pack) aşamasında, sunucu dosyalarınız doğru yapılandırılarak dağıtım için hazır hale getirilir. Bu işlem sırasında dikkat edilmesi gereken pek çok teknik detay vardır.
Sonuç
Source fonksiyonları, Metin2 özel sunucu dünyasında teknik bilgiye dayalı gelişmiş sistemler kurmaya olanak tanır. Bu fonksiyonlar sayesinde, hem oyun içi deneyimi zenginleştirebilir hem de sunucunuzu rakiplerinizden ayırabilirsiniz. Metin2Lobby olarak bu alanda size rehberlik etmeye devam edeceğiz.
Source Functions: Metin2 Private Server Development and Game Core Systems
Functions used during [source edit] operations on Metin2 private servers shape the core structures that govern the basic gameplay of the game. In this article, we will examine source code functions developed through C++ system and Python system, along with concepts like game core, db core, auth, and client src.
What Is the Foundation of Source Functions?
Source functions are code blocks that define the basic functions of a game server. During the process of developing Metin2 private servers, these functions control many features such as player login, inventory management, PvP systems, quests, and effects. These functions are usually written in C++ because of performance and security reasons.
Game Core and DB Core Concepts
The game core (game core) and database core (db core) are two fundamental components of Metin2 private servers. The game core includes all mechanics with which players interact. The DB core is responsible for storing this data securely and quickly. Modifications made to these cores directly affect your server's performance.
Auth System and Client Source Codes
The auth system is the authentication layer used by players during login. This system processes information such as usernames, passwords, and IP checks. On the client src side, user interface, graphical elements, and in-game interactions are defined. Improvements made in these areas can significantly enhance the user experience.
Development with Python and C++
In the Metin2 development process, Python is generally used for GUI and smaller systems. For example, files like py root and uiscript assist in UI development. C++, on the other hand, serves larger systems. Developers like Martysama use both C++ and Python to build powerful systems.
PvP Systems and Source Code Integration
PvP systems are among the most important dynamics in Metin2 private servers. For these systems to function correctly, PvP rules, scoring, and tournament systems must be coded via source edit. Terms like Metin2 PvP systems and metin2 PvP game source gain importance in this context.
Compilation and Packaging Process
To compile your systems, you should follow metin2 compile procedures. During the packaging (pack) phase, your server files are configured properly and prepared for distribution. There are many technical details to consider during this process.
Conclusion
Source functions enable advanced system building based on technical knowledge in the world of Metin2 private servers. Thanks to these functions, you can enrich the in-game experience and differentiate your server from competitors. As Metin2Lobby, we will continue to guide you in this area.
" Fonksiyonlar döngü bloklarının içinde kullanılır ve işlemi gerçekleştirirler . Genellikle if > olarak kullanılırlar fakat daha birçok alternatifi mevcuttur . Örnek verelim;
Kod:
switch (dwVnum) { case 70006 { EffectPacket(SE_DXUP_PURPLE) } }
Bunun gibi güzel küçük sistemleri Gamenize aşağıdaki fonksiyonlar sayesinde ekleyebilirsiniz;
Efekler;
Kod:
EffectPacket(SE_CHINA_FIREWORK); Havai Fişek Topacı Efekti EffectPacket(SE_CHINA_FIREWORK); Çin Havai Fişekleri Efekti EffectPacket(SE_HPUP_RED); Kırmızı Efekti EffectPacket(SE_SPUP_BLUE); Mavi İksir Efekti EffectPacket(SE_EQUIP_RAMADAN_RING); Hilal Yüzüğü Efekti EffectPacket(SE_EQUIP_HALLOWEEN_CANDY); Lolipop Efekti EffectPacket(SE_EQUIP_HAPPINESS_RING); Mutluluk Yüzüğü Efekti EffectPacket(SE_EQUIP_LOVE_PENDANT); Ebedi Aşk Tılsımı Efekti EffectPacket( SE_AUTO_HPUP ); Oto Kırmızı İksir Efekti EffectPacket( SE_AUTO_SPUP ); Oto Mavi İksir Efekti EffectPacket(SE_DXUP_PURPLE); Mor İksir Efekti EffectPacket(SE_SPEEDUP_GREEN); Yeşil İksir Efekti
Kod:
RemoveItem(item); İtemi Siler SetCount; İtem Miktarını Ayarlar. GetCount; İtem Miktarını Çeker. GetName; İtemin İsmini Gösterir. GetSockets; İtemin Boşluklarını Gösterir. GetWarFlag; İtemin Giyilebirliğini Gösterir.
İtem Ara Fonksiyonları;
Kod:
AutoGiveItem İtem Verir
Bonus Fonksiyonları;
Kod:
AddAffect
AddAffect(AFFECT_CHINA_FIREWORK, POINT_STUN_PCT, 30, AFF_CHINA_FIREWORK, 5*60, 0, true);
"Havai Fişek Bonusu %30 sersemletici saldırı verir. "
Oradaki, POINT_STUN_PCT 30
Efsun: Kırmızı gösterdiğim yer.
Oranı: Yeşil gösterdiğim yerdir aşağıdaki listeye göre seçip herhangi bir iteme ekleyebilirsiniz.
Kod:
POINT_HP POINT_SP POINT_ST POINT_HT POINT_DX POINT_IQ
Kod:
POINT_DEF_GRADE
Kod:
POINT_ATT_SPEED POINT_ATT_GRADE POINT_MOV_SPEED POINT_CASTING_SPEED POINT_MAGIC_ATT_GRADE POINT_MAGIC_DEF_GRADE POINT_HP_REGEN POINT_SP_REGEN POINT_POISON_PCT POINT_STUN_PCT POINT_SLOW_PCT POINT_CRITICAL_PCT POINT_PENETRATE_PCT POINT_ATTBONUS_HUMAN POINT_ATTBONUS_ANIMAL POINT_ATTBONUS_ORC POINT_ATTBONUS_MILGYO POINT_ATTBONUS_UNDEAD POINT_ATTBONUS_DEVIL POINT_ATTBONUS_INSECT POINT_ATTBONUS_FIRE POINT_ATTBONUS_ICE POINT_ATTBONUS_DESERT POINT_ATTBONUS_MONSTER POINT_ATTBONUS_WARRIOR POINT_ATTBONUS_ASSASSIN POINT_ATTBONUS_SURA POINT_ATTBONUS_SHAMAN POINT_RESIST_WARRIOR POINT_RESIST_ASSASSIN POINT_RESIST_SURA POINT_RESIST_SHAMAN POINT_STEAL_HP POINT_STEAL_SP POINT_MANA_BURN_PCT POINT_BLOCK POINT_DODGE POINT_RESIST_SWORD POINT_RESIST_TWOHAND POINT_RESIST_DAGGER POINT_RESIST_BELL POINT_RESIST_FAN POINT_RESIST_BOW POINT_RESIST_FIRE POINT_RESIST_ELEC POINT_RESIST_MAGIC POINT_RESIST_WIND POINT_REFLECT_MELEE POINT_POISON_REDUCE POINT_IMMUNE_STUN POINT_IMMUNE_SLOW POINT_IMMUNE_FALL POINT_ATT_GRADE_BONUS POINT_DEF_GRADE_BONUS POINT_MAGIC_ATT_GRADE_BONUS POINT_MAGIC_DEF_GRADE_BONUS POINT_RESIST_ICE POINT_RESIST_EARTH POINT_RESIST_DARK POINT_RESIST_CRITICAL POINT_RESIST_PENETRATE
Fonksiyonlar içerisinde bazı "return false; ", "return true;" gibi fonksiyonlar görebilirsiniz . "return true;" işleme izin verir "return false;" işleme izin vermez . Örnek Return false ile bir void döngü bloğu yazalım.
Kod:
bool CAN_ENTER_ZONE(const LPCHARACTER& ch, int map_index){ switch (map_index) { case 351: case 352: if (ch->GetLevel() < 100) return false; } return true; }
Bunu her şekilde kullanabilirsiniz.
2.1-) Ara Fonksiyonlar, Bilinmesi Gerekenler.
Ara Fonksiyonlar döngü bloğu içerisindeki Ana Fonksiyon (İşlem), Ara Fonksiyon (İşlem sonrası işlem) genellikle bug çözümleri için kullanır, örneğin ChatPacket bir Ara Fonksiyondur chat paketleri Ara Fonksiyon olarak kullanılır bir örnek işleyelim.
Kod:
if (GetSkillLevel(SKILL_COMBO) == 0 && GetLevel() < 30) { ChatPacket(CHAT_TYPE_INFO, LC_TEXT("@@@@@@@")); return false; }
3 - ) Manager, Çağırma Fonksiyonları.
Şimdide Manager Komutlarına deyinelim. Managerler, item dönüşümü, karakter hareket etmesi gibi işlemleri gerçekleştiren fonksiyonlardır. Bunları fonksiyon başlarında çağırabiliriz switchler ilede bölebiliriz.
Örneklendirelim;
Kod:
CRefineManager & rm = CRefineManager::instance(); const TRefineTable* prt = rm.GetRefineRecipe(item->GetRefineSet()); if (!prt) { sys_err("RefineInformation NOT GET REFINE SET %d", item->GetRefineSet()); ChatPacket(CHAT_TYPE_INFO, LC_TEXT("@@@@@@@")); return false; }
Source Fonksiyonları: Metin2 Özel Sunucu Geliştirme ve Oyun Çekirdek Sistemleri
Metin2 özel sunucularında[source edit] işlemleri sırasında kullanılan fonksiyonlar, oyunun temel işleyişini sağlayan çekirdek yapıları şekillendirir. Bu yazıda, game core, db core, auth, client src gibi kavramlarla birlikte, C++ system ve Python system üzerinden geliştirilen kaynak kod fonksiyonlarını ele alacağız.
Source Fonksiyonlarının Temeli Nedir?
Source fonksiyonları, bir oyun sunucusunun temel işlevlerini tanımlayan kod bloklarıdır. Metin2 özel sunucu geliştirme sürecinde bu fonksiyonlar, oyuncu girişi, envanter yönetimi, PvP sistemleri, görevler, efektler gibi pek çok özelliği kontrol eder. Bu fonksiyonlar genellikle C++ diliyle yazılır çünkü performans ve güvenlik açısından tercih edilir.
Game Core ve DB Core Kavramları
Oyun çekirdeği (game core) ve veritabanı çekirdeği (db core), Metin2 özel sunucularının iki temel bileşenidir. Game core, oyuncuların etkileşimde bulunduğu tüm mekanikleri içerir. DB core ise bu verileri güvenli ve hızlı bir şekilde saklamaktan sorumludur. Bu çekirdeklerde yapılan fonksiyon değişiklikleri, sunucunuzun performansını doğrudan etkiler.
Auth Sistemi ve Client Kaynak Kodları
Auth sistemi, oyuncuların giriş yaparken kullandığı kimlik doğrulama katmanıdır. Bu sistem, kullanıcı adı, şifre, IP kontrolleri gibi bilgileri işler. Client src tarafında ise kullanıcı arayüzü, grafiksel öğeler ve oyun içi etkileşimler tanımlanır. Bu alanlarda yapılan geliştirmeler, kullanıcı deneyimini ciddi anlamda artırabilir.
Python ve C++ ile Geliştirme
Metin2 geliştirme sürecinde Python, genellikle GUI ve küçük sistemler için kullanılır. Örneğin py root ve uiscript gibi dosyalar arayüz geliştirmede yardımcı olur. C++ ise daha büyük sistemlerin taşeronudur. Martysama gibi geliştiriciler, hem C++ hem de Python kullanarak güçlü sistemler kurar.
PvP Sistemleri ve Kaynak Kod Entegrasyonu
Metin2 özel sunucularında PvP sistemleri, oyunun en önemli dinamiklerinden biridir. Bu sistemlerin doğru çalışması için source edit ile PvP kuralları, skorlamalar ve turnuva sistemleri kodlanmalıdır. Metin2 PvP systems ve metin2 PvP game source terimleri bu bağlamda önem kazanır.
Derleme ve Paketleme Süreci
Oluşturduğunuz sistemleri derlemek için metin2 compile süreçleri takip edilmelidir. Paketleme (pack) aşamasında, sunucu dosyalarınız doğru yapılandırılarak dağıtım için hazır hale getirilir. Bu işlem sırasında dikkat edilmesi gereken pek çok teknik detay vardır.
Sonuç
Source fonksiyonları, Metin2 özel sunucu dünyasında teknik bilgiye dayalı gelişmiş sistemler kurmaya olanak tanır. Bu fonksiyonlar sayesinde, hem oyun içi deneyimi zenginleştirebilir hem de sunucunuzu rakiplerinizden ayırabilirsiniz. Metin2Lobby olarak bu alanda size rehberlik etmeye devam edeceğiz.
Source Functions: Metin2 Private Server Development and Game Core Systems
Functions used during [source edit] operations on Metin2 private servers shape the core structures that govern the basic gameplay of the game. In this article, we will examine source code functions developed through C++ system and Python system, along with concepts like game core, db core, auth, and client src.
What Is the Foundation of Source Functions?
Source functions are code blocks that define the basic functions of a game server. During the process of developing Metin2 private servers, these functions control many features such as player login, inventory management, PvP systems, quests, and effects. These functions are usually written in C++ because of performance and security reasons.
Game Core and DB Core Concepts
The game core (game core) and database core (db core) are two fundamental components of Metin2 private servers. The game core includes all mechanics with which players interact. The DB core is responsible for storing this data securely and quickly. Modifications made to these cores directly affect your server's performance.
Auth System and Client Source Codes
The auth system is the authentication layer used by players during login. This system processes information such as usernames, passwords, and IP checks. On the client src side, user interface, graphical elements, and in-game interactions are defined. Improvements made in these areas can significantly enhance the user experience.
Development with Python and C++
In the Metin2 development process, Python is generally used for GUI and smaller systems. For example, files like py root and uiscript assist in UI development. C++, on the other hand, serves larger systems. Developers like Martysama use both C++ and Python to build powerful systems.
PvP Systems and Source Code Integration
PvP systems are among the most important dynamics in Metin2 private servers. For these systems to function correctly, PvP rules, scoring, and tournament systems must be coded via source edit. Terms like Metin2 PvP systems and metin2 PvP game source gain importance in this context.
Compilation and Packaging Process
To compile your systems, you should follow metin2 compile procedures. During the packaging (pack) phase, your server files are configured properly and prepared for distribution. There are many technical details to consider during this process.
Conclusion
Source functions enable advanced system building based on technical knowledge in the world of Metin2 private servers. Thanks to these functions, you can enrich the in-game experience and differentiate your server from competitors. As Metin2Lobby, we will continue to guide you in this area.
