0 sader1992 Posted March 26 Posted March 26 the problem with this idea is even if you disabled zeny trading there still items , people can then use items to sell or move zeny between accounts. Quote
0 Bes Posted March 27 Author Posted March 27 6 hours ago, sader1992 said: the problem with this idea is even if you disabled zeny trading there still items , people can then use items to sell or move zeny between accounts. yes but if you make items cost lower they cant do that anymore. Quote
0 _Terra Posted March 27 Posted March 27 You can check this line in src/map/trade.cpp /** * Adds the specified amount of zeny to the trade window * This function will check if the player have enough money to do so * And if the target player have enough space for that money * @param sd : Player who's adding zeny * @param amount : zeny amount */ void trade_tradeaddzeny(map_session_data* sd, int32 amount) { map_session_data* target_sd; nullpo_retv(sd); if( !sd->state.trading || sd->state.deal_locked > 0 ) return; //Can't add stuff. if( (target_sd = map_id2sd(sd->trade_partner.id)) == nullptr ) { trade_tradecancel(sd); return; } if( amount < 0 || amount > sd->status.zeny || amount > MAX_ZENY - target_sd->status.zeny ) { // invalid values, no appropriate packet for it => abort trade_tradecancel(sd); return; } sd->deal.zeny = amount; clif_tradeadditem(sd, target_sd, 0, amount); } Quote
0 Bes Posted March 28 Author Posted March 28 16 hours ago, _Terra said: You can check this line in src/map/trade.cpp /** * Adds the specified amount of zeny to the trade window * This function will check if the player have enough money to do so * And if the target player have enough space for that money * @param sd : Player who's adding zeny * @param amount : zeny amount */ void trade_tradeaddzeny(map_session_data* sd, int32 amount) { map_session_data* target_sd; nullpo_retv(sd); if( !sd->state.trading || sd->state.deal_locked > 0 ) return; //Can't add stuff. if( (target_sd = map_id2sd(sd->trade_partner.id)) == nullptr ) { trade_tradecancel(sd); return; } if( amount < 0 || amount > sd->status.zeny || amount > MAX_ZENY - target_sd->status.zeny ) { // invalid values, no appropriate packet for it => abort trade_tradecancel(sd); return; } sd->deal.zeny = amount; clif_tradeadditem(sd, target_sd, 0, amount); } what part do i need to edit to make it untradable Quote
0 Angeluz Posted March 29 Posted March 29 if( amount < 0 || amount > 0 ) { // invalid values, no appropriate packet for it => abort trade_tradecancel(sd); return; } Quote
0 Paul Posted March 30 Posted March 30 On 3/28/2025 at 2:54 AM, _Terra said: You can check this line in src/map/trade.cpp /** * Adds the specified amount of zeny to the trade window * This function will check if the player have enough money to do so * And if the target player have enough space for that money * @param sd : Player who's adding zeny * @param amount : zeny amount */ void trade_tradeaddzeny(map_session_data* sd, int32 amount) { map_session_data* target_sd; nullpo_retv(sd); if( !sd->state.trading || sd->state.deal_locked > 0 ) return; //Can't add stuff. if( (target_sd = map_id2sd(sd->trade_partner.id)) == nullptr ) { trade_tradecancel(sd); return; } if( amount < 0 || amount > sd->status.zeny || amount > MAX_ZENY - target_sd->status.zeny ) { // invalid values, no appropriate packet for it => abort trade_tradecancel(sd); return; } sd->deal.zeny = amount; clif_tradeadditem(sd, target_sd, 0, amount); } /** * Adds the specified amount of zeny to the trade window * This function will check if the player have enough money to do so * And if the target player have enough space for that money * @param sd : Player who's adding zeny * @param amount : zeny amount */ void trade_tradeaddzeny(map_session_data* sd, int32 amount) { // Trading is disabled return; } completely removed trading Quote
Question
Bes
Is there a way to disabled zeny via trading?
6 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.