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.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Posts

    • L2 HARMONY - BANNERS & ICONS       L2 COLD - NPC ANIMATED BANNER
    • LA ERA DE EINHASAD - Lineage 2 en Castellano Lineage II Crónica 4: Vástagos del Destino x5 - Main Class - Full Craft ───────────────────────────── La diosa Einhasad ha despertado... Una nueva era comienza para los verdaderos aventureros. Un mundo completamente traducido al español, fiel al Lineage II original, creado para una comunidad hispanohablante unida por la nostalgia y la pasión. ───────────────────────────── APERTURA OFICIAL: 14 de NOVIEMBRE - 20:00hs (GMT-3) ───────────────────────────── INFORMACIÓN PRINCIPAL Rates: x5 Tipo: Main Class Sistema: Full Craft Idioma: 100% Español (traducción completa del juego) Comunidad hispanohablante Balance original con mínimas modificaciones Buffer Offline, los jugadores pueden crear sus tiendas de buffs Progresión de crónicas cada 4 meses aprox. Economía estable - Sin Pay to Win - No venta de items/adena por donación Comunidad de 1.000 personas Anterior versión x1 duro casi 3 años con 952 IPs distintas de pico ───────────────────────────── CARACTERÍSTICAS DESTACADAS Experiencia fiel al Lineage II clásico, sin alteraciones invasivas Interfaz, diálogos y objetos completamente en español Ventana de comunidad con servicios personalizados y comercio por Monedas de Oro Olimpiadas, Épicos y Asedios originales Recompensas por votación, Eventos TVT con 3 arenas diferentes. Participan todos sin importar el nivel, pero dentro de la arena solo se atacan por rango cercano Soporte activo y presencia constante del administrador Tickets de soporte con atención rápida en Discord ante cualquier problema ───────────────────────────── ENLACES OFICIALES Website: La Era de Einhasad Discord: https://discord.com/invite/A6PtCCN2SF ───────────────────────────── Una comunidad unida por el idioma, la pasión y la nostalgia. Redescubrí Aden… en tu propio idioma. Bienvenido a La Era de Einhasad.  
    • English you belarus retard ) Seems you so desperate and angry cant even speak back in EN, well guys you see how its easy to destroy scammer xD
    • Чувак) мне на него насрать давно, ты не мне сделал подлянку а людям которые купили и используют. Я его удалил год назад) когда закрыл продажи.   мне вообще похер кто ты и что ты.    Можешь сесть и попрыгать на тот же член на котором ты прыгаешь все это время) и этой версии более 3х лет) ты откопал залупу мамонта , поздравляю)) кто скачает это дерьмо используйте на свой страх и риск)) кто знает что там наворочено)))  удачи в шаринге обиженный жизнью неандерталец.   Можешь лизнуть мое очко на прощание.
    • Rosyk or rusik or whatever u blaim me that my mouth stinks but I assume you the one who stinks and your perfect pack will be now shared and you can suck a DICK )  https://eu2.contabostorage.com/d4b39866f6bb4084b6c969ec8fe20063:kita/Lucera_Classic_Remaster/Lucera Classic Remaster Server and Datapack files.rar  https://eu2.contabostorage.com/d4b39866f6bb4084b6c969ec8fe20063:kita/Lucera_Classic_Remaster/Lucera Classic Remaster Eng Client.rar Drama link    For this crap u need Lucera 2 classic license ) people paying 300 euros for this shit  lol Some Shit will come out soon mxc website need shake it a bit coz getting boring here )    Whats happen rosyk lost speach  xD Your pack was downloded  29 times bussines  not going as plan xD?
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock