Oyuna başlangıçta hp ve sp düşük gelme fix

  • Konbuyu başlatan Konbuyu başlatan Admin
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 131

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Merhabalar ufak bir fix paylaşacağım bu fix gm çarlarda özellikle hp ve sp değerinin 32767 değerinin üzerinde olduğu durumda oyuna ilk girişte değerlerin full gelmemesinin çözümü.

Kod:
// ARAT void CInputLogin::Entergame(LPDESC d, const char * data) //İÇİNDE ARAT ch->ReviveInvisible (5); //HEMEN ÜSTÜNE EKLE     ch->PointChange(POINT_HP, ch->GetMaxHP() - ch->GetHP());     ch->PointChange(POINT_SP, ch->GetMaxSP() - ch->GetSP());         //SON HALİ     ch->Show (ch->GetMapIndex(), pos.x, pos.y, pos.z);     SECTREE_MANAGER::instance().SendNPCPosition (ch);     ch->PointChange(POINT_HP, ch->GetMaxHP() - ch->GetHP());     ch->PointChange(POINT_SP, ch->GetMaxSP() - ch->GetSP());     ch->ReviveInvisible (5);     d->SetPhase (PHASE_GAME);

ZARARI VAR MI BİLMİYORUM KONU HAKKINDA TECRÜBELİ ARKADAŞLAR GÖRÜŞLERİNİ BELİRTİRSE SEVİNİRİM

KANIT;

Oyuna Başlangıçta HP ve SP Düşük Gelme Sorunu Fix

Metin2 özel sunucularında geliştirme yaparken karşılaşılan yaygın sorunlardan birisi, oyuncu karakteri oyuna girdiğinde HP (Can) ve SP (Enerji) değerlerinin beklenenden düşük gelmesidir. Bu durum, kullanıcı deneyimini ciddi şekilde etkileyebilir ve oyuncuların ilk anda dezavantajlı başlamasına neden olabilir. Bu yazıda, oyuna girişte düşük HP/SP sorununu nasıl düzelteceğinizi adım adım anlatacağız.

Sorunun Kaynağı Nedir?
Genellikle bu tür problemler, karakterin başlangıç stats değerlerinin eksik ya da yanlış tanımlandığı durumlarda meydana gelir. Sunucu tarafında bulunan game core veya client src dosyalarında yapılan ayarlar bu konuda belirleyicidir. Ayrıca, bazı özel sistemlerin entegrasyonu sırasında bu değerlerin yeniden hesaplanması gerekirken ihmal edilebilmesi de problem yaratır.

Fix Uygulama Adımları

1. Game Core Dosyasını Kontrol Et
Sunucu tarafında kullanılan game core dosyasında bulunan karakter başlangıç değerleri kontrol edilmelidir. Özellikle player.cpp veya char_battle.cpp gibi dosyalarda HP ve SP değerlerinin tanımlandığı alanlar vardır. Bu alanlarda tanımlanan değerlerin istenen seviyede olduğundan emin olunmalıdır.

2. Client Tarafında Stat Ayarlarını Kontrol Et
Client tarafında, genellikle uiscript veya root dizininde bulunan karakter sınıflarına ait başlangıç değerleri tanımlanmıştır. Burada HP ve SP için tanımlanan sabit değerlerin, sunucu tarafındaki değerlerle uyumlu olduğundan emin olunmalıdır. Aksi takdirde, client doğru değeri göstermeyebilir.

3. DB (Veritabanı) Ayarları
Karakterin doğuş anındaki değerler DB tarafında da tanımlanmış olabilir. Player tablosunda bulunan hp ve sp alanlarının, karakter oluşturulurken doğru şekilde set edildiğinden emin olunmalıdır. Gerekirse bu değerler için trigger veya stored procedure tanımlanabilir.

4. Sistem Entegrasyonları
Bazı özel C++ sistemler, karakterin stats değerlerini başlatma aşamasında müdahale edebilir. Bu sistemlerin HP/SP değerlerini sıfırlamaması için gerekli kontroller yapılmalıdır. Örneğin, martysama tabanlı sistemlerde özel stat modüllerinin bu konuda dikkatli kullanım gerektirdiği unutulmamalıdır.

Örnek Kod Parçası

Game core dosyasında karakter başlatma sırasında kullanılan örnek bir kod parçası şu şekildedir:

Kod:
p->points.grand_master_hp = 1000;[BR][/BR]p->points.grand_master_sp = 500;


Bu değerler, karakterin oyuna girişte sahip olacağı temel HP ve SP değerlerini belirler. Gerekirse bu değerler artırılabilir veya özel sistemlerle dinamik hale getirilebilir.

Sonuç
Oyuna başlangıçta düşük HP/SP gelme problemi, kullanıcı memnuniyetini doğrudan etkileyen bir konudur. Doğru ayarlamalar yapıldığında, oyuncuların daha dengeli bir başlangıç yapması sağlanabilir. Metin2Lobby olarak, bu tür sistemsel sorunların çözümünde size yardımcı olabilecek kaynaklara ulaşabilirsiniz.


Fix for Low HP and SP on Game Start

One of the common issues encountered while developing Metin2 private servers is that player characters enter the game with lower than expected HP (Health Points) and SP (Skill Points). This situation can seriously affect user experience and cause players to start at a disadvantage. In this article, we will explain step-by-step how to fix the issue of low HP/SP values upon entering the game.

What Causes This Issue?
Often, such problems occur when the character's starting stats are incorrectly defined or missing. Settings located in game core or client src files on the server side are critical in this regard. Additionally, when integrating special systems, these values may need to be recalculated but might be overlooked, causing the issue.

Steps to Apply the Fix

1. Check the Game Core File
The starting character values in the game core file used on the server side must be reviewed. Files like player.cpp or char_battle.cpp contain areas where HP and SP values are defined. Ensure that the values defined here meet your desired levels.

2. Check Stat Settings on the Client Side
On the client side, starting values for character classes are usually found within the uiscript or root directories. Ensure that the constant values defined for HP and SP are compatible with those on the server side. Otherwise, the client may not display the correct values.

3. DB (Database) Settings
Character's initial values upon creation might also be defined in the database. Ensure that the hp and sp fields in the Player table are properly set during character creation. If necessary, triggers or stored procedures can be implemented for these values.

4. System Integrations
Certain custom C++ systems may interfere during the initialization of character stats. Make sure these systems do not reset HP/SP values. For instance, special stat modules in martysama-based systems should be carefully implemented to avoid this issue.

Sample Code Snippet

An example code snippet used in the game core file during character initialization is as follows:

Kod:
p->points.grand_master_hp = 1000;[BR][/BR]p->points.grand_master_sp = 500;


These values determine the base HP and SP values the character will have upon entering the game. These values can be increased or made dynamic through custom systems if needed.

Conclusion
The issue of low HP/SP on game start directly affects user satisfaction. With proper adjustments, players can begin the game more balanced. At Metin2Lobby, you can access resources that assist in solving such systemic issues.
 

Şuan Bu Konuyu Görüntüleyen Kullanıcılar (Toplam : 0, Üye : 0, Misafir : 0)

Geri
Üst Alt