Jump to content

Recommended Posts

Posted

Hello.

I will show you, how to create/register

a new (Enchant Scroll) on L2JaCis Project.

This Guide is for newbies that wanna use aCis,but they cannot, beacause they don't know Java or how to apply a patch etc.

First you must have Eclipse with aCis Source.(Current free REV:270)

If you have them lets start.

Go to (C:\workspace\aCis_gameserver_270\java\net\sf\l2j\gameserver\network\clientpackets)

Find the file: (AbstractEnchantPacket.java)

Where has (+) or/and Green color it means you have to add it.

public static final class EnchantScroll

{

protected final boolean _isWeapon;

protected final int _grade;

private final boolean _isBlessed;

private final boolean _isCrystal;

+ private final boolean _isSpecial;

 

+ public EnchantScroll(boolean wep, boolean bless, boolean crystal, boolean special, int type)

{

_isWeapon = wep;

_grade = type;

_isBlessed = bless;

_isCrystal = crystal;

+ _isSpecial = special;

}

 

/**

* @return true if item is a crystal scroll.

*/

public final boolean isCrystal()

{

return _isCrystal;

}

+

+ /**

+ * @return true if item is a Special scroll.

+ */

+ public final boolean isSpecial()

+ {

+ return _isSpecial;

+ }

 

// Armor formula : 0.66^(current-2), chance is lower and lower for each enchant.

if (enchantItem.isArmor())

chance = Math.pow(Config.ENCHANT_CHANCE_ARMOR, (enchantItem.getEnchantLevel() - 2));

+ else

+ if (enchantItem.isArmor())

+ chance = Math.pow(Config.ENCHANT_CHANCE_ARMOR_SPECIAL, (enchantItem.getEnchantLevel() - 2));

// Weapon formula is 70% for fighter weapon, 40% for mage weapon. Special rates after +14.

else if (enchantItem.isWeapon())

{

if (((L2Weapon) enchantItem.getItem()).isMagical())

chance = (enchantItem.getEnchantLevel() > 14) ? Config.ENCHANT_CHANCE_WEAPON_MAGIC_15PLUS : Config.ENCHANT_CHANCE_WEAPON_MAGIC;

else

chance = (enchantItem.getEnchantLevel() > 14) ? Config.ENCHANT_CHANCE_WEAPON_NONMAGIC_15PLUS : Config.ENCHANT_CHANCE_WEAPON_NONMAGIC;

+ if (((L2Weapon) enchantItem.getItem()).isMagical())

+ chance = (enchantItem.getEnchantLevel() > 14) ? Config.ENCHANT_CHANCE_WEAPON_MAGIC_15PLUS_SPECIAL : Config.ENCHANT_CHANCE_WEAPON_MAGIC_SPECIAL;

+ else

+ chance = (enchantItem.getEnchantLevel() > 14) ? Config.ENCHANT_CHANCE_WEAPON_NONMAGIC_15PLUS_SPECIAL : Config.ENCHANT_CHANCE_WEAPON_NONMAGIC_SPECIAL;

+ }

 

// Scrolls: Enchant Weapon

_scrolls.put(729, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_A));

_scrolls.put(947, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_B));

_scrolls.put(951, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_C));

_scrolls.put(955, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_D));

_scrolls.put(959, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_S));

 

// Scrolls: Enchant Armor

_scrolls.put(730, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_A));

_scrolls.put(948, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_B));

_scrolls.put(952, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_C));

_scrolls.put(956, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_D));

_scrolls.put(960, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_S));

 

// Blessed Scrolls: Enchant Weapon

_scrolls.put(6569, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_A));

_scrolls.put(6571, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_B));

_scrolls.put(6573, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_C));

_scrolls.put(6575, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_D));

_scrolls.put(6577, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_S));

 

// Blessed Scrolls: Enchant Armor

_scrolls.put(6570, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_A));

_scrolls.put(6572, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_B));

_scrolls.put(6574, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_C));

_scrolls.put(6576, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_D));

_scrolls.put(6578, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_S));

 

// Crystal Scrolls: Enchant Weapon

_scrolls.put(731, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_A));

_scrolls.put(949, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_B));

_scrolls.put(953, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_C));

_scrolls.put(957, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_D));

_scrolls.put(961, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_S));

 

// Crystal Scrolls: Enchant Armor

_scrolls.put(732, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_A));

_scrolls.put(950, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_B));

_scrolls.put(954, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_C));

_scrolls.put(958, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_D));

_scrolls.put(962, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_S));

 

+ // Special Scrolls: Enchant Weapon

+ _scrolls.put(21731, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_A));

+ _scrolls.put(21949, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_B));

+ _scrolls.put(21953, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_C));

+ _scrolls.put(21957, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_D));

+ _scrolls.put(21961, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_S));

+

+ // Special Scrolls: Enchant Armor

+ _scrolls.put(21732, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_A));

+ _scrolls.put(21950, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_B));

+ _scrolls.put(21954, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_C));

+ _scrolls.put(21958, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_D));

+ _scrolls.put(21962, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_S));

}

If you want the special Scrolls to be Blessed(When break item returns to +0) change the orange color to true

 

Go to (C:\workspace\aCis_gameserver_270\java\net\sf\l2j)

Find the file: (Config.java)

 

/** Enchant */

public static double ENCHANT_CHANCE_WEAPON_MAGIC;

public static double ENCHANT_CHANCE_WEAPON_MAGIC_15PLUS;

+ public static double ENCHANT_CHANCE_WEAPON_MAGIC_SPECIAL;

+ public static double ENCHANT_CHANCE_WEAPON_MAGIC_15PLUS_SPECIAL;

public static double ENCHANT_CHANCE_WEAPON_NONMAGIC;

public static double ENCHANT_CHANCE_WEAPON_NONMAGIC_15PLUS;

+ public static double ENCHANT_CHANCE_WEAPON_NONMAGIC_SPECIAL;

+ public static double ENCHANT_CHANCE_WEAPON_NONMAGIC_15PLUS_SPECIAL;

public static double ENCHANT_CHANCE_ARMOR;

+ public static double ENCHANT_CHANCE_ARMOR_SPECIAL;

 

ENCHANT_CHANCE_WEAPON_MAGIC = Double.parseDouble(players.getProperty("EnchantChanceMagicWeapon", "0.4"));

ENCHANT_CHANCE_WEAPON_MAGIC_15PLUS = Double.parseDouble(players.getProperty("EnchantChanceMagicWeapon15Plus", "0.2"));

+ ENCHANT_CHANCE_WEAPON_MAGIC_SPECIAL = Double.parseDouble(players.getProperty("EnchantChanceMagicWeaponSpecial", "1.0"));

+ ENCHANT_CHANCE_WEAPON_MAGIC_15PLUS_SPECIAL = Double.parseDouble(players.getProperty("EnchantChanceMagicWeapon15PlusSpecial", "1.0"));

ENCHANT_CHANCE_WEAPON_NONMAGIC = Double.parseDouble(players.getProperty("EnchantChanceNonMagicWeapon", "0.7"));

ENCHANT_CHANCE_WEAPON_NONMAGIC_15PLUS = Double.parseDouble(players.getProperty("EnchantChanceNonMagicWeapon15Plus", "0.35"));

+ ENCHANT_CHANCE_WEAPON_NONMAGIC_SPECIAL = Double.parseDouble(players.getProperty("EnchantChanceNonMagicWeaponSpecial", "1.0"));

+ ENCHANT_CHANCE_WEAPON_NONMAGIC_15PLUS_SPECIAL = Double.parseDouble(players.getProperty("EnchantChanceNonMagicWeapon15PlusSpecial", "1.0"));

ENCHANT_CHANCE_ARMOR = Double.parseDouble(players.getProperty("EnchantChanceArmor", "0.66"));

+ ENCHANT_CHANCE_ARMOR_SPECIAL = Double.parseDouble(players.getProperty("EnchantChanceArmorSpecial", "1.0"));

ENCHANT_MAX_WEAPON = Integer.parseInt(players.getProperty("EnchantMaxWeapon", "0"));

ENCHANT_MAX_ARMOR = Integer.parseInt(players.getProperty("EnchantMaxArmor", "0"));

 

Go to (C:\workspace\aCis_gameserver_270\config)

Find the file: (players.PROPERTIES)

 

#=============================================================

#                          Enchant

#=============================================================

# % chance of success to enchant a magic weapon

EnchantChanceMagicWeapon = 0.4

EnchantChanceMagicWeapon15Plus = 0.2

+EnchantChanceMagicWeaponSpecial = 1.0

+EnchantChanceMagicWeapon15PlusSpecial = 1.0

 

# % chance of success to enchant a non magic weapon

EnchantChanceNonMagicWeapon = 0.7

EnchantChanceNonMagicWeapon15Plus = 0.35

+EnchantChanceNonMagicWeaponSpecial = 1.0

+EnchantChanceNonMagicWeapon15PlusSpecial = 1.0

 

# % chance of success to enchant an armor part (both jewelry or armor)

EnchantChanceArmor = 0.66

+EnchantChanceArmorSpecial = 1.0

+

picoula1.jpg

picoula2.jpg

picoula3.png

 

Download the full package with Client/java/server/data files for lazy users:

http://www.4shared.com/rar/ME-SC3rg/Special_Sroll_Full_Package.html?

  • 2 weeks later...
  • 1 year later...
Posted

up help make this code with normal blessed/ctystal scroll please! for l2jacis

Lol ?

Read what this is. This is a new kind or scrolls.

Blessed/Crystal scrolls already exists.

Posted

i will need code safe/max blessed/crystal and change some code

no have change or safe enchant.. and some is delete from here..

I have shared it in acis section.

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...