-
Posts
134 -
Joined
-
Last visited
-
Days Won
1 -
Feedback
0%
Content Type
Forums
Store
Third Party - Providers Directory
Feature Plan
Release Notes
Docs
Events
Everything posted by IceShiva
-
What a hell is IG?
-
Game 2089 2012 Accesories
IceShiva replied to marinebun's topic in Community Support - Questions & Answers
Of course you can use great lib created by imer for extending functionality of precompiled binaries Here you have orginal topic: [Hidden Content] but using old game is not recommended since source is available. Fixing all posible bug is insane. Additionally you must keep your game unchanged because you can unfortunally change function offsets, so this method is very intrusive.- 1 reply
-
- 1
-
you can recompile kernel with pae option or use 64bit freebsd and 32bit jail inside your 64bit freebsd, when you'll use jail restriction about memory is omited since you use 64bit kernel. Just search info about "cbsd"
-
GetMotionMode crash core
IceShiva replied to avertuss's topic in Community Support - Questions & Answers
Which gcc version did you use on working core btw You can of course replace keyworks like EXE to ELF DLL to shared object regardless Additionally you dont have correctly setuped flags for producting debug builds in you makefile. -
GetMotionMode crash core
IceShiva replied to avertuss's topic in Community Support - Questions & Answers
Which gcc version did you use? -
Loop when starting server
IceShiva replied to semoka10's topic in Community Support - Questions & Answers
Check your ITEM_ID_RANGE in db.conf -
Yes because they don't have enough amount of players ( i don't know why ). As never before. Polish servers are affected to.
-
Check if you dont use long thread blocking functions like queries or something like that.
-
Hosting FreeBSD Server
IceShiva replied to derprengel's topic in Community Support - Questions & Answers
Try Azure. But you need to know how to run metin2 server over nat. -
Exporting walk,run animations?
IceShiva replied to asdajdja's topic in Community Support - Questions & Answers
just wait a second i will edit this post with video i dont have video anymore, if you have 3ds and teamviewer i can show you -
Internal IP redirect to public IP (Linux)
IceShiva replied to FlorinMarian's topic in Community Support - Questions & Answers
You dont need to bind port on external ip, youmust still use you internal ip. -
Compiling source on newest FreeBSD
IceShiva replied to Denny2399's topic in Community Support - Questions & Answers
If you want compile source to 64bit binary you need to change things at post above but if you want compile 32bit binary under x64 FreeBSD let use 32bit jail of FreeBSD inside x64 FreeBSD. -
It's most cases that are crt's problems. Now Microsoft have new crt implemantation that may be not compatibile with older than vista system (like Windows XP, Windows Server 2003). Ofc if client bin is compiled under vc14+. According to this https://support.efolder.net/hc/en-us/articles/115010659028-VC-Redistributable-UCRT-Requirements-
-
Internal IP redirect to public IP (Linux)
IceShiva replied to FlorinMarian's topic in Community Support - Questions & Answers
desc_client.cpp in void CLIENT_DESC::SetPhase(int iPhase) edit if (!bSentBoot) { bSentBoot = true; TPacketGDBoot p; p.dwItemIDRange[0] = 0; p.dwItemIDRange[1] = 0; memcpy(p.szIP, g_szPublicIP, 16); // set you external ip instead g_szPublicIP DBPacket(HEADER_GD_BOOT, 0, &p, sizeof(p)); } or you can do it in client side at NetAddress.cpp void CNetworkAddress::GetIP(char* szIP, int len) { BYTE IPs[4]; *((DWORD*)IPs)=m_sockAddrIn.sin_addr.s_addr; _snprintf(szIP, len, "%d.%d.%d.%d", IPs[0], IPs[1], IPs[2], IPs[3]); // replace with you external server ip } -
Function in Cache.cpp
IceShiva replied to Metin2 Dev's topic in Community Support - Questions & Answers
it's cache flushing trigger. Called every ITEM_CACHE_FLUSH_SECONDS from config.txt or if you dont have it in config then default 1800 second is setted -
Homeroot/DynDns - Characterkick (bypass?)
IceShiva replied to JeeX's topic in Community Support - Questions & Answers
Goto desc_client.cpp and change twice g_szPublicIP with you external ip -
Good performance Mysql, my.cnf
IceShiva replied to TekkForCeAD2's topic in Community Support - Questions & Answers
it depends... What hardware youre using -
I can do it with all known streams (mms, rtps, http, rttp)
-
What dll?
-
Can be done with remove filenames from index. Files can be still unpacked but without filenames, extension so extracted files will be useless. Just one minus, you too can't extract files but it isn't problem if you have files. When I find some time i will create tutorial how to make it
-
I need to Kvm template FreeBsd for Solusvm
IceShiva replied to admin500's topic in Community Support - Questions & Answers
If you want use FreeBSD on kvm you need specific host configuration. -
M2 Download Center Download Here ( Internal ) Hello. Yesterday I have to measure exp table on server, so I decidet to move exp table from array to mysql to avoid recompile every time. Go to constant.cpp and delete: 2. Go to constants.h and delete 3. Go to constants.cpp and add on last line or whatever you want in file #include "db.h" #include "dev_log.h" exp_vec exp_vector; bool LoadExpTableFromMYSQL(void) { char szCountQuery[64]; char szExp[64]; sprintf(szCountQuery, "%s", "SELECT COUNT(level) FROM common.exp_table"); sprintf(szExp, "%s", "SELECT exp FROM common.exp_table"); std::auto_ptr<SQLMsg> pCountQuery(DBManager::Instance().DirectQuery(szCountQuery)); if (pCountQuery.get() == NULL) { sys_err("Failed to fetch level count from mysql! Check table or database."); pCountQuery.release(); pCountQuery.reset(); return false; } std::auto_ptr<SQLResult> pRes(pCountQuery.get()->Get()); if (pRes->uiNumRows > 0) { MYSQL_ROW row = mysql_fetch_row(pRes.get()->pSQLResult); int level = 0; str_to_number(level, row[0]); exp_vector.reserve(level); sys_log(0, "ExpTable reserved for %d levels", level); pCountQuery.release(); pRes.release(); pCountQuery.reset(); pRes.reset(); } std::auto_ptr<SQLMsg> pExp(DBManager::Instance().DirectQuery(szExp)); if (pExp.get() == NULL) { sys_err("Failed to fetch level count from mysql! Check table or database."); pExp.release(); pExp.reset(); return false; } std::auto_ptr<SQLResult> pRes2(pExp.get()->Get()); if (pRes2->uiNumRows > 0) { for (uint uiRow = 0; uiRow != pRes2->uiNumRows; ++uiRow) { MYSQL_ROW row = mysql_fetch_row(pRes2->pSQLResult); long long exp = 0; str_to_number(exp, row[0]); exp_vector.push_back(exp); sys_log(0, "Pushing exp %d to exp_vector", exp); } pExp.release(); pExp.reset(); pRes2.release(); pRes2.reset(); return true; } return false; } 4. Go to static void __LocaleService_Init_Korea() in locale_service.cpp and delete exp_table = exp_table_euckr; static void __LocaleService_Init_YMIR() delete exp_table = exp_table_euckr; static void __LocaleService_Init_Singapore() delete exp_table = exp_table_newcibn; static void __LocaleService_Init_Vietnam() delete exp_table = exp_table_newcibn; void LocaleService_TransferDefaultSetting() change if (!exp_table) exp_table = exp_table_common; to if(!LoadExpTableFromMYSQL()) { sys_err("Failed to load exp table from mysql!"); exit(1); } char.cpp CHARACTER::GetNextExp() const change exp_table to exp_vector questlua_pc.cpp int pc_give_exp_perc(lua_State* L) change exp_table to exp_vector and int pc_get_exp_perc(lua_State* L) change exp_table to exp_vector Thats all. Code can be refactored. Written in 10min
-
Better alternative to this tutorial is use GhostBSD distro with "mate" desktop enviroment PRoject home [Hidden Content]
-
Weird Thing About HybridCrypt Encryption?
IceShiva replied to -TÜRK-'s topic in Community Support - Questions & Answers
no