Olá amigos bom dia, sou novo ainda estou aprendendo e estou tendo muita dificuldade pra add este mod na minha acis 398 não encontro alguns diretórios e também da alguns errors enfim. Alguém poderia por favor adaptar esse mod para acis 398 ? dês de já muito obrigado
Propriedades:
Citação
# ---------------------------------------------------------------------------
# Custom - non-retail-like systems that have been integrated into the project.
# Be warned that there may be no support for these mods ban the original author's assistance.
# ---------------------------------------------------------------------------
# Champion mobs - Turn random mobs into Champions
# ---------------------------------------------------------------------------
# Enable/Disable Champion Mob System.
ChampionEnable = True
# Force Champion mobs to be passive?
# To leave champion mobs to default/Aggressive, set to False.
# To set all champion mobs to Passive, set True.
ChampionPassive = False
# % chance for a mob to became champion (0 to disable).
ChampionFrequency = 20
# Title of all Champion Mobs.
ChampionTitle = C H A M P I O N
# Min and max levels allowed for a mob to be a Champion mob.
ChampionMinLevel = 20
ChampionMaxLevel = 80
# Hp multiplier for Champion mobs.
ChampionHp = 4
# Hp Regen Multiplier for Champion mobs.
ChampionHpRegen = 1
# Standard rewards multiplier for Champion mobs.
ChampionRewards = 2
# Adena & Seal Stone rewards multiplier for Champion mobs.
ChampionAdenasRewards = 2
# Specified reward item ID
ChampionRewardItemID = 6393
# The amount of the specified reward a player will receive if they are awarded the item.
ChampionRewardItemQty = 10
# % Chance to obtain a specified reward item from a higher level Champion mob.
# Default: 0
ChampionRewardLowerLvlItemChance = 100
# % Chance to obtain a specified reward item from a lower level Champion mob.
# Default: 0
ChampionRewardHigherLvlItemChance = 100
Diff:
Citação
diff --git a/java/net/sf/l2j/Config.java b/java/net/sf/l2j/Config.java
--- a/java/net/sf/l2j/Config.java
+++ b/java/net/sf/l2j/Config.java
public final classConfig{+publicstatic final String CHAMPION_FILE ="./config/JDev/event/ChampionMobs.properties";+publicstatic boolean L2JDEV_CHAMPION_ENABLE;+publicstatic boolean L2JDEV_CHAMPION_PASSIVE;+publicstaticint L2JDEV_CHAMPION_FREQUENCY;+publicstaticString L2JDEV_CHAMP_TITLE;+publicstaticint L2JDEV_CHAMP_MIN_LVL;+publicstaticint L2JDEV_CHAMP_MAX_LVL;+publicstaticint L2JDEV_CHAMPION_HP;+publicstaticint L2JDEV_CHAMPION_REWARDS;+publicstaticfloat L2JDEV_CHAMPION_ADENAS_REWARDS;+publicstaticfloat L2JDEV_CHAMPION_HP_REGEN;++publicstaticint L2JDEV_CHAMPION_REWARD_LOWER_LVL_ITEM_CHANCE;+publicstaticint L2JDEV_CHAMPION_REWARD_HIGHER_LVL_ITEM_CHANCE;+publicstaticint L2JDEV_CHAMPION_REWARD_ID;+publicstaticint L2JDEV_CHAMPION_REWARD_QTY;+publicstatic final void CHAMPION()+{+ final ExProperties CHAMPION = initProperties(CHAMPION_FILE);++ L2JDEV_CHAMPION_ENABLE = CHAMPION.getProperty("ChampionEnable",false);+ L2JDEV_CHAMPION_PASSIVE = CHAMPION.getProperty("ChampionPassive",false);+ L2JDEV_CHAMPION_FREQUENCY = CHAMPION.getProperty("ChampionFrequency",0);+ L2JDEV_CHAMP_TITLE = CHAMPION.getProperty("ChampionTitle","Champion");+ L2JDEV_CHAMP_MIN_LVL = CHAMPION.getProperty("ChampionMinLevel",20);+ L2JDEV_CHAMP_MAX_LVL = CHAMPION.getProperty("ChampionMaxLevel",60);+ L2JDEV_CHAMPION_HP = CHAMPION.getProperty("ChampionHp",7);+ L2JDEV_CHAMPION_HP_REGEN = CHAMPION.getProperty("ChampionHpRegen",1);+ L2JDEV_CHAMPION_REWARDS = CHAMPION.getProperty("ChampionRewards",8);+ L2JDEV_CHAMPION_ADENAS_REWARDS = CHAMPION.getProperty("ChampionAdenasRewards",1);++ L2JDEV_CHAMPION_REWARD_LOWER_LVL_ITEM_CHANCE = CHAMPION.getProperty("ChampionRewardLowerLvlItemChance",0);+ L2JDEV_CHAMPION_REWARD_HIGHER_LVL_ITEM_CHANCE = CHAMPION.getProperty("ChampionRewardHigherLvlItemChance",0);+ L2JDEV_CHAMPION_REWARD_ID = CHAMPION.getProperty("ChampionRewardItemID",6393);+ L2JDEV_CHAMPION_REWARD_QTY = CHAMPION.getProperty("ChampionRewardItemQty",1);}--- a/java/net/sf/l2j/gameserver/model/actor/Attackable.java
+++ b/java/net/sf/l2j/gameserver/model/actor/Attackable.java
@@-108,7+108,19@@if(Config.PART_ZONE_MONSTERS_ID.contains(Integer.valueOf(getNpcId())))DropZoneManager.addReward(killer);-+ setChampion(false);+if(Config.L2JDEV_CHAMPION_ENABLE)+{+// Set champion on next spawn+if(!(killer instanceofMonster)&&(Config.L2JDEV_CHAMPION_FREQUENCY >0)&&(getStatus().getLevel()>=Config.L2JDEV_CHAMP_MIN_LVL)&&(getStatus().getLevel()<=Config.L2JDEV_CHAMP_MAX_LVL))+{++if(Rnd.get(100)<Config.L2JDEV_CHAMPION_FREQUENCY)+{+ setChampion(true);+}+}+}
\ No newline at end of file
diff --git a/java/net/sf/l2j/gameserver/model/actor/Creature.java b/java/net/sf/l2j/gameserver/model/actor/Creature.java
index d970f82..1c2d3e5100644--- a/java/net/sf/l2j/gameserver/model/actor/Creature.java
+++ b/java/net/sf/l2j/gameserver/model/actor/Creature.java
return"[Creature objId="+ getObjectId()+"]";}+private boolean _champion =false;++public boolean isChampion()+{+return _champion;+}++publicvoid setChampion(boolean chanpion)+{+ _champion =true;+ _champion = chanpion;++}+publicvoid reduceCurrentHp(double i,Creature attacker, boolean awake, boolean isDOT, L2Skill skill){- getStatus().reduceHp(i, attacker, awake, isDOT,false);+if(Config.L2JDEV_CHAMPION_ENABLE && isChampion()&&(Config.L2JDEV_CHAMPION_HP !=0))+{+ getStatus().reduceHp(i /Config.L2JDEV_CHAMPION_HP, attacker, awake, isDOT,false);+}+else+ getStatus().reduceHp(i, attacker, awake, isDOT,false);
diff --git a/java/net/sf/l2j/gameserver/network/serverpackets/AbstractNpcInfo.java b/java/net/sf/l2j/gameserver/network/serverpackets/AbstractNpcInfo.java
index 262c0c6..1570565100644--- a/java/net/sf/l2j/gameserver/network/serverpackets/AbstractNpcInfo.java
+++ b/java/net/sf/l2j/gameserver/network/serverpackets/AbstractNpcInfo.java
@@-109,6+109,9@@if(Config.SHOW_NPC_LVL && _npc instanceofMonster)
_title ="Lv "+ _npc.getStatus().getLevel()+(_npc.getTemplate().getAggroRange()>0?"* ":" ")+ _title;+if(Config.L2JDEV_CHAMPION_ENABLE && _npc.isChampion())+ _title =""+Config.L2JDEV_CHAMP_TITLE;+
diff --git a/java/net/sf/l2j/gameserver/model/actor/instance/Monster.java b/java/net/sf/l2j/gameserver/model/actor/instance/Monster.java
index deaed87..6af2c38100644--- a/java/net/sf/l2j/gameserver/model/actor/instance/Monster.java
+++ b/java/net/sf/l2j/gameserver/model/actor/instance/Monster.java
+import net.sf.l2j.commons.random.Rnd;if(attacker.isPremium()){
exp *=Config.VIP_XP_SP_RATE;
sp *=Config.VIP_XP_SP_RATE;}+if(Config.L2JDEV_CHAMPION_ENABLE && isChampion())+{+ exp *=Config.L2JDEV_CHAMPION_REWARDS;+ sp *=Config.L2JDEV_CHAMPION_REWARDS;}+if(attacker !=null&& isRaidBoss()&& isChampion())+{+// Apply Special Item drop with random(rnd) quantity(qty) for champions.+if(Config.L2JDEV_CHAMPION_ENABLE && isChampion()&&((Config.L2JDEV_CHAMPION_REWARD_LOWER_LVL_ITEM_CHANCE >0)||(Config.L2JDEV_CHAMPION_REWARD_HIGHER_LVL_ITEM_CHANCE >0)))+{+int champqty =Rnd.get(Config.L2JDEV_CHAMPION_REWARD_QTY);+IntIntHolder item =newIntIntHolder(Config.L2JDEV_CHAMPION_REWARD_ID,++champqty);++if((player.getStatus().getLevel()<= player.getStatus().getLevel())&&(Rnd.get(100)<Config.L2JDEV_CHAMPION_REWARD_LOWER_LVL_ITEM_CHANCE))+{+if(Config.AUTO_LOOT || isFlying())+{+ player.addItem("ChampionLoot", item.getId(), item.getValue(),this,true);// Give the item(s) to the L2PcInstance that has killed the L2Attackable+}+else+{+ dropItem(player, item);+}+}+elseif((player.getStatus().getLevel()> player.getStatus().getLevel())&&(Rnd.get(100)<Config.L2JDEV_CHAMPION_REWARD_HIGHER_LVL_ITEM_CHANCE))+{+if(Config.AUTO_LOOT || isFlying())+{+ player.addItem("ChampionLoot", item.getId(), item.getValue(),this,true);// Give the item(s) to the L2PcInstance that has killed the L2Attackable+}+else+{+ dropItem(player, item);+}+}+}@@-604,6+622,7@@{ItemInstance item =ItemInstance.create(holder.getId(), holder.getValue(), player,this);
item.setDropProtection(player.getObjectId(), isRaidBoss());+ item.setDropProtection(player.getObjectId(), isChampion());
item.setInstance(getInstance(),false);
You can post now and register later.
If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.
Hello @Hitcher. Could you please clarify the scenario in which this happened?
Was it on GF server?
The drops that were on the ground were from the same character? These fell with autoloot off, then you activated autoloot and tried to pick? Please provide more details so we can replicate it.
Quality service,
I hired him as driver, and whole time while it lasted, I was notified every detail what he was doing. Really quality.
I recommend these services.
🔥 DISCOUNT UNTIL THE END OF THE MONTH!
» From 21.11.2024 to 24.11.2024 - 20% Discount!
Price: 500$ - 400$.
»From 25.11.2024 to 30.11.2024 - 10% Discount!
Price: 500$ - 450$.
Question
MEIRELES
Olá amigos bom dia, sou novo ainda estou aprendendo e estou tendo muita dificuldade pra add este mod na minha acis 398 não encontro alguns diretórios e também da alguns errors enfim. Alguém poderia por favor adaptar esse mod para acis 398 ? dês de já muito obrigado
Propriedades:
Diff:
1 answer 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.
Note: Your post will require moderator approval before it will be visible.