D 1
delimuratt
noisiv 1
noisiv
Manwe Work 1
Manwe Work
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Cannn6161 1
Cannn6161
onur akbaş 1
onur akbaş
PrimeAC 1
PrimeAC
Mt2Hizmet 1
Mt2Hizmet
romegames 1
romegames
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

[Sahibinden] Armağan Cube - Cuberenewal HackLogEx Fix !

  • Konuyu başlatan Konuyu başlatan TipsizFakir
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 33
  • Görüntüleme Görüntüleme 2K
5.00 yıldız(lar) 1 Değerlendirme Değerlendirenler
Paylaşım için teşekkürler.
 
Helal olsun size valla süpersiniz. Elinize emeğinize sağlık
 
Paylaşım için teşekkürler
 
Selamlar arkadaşlar,
@ZalimTR dostumla birlikte bulduğumuz bir fixi, kimsenin canı yanmasın diye birçok sunucu sahibine ücretsiz olarak verdik. Ancak iyi niyetimiz bazı kişiler tarafından suistimal edilip, fix kendi buluşlarıymış gibi satılmaya başlandı. Bu durum bizi üzdüğü için, artık fixi herkesin erişimine açık şekilde paylaşıyoruz.


Fix tamamen ücretsizdir; sahibinden TÜRKMMO’ya armağandır.
Eğer farklı forumlarda paylaşacaksanız, lütfen @ZalimTR ve benden alıntı olduğunu belirtmeyi unutmayın.


Herkese hayırlı olsun, güle güle kullanın.

Gelelim Şimdi Fix'e

Arat:
[CODE lang="cpp" title="cuberenewal.cpp"]void Cube_Make(LPCHARACTER ch, int index, int count_item, int index_item_improve)
{
if (!ch)
return;[/CODE]

Altına Ekle:
[CODE lang="cpp" title="cuberenewal.cpp"] if (count_item < 0)
{
LogManager::instance().HackLogEx(ch, "[HATA] ***** COCUGU SINIRSIZ İTEM HİLESİ YAPIYOR.");
return;
}

if (index_item_improve != -1)
{
LogManager::instance().HackLogEx(ch, "[HATA] ***** COCUGU SANS HİLESİ YAPIYOR..");
return;
}[/CODE]
Tekrar Arat:
[CODE lang="cpp" title="cuberenewal.cpp"] if (materialInfo.gold != 0)
{
ch->PointChange(POINT_GOLD, -static_cast<long long>(materialInfo.gold * count_item), false);
}[/CODE]

Altına Ekle:
[CODE lang="cpp" title="cuberenewal.cpp"] if (total_items_give <= 0)
{
ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("It has failed."));
LogManager::instance().HackLogEx(ch, "[HATA] ****** EVLADI CUBE FAIL.");
sys_log(0, "%s - %d Cube window make failed", ch->GetName(), ch->GetPlayerID());
return;
}[/CODE]

Arat:
[CODE lang="cpp" title="input_login.cpp"] sys_log(0, "player_select: login: %s index: %d", c_r.login, pinfo->index);

if (!c_r.id)
{
sys_err("no account table");
return;
}
[/CODE]

Altına Ekle:
[CODE lang="cpp" title="input_login.cpp"] if (d->GetEmpire() < 0 || d->GetEmpire() > 3)
{
LogManager::instance().HackLogEx(d, "CInputLogin::CharacterSelect try crash to game core. (GetEmpire)");
d->SetPhase(PHASE_CLOSE);
return;
}

if (pinfo->index >= PLAYER_PER_ACCOUNT)
{
LogManager::instance().HackLogEx(d, "CInputLogin::CharacterSelect try crash to game core. (index)");
sys_err("index overflow %d, login: %s", pinfo->index, c_r.login);
return;
}[/CODE]

Müsait Bir Yere Ekle Log.cpp:
[CODE lang="cpp" title="log.cpp"]void LogManager::HackLogEx(LPCHARACTER ch, const char* textLine)
{
if (!ch)
return;

LPDESC desc = ch->GetDesc();

if (!desc)
return;

Query("INSERT INTO `log`.`log_hack_ex` (`player`, `player_name`, `account`, `account_name`, `textLine`, `time`) VALUES(%u, '%s', %u, '%s', '%s', '%s', '%s', '%s', '%s', NOW())", ch->GetPlayerID(), ch->GetName(), ch->GetAID(), desc->GetAccountTable().login, textLine);
}

void LogManager::HackLogEx(LPDESC desc, const char* textLine)
{
if (!desc)
return;

DWORD player_id = 0;
DWORD account_id = 0;

LPCHARACTER ch = desc->GetCharacter();

if (ch)
{
player_id = ch->GetPlayerID();
account_id = ch->GetAID();
}

Query("INSERT INTO `log`.`log_hack_ex` (`player`, `player_name`, `account`, `account_name`, `textLine`, `time`) VALUES(%u, %u, 'Unknown', '%s', 'Unknown', '%s', '%s', '%s', '%s', NOW()", player_id, account_id, textLine);
}

void LogManager::HackLogEx(std::string stLogin, const char* textLine)
{
Query("INSERT INTO log.log_hack_auth (account, textLine, time) VALUES('%s', `%s`, NOW())", stLogin.c_str(), textLine);
}[/CODE]

Müsait Bir Yere Ekle Log.h :
[CODE lang="cpp" title="log.h"] void HackLogEx(LPCHARACTER ch, const char* textLine);
void HackLogEx(LPDESC desc, const char* textLine);
void HackLogEx(std::string stLogin, const char* textLine);[/CODE]

questlua_global.cpp Arat:

[CODE lang="cpp" title="quest_global.cpp"] int _get_special_item_group( lua_State* L )[/CODE]

Kod Bloğunun Bitişine Ekle:
[CODE lang="cpp" title="quest_global.cpp"] int _hack_log_ex( lua_State* L )
{
LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();
const char* string = lua_tostring(L, 1);
if (!ch)
{
LogManager::instance().HackLogEx("Bilinmiyor...", string);
return 1;
}
LogManager::instance().HackLogEx(ch, string);
return 1;
}[/CODE]

Src Kısmı Bitti Mysql Kısmına Geçelim Log Kısmına "log_hack_ex.sql" olarak yükleyiniz:

[CODE title="log_hack_ex.sql"]/*
Navicat Premium Data Transfer

Source Server : TipsizFakir
Source Server Type : MariaDB
Source Server Version : 100528 (10.5.28-MariaDB)
Source Host : 192.168.1.100:3306
Source Schema : log

Target Server Type : MariaDB
Target Server Version : 100528 (10.5.28-MariaDB)
File Encoding : 65001

Date: 31/07/2025 08:25:57
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for log_hack_ex
-- ----------------------------
DROP TABLE IF EXISTS `log_hack_ex`;
CREATE TABLE `log_hack_ex` (
`player` int(11) UNSIGNED NOT NULL DEFAULT 0,
`player_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL DEFAULT 'Noname',
`account` int(11) UNSIGNED NOT NULL DEFAULT 0,
`account_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL DEFAULT 'NONAME',
`textLine` varchar(1024) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL DEFAULT 'NONAME',
`time` datetime NULL DEFAULT NULL
) ENGINE = Aria CHARACTER SET = latin1 COLLATE = latin1_swedish_ci PAGE_CHECKSUM = 1 ROW_FORMAT = Page TRANSACTIONAL = 1;

-- ----------------------------
-- Records of log_hack_ex
-- ----------------------------

SET FOREIGN_KEY_CHECKS = 1;[/CODE]


Eğer ki Fix Atılmazsa Ne Olur Hemen Şu Şekilde Gösterelim:



Ekli dosyayı görüntüle 160358

Elinize sağlık yararlı paylaşım, bir çok sunucu için ilaç niteliğinde :))
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst