Skocz do zawartości
Masz już aplikację Sharegon?

Odkryj wszystkie możliwości. Dowiedz się więcej

Sharegon.pl

Zainstaluj aplikację Sharegon i korzystaj z powiadomień push oraz licznika nowych aktywności bezpośrednio z ekranu głównego.

Aby zainstalować tę aplikację na iOS i iPadOS.
  1. Tap the Share icon in Safari
  2. Przewiń menu i stuknij Dodaj do ekranu początkowego.
  3. Stuknij Dodaj w prawym górnym rogu.
Zainstaluj aplikację Sharegon na Androidzie
  1. Otwórz Sklep Google Play na swoim smarfonie.
  2. Wyszukaj „Sharegon” w pasku wyszukiwania.
  3. Stuknij „Zainstaluj”, aby pobrać aplikację.

Naprawa ujemnych wartości punktów życia i energii - overflow

Featured Replies

Opublikowano

Witajcie,

 

Jestem pewien, że wielu z was już doświadczyło jednego z bardziej irytujących błędów - mianowicie, ujemnych wartości punktów życia (HP) i energii (MP) po teleportacji postaci.

Kiedy wartość punktów życia lub energii przekraczała pewien zakres, zamiast zobaczyć stan, który mieliśmy wcześniej, widzieliśmy ujemną wartość.

 

Prezentacja błędu:

 

🧩 Rozwiązanie

📂 Lokalizacja pliku: 'common -> tables.h'

 

🔍Szukamy:

Tylko zalogowani Zaloguj się, aby wyświetlić chronioną treść Ten post zawiera treści dostępne tylko dla członków. Zaloguj się lub utwórz konto, aby odblokować całą zawartość tego posta. Zaloguj się Utwórz konto

 

🔄 Zmieniamy:

 

Po wprowadzeniu zmian w tables musimy skompilować game oraz db to ważne!

  • 2 miesiące temu...
  • 2 miesiące temu...
  • 2 tygodnie później...
Opublikowano

Która wersja jest lepsza?

Cytat
CKod został skopiowany
WitamPokaże Wam jak usunąć błąd dotyczący skoków HP oraz gdy macie na serwerze ponad 32k HP by po teleportacji nie było na minusie.Błędy HP SKOKI HPWejdź do char.cpp w /game/src/ Szukaj: case APPLY_MAX_HP:case APPLY_MAX_HP_PCT:case APPLY_MAX_SP:case APPLY_MAX_SP_PCT: Zamień na: #ifdef FIX_ALL_BUG_HP		case APPLY_MAX_HP:		case APPLY_MAX_HP_PCT:			{				int i = GetMaxHP(); if(i == 0) break;				PointChange(aApplyInfo[bApplyType].bPointType, iVal);			}			break; 		case APPLY_MAX_SP:		case APPLY_MAX_SP_PCT:			{				int i = GetMaxSP(); if(i == 0) break;				PointChange(aApplyInfo[bApplyType].bPointType, iVal);			}			break;#else		case APPLY_MAX_HP:		case APPLY_MAX_SP:		case APPLY_MAX_HP_PCT:		case APPLY_MAX_SP_PCT:		#endif Szukaj:  ( są dwa - pamiętaj, żeby edytować tego co jest wyżej w pliku ) linijka około 3100-3300 case POINT_MAX_HP:   Zamień na: 				case POINT_MAX_HP:			{                            				SetPoint(type, GetPoint(type) + amount);#ifdef FIX_ALL_BUG_HP								int i = GetMaxHP();#endif				int hp = GetRealPoint(POINT_MAX_HP);				int add_hp = MIN(3500, hp * GetPoint(POINT_MAX_HP_PCT) / 100);				add_hp += GetPoint(POINT_MAX_HP);				add_hp += GetPoint(POINT_PARTY_TANKER_BONUS);				SetMaxHP(hp + add_hp);#ifdef FIX_ALL_BUG_HP                                float fRatio = (float)GetMaxHP() / (float)i;                                PointChange(POINT_HP, GetHP() * fRatio - GetHP());#endif				val = GetMaxHP();			}			break;   Szukaj: ( są dwa - pamiętaj, żeby edytować tego co jest wyżej w pliku )  linijka około 3100-3300   case POINT_MAX_SP: Zamień na: 		case POINT_MAX_SP:			{				SetPoint(type, GetPoint(type) + amount);#ifdef FIX_ALL_BUG_HP                                int i = GetMaxSP();#endif				int sp = GetRealPoint(POINT_MAX_SP);				int add_sp = MIN(800, sp * GetPoint(POINT_MAX_SP_PCT) / 100);				add_sp += GetPoint(POINT_MAX_SP);				add_sp += GetPoint(POINT_PARTY_SKILL_MASTER_BONUS);				SetMaxSP(sp + add_sp);#ifdef FIX_ALL_BUG_HP                                float fRatio = (float)GetMaxSP() / (float)i;                                PointChange(POINT_SP, GetSP() * fRatio - GetSP());#endif				val = GetMaxSP();			}			break;  common/service.h Dodaj: #define FIX_ALL_BUG_HP -32K HP Wejdź do char.cpp w /game/src/ Szukaj: SetHP(t->hp);SetSP(t->sp); Zamień na: SetHP(GetMaxHP());SetSP(GetMaxSP());  Wejdź do tables.h w /common/ Szukaj: short      hp;short      sp;   Zamień na: int      hp;int      sp;   Gotowe!

 

 

Edytowane przez ExoCarossa

  • 1 miesiąc temu...

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Konto

Nawigacja

Skonfiguruj powiadomienia push w przeglądarce.

Chrome (Android)
  1. Stuknij ikonę kłódki obok paska adresu.
  2. Wybierz Uprawnienia → Powiadomienia.
  3. Dostosuj swoje preferencje.
Chrome (Desktop)
  1. Kliknij ikonę kłódki na pasku adresu.
  2. Wybierz Ustawienia witryny.
  3. Znajdź Powiadomienia i dostosuj swoje preferencje.