Jump to content
mikado

Preview aCis 382 Custom - Faction System

Recommended Posts

UgDkrpc.png

Hola buenas, esto es un datapack con base aCis 382 que tiene implementado el engine de Fissban y mods del proyecto fast&furios.
En mi tiempo tiempo libre voy haciendo modificaciones; en medida que vaya teniendo cambios iré actualizando el post.

 

 

 


Hay un archivo dentro del rar que explica un poco por arriba para levantarlo en localhost , está la geodata y los programas necesarios para que funcione correctamente , importante tambien está el system necesario.
 

Asegurese de tener instalado el sowftware necesario para que se ejecute correctamente el servidor.

> Xamp - con servidor MySqL .
> Navicat Premium.
> Java JDK 11.

este software está incluído en la carpeta software.

Crear una base de datos con el nobre "acisgve".
Una vez creada ir a "Backups" y restaurar el backup que se encuentra dentro de la carpeta "Backup-BBDD.nb3".
(asegurarse si no en el archivo que se está buscando con la extensión correspondiente .nb3 ).

Iniciar el login.
Iniciar el gameserver.

Descomprimir el "system Faction GvE - aCis382.rar" que se encuentra en la carpeta "system para el cliente Interlude"
dentro del cliente Interlude.

Un saludo.

 

entre otras cosas tiene:
 ..::Configurable::..

(1).-Todo jugador nacera lvl 76, y elijira su faction, se vestira grado A y tendra que matar players para ganar exp para poder subir de lvl, por cada kill ganara exp,adena y materiales, el cual le es util para vestirse grado S y comprar algunos accesorios.

(2).- Set especial: Dynasty Armor y nuevos accesorios.

(3).- Para mejor exp deberan de estar en Party.

(4).- Mapa con duracion de 25 minutos, auto respawn en el mapa de batalla, capture de bandera o capture de carpa, súper efectos a las matanzas seguidas , batalla de castillo ciudades y zonas aleatorias

(5).- Title pvp y por cada cierto pvp el title cambiara de color.

(6).- Reward para el team que mató más en batalla, el top player reward especial y Protección Anti fraude PVP

(7).- Anuncio de pvp global luego de 3 kill seguidos.

(8).- Héroe por PVP y las auras para identificar los faction, auto balance de equipos.

(9).- Eventos: Zonas invadidas por zombis cada cierto tiempo.

(10).- Sheme buffer , máximo buffer 25. el npc buff no tendra Prophecy of water, Prophecy of fire, Prophecy of wind, chant of victory y magnus chant eso quiere decir que tiene q subir sus Powater,Pofire, Pofire, cov y magnus chant para tener más poder estos buff duraran 9 minutos.

(11).- Auto sistema offline de vender buffers.

(12).- Clan ítems full skill y lvl 8 y reputación por capturar banderas.

(13).- El server contara con diversos Npc el cual les servirara como: gmshop,Npc Buff,Gk,wh,Enchant Skill y etc.

(14).- Olimpiadas grado A, inicia a las 18:00

(15).- Protección de cuenta , último login al entrar al mundo Anti dual box

(16).- Auto Raid boss respawn in current map battle

(17).- Vip system

(18).- Aio system faction (solo zona de paz).

(16).- Champion aura HARD,SUPER,VERY HARD


>sistema de 2 facciones.
>mapas automáticos.
>sistema de voto para el siguiente mapa.
>captura de banderas.
>protección Ex-Guard.
>Se han quitado scripts y quests innecesarias para este datapack faction.
>Raids customs en las zonas donde telentransporta el PartyTeleporter. - Respawn 1 hs. Valakas, Baium, Antharas, Core, Zaken... Teleport directo.
>Zonas RaidBoss ahora son PvP .
>Party-Teleporter

L2J_EngineMods =
>Achievments.
>Aio System.
>Vip System.
>Announce Kill Boss.
>Antibot. 
>Champion Sytems Mobs.
>Enchant Abnormal Effect Armor.
>Community Board Custom.
>Auction House.
>Random Boss Spawn.
>Subclass Acumulativas.
>City Elpys Event.
>Color PvP - Pk.
>SpreeKills
> Offline Trade 
> SellBuffs System




Imagen Party-Teleporter - Archivo Properties


Imagen Party-Teleporter - Archivo Properties
 

Spoiler

#=============================================================
# Npc Party Teleporter
#=============================================================
# Enable the Character Killing Monuments
# NPC Id
NpcPtTeleporterId= 40012

# Teleport coordinates 
# Salieri Island = 185018 237683 -2263
PtTeleportX = 35227
PtTeleportY = 46738
PtTeleportZ = -3680

# ZoneId NpcPtZoneID default: 911
# Select the id of your zone.
# If you dont know how to find your zone id is simple.
# Go to data/zones/(your zone file).xml and find your zone
# E.g: <zone name="dion_monster_pvp" id="6" type="ArenaZone" shape="NPoly" minZ="-3596" maxZ="0">
NpcPtZoneID = 255

# Min party members
NpcPtMinPartyMembers = 1

# Consume Item Id
NpcPtConsumeItemId = 57

# Consume Item Quantity
NpcPtConsumeItemQt = 100

# Show Inside players in zone
NpcPtShowInsidePlayers = True

# Show Inside Parties in zone
NpcPtShowInsideParties = True

#=============================================================
# BOSS Teleport Section
#=============================================================

# Baium
BaiumPtTeleportX = 115213
BaiumPtTeleportY = 16623
BaiumPtTeleportZ = 10080

# Valakas
ValakasPtTeleportX = 213896
ValakasPtTeleportY = -115436
ValakasPtTeleportZ = -1644

# Antharas
AntharasPtTeleportX = 185708
AntharasPtTeleportY = 114298
AntharasPtTeleportZ = -8221

# Zaken
ZakenPtTeleportX = 55312
ZakenPtTeleportY = 219168
ZakenPtTeleportZ = -3223

# Orfen
OrfenPtTeleportX = 55024
OrfenPtTeleportY = 17368
OrfenPtTeleportZ = -5412

# Core
CorePtTeleportX = 17784
CorePtTeleportY = 108440
CorePtTeleportZ = -6480

# Frintezza
FrintezzaPtTeleportX = 174264
FrintezzaPtTeleportY = -87448
FrintezzaPtTeleportZ = -5112

# Highp
HighPtTeleportX = 3880
HighPtTeleportY = -6664
HighPtTeleportZ = -3256

# Queen Ant
QueenPtTeleportX = -21336
QueenPtTeleportY = 182632
QueenPtTeleportZ = -5720

8w5NwJK.png

 

> NPC enchant Skills acepta todas las clases , y corregido html´s faltantes.

czhI3wm.png

 

BO8kp9q.png

 

> Special Shop adicional sin multisells pero con nuevo html mas agradable. 

qBwC6B2.png
OuksRMK.png
LvaXh5P.png

kA1en8q.png

Gatekeeper con Imagenes

 

 

mkBEHyE.png

IE5g9Vt.png

gzlIlZQ.png

ppGLnSj.png

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ADMIN ACCOUNT = mikado 

PASS = 123456

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Enlace con acceso a la carpeta contenedora para su descarga (Datapack - Patch - Software):

DOWNLOAD

Cliente Lineage II Interlude - Limpio

CLIENTE INTERLUDE

Gracias y un saludo.
 

Edited by mikado
  • Like 5
  • I love it 4

vSSzKTi.png

Share this post


Link to post
Share on other sites

Proteja seu servidor de ataques DDoS massivos!

VPS EPIC
hace 1 hora, vinicius22 dijo:

nao consequi por online poderia disponibilizar a sql ele ta em formato .nb3 e nao sql

 

acisgve.sql

tente este arquivo.
obrigado por testar o datapack faction.
uma saudação.

 

Edited by mikado
  • Like 2
  • Thanks 1

vSSzKTi.png

Share this post


Link to post
Share on other sites

@mikado

Muito bom, protende ir atualizando o pack?


Nunca criou um servidor de Lineage 2?
Acompanhe nosso CURSO L2! Aula 01 e 02

Você sabia que a L2JBrasil tem uma empresa de Hosting Oficial?
Conheça a L2JCenter.com

Serviços de Hospedagem para Sites, VPS Gamer, Dedicados e Proteção Anti-DDoS
A mais de 10 anos no mercado apoiando e ajudando os maiores servidores de Lineage 2 do Mundo!

Share this post


Link to post
Share on other sites
hace 1 hora, vinicius22 dijo:

o nome do BBDD tem que ser acisgve , por favor, não altere o nome .

por favor, tente este arquivo

acisgve.sql

Eu recomendo usar o software encontrado na carperta "Software" para fazer tudo funcionar corretamente.

hace 1 hora, Kelvin dijo:

@mikado

Muito bom, protende ir atualizando o pack?

se, as últimas atualizações estarão sempre na pasta.

 

hace 49 minutos, Dwbryel dijo:

@vinicius22 abre o "tables" e joga o SQL lá

@mikado Obrigado pelo pack, é coisa rara as pessoas disponibilizar pack GvE
Pretende disponibilizar a source?

em princípio, apenas versões compiladas.

 

muito obrigado, uma saudação.

Edited by mikado
  • Like 1
  • Thanks 1

vSSzKTi.png

Share this post


Link to post
Share on other sites

Porque não pode alterar o nome do db?


Nunca criou um servidor de Lineage 2?
Acompanhe nosso CURSO L2! Aula 01 e 02

Você sabia que a L2JBrasil tem uma empresa de Hosting Oficial?
Conheça a L2JCenter.com

Serviços de Hospedagem para Sites, VPS Gamer, Dedicados e Proteção Anti-DDoS
A mais de 10 anos no mercado apoiando e ajudando os maiores servidores de Lineage 2 do Mundo!

Share this post


Link to post
Share on other sites
hace 2 minutos, Kelvin dijo:

Porque não pode alterar o nome do db?

pode ser alterado; mas se você alterar, não se esqueça de alterar todas as configurações necessárias para que os dados de acesso e leitura estejam corretos.


vSSzKTi.png

Share this post


Link to post
Share on other sites
hace 8 horas, vinicius22 dijo:

alguem consequiu por o server online? nao consequi executar sql

irmao poderia fazer um pequeno video de como configurar e por on passo a passo geral agradeceria

você deve seguir as instruções e instalar o software necessário em seu computador, tenho certeza que você não teria quaisquer problemas.
não deve improvisar procedimentos se você não tem o conhecimento real do que você vai fazer.

9p0HGmY.png

 

  • Like 1

vSSzKTi.png

Share this post


Link to post
Share on other sites
En 27/12/2019 a las 1:27, vinicius22 dijo:

alguem consequiu por o server online? nao consequi executar sql

irmao poderia fazer um pequeno video de como configurar e por on passo a passo geral agradeceria

@vinicius22 você pode experimentar este arquivo, no vídeo você pode ver como ele é usado. uma saudação amigo.

acisgve.sql

 

Edited by mikado

vSSzKTi.png

Share this post


Link to post
Share on other sites

Este mesmo servidor foi lançado em 2017 o nome L2FvF I "Vinicol" era o administrador e designer do servidor (http://www.l2fvf.com) o servidor, infelizmente, caiu nas mãos erradas e alguém que eu pensei que eu poderia confiar, e eu me reservo para falar sobre este tema.
Eu sou a partir de agora que eu não vou apoiar este servidor.
Alguns Mods foram retirados deste fórum e a verdade que o servidor teve algum sucesso e eu fiz muito bem, espero e alguém rude deste fórum pode começar a colocar algo semelhante ao ovc ou InfiniteL2 ou muito melhor, porque quando eu programo este servidor meu conhecimento em Java  foram muito básicos, mas eficazes :delf2_2:
Aqui você pode ver seus comentários e opiniões: https://www.facebook.com/L2FvFGvE

Spoiler

Algunas caracteristicas :

(1).-Todo jugador nacera lvl 76, y elijira su faction, se vestira grado A y tendra que matar players para ganar exp para poder subir de lvl, por cada kill ganara exp,adena y materiales, el cual le es util para vestirse grado S y comprar algunos accesorios.

(2).- Set especial: Dynasty Armor y nuevos accesorios.

(3).- Para mejor exp deberan de estar en Party.

(4).- Mapa con duracion de 25 minutos, auto respawn en el mapa de batalla, capture de bandera o capture de carpa, súper efectos a las matanzas seguidas , batalla de castillo ciudades y zonas aleatorias
(5).- Title pvp y por cada cierto pvp el title cambiara de color.

(6).- Reward para el team que mató más en batalla, el top player reward especial y Protección Anti fraude PVP

(7).- Anuncio de pvp global luego de 3 kill seguidos.

(8).- Héroe por PVP y las auras para identificar los faction, auto balance de equipos.

(9).- Eventos: Zonas invadidas por zombis cada cierto tiempo.

(10).- Sheme buffer , máximo buffer 25. el npc buff no tendra Prophecy of water, Prophecy of fire, Prophecy of wind, chant of victory y magnus chant eso quiere decir que tiene q subir sus Powater,Pofire, Pofire, cov y magnus chant para tener más poder estos buff duraran 9 minutos.

(11).- Auto sistema offline de vender buffers.

(12).- Clan ítems full skill y lvl 8 y reputación por capturar banderas.

(13).- El server contara con diversos Npc el cual les servirara como: gmshop,Npc Buff,Gk,wh,Enchant Skill y etc.

(14).- Olimpiadas grado A, inicia a las 18:00

(15).- Protección de cuenta , último login al entrar al mundo Anti dual box

(16).- Auto Raid boss respawn in current map battle

(17).- Vip system

(18).- Aio system faction

(16).- Champion aura HARD,SUPER,VERY HARD

Original L2FastvsFuriousPackFiles-Source-Parche-Geodata : Link : https://mega.nz/#!M2A0yQqL!c5QeSFEfRKGgIvpdB8Qj2DkuGvlR6NJNOHwHuVWYYio

para quem quer trabalhar a sua versão, obrigado


vSSzKTi.png

Share this post


Link to post
Share on other sites
hace 3 horas, Robert-Downey dijo:

vc poderia trazer a revisão da l2jacis mais atualizada com mods? algo tipo isso?

 

 

Eu não entendo o que você quer dizer com "mais atualizado" .

@Dagger tem um novo projeto muito completo para venda, agora ele está on-line, se você estiver interessado em seu trabalho, você pode entrar em contato.

Eu realmente tento me concentrar em algumas coisas, para que eu possa aproveitar ao máximo o meu tempo.

uma pergunta, que coisas você não gosta sobre este Pack Faction GvE ?

obrigado, uma saudação.


vSSzKTi.png

Share this post


Link to post
Share on other sites

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.

Loading...



  • Recently Browsing

    No registered users viewing this page.

  • Similar Content

    • By gleyce123
      alguém pode me ajudar me dizendo de onde ta vindo esse error aqui ?
       
       

    • By Luther
      Galera to tentando tirar a animação que o npc buffer faz quando o player pega um buff, igual a animação do aiox.
      acredito que isso seja feito no core, então ta aqui o arquivo do npc. 
      package net.sf.l2j.gameserver.model.actor.instance; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.StringTokenizer; import net.sf.l2j.commons.lang.StringUtil; import net.sf.l2j.commons.random.Rnd; import net.sf.l2j.Config; import net.sf.l2j.gameserver.data.BufferTable; import net.sf.l2j.gameserver.data.SkillTable; import net.sf.l2j.gameserver.model.L2Skill; import net.sf.l2j.gameserver.model.actor.Creature; import net.sf.l2j.gameserver.model.actor.Npc; import net.sf.l2j.gameserver.model.actor.Summon; import net.sf.l2j.gameserver.model.actor.ai.CtrlIntention; import net.sf.l2j.gameserver.model.actor.template.NpcTemplate; import net.sf.l2j.gameserver.network.serverpackets.ActionFailed; import net.sf.l2j.gameserver.network.serverpackets.ItemList; import net.sf.l2j.gameserver.network.serverpackets.MagicSkillUse; import net.sf.l2j.gameserver.network.serverpackets.MoveToPawn; import net.sf.l2j.gameserver.network.serverpackets.MyTargetSelected; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; import net.sf.l2j.gameserver.network.serverpackets.ValidateLocation; public final class SchemeBuffer extends Npc { public SchemeBuffer(int objectId, NpcTemplate template) { super(objectId, template); } @Override public void onAction(Player player) { if (this != player.getTarget()) { player.setTarget(this); player.sendPacket(new MyTargetSelected(getObjectId(), 0)); player.sendPacket(new ValidateLocation(this)); } else { if (!canInteract(player)) player.getAI().setIntention(CtrlIntention.INTERACT, this); else { // Rotate the player to face the instance player.sendPacket(new MoveToPawn(player, this, Npc.INTERACTION_DISTANCE)); if (hasRandomAnimation()) onRandomAnimation(Rnd.get(8)); showMainWindow(player); // Send ActionFailed to the player in order to avoid he stucks player.sendPacket(ActionFailed.STATIC_PACKET); } } } private void showMainWindow(Player activeChar) { /* * if(Config.community_board_in_npcs) { CommunityBoard.getInstance().handleCommands(activeChar.getClient(), "_bbsnpcs;openfile;buffer;index"); return; } */ NpcHtmlMessage html = new NpcHtmlMessage(getObjectId()); html.setFile("data/html/mods/buffer/index.htm"); html.replace("%objectId%", String.valueOf(getObjectId())); html.replace("%name%", activeChar.getName()); html.replace("%buffcount%", "You have " + activeChar.getBuffCount() + "/" + activeChar.getMaxBuffCount() + " buffs."); // html.replace("%intro%", ServerSideImage.getInstance().getRankNameImageHtmlTag(activeChar, 2, 256, 64)); activeChar.sendPacket(html); } @Override public void onBypassFeedback(Player player, String command) { if (player.getPvpFlag() > 0 && Config.RESTRICT_USE_BUFFER_ON_PVPFLAG) { player.sendMessage("You can't use buffer when you are pvp flagged."); return; } if (player.isInCombat() && Config.RESTRICT_USE_BUFFER_IN_COMBAT) { player.sendMessage("You can't use buffer when you are in combat."); return; } if (player.isDead()) return; StringTokenizer st = new StringTokenizer(command, " "); String actualCommand = st.nextToken(); if (actualCommand.equalsIgnoreCase("bufflist")) { autoBuffFunction(player, st.nextToken()); } else if (actualCommand.equalsIgnoreCase("restore")) { String noble = st.nextToken(); player.setCurrentHpMp(player.getMaxHp(), player.getMaxMp()); player.setCurrentCp(player.getMaxCp()); if (noble.equals("true")) { SkillTable.getInstance().getInfo(1323, 1).getEffects(player, player); } final Summon summon = player.getPet(); if (summon != null) summon.setCurrentHpMp(summon.getMaxHp(), summon.getMaxMp()); showMainWindow(player); } else if (actualCommand.equalsIgnoreCase("cancellation")) { L2Skill buff; buff = SkillTable.getInstance().getInfo(1056, 1); buff.getEffects(this, player); player.stopAllEffectsExceptThoseThatLastThroughDeath(); player.broadcastPacket(new MagicSkillUse(this, player, 1056, 1, 850, 0)); player.stopAllEffects(); final Summon summon = player.getPet(); if (summon != null) summon.stopAllEffects(); showMainWindow(player); } else if (actualCommand.equalsIgnoreCase("openlist")) { String category = st.nextToken(); String htmfile = st.nextToken(); NpcHtmlMessage html = new NpcHtmlMessage(getObjectId()); if (category.equalsIgnoreCase("null")) { html.setFile("data/html/mods/buffer/" + htmfile + ".htm"); // First Page if (htmfile.equals("index")) { html.replace("%name%", player.getName()); html.replace("%buffcount%", "You have " + player.getBuffCount() + "/" + player.getMaxBuffCount() + " buffs."); } } else html.setFile("data/html/mods/buffer/" + category + "/" + htmfile + ".htm"); html.replace("%objectId%", String.valueOf(getObjectId())); player.sendPacket(html); } else if (actualCommand.equalsIgnoreCase("dobuff")) { int buffid = Integer.valueOf(st.nextToken()); int bufflevel = Integer.valueOf(st.nextToken()); String category = st.nextToken(); String windowhtml = st.nextToken(); String votebuff = null; if (st.hasMoreTokens()) votebuff = st.nextToken(); if (windowhtml.equals("malaria")) { if (player.getInventory().getInventoryItemCount(Config.VOTE_BUFF_ITEM_ID, 0) >= 1) { player.getInventory().destroyItemByItemId("VoteCoins", Config.VOTE_BUFF_ITEM_ID, 1, player, null); player.getInventory().updateDatabase(); player.sendPacket(new ItemList(player, true)); player.sendMessage(1 + " Champion Coin disappeared."); } else { player.sendMessage("You need the " + Config.VOTE_BUFF_ITEM_COUNT + " Champion Coin to get buff."); return; } } if (votebuff != null) { if (player.getInventory().getInventoryItemCount(Config.VOTE_BUFF_ITEM_ID, 0) >= Config.VOTE_BUFF_ITEM_COUNT) { player.getInventory().destroyItemByItemId("VoteCoins", Config.VOTE_BUFF_ITEM_ID, Config.VOTE_BUFF_ITEM_COUNT, player, null); player.getInventory().updateDatabase(); player.sendPacket(new ItemList(player, true)); player.sendMessage(Config.VOTE_BUFF_ITEM_COUNT + " Champion Coin disappeared."); } else { player.sendMessage("You need the " + Config.VOTE_BUFF_ITEM_COUNT + " Champion Coin to get buff."); return; } } Creature target = player; if (category.equalsIgnoreCase("pet")) { if (player.getPet() == null) { player.sendMessage("Incorrect Pet"); showMainWindow(player); return; } target = player.getPet(); } MagicSkillUse mgc = new MagicSkillUse(this, target, buffid, bufflevel, 1150, 0); player.sendPacket(mgc); player.broadcastPacket(mgc); SkillTable.getInstance().getInfo(buffid, bufflevel).getEffects(this, target); NpcHtmlMessage html = new NpcHtmlMessage(getObjectId()); html.setFile("data/html/mods/buffer/" + category + "/" + windowhtml + ".htm"); html.replace("%objectId%", String.valueOf(getObjectId())); html.replace("%name%", player.getName()); player.sendPacket(html); } else if (actualCommand.equalsIgnoreCase("getbuff")) { int buffid = Integer.valueOf(st.nextToken()); int bufflevel = Integer.valueOf(st.nextToken()); if (buffid != 0) { SkillTable.getInstance().getInfo(buffid, bufflevel).getEffects(this, player); broadcastPacket(new MagicSkillUse(this, player, buffid, bufflevel, 450, 0)); showMainWindow(player); } } else if (actualCommand.startsWith("support")) { showGiveBuffsWindow(player, st.nextToken()); } else if (actualCommand.startsWith("givebuffs")) { final String targetType = st.nextToken(); final String schemeName = st.nextToken(); final int cost = Integer.parseInt(st.nextToken()); final Creature target = (targetType.equalsIgnoreCase("pet")) ? player.getPet() : player; if (target == null) player.sendMessage("You don't have a pet."); else if (cost == 0 || player.reduceAdena("NPC Buffer", cost, this, true)) { for (int skillId : BufferTable.getInstance().getScheme(player.getObjectId(), schemeName)) SkillTable.getInstance().getInfo(skillId, SkillTable.getInstance().getMaxLevel(skillId)).getEffects(this, target); } showGiveBuffsWindow(player, targetType); } else if (actualCommand.startsWith("editschemes")) { if (st.countTokens() == 2) showEditSchemeWindow(player, st.nextToken(), st.nextToken()); else player.sendMessage("Something wrong with your scheme. Please contact with Admin"); } else if (actualCommand.startsWith("skill")) { final String groupType = st.nextToken(); final String schemeName = st.nextToken(); final int skillId = Integer.parseInt(st.nextToken()); final List<Integer> skills = BufferTable.getInstance().getScheme(player.getObjectId(), schemeName); if (actualCommand.startsWith("skillselect") && !schemeName.equalsIgnoreCase("none")) { if (skills.size() < Config.BUFFER_MAX_SKILLS) skills.add(skillId); else player.sendMessage("This scheme has reached the maximum amount of buffs."); } else if (actualCommand.startsWith("skillunselect")) skills.remove(Integer.valueOf(skillId)); showEditSchemeWindow(player, groupType, schemeName); } else if (actualCommand.startsWith("manageschemes")) { showManageSchemeWindow(player); } else if (actualCommand.startsWith("createscheme")) { try { final String schemeName = st.nextToken(); if (schemeName.length() > 14) { player.sendMessage("Scheme's name must contain up to 14 chars. Spaces are trimmed."); showManageSchemeWindow(player); return; } final Map<String, ArrayList<Integer>> schemes = BufferTable.getInstance().getPlayerSchemes(player.getObjectId()); if (schemes != null) { if (schemes.size() == Config.BUFFER_MAX_SCHEMES) { player.sendMessage("Maximum schemes amount is already reached."); showManageSchemeWindow(player); return; } if (schemes.containsKey(schemeName)) { player.sendMessage("The scheme name already exists."); showManageSchemeWindow(player); return; } } BufferTable.getInstance().setScheme(player.getObjectId(), schemeName.trim(), new ArrayList<Integer>()); showManageSchemeWindow(player); } catch (Exception e) { player.sendMessage("Scheme's name must contain up to 14 chars. Spaces are trimmed."); showManageSchemeWindow(player); } } else if (actualCommand.startsWith("deletescheme")) { try { final String schemeName = st.nextToken(); final Map<String, ArrayList<Integer>> schemes = BufferTable.getInstance().getPlayerSchemes(player.getObjectId()); if (schemes != null && schemes.containsKey(schemeName)) schemes.remove(schemeName); } catch (Exception e) { player.sendMessage("This scheme name is invalid."); } showManageSchemeWindow(player); } else if (actualCommand.startsWith("clearscheme")) { try { final String schemeName = st.nextToken(); final Map<String, ArrayList<Integer>> schemes = BufferTable.getInstance().getPlayerSchemes(player.getObjectId()); if (schemes != null && schemes.containsKey(schemeName)) schemes.get(schemeName).clear(); } catch (Exception e) { player.sendMessage("This scheme name is invalid."); } showManageSchemeWindow(player); } else super.onBypassFeedback(player, command); } /** * Sends an html packet to player with Give Buffs menu info for player and pet, depending on targetType parameter {player, pet} * @param player : The player to make checks on. * @param targetType : a String used to define if the player or his pet must be used as target. */ private void showGiveBuffsWindow(Player player, String targetType) { final StringBuilder sb = new StringBuilder(200); final Map<String, ArrayList<Integer>> schemes = BufferTable.getInstance().getPlayerSchemes(player.getObjectId()); if (schemes == null || schemes.isEmpty()) sb.append("<font color=\"LEVEL\">You haven't defined any scheme, please go to 'Manage my schemes' and create at least one valid scheme.</font>"); else { for (Map.Entry<String, ArrayList<Integer>> scheme : schemes.entrySet()) { final int cost = getFee(scheme.getValue()); StringUtil.append(sb, "<font color=\"LEVEL\"><a action=\"bypass -h npc_%objectId%_givebuffs ", targetType, " ", scheme.getKey(), " ", cost, "\">", scheme.getKey(), " (", scheme.getValue().size(), " skill(s))</a>", ((cost > 0) ? " - Adena cost: " + cost : ""), "</font><br1>"); } } final NpcHtmlMessage html = new NpcHtmlMessage(0); html.setFile("data/html/mods/buffer/schememanager/index-1.htm"); html.replace("%schemes%", sb.toString()); html.replace("%targettype%", (targetType.equalsIgnoreCase("pet") ? "&nbsp;<a action=\"bypass -h npc_%objectId%_support player\">yourself</a>&nbsp;|&nbsp;your pet" : "yourself&nbsp;|&nbsp;<a action=\"bypass -h npc_%objectId%_support pet\">your pet</a>")); html.replace("%objectId%", getObjectId()); player.sendPacket(html); } /** * Sends an html packet to player with Manage scheme menu info. This allows player to create/delete/clear schemes * @param player : The player to make checks on. */ private void showManageSchemeWindow(Player player) { final StringBuilder sb = new StringBuilder(200); final Map<String, ArrayList<Integer>> schemes = BufferTable.getInstance().getPlayerSchemes(player.getObjectId()); if (schemes == null || schemes.isEmpty()) sb.append("<font color=\"LEVEL\">You haven't created any scheme.</font>"); else { sb.append("<table>"); for (Map.Entry<String, ArrayList<Integer>> scheme : schemes.entrySet()) StringUtil.append(sb, "<tr><td width=140>", scheme.getKey(), " (", scheme.getValue().size(), " skill(s))</td><td width=60><button value=\"Clear\" action=\"bypass -h npc_%objectId%_clearscheme ", scheme.getKey(), "\" width=55 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td><td width=60><button value=\"Drop\" action=\"bypass -h npc_%objectId%_deletescheme ", scheme.getKey(), "\" width=55 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>"); sb.append("</table>"); } final NpcHtmlMessage html = new NpcHtmlMessage(0); html.setFile("data/html/mods/buffer/schememanager/index-2.htm"); html.replace("%schemes%", sb.toString()); html.replace("%max_schemes%", Config.BUFFER_MAX_SCHEMES); html.replace("%objectId%", getObjectId()); player.sendPacket(html); } /** * This sends an html packet to player with Edit Scheme Menu info. This allows player to edit each created scheme (add/delete skills) * @param player : The player to make checks on. * @param groupType : The group of skills to select. * @param schemeName : The scheme to make check. */ private void showEditSchemeWindow(Player player, String groupType, String schemeName) { final NpcHtmlMessage html = new NpcHtmlMessage(0); if (schemeName.equalsIgnoreCase("none")) html.setFile("data/html/mods/buffer/schememanager/index-3.htm"); else { if (groupType.equalsIgnoreCase("none")) html.setFile("data/html/mods/buffer/schememanager/index-4.htm"); else { html.setFile("data/html/mods/buffer/schememanager/index-5.htm"); html.replace("%skilllistframe%", getGroupSkillList(player, groupType, schemeName)); } html.replace("%schemename%", schemeName); html.replace("%myschemeframe%", getPlayerSchemeSkillList(player, groupType, schemeName)); html.replace("%typesframe%", getTypesFrame(groupType, schemeName)); } html.replace("%schemes%", getPlayerSchemes(player, schemeName)); html.replace("%objectId%", getObjectId()); player.sendPacket(html); } /** * @param player : The player to make checks on. * @param schemeName : The name to don't link (previously clicked). * @return a String listing player's schemes. The scheme currently on selection isn't linkable. */ private static String getPlayerSchemes(Player player, String schemeName) { final Map<String, ArrayList<Integer>> schemes = BufferTable.getInstance().getPlayerSchemes(player.getObjectId()); if (schemes == null || schemes.isEmpty()) return "Please create at least one scheme."; final StringBuilder sb = new StringBuilder(200); sb.append("<table>"); for (Map.Entry<String, ArrayList<Integer>> scheme : schemes.entrySet()) { if (schemeName.equalsIgnoreCase(scheme.getKey())) StringUtil.append(sb, "<tr><td width=200>", scheme.getKey(), " (<font color=\"LEVEL\">", scheme.getValue().size(), "</font> / ", Config.BUFFER_MAX_SKILLS, " skill(s))</td></tr>"); else StringUtil.append(sb, "<tr><td width=200><a action=\"bypass -h npc_%objectId%_editschemes none ", scheme.getKey(), "\">", scheme.getKey(), " (", scheme.getValue().size(), " / ", Config.BUFFER_MAX_SKILLS, " skill(s))</a></td></tr>"); } sb.append("</table>"); return sb.toString(); } /** * @param player : The player to make checks on. * @param groupType : The group of skills to select. * @param schemeName : The scheme to make check. * @return a String representing skills available to selection for a given groupType. */ private static String getGroupSkillList(Player player, String groupType, String schemeName) { final List<Integer> skills = new ArrayList<>(); for (int skillId : BufferTable.getSkillsIdsByType(groupType)) { if (BufferTable.getInstance().getSchemeContainsSkill(player.getObjectId(), schemeName, skillId)) continue; skills.add(skillId); } if (skills.isEmpty()) return "That group doesn't contain any skills."; final StringBuilder sb = new StringBuilder(500); sb.append("<table>"); int count = 0; for (int skillId : skills) { if (BufferTable.getInstance().getSchemeContainsSkill(player.getObjectId(), schemeName, skillId)) continue; if (count == 0) sb.append("<tr>"); if (skillId < 100) sb.append("<td width=180><font color=\"949490\"><a action=\"bypass -h npc_%objectId%_skillselect " + groupType + " " + schemeName + " " + skillId + "\">" + SkillTable.getInstance().getInfo(skillId, 1).getName() + "</a></font></td>"); else if (skillId < 1000) sb.append("<td width=180><font color=\"949490\"><a action=\"bypass -h npc_%objectId%_skillselect " + groupType + " " + schemeName + " " + skillId + "\">" + SkillTable.getInstance().getInfo(skillId, 1).getName() + "</a></font></td>"); else sb.append("<td width=180><font color=\"949490\"><a action=\"bypass -h npc_%objectId%_skillselect " + groupType + " " + schemeName + " " + skillId + "\">" + SkillTable.getInstance().getInfo(skillId, 1).getName() + "</a></font></td>"); count++; if (count == 2) { sb.append("</tr><tr><td></td></tr>"); count = 0; } } if (!sb.toString().endsWith("</tr>")) sb.append("</tr>"); sb.append("</table>"); return sb.toString(); } /** * @param player : The player to make checks on. * @param groupType : The group of skills to select. * @param schemeName : The scheme to make check. * @return a String representing a given scheme's content. */ private static String getPlayerSchemeSkillList(Player player, String groupType, String schemeName) { final List<Integer> skills = BufferTable.getInstance().getScheme(player.getObjectId(), schemeName); if (skills.isEmpty()) return "That scheme is empty."; final StringBuilder sb = new StringBuilder(500); sb.append("<table>"); int count = 0; for (int sk : skills) { if (count == 0) sb.append("<tr>"); if (sk < 100) sb.append("<td width=180><font color=\"6e6e6a\"><a action=\"bypass -h npc_%objectId%_skillunselect " + groupType + " " + schemeName + " " + sk + "\">" + SkillTable.getInstance().getInfo(sk, 1).getName() + "</a></font></td>"); else if (sk < 1000) sb.append("<td width=180><font color=\"6e6e6a\"><a action=\"bypass -h npc_%objectId%_skillunselect " + groupType + " " + schemeName + " " + sk + "\">" + SkillTable.getInstance().getInfo(sk, 1).getName() + "</a></font></td>"); else sb.append("<td width=180><font color=\"6e6e6a\"><a action=\"bypass -h npc_%objectId%_skillunselect " + groupType + " " + schemeName + " " + sk + "\">" + SkillTable.getInstance().getInfo(sk, 1).getName() + "</a></font></td>"); count++; if (count == 2) { sb.append("</tr><tr><td></td></tr>"); count = 0; } } if (!sb.toString().endsWith("<tr>")) sb.append("<tr>"); sb.append("</table>"); return sb.toString(); } /** * @param groupType : The group of skills to select. * @param schemeName : The scheme to make check. * @return a string representing all groupTypes availables. The group currently on selection isn't linkable. */ private static String getTypesFrame(String groupType, String schemeName) { final StringBuilder sb = new StringBuilder(500); sb.append("<table>"); int count = 0; for (String s : BufferTable.getSkillTypes()) { if (count == 0) sb.append("<tr>"); if (groupType.equalsIgnoreCase(s)) StringUtil.append(sb, "<td width=65>", s, "</td>"); else StringUtil.append(sb, "<td width=65><a action=\"bypass -h npc_%objectId%_editschemes ", s, " ", schemeName, "\">", s, "</a></td>"); count++; if (count == 4) { sb.append("</tr>"); count = 0; } } if (!sb.toString().endsWith("</tr>")) sb.append("</tr>"); sb.append("</table>"); return sb.toString(); } /** * @param list : A list of skill ids. * @return a global fee for all skills contained in list. */ private static int getFee(ArrayList<Integer> list) { if (Config.BUFFER_STATIC_BUFF_COST >= 0) return (list.size() * Config.BUFFER_STATIC_BUFF_COST); int fee = 0; for (int sk : list) { if (Config.BUFFER_BUFFLIST.get(sk) == null) continue; fee += Config.BUFFER_BUFFLIST.get(sk).getValue(); } return fee; } private void autoBuffFunction(Player player, String bufflist) { ArrayList<L2Skill> skills_to_buff = new ArrayList<>(); List<Integer> list = null; if (bufflist.equalsIgnoreCase("fighter")) list = Config.FIGHTER_SKILL_LIST; else if (bufflist.equalsIgnoreCase("mage")) list = Config.MAGE_SKILL_LIST; if (list != null) { for (int skillId : list) { L2Skill skill = SkillTable.getInstance().getInfo(skillId, SkillTable.getInstance().getMaxLevel(skillId)); if (skill != null) skills_to_buff.add(skill); } for (L2Skill sk : skills_to_buff) sk.getEffects(player, player); player.updateEffectIcons(); list = null; } skills_to_buff.clear(); showMainWindow(player); } }  
    • By Christian-SDM
      Boa tarde, Postei ela corrigida no outro tópico, mas acho que ninguém notou, até porque muitos queriam usar o projeto, porem contia bugs e erros no core, onde o dono tinha como derrubar o servidor porque tinha uma falha, então eu peguei o projeto  e  arrumei.
      Outras correçôes:
      Estou postando ela arrumada, sem Key, Isso mesmo!  Agora da pra logar com qualquer system, e arrumei o erro que travava o char quando dava skill, por causa da Key, e  o Bug de duplicação de itens com pet, foi corrigido, Restaurei o retail da pack, não tem nada editado, somente os mods e npcs mods! Qualquer Bug, posta que eu arrumo.
      *Vai Source Corrigida + Pack com backup limpo.
      Projeto usa Java 8
      1º Source Corrigida (Download disponível pelo fórum também).
      http://www.mediafire.com/file/6sz3kvkrablvvp7/Source09.03.2020.rar/file (Nova 09/03/2020)
      2° Pack+Backup Retail (Download disponível pelo fórum também).
      http://www.mediafire.com/file/01q6p3zeewvaifg/Pack09.03.2020.rar/file (Novo 09/03/2020) + Novos Mods.
      Algumas Info:
      Siege Semanal Olly semanal Tatto Custom Weapons Lindvior Custom  Armor Transcedent Custom  Donate Shop VIP - Hero - Class, Name e Sex Change 99 Acessórios 2018  Blessed Scroll: 90% +18  - Crystal Scroll 100% até +22 - Golden Scroll 100%  até +25 Buff Clan Manager Raid Info Augment NPC Skills Enchant NPC Tournament Event - TvT - Party farm events Chaotic Zone Aiox System Vip System Mod Phantom - Fake Player System  Anti-bot com Captcha Alguns Comandos:
      .menu .info .donate .status .skills .inventory .ranking VIP ITEM + CORREÇÃO DE BUG NPC SUMINDO (CORRIGIDO)
       
       
       
      NOVO BUG CORRIGIDO ADENA ACIS 361+
      COMO ESTAVA:
      COMO ESTÁ: 
       
      Código para aqueles que já tem a source e adicionaram outros mods e modificaram o core, para não perde tudo, toma a correção individual. Procure a Class MultiSellChoose.java e mude todo o arquivo !
       
       
      Arquivo individual para quem ja modificou o core para uso proprío. Procure por Attackable.java e troque todo arquivo.
      Oque foi modificado? XP VIP, O Personagem, não estava recebendo xp
       
      MOD SHIFT MOUSE ADICIONADO (VÍDEO ABAIXO DEMONSTRANDO)
       
       
       Oque foi adicionado? 04/03/2020
      Auto potion automatico e Dressme 2 clique item!
      Pra registrar o item so ir no id e colocar como abaixo:
       
      Video demostrativo!
       
       
       
      PROGRAMAS Necessários:
      Java: 8 JDK : https://www.oracle.com/technetwork/pt/java/javase/downloads/jdk8-downloads-2133151.html
      MySQL: 5.5 : https://mega.nz/#!0Y0XhI7Z!N512DQLzY7EWORx7kaYcXXgW4xnDHjaxf2j-NOrKAsw
      Navicat: 10 : https://mega.nz/#!4Vt3BIwC!B_t2Is_lSDqj3iE8TL1dBUAJUljO9QXlFrgj6eeS7hA
      - Utilitário: L2FileEdit : https://mega.nz/#!ZNhDWaqQ!oTkScr_pR_lJBWrjgga6HJ7BYPLrKUfAFIvcjrS6TyY
      Tópico Original
       
      Créditos da Rev base : @MeGaPacKl
      Créditos customização : @Kallisto
       
       
       
      Pack2020.rar Source.rar
      Source09.03.2020.rar
    • By Albeci Nogueira
      Boa tarde..
      Procurei na source mas não encontrei onde posso alterar alguma coisa no Scroll of Scape, pois queria deixar infinito, até vi no forum ensinando, mas para frozen, e na acis não achei o arquivo ScrollofScape.java, pois deve ser diferente, se alguem souber fico agradecido.
    • By leleu
      como removo todos os spawns , npcs e mobs,  menos os dos boss?  >>>> REV ACIS
  • Posts

    • Estou tentando adicionar um NPC custom, porem nao existe a tabela de NPC ou NPC CUSTOM no banco de dados, alguem sabe me informar como criar essa tabela?
    • Eu passei o evento Tournament entre outro mods para o L2jServer (Mobius,Frozen,Orion) e me deparei com o seguinte: Se temos um bloco de instrução após a estrutura de repetição, seria desejável usar while() no lugar for (;;) que cria um laço infinito? Usei while() quando reestruturei para base que uso.  Um abraço!
    • Teria esses icons no forum ?
    • eu nao Alterei nada ainda, porem eu acho que fiz bagunça misturando alguns arquivos novos com outros antigos, por isso estou refazendo. desculpe a pergunta mas... Esta pasta Source, onde ela deve ficar? o tutorial que eu vi ensinando a instalar o servidor nao existia esta pasta.
    • Você foi  Você fez modificações na pasta Donate, você tirou o Vip Skill, deixou sem nada, deixa com o número 0, ai vai funciona ok?
    • Aconteceu este erro com alguem? Obs: o LoginServer executou normalmente.  
    • sim, perfeitamente, usei outra icon que tirei de outro servidor, só mudar o type do item
    • tambem ja dei initialize, rsrs. mas não pensei que pode ser a interface, vou extrair um novo cliente e jogar só a system dentro pra ver... obrigado pela atenção amigo. gostaria de aproveitar e perguntar se voce conseguiu usar o gold weapon ... ou donate weapon. tentei spawnar, mas nada ...
    • Tente fazer isso cara, dar um initialize, se não der certo, bem provavel que tu ta usando uma interface bugada   https://uploaddeimagens.com.br/imagens/L2UgR9w
    • Oi amigo, muito obrigado por responder... então, eu antes de vir até o fórum pedir, testei com outro char, outra acc e nada. ai agora que vc falou eu testei de novo pra conferir e nada ainda. eu pego o buff sabe ? eu ganho o status.  Se eu pegar wind walk minha speed sobe normal, se eu pegar bless the body meu hp sobe. eu realmente me buffo, mas ele nao aparece na "barrinha de buff" o estranho é isso.
×
×
  • Create New...