-
Posts
97 -
Joined
-
Last visited
-
Days Won
4 -
Feedback
0%
wezt last won the day on November 2 2017
wezt had the most liked content!
About wezt
- Birthday October 29
Informations
-
Gender
Male
wezt's Achievements
-
Hi devs! I'd like to ask if someone has experience in using IDE's for server source development (freebsd source, development on windows machine)? Would be nice if you'll share some info about this question, which software you're using, cons/pros of some IDE's, examples of your development enviroment and all other related info. At the moment I'm going to try CLion on virtualbox with freebsd. Probably you have better solutions. Thanks in advance
-
ALEX ۩͇̿V͇̿I͇̿P͇̿۩ started following wezt
-
[Sysser]Switchbot by mijago
wezt replied to CloseSource's topic in Community Support - Questions & Answers
Probably it's too late for an answer, but still it could be helpful for someone This problem appears because in original files from Mijago exists some small mistakes (look at marked rows): Next changes fixed errors for me: Regards. -
official [Old][Archive] - [Official] Unpacked Updates Metin2.de
wezt replied to Shogun's topic in Guides & HowTo
Item and mob protos xml dumps item_mob_proto.zip -
A little bug detected here. Replace 'bool Blend_Item_find (DWORD item_vnum)' with next one: bool Blend_Item_find (DWORD item_vnum) { for (const auto& blend_info : s_blend_info) { if (blend_info->item_vnum == item_vnum) { return true; } } return false; } Best regards
-
Thanks for release I was too lazy for 'if (IsGM() && ch->GetGMLevel() < IMPLEMENTOR)' Here is a replacement: BOOL CHARACTER::IsLowGM() const { return m_pointsInstant.gm_level > GM_PLAYER && m_pointsInstant.gm_level < GM_IMPLEMENTOR; } Regards
-
[Question]What is wrong with error?
wezt replied to mafianekcek's topic in Community Support - Questions & Answers
@DeYaN. you need to create 'locale' folder in your game client directory. Then, move all dds/png/tga files from your locale pack in this folder. File paths should be the same as in your locale pack (e.g. you have 'locale\en\ui\loading\gauge_empty.dds' file, move it in 'GAME_CLIENT_FOLDER\locale\en\ui\loading\' directory). Regards. -
[Question]What is wrong with error?
wezt replied to mafianekcek's topic in Community Support - Questions & Answers
@DeYaN., check out your item_list.txt (lines specified in syserr.txt) also try to move all images from locale pack to locale folder (described above). -
@xGoogle, in ch1 config change PLAYER_SQL to: PLAYER_SQL: localhost user thor player Regards
-
@xGoogle you've made mistakes in config files, check them
-
Just comment this part: SetShopValidPos(true); CheckShopPos f(this); sectree->ForEachAround(f); if(!GetShopValidPos()) { ChatPacket(CHAT_TYPE_INFO, "You cannot open a shop here (too close to other shop)."); return; } You need to add this numbers in 'struct CheckShopPos', something like this: if (ch->GetRaceNum()!=30000 || !ch->GetRaceNum()!=30001) //shop mob vnum return; or in case if you have some range of vnums (for example between 30000 and 30010): if (ch->GetRaceNum() < 30000 && ch->GetRaceNum() > 30010) //shop mob vnum return;
-
M2 Download Center Download Here ( Internal ) Hello! I'd like to show you how you can check position for shops (probably offline shops too). I don't like when the map is full of shops or when shops are too close for each other. So I've made few functions for checking if the shop is in safezone or if it too close to other shops. Let's start char.h Find there: void CloseMyShop(); protected: LPSHOP m_pkShop; LPSHOP m_pkMyShop; std::string m_stShopSign; LPCHARACTER m_pkChrShopOwner; Add few new lines: void CloseMyShop(); void SetShopValidPos(bool value) { m_bShopValidPos = value; } bool GetShopValidPos() { return m_bShopValidPos; } protected: LPSHOP m_pkShop; LPSHOP m_pkMyShop; std::string m_stShopSign; LPCHARACTER m_pkChrShopOwner; bool m_bShopValidPos; char.cpp In 'void CHARACTER::Initialize()' find: m_pkMyShop = NULL; Add below: m_bShopValidPos = true; Then search for 'void CHARACTER::OpenMyShop(const char * c_pszSign, TShopItemTable * pTable, BYTE bItemCount)' Add above new function: struct CheckShopPos { LPCHARACTER m_ch; CheckShopPos(LPCHARACTER ch) { m_ch = ch; } void operator()(LPENTITY ent) { if (ent->IsType(ENTITY_CHARACTER)) { LPCHARACTER ch = (LPCHARACTER) ent; if (ch->GetRaceNum()!=30000) //shop mob vnum return; if (DISTANCE_APPROX(ch->GetX() - m_ch->GetX(), ch->GetY() - m_ch->GetY()) < 200) //distance between shops { m_ch->SetShopValidPos(false); } } } }; Then in 'void CHARACTER::OpenMyShop(const char * c_pszSign, TShopItemTable * pTable, BYTE bItemCount)' search for: if (bItemCount == 0) return; Add below: //shops pos check LPSECTREE sectree = GetSectree(); if (sectree) { SetShopValidPos(true); CheckShopPos f(this); sectree->ForEachAround(f); if(!GetShopValidPos()) { ChatPacket(CHAT_TYPE_INFO, "You cannot open a shop here (too close to other shop)."); return; } if (!sectree->IsAttr(GetX(), GetY(), ATTR_BANPK)) { ChatPacket(CHAT_TYPE_INFO, "You cannot open a shop here (use safezone)."); return; } } //shops pos check P.s: That's all, have fun Regards.
-
Receive 4kkk Yang from shop offline?
wezt replied to DeYaN.'s topic in Community Support - Questions & Answers
Just comment these rows, in case if you don't want use yang fee for shops opening: if (g_bNeededMoney) PointChange(POINT_GOLD, -g_dwNeedMoney, false); Otherwise make sure that 'offlineshop_config' works like it should. Regards. -
Core disconnects players
wezt replied to jepcutza's topic in Community Support - Questions & Answers
-
Hey @random, check out your item_proto,txt/item_names.txt on the server Make sure that 1st line doesn't contains any info about items. As far i remember the game skips 1st line in these files, and if there you have a row about gold (vnum 1) then it will be skipped => "Your problem". P.S.: Also you need to check item_proto on client side, in case if you use for it item_names.txt/item_proto.txt
-
How can I put GM name when using /n ?
wezt replied to Lehel's topic in Community Support - Questions & Answers
In game/src/cmd_gm.cpp find "ACMD(do_notice)" and replace it with next one: ACMD(do_notice) { char chatbuf[CHAT_MAX_LEN + 1]; snprintf(chatbuf, sizeof(chatbuf), "%s :%s", ch->GetName(), argument); BroadcastNotice(chatbuf); } Regards