~PROJECT~ ZayLeN v1.1 > CLEAN & STABLE FOR A NEW PROJECT @ SUPPORT INCLUDED

Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!

ZayleN

New member
Joined
Apr 21, 2026
Messages
2
Credits
0
Hello!
I've been working on this project for almost an year now and i have started from the client mainline branch version wishing to create a clean and well optimized client and source code so without going into further boring stuff i'm here to put my project up for sale with updates and support included 24/7 as long as i am awake, i can answer.

Quote
The Binary src is compiled with VS 2022 vs143 and stdcpp17 (c++17)
Organized and clean structure of the pack files
Dependencies : IL (DEVIL) 1.5.0, Boost 1.8.0, cryptoapp (Crypto++) 8.7.0
Database > MariaDB 11.x
Server source is compiled using only clang

Client language > RO / EN based on customer decision since ML is not available at the moment.

/**
Author: ZayLeN a.k.a ZayLeN Work.
Version: 1.1
**/

#ifndef __Defines_h__
#define __Defines_h__
#pragma once

#define LOCALE_SERVICE_SINGAPORE

////////////////////////////////////
// #/# Extra #/#

#define ENABLE_MISCELLANEOUS
#define ENABLE_CPP_PSM
#define ENABLE_DISCORD_RPC
#define ENABLE_MOB_TARGET_INFO
#define ENABLE_SHOW_CHEST_DROP
#define ENABLE_NEW_LOCALE_EX
#define ENABLE_EMOJI_FEATURE
#define ENABLE_SHINING_TABLE
#define ENABLE_PICKUP_ALL
#define ENABLE_SET_INSIDE_RENDER
#define ENABLE_VERTEX_BATCHING
#define LINK_IN_CHAT
#define ENABLE_RENEWAL_AFFECT_SHOWER
#define __AUTO_QUQUE_ATTACK__
#define ENABLE_EVENT_MANAGER
#define ENABLE_CHARACTER_DETAILS_SYSTEM
#define RENDER_TARGET
#define ENABLE_MULTIPLE_OPEN_RENEWAL
#define ENABLE_SLOT_PET_SYSTEM
#define ENABLE_METIN_RESIZE

// #/# Extra end #/#
////////////////////////////////////


////////////////////////////////////
// #/# Like official stuffs begin #/#

//> already present
#define ENABLE_COSTUME_SYSTEM
#define ENABLE_DRAGON_SOUL_SYSTEM
#define ENABLE_ENERGY_SYSTEM
#define ENABLE_NEW_EQUIPMENT_SYSTEM

//> new
#define ENABLE_MOUSE_WHEEL_EVENT
#define ENABLE_FOG_FIX
#define ENABLE_QUIVER_SYSTEM
#define ENABLE_EXTEND_INVEN_SYSTEM
#define ENABLE_WJ_SHOW_MOB_INFO
#define ENABLE_DETAILS_UI
#define ENABLE_HIGHLIGHT_NEW_ITEM
#define ENABLE_AGGREGATE_MONSTER_EFFECT
#define ENABLE_UNGROUP_PROCESS_IN_TASKBAR
#define ENABLE_ENVIRONMENT_EFFECT_OPTION
#define ENABLE_SHADOW_RENDER_QUALITY_OPTION
#define ENABLE_GRAPHIC_ON_OFF
#define ENABLE_MOVE_CHANNEL
#define ENABLE_ITEM_QUICK_CHECKINOUT

//> costumes related
#define ENABLE_MOUNT_COSTUME
#define ENABLE_ACCE_COSTUME
#define ENABLE_WEAPON_COSTUME

//> notice related
#define ENABLE_BIG_NOTICE // ex
#define ENABLE_12ZI_NOTICE // ex


// #/# Like official stuffs end #/#
////////////////////////////////////


////////////////////////////////////
// #/# Preference features begin #/#

#define FUNC_IMPROVE_HORSE_ROTATION // The horse can rotate on itself, without large curves.
#define FUNC_WALK_THROUGH_MONSTERS // You can walk through monsters, except when attacking them.
#define FUNC_NO_COLLISION_IN_SAFEZONE // It will remove the collision in safezone.
#define FUNC_DISABLE_DSS_QUALIFICATION // No DSS qualification required (check also in Srcs-Server).

// #/# Preference features end #/#
////////////////////////////////////


Got rid of the unused code

  • HackShield
  • XTrap
  • GAIDEN
  • Auction
  • pcbang
  • passpod
  • vcard
  • matrix card
  • TrafficProfiler
  • Profiler
  • USE_OPEN_ID
  • USE_NPROTECT_GAMEGUARD

Got rid of the unused libs
todo


Quote

Client Src fixes :

In ModelInstanceUpdate.cpp and PythonApplication.cpp: fixed black screen bug.
In GrpDevice.cpp: fixed NO_APPROPRIATE_DEVICE error when the PC does not have an 800x600 resolution, frequently occurring on laptops.
In Model.cpp and ModelInstanceUpdate.cpp: fixed mesh pointer crash.
In MapOutdoor.cpp: disabled fog.tga, which was causing crashes.
In PythonSystem.cpp: fixed client taskbar collision with the Windows taskbar.
In SoundManager.cpp: fixed missing sound after warp.
In EterPack.cpp: fixed memory leak where zObj was not deleted.
In EterPackManager.cpp: fixed reading from D:/ymir work with small code refactoring.
In UserInterface.cpp: fixed wrong stRegisterDebugFlag compile debug.
In UserInterface.cpp: fixed wrong if/else with bPackFirst = FALSE in distribute mode, allowing load from local disk D:/ymir work.
In Resource.cpp: extended readable extension list from Python file load, including .png and .mse.
In PythonEventManagerMoudle.cpp: moved the expression QuestButtonClickWithLess2M(-2147483648 + iIndex) from Python to launcher into a new function.
In RaceMotionDataEvent.h and FlyingInstance.cpp: fly effects are now registered in debug.
In multiple files: character level text tail is now updated in real time.
In InstanceBase.cpp: fixed wrong height of entity text tails by moving the text tail refresh under the affect check.
In PythonNetworkStreamPhaseGame.cpp: increased MAX_RECV_COUNT from 4 to 8 to severely reduce server lag.
In multiple files: changed part / SetPart data type from WORD to DWORD to fix acce overflow.
In DXTCImage.cpp, DXTCImage.h, and GrpImageTexture.cpp: enhanced memory management for optimized image loading.
In NetworkActorManager.cpp: added missing IsStone handling in RemoveDynamicActors, fixing a memory leak.
In PythonPlayer.cpp: fixed camouflage with automatic attack. Previously, if a player used camouflage while being attacked, they could still be attacked automatically.
In StateManager.cpp: fixed textures blurring out when a UAC prompt appears, such as launching another client or opening the in-game mall.
In multiple files: fixed reload quest crash core. The system now ensures all player quests are destroyed before reload.

In PythonNetworkStreamCommand.cpp: fixed client-side reload cube. It now sends information correctly and clears old data.



Quote
Client Py Fixes :

1. In `game.py`: fixed the problem of fog resetting when changing the day mode.

2. In `uicharacter.py`: fixed the integer problem with Cython for `QuestButtonClick` by moving the expression into the launcher.

3. In `uiaffectshower.py`: fixed the horse affect problem where the affect image list was not rearranged after unsummoning the horse.

4. In `uitooltip.py`: fixed items with remaining time staying in a shop and showing `Remain time 0 Sec.`.

5. In `exception.py`: changed a `TraceError` that could not appear because the client was first interrupted with a `LogBox`.

6. In `interfacemodule.py`: fixed ghost window problem by calling `.Hide()` before destroy. Apply this fix to every window you add.

7. In `interfacemodule.py` and `game.py`: fixed reload quest crash core. The system now ensures all player quests are destroyed before reload.


8. In `uicube.py` and `game.py`: fixed client-side reload cube. It now sends information correctly and clears old data.

Quote
Game & DB src defines:
/**
Author: ZayLeN a.k.a ZayLeN Work.
Version: 1.1
**/

#ifndef __Defines_h__
#define __Defines_h__
#pragma once
#include "extra.h"

////////////////////////////////////
// #/# Extra #/#

#define ENABLE_NEW_COMMANDS
#define ENABLE_PROTO_FROM_DB
#define ENABLE_MISCELLANEOUS
#define ENABLE_LOCALE_STRING_EX
#define ENABLE_GET_DAMAGE_FIX
#define ENABLE_MESSENGER_SUPPORT_STATUS

#define ENABLE_CHARACTER_DETAILS_SYSTEM

#define ENABLE_CUBE_COPY_ATTR
#define ENABLE_GLOBAL_CHAT
#define ENABLE_GM_CANNOT_GIVE_ITEMS

//> new quest event triggers
#define ENABLE_QUEST_RECEIVE_ITEM_EVENT
#define ENABLE_QUEST_DIE_EVENT
#define ENABLE_QUEST_HIT_EVENT

//> new lua functions
#define ENABLE_LUAFUNC_MYSQL_QUERY

//> new reload stuff
#define ENABLE_EXTENDED_RELOAD

#ifdef ENABLE_EXTENDED_RELOAD

#define ENABLE_RELOAD_DROP // new cmd: /reload drop
#define ENABLE_RELOAD_REGEN // new cmd: /reload regen
#define ENABLE_RELOAD_REFINE_PROTO // in: /reload proto
#define ENABLE_RELOAD_SHOP_PROTO // in: /reload proto
#define ENABLE_RELOAD_ATTR_PROTO // in: /reload proto
#endif

#define ENABLE_MOB_TARGET_INFO
#define ENABLE_SHOW_CHEST_DROP

#define ENABLE_MOUNT_LIKE_HORSE

// #/# Extra end #/#
////////////////////////////////////



////////////////////////////////////
// #/# Like official features begin #/#

//> already installed by Ymir
#define ENABLE_PET_SYSTEM
//> new
#define ENABLE_EXTEND_INVEN_SYSTEM
#define ENABLE_QUIVER_SYSTEM
#define ENABLE_WJ_SHOW_MOB_INFO
#define ENABLE_PARTY_SKILL_BUFF
//#define ENABLE_HIGHLIGHT_NEW_ITEM
#define ENABLE_AGGREGATE_MONSTER_EFFECT
// #define ENABLE_NEW_GF_START_POSITION
// #define ENABLE_WOLFMAN_CHARACTER // unfinished
// #define ENABLE_PLAYER_PER_ACCOUNT5 // unfinished
#define ENABLE_MOVE_CHANNEL
#define ENABLE_ITEM_QUICK_CHECKINOUT
#define ENABLE_RENEWAL_AFFECT_SHOWER
//> costumes related
#define ENABLE_MOUNT_COSTUME
#define ENABLE_ACCE_COSTUME
#define ENABLE_WEAPON_COSTUME

//> notice related
#define ENABLE_BIG_NOTICE // ex
#define ENABLE_12ZI_NOTICE // ex

#define __AUTO_QUQUE_ATTACK__
#define ENABLE_EVENT_MANAGER
#define ENABLE_CUBE_RENEWAL_WORLDARD
#define ENABLE_MULTIPLE_OPEN_RENEWAL
#define ENABLE_SLOT_PET_SYSTEM
#define ENABLE_SKILL_SELECT_FEATURE
#define ENABLE_ANTI_EXP
// #/# Like official features end #/#
////////////////////////////////////

#define ENABLE_WARP_OBSERVER_FIX // Fixes the Observer warp quest for the IMPLEMENTOR.

////////////////////////////////////
// #/# Preference features begin #/#

#define FUNC_DISABLE_GIVE_POTION_WHEN_LEVELUP // Your character doesn't receive red potion when leveling up.
#define FUNC_UNLIMITED_CAPE_OF_COURAGE // The cape of courage is unlimited.
#define FUNC_REMOVE_3PCT_TAX_WHEN_SELL // Remove 3% tax when selling items.
#define FUNC_NO_EMPIRE_SHOP_PRICE_PER3_PENALTY // Remove x3 shop buyprice if have different empire.
#define FUNC_ANTISTUN_IS_100PCT // Anti-stun is 100% instead of 90 (default).
#define FUNC_NO_EMOTION_MASK_NEED // Perform emotions without requiring a mask.
#define FUNC_NO_MONSTER_IN_SAFEZONE // Monsters are destroyed when entering a safe zone.
#define FUNC_FORCE_SKILL_MASTER_17_POINT // Skills advance to master (M1) at the 17th point.
#define FUNC_EMPIRE_10PCT_MALUS // Empire malus (-10% if you're in other kingdoms).
#define FUNC_ITEM_DROP_PENALTY_ALIGN // Item drop penalty with negative alignment.
#define FUNC_ALLOW_BLEND_IN_BELT_INVENTORY // Allow blending items inside the Belt Inventory.
#define FUNC_DISABLE_PARTY_SKILL_BUFF_IN_WAR // Disable party skill buffs during guild wars.
#define FUNC_INFINITE_HORSE_HEALTH_STAMINA // Horse stamina and health return always max stats.
#define FUNC_OPEN_SHOP_WITH_ARMOR // You can open pc private shop while wearing armor.
#define FUNC_ENABLE_WARRIOR_BERSERK_MALUS // You can enable the warrior berserk malus.
#define FUNC_PABEOB_SKILL_9_LEVEL_LIMIT // Sura magic weapon nullify affect work with level limit (9).
#define FUNC_DISABLE_STOP_RIDING_WHEN_DIE // You can disable the stop riding when the character die.
#define FUNC_DISABLE_EMOTIONS_IN_WAR // Disable emotions skill buffs during guild wars.
#define FUNC_DISABLE_TIMED_EVENT_INTERRUPTION // Disable timed events interruption when you attack/get attacked.

// #/# Preference features end #/#
////////////////////////////////////



////////////////////////////////////
// #/# General settings begin #/#

enum EGeneralSettings
{
// Common
GUILD_MAKE_GOLD_REQUIRED = 200000, // default 200000 (200k)
GUILD_MAKE_LEVEL_REQUIRED = 40, // default 40
SHOUT_LIMIT_LEVEL = 15, // default 15
MAP_ALLOW_LIMIT = 64, // default 32
PARTY_JOIN_LEVEL_LIMIT = 30, // default 30
DROP_PENALTY_ALIGN_LEVEL = 50, // default 50
ITEM_DESTROY_EVENT_SEC = 300, // default 300

// Limit points
PC_MAX_ATTACK_SPEED = 170, // default 170
MOB_MAX_ATTACK_SPEED = 250, // default 250
PC_MAX_MOVE_SPEED = 200, // default 200
MOB_MAX_MOVE_SPEED = 250, // default 250
};

// #/# General settings end #/#
////////////////////////////////////


#endif
Quote

Got rid of the unused code like

  • HackShield
  • XTrap
  • GAIDEN
  • Auction
  • pcbang
  • passpod
  • vcard
  • OPENID
  • M2_USE_POOL
  • DEBUG_ALLOC
  • enable_limit_time
  • Speed server
  • netmarble
  • mobile
  • sms
  • billing
  • teen_packet
  • matrix
  • check_server
  • TrafficProfiler
  • Profiler
  • block_country
  • greet message
  • monarch
  • castle
  • siege
  • rog
  • Lotto
  • HighScore
  • HotBackup
  • BattleArena
  • FileMonitor
  • MallocAllocator
  • SpamBlockEvent
  • ChinaEventServer
  • over_time (china only)
  • ThreeWayWar, forkedmapindex
  • dance event
  • auth brazil
  • hammer of thor

Got rid of the unused libs like
  • libserverkey

Quote

1st Fixes:

In cube.cpp: fixed crash core caused by requesting the cube list.
In item_attribute.cpp: fixed crash core caused by wrong values in item_attr_rare by adding proper checks.
In messenger_manager.cpp: fixed SQL injection vulnerability in messenger_list.
In guild_manager.cpp: fixed SQL injection vulnerability when creating a guild.
In questmanager.cpp: fixed crash core in CancelServerTimers, where the game removed timers during iteration.
In input_main.cpp: fixed crash core by adding checks to prevent non-player entities from being invited to a guild.
In char.cpp: fixed/prevented crash core caused by setting dungeon to NULL.

In cmd_general.cpp: fixed crash core by adding sanity checks for missing FN_point_string.
Quote
2st Fixes:
In char_item.cpp: fixed stack problem with ITEM_UNIQUE. You can now wear stacked EXP rings or thief gloves, but only one will be equipped.
In tables.h: fixed HP/MP underflow above +32767, preventing -32k HP/MP after warps.
In safebox.cpp and ClientManager.cpp: fixed memory leak inside safebox ChangeSize, where pkOldGrid was not deleted.
In questmanager.cpp: added a default delay value for g_GoldDropTimeLimitValue to avoid yang drop spam when the eflag is not configured.
In battle.cpp: fixed ghost hits by increasing hit range from 300 to 500 to avoid null hits.
In char.cpp: added workaround for client closing in Sync when (x, y) are not found in the sectree.
In char_affect.cpp: fixed delayed entity visibility while riding by using UpdatePacket() instead of ComputePoints().
In input_main.cpp: increased riding backport distance from 40 to 80 to avoid backports.
In char_item.cpp: fixed stone stacking, allowing stones to be refined from stacks without losing the full stack.
In input_main.cpp: fixed Devil Tower refine issue where refine attempts could be lost if the player had no money.
In char.cpp: added standard CanWarp check in WarpSet.
In char_item.cpp: blocked adding or changing bonuses on equipped items.
In char_item.cpp: fixed Sura sword skill / normal hit issue where HP could be lost when attacking a dead opponent.
In char_item.cpp: disabled 6/7 bonuses on costume skins.
In input_main.cpp: added whisper kick-hack protection with a limit of 10 whispers per second.
In char_item.cpp: fixed book stacking, allowing all book items to stack.
In ClientManager.cpp: fixed mall items without sockets. dwSocket is now defined as 0 and only modified for ITEM_UNIQUE.
In questmanager.cpp: fixed quest kill count being counted twice.
In input_main.cpp: removed wrong and useless CheckClientVersion from CG_MOVE.
In input_main.cpp: added check to prevent equipped items from being moved to the safebox.
In input_login.cpp and config.cpp: fixed wrong condition for CheckClientVersion and changed DelayedDisconnect from 10 to 0.
In exchange.cpp: fixed wrong Dragon Soul inventory space check that prevented exchanges when the first DS slot was not empty.
In cmd_general.cpp: fixed wrong type in ACMD(do_war) from int to DWORD.
In building.cpp: fixed guild land loading on another core.
In cmd_general.cpp: added CanWarp check to prevent duplication through restart town warp.
In char_item.cpp: added CanWarp check to prevent duplication with ITEM_MARRIAGE and ITEM_TALISMAN warp functions.
In char_item.cpp: fixed marriage ring consuming MP when the partner is offline.
In cmd_gm.cpp: changed set alignment formula to properly account for UpdateAlignment, allowing specific alignment values to be set.
In char_item.cpp: fixed CSpecialItemGroup::MOB so seals are not consumed if the mob cannot spawn due to attribute checks.
In shop.h: fixed memory leak in shop class by making destructors virtual.
In char_item.cpp: fixed wrong check so equipped items can be switched even if inventory is full.
In input_login.cpp: improved HANDSHAKE phase syserr by adding hostname and port information.
In char.cpp and packet.h: character level text tail now updates in real time.
In char_skill.cpp: removed experience requirement for reading books when the player is already max level.
In char_item.cpp: made ITEM_TREASURE stackable by replacing RemoveItem with SetItem -1.
In input_login.cpp: fixed Analyze header 100 by adding missing empty case for HEADER_CG_MARK_LOGIN.
In char_item.cpp: removed useless antiflag check on item pickup while in a party.
In char_item.cpp and safebox.cpp: added sanity checks in MoveItem for same cell, same destination, or same window type to avoid duplication.
In dungeon.cpp: fixed FCountMonster so dead monsters and NPCs not yet despawned are not counted.
In dungeon.cpp: fixed dungeon notice sending by adding sanity checks for non-player entities.
In chat_battle.cpp: fixed standard mob-lock / bravery cape hack by moving and adjusting the check.
In item.cpp and questlua_pc.cpp: fixed GetSocket check in get_special_ride_vnum, using socket 0 instead of socket 2.
In char_item.cpp and item.cpp: fixed and refactored IsNewMountItem() and added it to EquipItem.
In char_item.cpp: fixed green and purple potion scaling continuing even when the effect is already active.
In cmd_gm.cpp: adjusted do_all_skill_master to give correct values to the correct skills instead of setting all to 40.
In input_login.cpp: fixed missing horse skill level packet at login.
In char_battle.cpp: fixed buff affect without weapon for Sura sword and aura sword skills.
In char_item.cpp: added missing map_index check for IS_MONKEY_DUNGEON.
In char_item.cpp: added new case for Mythical Peach item and added null-check protection.
In char_item.cpp: added check for using an item by dragging it onto the same slot.
In char_skill.cpp: blocked Sura sword / aura sword skills from being used without a weapon.
In item_length.h: refactored wrong enum constant assignment for unique item sockets to prevent bugs when adding new sockets.
In char.cpp and char_affect.cpp: fixed ComputePoints HP/SP bumps when updating or logging in.
In ProtoReader.cpp: fixed typo from SAMLL to SMALL in get_Mob_Size_Value.
In multiple files: changed part / SetPart data type from WORD to DWORD to fix acce overflow.
In exchange.cpp: fixed item duplication bug during trades while missions are in progress.
In char_item.cpp: replaced magic number 5 for inventory columns with INVENTORY_PAGE_COLUMN and adjusted variables to prevent overflow.

In char.cpp, entity_view.cpp, and entity.h: fixed critical FPS drop after warping in dungeons.
Quote
Lib fixes:

In libsql/AsyncSQL.cpp: fixed Destroy incorrectly releasing m_mtxQuery instead of m_mtxResult during result mutex cleanup.
In libthecore/src/utils.c and libthecore/include/utils.h: added number_ex_windows because the default number function was not working properly on Windows distribution.




All of the files come with support and updates included for free.|
Everything extra is paid and discussed before payment if is known to avoid future misunderstandings if my time could actually afford that!
Price : 150€
Discord : marius_offnr1

I can provide proof before buying if needed / requested.
For every question or any kind of misunderstanding, feel free to contact me through discord.
 
Back
Top