Welcome, Guest
You have to register before you can post on our site.

Username/Email:
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 3,908
» Latest member: ashleusasdoz1108
» Forum threads: 5,153
» Forum posts: 41,375

Full Statistics

Online Users
There are currently 44 online users.
» 0 Member(s) | 42 Guest(s)
Bing, Yandex

Latest Threads
Last Chaos Server Sale
Forum: The Black Market (Buy, Sell, Trade)
Last Post: XWrongX2
01-26-2026, 11:07 PM
» Replies: 3
» Views: 611
All in One Exporter
Forum: Tools
Last Post: Kain88
01-25-2026, 07:04 AM
» Replies: 4
» Views: 431
HELP! ReZasCashServer It ...
Forum: Ep4 Support
Last Post: Kain88
01-24-2026, 03:24 PM
» Replies: 2
» Views: 165
Hi, does anyone know the ...
Forum: Help
Last Post: Desarija
01-21-2026, 11:29 AM
» Replies: 1
» Views: 114
LastChaos Nemesis
Forum: Server Advertising
Last Post: Desarija
01-20-2026, 04:06 PM
» Replies: 3
» Views: 237
Looking for EP4 Guidance
Forum: General Discussion
Last Post: xHypnosiaa
01-19-2026, 08:33 AM
» Replies: 1
» Views: 171
We're in need of creative...
Forum: Project Recruitment
Last Post: RGT
01-16-2026, 12:48 AM
» Replies: 0
» Views: 119
Last Chaos build deployme...
Forum: Ep4 Guides
Last Post: xHypnosiaa
01-08-2026, 11:14 AM
» Replies: 0
» Views: 75
Last Chaos global server ...
Forum: Ep4 Guides
Last Post: xHypnosiaa
01-07-2026, 07:01 PM
» Replies: 0
» Views: 33
EP-2/EP-3 Mixed files
Forum: Archived General Server Releases
Last Post: TeKnodE
01-06-2026, 09:53 PM
» Replies: 1
» Views: 298

 
  Export LODS
Posted by: Sutz - 12-27-2020, 03:46 PM - Forum: Tools - No Replies


2

 

Mirror: 2

Print this item

  Spawn Shop and Spawn NPC
Posted by: dethunter12 - 12-27-2020, 03:30 PM - Forum: Ep4 Guides - Replies (4)


These commands will help you create shops and spawn some npc's easier ( i mostly use them for intown spawning)

Credits to : Rrbkmz 

Go under Sharelib/gm_command.h (around line 332)

add this

 

#define GM_CMD_SPAWN_NPC "spawn_npc"
#define GM_CMD_SPAWN_SHOP "spawn_shop"

 under GameServer/GMCmdList.cpp around line 287 add this

 

add(new CGMCmd(GM_CMD_SPAWN_NPC, 10, do_spawnNPC)); // rrbkmz
add(new CGMCmd(GM_CMD_SPAWN_SHOP, 10, do_spawnSHOP));



Next Gameserver/dofuncAdmin.h around line 241 add this

 

void do_spawnNPC(CPC* ch, const char* arg, std::vector<std:Confusedtring>& vec);
void do_spawnSHOP(CPC* ch, const char* arg, std::vector<std:Confusedtring>& vec);



Next doFuncAdmin.cpp arround line 11005 (at the end of the file) add this

 

void do_spawnNPC(CPC* ch, const char* arg, std::vector<std:Confusedtring>& vec)
{
char tmpBuf[MAX_MESSAGE_SIZE] = { 0, };

*tmpBuf = '\0';
if (!arg || !(*arg))
return;

arg = AnyOneArg(arg, tmpBuf);
int IdNPC = atoi(tmpBuf);
arg = AnyOneArg(arg, tmpBuf);
int RegenNPC = atoi(tmpBuf);
arg = AnyOneArg(arg, tmpBuf);
int iLayer = atoi(tmpBuf);

sprintf(tmpBuf, "INSERT INTO t_npc_regen (a_zone_num, a_npc_idx, a_pos_x, a_pos_z, a_pos_h, a_pos_r, a_y_layer, a_regen_sec, a_total_num) VALUES ( %d, %d, %f , %f, %f, %f, %d, 300, -1)",
ch->m_pZone->m_index, IdNPC, ch->m_pos.m_x = GET_X(ch), ch->m_pos.m_z = GET_Z(ch), ch->m_pos.m_h = GET_H(ch), ch->m_pos.m_r, ch->m_pos.m_yLayer = GET_YLAYER(ch), RegenNPC);
GAMELOG << init("NewServer") << "USE npc_regen_o COMMAND : CHAR_ID : "
<< ch->m_index << " CHAR_NAME : "
<< ch->m_name << " : "
<< ch->m_nick << "POS : "
<< ch->m_pos.m_x << " : "
<< ch->m_pos.m_z << " : "
<< ch->m_pos.m_h << "NPC_ID : "
<< IdNPC << "ZONE_NUM : "
<< ch->m_pZone->m_index << end;

CDBCmd cmd;
cmd.Init(&gserver->m_dbdata);
cmd.SetQuery(tmpBuf);

if (!cmd.Update())
{
}
}

Add this under neither that function 

 

void do_spawnSHOP(CPC* ch, const char* arg, std::vector<std:Confusedtring>& vec) //dethunter12 spawn shop
{
char tmpBuf[MAX_MESSAGE_SIZE] = { 0, };

*tmpBuf = '\0';
if (!arg || !(*arg))
return;

arg = AnyOneArg(arg, tmpBuf);
int IdNPC = atoi(tmpBuf);
arg = AnyOneArg(arg, tmpBuf);
int RegenNPC = atoi(tmpBuf);
arg = AnyOneArg(arg, tmpBuf);
int iLayer = atoi(tmpBuf);

sprintf(tmpBuf, "INSERT INTO t_shop (a_zone_num, a_keeper_idx, a_pos_x, a_pos_z, a_pos_h, a_pos_r, a_y_layer, a_sell_rate, a_buy_rate) VALUES ( %d, %d, %f , %f, %f, %f, %d, 40, 100)",
ch->m_pZone->m_index, IdNPC, ch->m_pos.m_x = GET_X(ch), ch->m_pos.m_z = GET_Z(ch), ch->m_pos.m_h = GET_H(ch), ch->m_pos.m_r, ch->m_pos.m_yLayer = GET_YLAYER(ch));
GAMELOG << init("NewServer") << "USE t_shop COMMAND : CHAR_ID : "
<< ch->m_index << " CHAR_NAME : "
<< ch->m_name << " : "
<< ch->m_nick << "POS : "
<< ch->m_pos.m_x << " : "
<< ch->m_pos.m_z << " : "
<< ch->m_pos.m_h << "NPC_ID : "
<< IdNPC << "ZONE_NUM : "
<< ch->m_pZone->m_index << end;

CDBCmd cmd;
cmd.Init(&gserver->m_dbdata);
cmd.SetQuery(tmpBuf);

if (!cmd.Update())
{
}
}

Next you'll want to use the commands in game  You will type the following

face where you want to the npc facing 
/monthly_2020_12/image.png.f56209f9500fe8c08f2456808e94fbe5.png" />/monthly_2020_12/image.png.d700e3692b26708c205a126e071884d3.png" />

then you can go check t_npc_regen for the npc spawn and t_shop for the shop spawn

thats all i have for this guide hope you enjoyed it.

 

Print this item

  Your Help with old files
Posted by: Sutz - 12-27-2020, 11:48 AM - Forum: General Discussion - No Replies


Hello, so im requesting the LC community to upload all your old files gathered from Ep1/2/3/4 tools/clients/servers etc etc anything you can think off to help us fix some of the old links.

Please post your upload links below an we will download everything an try to refresh the hole LCKB db. All files zips etc will be downloaded an hosted on a google drive or something that we can keep alive for everyone.

Print this item

  World Editor (64bit w/Changes)
Posted by: illusionist - 12-27-2020, 05:03 AM - Forum: Tools - Replies (6)


64 Bit World editor with some minor changes do not expect this to be super stable it was an experiment and I figure its only collecting dust now so time to air it out.

 

A version of this leaked back when I originally did some changes but it lacked 2 of the major features I believe so here it is in all its give you an anyresum glory.

 

Foliage Mode - Seems to not work 100% anymore was to simplify placing large amounts of plants or rocks for more realistic worlds with fewer headaches (has random size and placement controls)

CTRL+Z To enter foliage mode

2  status indicator

2 Info window allows you to change the object that is being inserted (thumbnails are from .tbn files with same name images might be wrong)

Entity Fine Orientation controls - Ability to move an object 0.1 units on a particular axis

2 this is in the tools panel with positional info.

Virtual Tree Supports .SMC files - Allowing you to place a SMC directly into the world at the mouse point (this requires a terrain be selected to work)

2

The ability to create an invisible collision object around entities with one click (work around for inability to edit attributes should work for generate model attributes function?)

2  right click a selected entity and look for this option.

It is missing one core change from what I remember that being the ability to find/replace/ignore missing files on load.

https://mega.nz/file/TJ0W2C5a#u-LXX0bNON...vcHtOe2JTc

This is an as is product no warranty expressed or implied.

Print this item

  LC Server Starter
Posted by: Vogelj1988 - 12-27-2020, 04:49 AM - Forum: General Tools Releases - No Replies


/monthly_2020_12/program.jpg.ad5c1d8837e4ad408ad0edf1dae36ddd.jpg" />

A project i was working on. The program fully works. codded with vs2019.

2

Print this item

  Command for setting Cash of account
Posted by: Veni - 12-25-2020, 06:57 PM - Forum: Ep4 Guides - Replies (5)



so when testing around i just remembered there wasn't a way to add cash to your account via command, so let's change this..

 

doFuncAdmin.cpp:

void do_GM_Cash(CPC* ch, const char* arg, std::vector<std:Confusedtring>& vec)
{

char tmpBuf[MAX_MESSAGE_SIZE] = { 0, };

*tmpBuf = '\0';
if (!arg || !(*arg))
return;

arg = AnyOneArg(arg, tmpBuf, true);

int amount = atoi(tmpBuf);

CLCString sql(2048);
CDBCmd cmd;
cmd.Init(&gserver->m_dbauth);

sql.Format("UPDATE bg_user SET cash = %d WHERE user_code = %d", amount, ch->m_desc->m_index);
cmd.SetQuery(sql);
if (!cmd.Update())
{
LOG_ERROR("Cash Query failed");
}

}

 

doFuncAdmin.h:

void do_GM_Cash(CPC* ch, const char* arg, std::vector<std:Confusedtring>& vec);

 

GMCmdList.cpp:

add(new CGMCmd("cash", 10, do_GM_Cash));


YOU ALSO NEED TO ADD WHAT KRAVENS POSTED BELOW FOR THIS TO WORK PROPERLY! THE DEFAULT GAMESERVER DOESN'T HAVE CONNECTION TO THE AUTH DATABASE!

Then after adding it you just need to use the command /cash and type whatever number you want.

Print this item

  Bot test
Posted by: Sutz - 12-24-2020, 09:46 PM - Forum: General Discussion - No Replies


This is a test to check if discord posts

Print this item

  Navicat Premium 15 Crack 2020
Posted by: dethunter12 - 12-23-2020, 09:46 PM - Forum: General Tools Releases - Replies (7)


Here is a link to Navicat premium follow through YouTube guide. 

2

Print this item

  64 bit world editor working
Posted by: cooldude - 12-23-2020, 07:52 PM - Forum: Archived Tools - Replies (4)


Found this on youtube:

2

it's the world editor and it works on 64 bit systems. Enjoy ? Linkis  is in their video description, so give them a like I guess.

 

Print this item

  Remove or change logout timmer
Posted by: cooldude - 12-23-2020, 07:39 PM - Forum: Ep4 Guides - No Replies


Open this file in your client source: StageGamePlay.cpp

Find this in the code:

m_dwRemainTime = 10;// edit this to the amount of time in seconds that you want
break;
default:
m_dwRemainTime = 0;
break;
}

Change this line:

m_dwRemainTime = 10;// edit this to the amount of time in seconds that you want

If you don't want any time just set it to 0

 

Print this item