Jump to content

Recommended Posts

Posted

Hello all.... it's my 1st post over here so i was thinking to make it special ;D

So here is a piece of code from me for the GM who corrupts...(corrupt=give items/enchant/level/etc to normal player)

So here we go!

 

This code is for L2J tested and working on my pack.

Chronicle: Interlude

 

First you go here: trunk/L2J_Gameserver/java/config/options.properties

and you add this:

# Ban edited Player and Corrupt GM if a GM edits a NON GM character.

GMEdit = False

OR FALSE

 

Secondly, you go here: trunk/L2J_Gameserver/java/net/sf/l2j/Config.java

and you add this:

GM_EDIT                         = Boolean.valueOf(optionsSettings.getProperty("GMEdit", "False"));
OR FALSE AS I SAID

 

And at the end you add these:

 

import net.sf.l2j.gameserver.util.IllegalPlayerAction;

import net.sf.l2j.gameserver.util.Util;

 

And These:

/**

* Anti-Corrupt GMs Protection.

* If GMEdit enabled, a GM won't be able to Add Exp or SP to any other

* player that's NOT a GM Character. And in addition... both player

* and GM WILL BE BANNED.

*/

if(Config.GM_EDIT && (expval != 0 || spval != 0)&& !player.isGM())

{

//Warn the player about his inmediate ban.

player.sendMessage("A GM tried to edit you in "+expval+" exp points and in "+spval+" sp points.You will both be banned.");

Util.handleIllegalPlayerAction(player,"The player "+player.getName()+" has been edited. BAN!!", IllegalPlayerAction.PUNISH_KICKBAN);

//Warn the GM about his inmediate ban.

player.sendMessage("You tried to edit "+player.getName()+" by "+expval+" exp points and "+spval+". You both be banned now.");

Util.handleIllegalPlayerAction(activeChar,"El GM "+activeChar.getName()+" ha editado a alguien. BAN!!", IllegalPlayerAction.PUNISH_KICKBAN);

_log.severe("GM "+activeChar.getName()+" tried to edit "+player.getName()+". They both have been Banned.");

}

else if (expval !=0 || spval !=0)

 

Credits:Shikiero (ME)

Posted

Yes goood but if the gm make it on his player (gm char) and then trade the items? whats goings on then?

 

Gm who's good GM must be Inv in the town checking the players, and the game server... That's why there is a option of "petition" to recall admin about his/her questions..

 

 

Posted

from what i see in code this basicaly ban gm and player if the gm tries to exp/sp him .. nothing about trades or enchant... so this is usefull for low rate server only...

Posted

Hello all.... it's my 1st post over here so i was thinking to make it special ;D

So here is a piece of code from me for the GM who corrupts...(corrupt=give items/enchant/level/etc to normal player)

So here we go!

 

This code is for L2J tested and working on my pack.

 

First you go here: trunk/L2J_Gameserver/java/config/options.properties

and you add this: OR FALSE

 

Secondly, you go here: trunk/L2J_Gameserver/java/net/sf/l2j/Config.java

and you add this: OR FALSE AS I SAID

 

And at the end you add these:

 

And These:

Credits:Shikiero (ME)

 

What i can say is nice but no is yours .. i have a server pack where i have this .

anyway good work.

Posted

I think this is already shared!

 

about this

//Warn the player about his inmediate ban. 
player.sendMessage("A GM tried to edit you in "+expval+" exp points and in "+spval+" sp points.You will both be banned."); 
Util.handleIllegalPlayerAction(player,"The player "+player.getName()+" has been edited. BAN!!", IllegalPlayerAction.PUNISH_KICKBAN); 

 

i think bad idea ...

 

is better remove exp and to send a message to him!

 

Posted

I think this is already shared!

 

about this

//Warn the player about his inmediate ban. 
player.sendMessage("A GM tried to edit you in "+expval+" exp points and in "+spval+" sp points.You will both be banned."); 
Util.handleIllegalPlayerAction(player,"The player "+player.getName()+" has been edited. BAN!!", IllegalPlayerAction.PUNISH_KICKBAN); 

 

i think bad idea ...

 

is better remove exp and to send a message to him!

 

yes immediate ban would be unfair for a player who hadnt any idea that gm will exp him for example. I am correct?

Posted

Yes goood but if the gm make it on his player (gm char) and then trade the items? whats goings on then?

make what?if he enchant give exp and so on both of them will be banned.

In addition i didn't forbid the gm to trade with other player because for example at events gms must trade players to give them the reward they will be both get banned and that's unfair.

 

What i can say is nice but no is yours .. i have a server pack where i have this .

anyway good work.

That's my work dude.... it's not my fault if someone added with his own way at a god damned pack..

 

I think this is already shared!

 

about this

//Warn the player about his inmediate ban. 
player.sendMessage("A GM tried to edit you in "+expval+" exp points and in "+spval+" sp points.You will both be banned."); 
Util.handleIllegalPlayerAction(player,"The player "+player.getName()+" has been edited. BAN!!", IllegalPlayerAction.PUNISH_KICKBAN); 

 

i think bad idea ...

 

is better remove exp and to send a message to him!

 

A true and trusted gm will never EVER touch the player's exp/sp....

@I can sure you that this is not shared bcz i used the button "search" and i found nothing...

Posted

if admin do this ? will be banned? if someone want make a custom event?

 

yes immediate ban would be unfair for a player who hadnt any idea that gm will exp him for example. I am correct?

yes I think these two are the main disadvantages of the share. However its nice.

Posted

if admin do this ? will be banned? if someone want make a custom event?

you can see my answer above....

Its for all the game masters and admins and event game masters everyone...

Guest
This topic is now closed to further replies.


  • Posts

    • Where I can buy a cheap domain .com? cheapest I found was on Godaddy for 12 euro and Hostinger for 10 euro.
    • Hello everyone, here's a simple and useful idea for any type of server.   This code applies a discount when a player makes a purchase inside a clan’s castle or clan hall, offering a benefit to clan members who own a castle or clan hall. Important: Merchant transactions must be handled through multisell, not buylist. The discount is directly applied within the multisell, so the price shown is already reduced.   "For example, if a scroll costs 1000 Adena and you set a 20% discount in the config, the final price when purchasing inside a castle or clan hall will be 800 Adena."   This code is developed on the public aCis 401 revision.   public static int CLAN_BASE_OWNERSHIP_MERCHANT_DISCOUNT; CLAN_BASE_OWNERSHIP_MERCHANT_DISCOUNT = clans.getProperty("ClanBaseOwnershipMechantDiscount", 20); # If clan owns a clan hall or castle, all members have a discount of X% at merchant transactions (multisell). # Discount applies only inside the base (castle or clan hall). ClanBaseOwnershipMechantDiscount = 20   /** diff --git a/aCis_gameserver/java/net/sf/l2j/gameserver/data/xml/MultisellData.java b/aCis_gameserver/java/net/sf/l2j/gameserver/data/xml/MultisellData.java index 556e111..bbf8e69 100644 --- a/aCis_gameserver/java/net/sf/l2j/gameserver/data/xml/MultisellData.java +++ b/aCis_gameserver/java/net/sf/l2j/gameserver/data/xml/MultisellData.java @@ -101,7 +101,7 @@ do { // send list at least once even if size = 0 - player.sendPacket(new MultiSellList(list, index)); + player.sendPacket(new MultiSellList(list, index, player)); index += PAGE_SIZE; } while (index < list.getEntries().size()); diff --git a/aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/MultiSellChoose.java b/aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/MultiSellChoose.java index 7c82c5b..1654abc 100644 --- a/aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/MultiSellChoose.java +++ b/aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/MultiSellChoose.java @@ -6,6 +6,7 @@ import net.sf.l2j.Config; import net.sf.l2j.gameserver.enums.FloodProtector; import net.sf.l2j.gameserver.enums.StatusType; +import net.sf.l2j.gameserver.enums.ZoneId; import net.sf.l2j.gameserver.enums.items.CrystalType; import net.sf.l2j.gameserver.model.Augmentation; import net.sf.l2j.gameserver.model.actor.Player; @@ -225,6 +226,20 @@ return; } + if (player.isInsideZone(ZoneId.CLAN_HALL) && player.getClan() != null && player.getClan().hasClanHall()) + { + e.setItemCount(e.getItemCount() * (100 - Config.CLAN_BASE_OWNERSHIP_MERCHANT_DISCOUNT) / 100); + if (e.getItemCount() == 0) + e.setItemCount(1); + } + + if (player.isInsideZone(ZoneId.CASTLE) && player.getClan() != null && player.getClan().hasCastle()) + { + e.setItemCount(e.getItemCount() * (100 - Config.CLAN_BASE_OWNERSHIP_MERCHANT_DISCOUNT) / 100); + if (e.getItemCount() == 0) + e.setItemCount(1); + } + if (Config.BLACKSMITH_USE_RECIPES || !e.getMaintainIngredient()) { // if it's a stackable item, just reduce the amount from the first (only) instance that is found in the inventory diff --git a/aCis_gameserver/java/net/sf/l2j/gameserver/network/serverpackets/MultiSellList.java b/aCis_gameserver/java/net/sf/l2j/gameserver/network/serverpackets/MultiSellList.java index 9269b06..c6102a0 100644 --- a/aCis_gameserver/java/net/sf/l2j/gameserver/network/serverpackets/MultiSellList.java +++ b/aCis_gameserver/java/net/sf/l2j/gameserver/network/serverpackets/MultiSellList.java @@ -2,6 +2,9 @@ import static net.sf.l2j.gameserver.data.xml.MultisellData.PAGE_SIZE; +import net.sf.l2j.Config; +import net.sf.l2j.gameserver.enums.ZoneId; +import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.model.multisell.Entry; import net.sf.l2j.gameserver.model.multisell.Ingredient; import net.sf.l2j.gameserver.model.multisell.ListContainer; @@ -15,7 +18,9 @@ private boolean _finished; - public MultiSellList(ListContainer list, int index) + private Player _player; + + public MultiSellList(ListContainer list, int index, Player player) { _list = list; _index = index; @@ -28,6 +33,8 @@ } else _finished = true; + + _player = player; } @Override @@ -74,7 +81,14 @@ { writeH(ing.getItemId()); writeH(ing.getTemplate() != null ? ing.getTemplate().getType2() : 65535); - writeD(ing.getItemCount()); + + if (_player.isInsideZone(ZoneId.CLAN_HALL) && _player.getClan() != null && _player.getClan().hasClanHall()) + writeD((ing.getItemCount() * (100 - Config.CLAN_BASE_OWNERSHIP_MERCHANT_DISCOUNT) / 100) < 1 ? 1 : ing.getItemCount() * 80 / 100); + else if (_player.isInsideZone(ZoneId.CASTLE) && _player.getClan() != null && _player.getClan().hasCastle()) + writeD((ing.getItemCount() * (100 - Config.CLAN_BASE_OWNERSHIP_MERCHANT_DISCOUNT) / 100) < 1 ? 1 : ing.getItemCount() * 80 / 100); + else + writeD(ing.getItemCount()); + writeH(ing.getEnchantLevel()); writeD(0x00); // TODO: i.getAugmentId() writeD(0x00); // TODO: i.getManaLeft()  
    • DISCORD : utchiha_market telegram : https://t.me/utchiha_market SELLIX STORE : https://utchihamkt.mysellix.io/ Join our server for more products : https://discord.gg/uthciha-services https://campsite.bio/utchihaamkt
    • WTB EXP ETERNAL 10x new dm.
    • This project is based on the latest public aCis sources (revision 401) and supports a multi-client system (C4 & IL), making it suitable for custom usage but not for retail.   You can configure the SelectedClient option in server.properties and loginserver.properties to switch between C4 and IL.  Both clients are fully synchronized, including login, server selection, packets, and geodata.   Notable Features: - Completed the login and server selection phase for both clients. - Synchronized all packets to support both clients (including some specific features). - Reworked the datapack and SQL files (excluding HTML files) to work seamlessly with both clients. - Added geodata support for both clients. - Adapted nearly all AI, scripts, bosses, HTML, and MULTISELL files to match C4 functionality. - Reduced the maximum clan level from 8 to 5 (C4 feature). - Rewrote clan HTML to remove C5-C6 features.   Disabled the following C5 and C6 features: - Divine Inspiration (C6 feature). - Clan skills and clan reputation points (C5 feature). - Pledge class (C5 feature). - Hero skills (C5 feature). - Dueling system (C6 feature). - Augmentations (C6 feature). - Cursed weapons (C5-C6 feature).   General Improvements: - Performed a general HTML cleanup and optimized features based on the client version. - Added an option to display the remaining time of disabled skills. - Skill timestamps now update when using the skill list.   This flexibility allows you to create a unique progression system tailored to your needs. The price for the diff patch, which can be applied to aCis public sources, is €150. For inquiries, please contact me via PM or Discord (ID: @Luminous).
  • Topics

×
×
  • Create New...