HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!
Merhaba,
Bugün düzelteceğimiz sorun Kan Hapı
kullanımı ile alakalı.
Öncelikle Kan Hapı ne işe yarar?
Sağ tıklayarak çalışır. Statü puanlarınızı yeniden dağıtmanızı sağlar.
Kan Hapı kullanılarak nasıl bug yapılıyor?
x94 statınız var iken 4 hap kullanırsanız ve sonunda başka bir stat eklediğinizde 4 statüyü harcarsanız, statünüz 90'dan 160'a yani iki katına çıkar.
Çözüm
[CODE title="Kan Hapı Fix"]1) Dosyayı açın : cmd_general.cpp
2) Arayın ve bulun: ACMD(do_stat_minus)
3) Aşağıdaki ile değiştirin:
ACMD(do_stat_minus)
{
char arg1[256];
one_argument(argument, arg1, sizeof(arg1));
if (!*arg1)
return;
if (ch->IsPolymorphed())
{
ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("둔갑 중에는 능력을 올릴 수 없습니다."));
return;
}
if (ch->GetPoint(POINT_STAT_RESET_COUNT) <= 0)
return;
if (!strcmp(arg1, "st"))
{
if (ch->GetRealPoint(POINT_ST) <= JobInitialPoints[ch->GetJob()].st)
return;
BYTE stpoints = 0;
stpoints = POINT_ST;
ch->SetRealPoint(stpoints, ch->GetRealPoint(stpoints) - 1);
ch->SetPoint(stpoints, ch->GetPoint(stpoints) - 1);
ch->ComputePoints();
ch->PointChange(stpoints, 0);
}
else if (!strcmp(arg1, "dx"))
{
if (ch->GetRealPoint(POINT_DX) <= JobInitialPoints[ch->GetJob()].dx)
return;
BYTE dxpoints = 0;
dxpoints = POINT_DX;
ch->SetRealPoint(dxpoints, ch->GetRealPoint(dxpoints) - 1);
ch->SetPoint(dxpoints, ch->GetPoint(dxpoints) - 1);
ch->ComputePoints();
ch->PointChange(dxpoints, 0);
}
else if (!strcmp(arg1, "ht"))
{
if (ch->GetRealPoint(POINT_HT) <= JobInitialPoints[ch->GetJob()].ht)
return;
BYTE htpoints = 0;
htpoints = POINT_HT;
ch->SetRealPoint(htpoints, ch->GetRealPoint(htpoints) - 1);
ch->SetPoint(htpoints, ch->GetPoint(htpoints) - 1);
ch->ComputePoints();
ch->PointChange(htpoints, 0);
ch->PointChange(POINT_MAX_SP, 0);
}
else if (!strcmp(arg1, "iq"))
{
if (ch->GetRealPoint(POINT_IQ) <= JobInitialPoints[ch->GetJob()].iq)
return;
BYTE iqpoints = 0;
iqpoints = POINT_IQ;
ch->SetRealPoint(iqpoints, ch->GetRealPoint(iqpoints) - 1);
ch->SetPoint(iqpoints, ch->GetPoint(iqpoints) - 1);
ch->ComputePoints();
ch->PointChange(iqpoints, 0);
ch->PointChange(POINT_MAX_HP, 0);
}
else
return;
ch->PointChange(POINT_STAT, + 1);
ch->PointChange(POINT_STAT_RESET_COUNT, - 1);
ch->ComputePoints();
}[/CODE]
Alıntıdır.
Bugün düzelteceğimiz sorun Kan Hapı
Öncelikle Kan Hapı ne işe yarar?
Sağ tıklayarak çalışır. Statü puanlarınızı yeniden dağıtmanızı sağlar.
Kan Hapı kullanılarak nasıl bug yapılıyor?
x94 statınız var iken 4 hap kullanırsanız ve sonunda başka bir stat eklediğinizde 4 statüyü harcarsanız, statünüz 90'dan 160'a yani iki katına çıkar.
Çözüm
[CODE title="Kan Hapı Fix"]1) Dosyayı açın : cmd_general.cpp
2) Arayın ve bulun: ACMD(do_stat_minus)
3) Aşağıdaki ile değiştirin:
ACMD(do_stat_minus)
{
char arg1[256];
one_argument(argument, arg1, sizeof(arg1));
if (!*arg1)
return;
if (ch->IsPolymorphed())
{
ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("둔갑 중에는 능력을 올릴 수 없습니다."));
return;
}
if (ch->GetPoint(POINT_STAT_RESET_COUNT) <= 0)
return;
if (!strcmp(arg1, "st"))
{
if (ch->GetRealPoint(POINT_ST) <= JobInitialPoints[ch->GetJob()].st)
return;
BYTE stpoints = 0;
stpoints = POINT_ST;
ch->SetRealPoint(stpoints, ch->GetRealPoint(stpoints) - 1);
ch->SetPoint(stpoints, ch->GetPoint(stpoints) - 1);
ch->ComputePoints();
ch->PointChange(stpoints, 0);
}
else if (!strcmp(arg1, "dx"))
{
if (ch->GetRealPoint(POINT_DX) <= JobInitialPoints[ch->GetJob()].dx)
return;
BYTE dxpoints = 0;
dxpoints = POINT_DX;
ch->SetRealPoint(dxpoints, ch->GetRealPoint(dxpoints) - 1);
ch->SetPoint(dxpoints, ch->GetPoint(dxpoints) - 1);
ch->ComputePoints();
ch->PointChange(dxpoints, 0);
}
else if (!strcmp(arg1, "ht"))
{
if (ch->GetRealPoint(POINT_HT) <= JobInitialPoints[ch->GetJob()].ht)
return;
BYTE htpoints = 0;
htpoints = POINT_HT;
ch->SetRealPoint(htpoints, ch->GetRealPoint(htpoints) - 1);
ch->SetPoint(htpoints, ch->GetPoint(htpoints) - 1);
ch->ComputePoints();
ch->PointChange(htpoints, 0);
ch->PointChange(POINT_MAX_SP, 0);
}
else if (!strcmp(arg1, "iq"))
{
if (ch->GetRealPoint(POINT_IQ) <= JobInitialPoints[ch->GetJob()].iq)
return;
BYTE iqpoints = 0;
iqpoints = POINT_IQ;
ch->SetRealPoint(iqpoints, ch->GetRealPoint(iqpoints) - 1);
ch->SetPoint(iqpoints, ch->GetPoint(iqpoints) - 1);
ch->ComputePoints();
ch->PointChange(iqpoints, 0);
ch->PointChange(POINT_MAX_HP, 0);
}
else
return;
ch->PointChange(POINT_STAT, + 1);
ch->PointChange(POINT_STAT_RESET_COUNT, - 1);
ch->ComputePoints();
}[/CODE]
Alıntıdır.
En Çok Reaksiyon Alan Mesajlar
Bu tarz işlemleri direk uygulamadan önce lütfen kendiniz de bu bug mevcut mu kontrol edip ekleyiniz.
Teşekkürler.
Bu tarz işlemleri direk uygulamadan önce lütfen kendiniz de bu bug mevcut mu kontrol edip ekleyiniz.
Teşekkürler.
Teşekkürler.
Paylaşım için teşekkürler.Merhaba,
Bugün düzelteceğimiz sorun Kan Hapıkullanımı ile alakalı.![]()
Öncelikle Kan Hapı ne işe yarar?
Sağ tıklayarak çalışır. Statü puanlarınızı yeniden dağıtmanızı sağlar.
Kan Hapı kullanılarak nasıl bug yapılıyor?
x94 statınız var iken 4 hap kullanırsanız ve sonunda başka bir stat eklediğinizde 4 statüyü harcarsanız, statünüz 90'dan 160'a yani iki katına çıkar.
Çözüm
[CODE title="Kan Hapı Fix"]1) Dosyayı açın : cmd_general.cpp
2) Arayın ve bulun: ACMD(do_stat_minus)
3) Aşağıdaki ile değiştirin:
ACMD(do_stat_minus)
{
char arg1[256];
one_argument(argument, arg1, sizeof(arg1));
if (!*arg1)
return;
if (ch->IsPolymorphed())
{
ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("둔갑 중에는 능력을 올릴 수 없습니다."));
return;
}
if (ch->GetPoint(POINT_STAT_RESET_COUNT) <= 0)
return;
if (!strcmp(arg1, "st"))
{
if (ch->GetRealPoint(POINT_ST) <= JobInitialPoints[ch->GetJob()].st)
return;
BYTE stpoints = 0;
stpoints = POINT_ST;
ch->SetRealPoint(stpoints, ch->GetRealPoint(stpoints) - 1);
ch->SetPoint(stpoints, ch->GetPoint(stpoints) - 1);
ch->ComputePoints();
ch->PointChange(stpoints, 0);
}
else if (!strcmp(arg1, "dx"))
{
if (ch->GetRealPoint(POINT_DX) <= JobInitialPoints[ch->GetJob()].dx)
return;
BYTE dxpoints = 0;
dxpoints = POINT_DX;
ch->SetRealPoint(dxpoints, ch->GetRealPoint(dxpoints) - 1);
ch->SetPoint(dxpoints, ch->GetPoint(dxpoints) - 1);
ch->ComputePoints();
ch->PointChange(dxpoints, 0);
}
else if (!strcmp(arg1, "ht"))
{
if (ch->GetRealPoint(POINT_HT) <= JobInitialPoints[ch->GetJob()].ht)
return;
BYTE htpoints = 0;
htpoints = POINT_HT;
ch->SetRealPoint(htpoints, ch->GetRealPoint(htpoints) - 1);
ch->SetPoint(htpoints, ch->GetPoint(htpoints) - 1);
ch->ComputePoints();
ch->PointChange(htpoints, 0);
ch->PointChange(POINT_MAX_SP, 0);
}
else if (!strcmp(arg1, "iq"))
{
if (ch->GetRealPoint(POINT_IQ) <= JobInitialPoints[ch->GetJob()].iq)
return;
BYTE iqpoints = 0;
iqpoints = POINT_IQ;
ch->SetRealPoint(iqpoints, ch->GetRealPoint(iqpoints) - 1);
ch->SetPoint(iqpoints, ch->GetPoint(iqpoints) - 1);
ch->ComputePoints();
ch->PointChange(iqpoints, 0);
ch->PointChange(POINT_MAX_HP, 0);
}
else
return;
ch->PointChange(POINT_STAT, + 1);
ch->PointChange(POINT_STAT_RESET_COUNT, - 1);
ch->ComputePoints();
}[/CODE]
Alıntıdır.
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 0
- Görüntüleme
- 287
- Cevaplar
- 6
- Görüntüleme
- 294
- Cevaplar
- 14
- Görüntüleme
- 716
- Cevaplar
- 18
- Görüntüleme
- 1K
- Cevaplar
- 3
- Görüntüleme
- 400
