Ir para conteúdo
  • Cadastre-se

[Source] L2jNetwork Rev.32


BezneR

Posts recomendados

Venho disponibilizar a última source do projeto L2jNetwork com base aCis.

Antes de mais nada quero informar que não testei nada, então não sei o que funciona, o que não funciona e os bugs existentes.

USE POR SUA CONTA E RISCO!

 

Downloads:

 Source Rev.32 

Patch Files

 Geodata

 

Revision 32 [28/2/2018]

Phoenix Engine:

Phoenix events has deleted.

PvP Zone:

Fixed the problem with respawn button (bug for rev26)
Added .exit command. Gives you 3 sec to leave if you aren't in combat.
L2FlagZone renamed to FlagZone (as all the others zones). acis update.

Skills:

Chant of Victory/Magnus/ p.of wind/ p.of fire/ p.of water now you can change from one buff to the other without problem.
Fixed the heal with some hero weapons. (again rev 26 bug)
Many skills has been fixed/reworked with acis latest rev.

Other misc:

Fixed the problem with drop items on the ground.
Fixed the Observe mode in olympiad.
Double archer shot (by acis)
Added message when you add a subclass.
Removed the Menu panel from revision 28. We use another now.
The invul command for GM characters changed from //invul to //setinvul
Changed the style of the raidboss info npc.
Announce the clan name or player name on raidbosses kill.
ex. The raidboss Horus has been killed by blabla Clan. or by killer player. (Thanks Reborn for help)
Added announce on end siege when a clan win the castle.
ex. The clan Blabla has take the x castle.
Added a new way to recovery your MP with mana potion. (New Item Handler for mana potions).
With config you can set the value of MP recovery.
aI6mZpm.jpg
Added Infinity Mana Potion. Set it true and always you can use only 1 mana pot.
Added config for max value P.atk speed & M.atk speed.
ex. By default is 2000. So, the player will get max p.atk speed or m.atk speed 2000.

Vote System:

Removed the server link from announce.
Changed the info announce for votes.
UPzG9ue.jpg

Startup System:

Reworked the whole system.

Removed:

Preview zones/buffs button/all the icons.
Added new style for Startup system. Check the PHOTOS
Cleric class removed. It was mistake to have the first class in there.

 

 

Editado por PeNaChO
  • Gostei 1
  • Amei 1

QdeQ9Kp.png

Link para o comentário
Compartilhar em outros sites


Packets não utilizados na source http://prntscr.com/kamin0

E o pior de tudo, é aCis 374, todo mundo sabe que a aCis 374 tá cheia de problema o Tryskell só tem feito atualização bosta e incompleta e até as zonas que ele tentou pegar com base L2OFF estão erradas. Claro não da pra desmerecer o trabalho do cara, não. Mas não rola usar, tem várias coisas que ele estava mudando o funcionamento e deixou incompleto por que parou de mexer, estes dias ele postou na MXC que ele tá totalmente sem vontade alguma de continuar o projeto.

aCis você usa 355 - acima disso só vai ter dor de cabeça, mas obrigado por compartilhar a source, da pra extrair algumas coisas exclusivas que eles tem sim. 

 

Editado por Elesis

Um mundo de diversão no Lineage 2

https://www.primeworld.com.br

Discord: Em breve

Comunidade brasileira de Lineage. Interlude Remastered / High Five / Essence 

Classes remasterizadas, sistemas únicos, diversão garantida.

Link para o comentário
Compartilhar em outros sites

36 minutos atrás, Elesis disse:

Packets não utilizados na source http://prntscr.com/kamin0

E o pior de tudo, é aCis 374, todo mundo sabe que a aCis 374 tá cheia de problema o Tryskell só tem feito atualização bosta e incompleta e até as zonas que ele tentou pegar com base L2OFF estão erradas. Claro não da pra desmerecer o trabalho do cara, não. Mas não rola usar, tem várias coisas que ele estava mudando o funcionamento e deixou incompleto por que parou de mexer, estes dias ele postou na MXC que ele tá totalmente sem vontade alguma de continuar o projeto.

aCis você usa 355 - acima disso só vai ter dor de cabeça, mas obrigado por compartilhar a source, da pra extrair algumas coisas exclusivas que eles tem sim. 

 

Bom saber! Obrigado pela dica!

QdeQ9Kp.png

Link para o comentário
Compartilhar em outros sites

17 horas atrás, Elesis disse:

Packets não utilizados na source http://prntscr.com/kamin0

E o pior de tudo, é aCis 374, todo mundo sabe que a aCis 374 tá cheia de problema o Tryskell só tem feito atualização bosta e incompleta e até as zonas que ele tentou pegar com base L2OFF estão erradas. Claro não da pra desmerecer o trabalho do cara, não. Mas não rola usar, tem várias coisas que ele estava mudando o funcionamento e deixou incompleto por que parou de mexer, estes dias ele postou na MXC que ele tá totalmente sem vontade alguma de continuar o projeto.

aCis você usa 355 - acima disso só vai ter dor de cabeça, mas obrigado por compartilhar a source, da pra extrair algumas coisas exclusivas que eles tem sim. 

 

Tenho um servidor em produção na 366, porém com os fixes/coisas relevantes que saiu até a 374 (adiciono manualmente por esse motivo que você citou) e está show de bola.

Editado por brunoronning
Link para o comentário
Compartilhar em outros sites

57 minutos atrás, brunoronning disse:

Tenho um servidor em produção na 366, porém com os fixes/coisas relevantes que saiu até a 374 (adiciono manualmente por esse motivo que você citou) e está show de bola.

Sim não tem por que dar update total nos packs aCis o Tryskell está fazendo umas coisas muito estranhas parece que ele está tentando mudar o projeto ao ponto de ser o "diferentão" compensa pegar só os fix mesmo e ir implantando, mas a aCis está boa do jeito que está tirando a parte do GB até o L2BT/L2Latin usa acis 

 

Um mundo de diversão no Lineage 2

https://www.primeworld.com.br

Discord: Em breve

Comunidade brasileira de Lineage. Interlude Remastered / High Five / Essence 

Classes remasterizadas, sistemas únicos, diversão garantida.

Link para o comentário
Compartilhar em outros sites

21 horas atrás, kayllan disse:

nem pvp se salva?

pra server PvP da sim só tem que dar uma checada se está dando bug na hora que o char morre 

Um mundo de diversão no Lineage 2

https://www.primeworld.com.br

Discord: Em breve

Comunidade brasileira de Lineage. Interlude Remastered / High Five / Essence 

Classes remasterizadas, sistemas únicos, diversão garantida.

Link para o comentário
Compartilhar em outros sites

Em 24/07/2018 at 22:17, Elesis disse:

Packets não utilizados na source http://prntscr.com/kamin0

E o pior de tudo, é aCis 374, todo mundo sabe que a aCis 374 tá cheia de problema o Tryskell só tem feito atualização bosta e incompleta e até as zonas que ele tentou pegar com base L2OFF estão erradas. Claro não da pra desmerecer o trabalho do cara, não. Mas não rola usar, tem várias coisas que ele estava mudando o funcionamento e deixou incompleto por que parou de mexer, estes dias ele postou na MXC que ele tá totalmente sem vontade alguma de continuar o projeto.

aCis você usa 355 - acima disso só vai ter dor de cabeça, mas obrigado por compartilhar a source, da pra extrair algumas coisas exclusivas que eles tem sim. 

 

Estou querendo emitir uma nota de informação no fórum. Tem coisas que só por Deus na aCis. Vi alguns bugs que não tinha antes aparecendo agora, e me deu uma leve impressão que foram colocados de propósito para vender atualização ou algo do tipo!

Vou estudar mais sobre o caso e dar um parecer pra essa galerinha não se sair perdendo. Vou copiar seu coments! :)

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

L2JBRASIL - 15 anos vendendo SS e flechas em Giran! (Trade / Adena)

Link para o comentário
Compartilhar em outros sites

2 horas atrás, Nattan Felipe disse:

Estou querendo emitir uma nota de informação no fórum. Tem coisas que só por Deus na aCis. Vi alguns bugs que não tinha antes aparecendo agora, e me deu uma leve impressão que foram colocados de propósito para vender atualização ou algo do tipo!

Vou estudar mais sobre o caso e dar um parecer pra essa galerinha não se sair perdendo. Vou copiar seu coments! ?

Não é que foram colocados, é que o cara ele está mudando muitos funcionamentos da pack, e ele começa a fazer e não termina, ai quando você ai usar uma função dentro do jogo, não funciona ai vem o tal famoso (bug) que na verdade nem é, é só algo que  começaram a fazer e não terminaram, mas tem coisas que ele fez e não terminou mesmo que eram as zonas da spawn like l2off, tá tudo errado... o char depois de morrer não aparece o (To Vilage) ou as vezes você clica e não vai e tem que dar restart por que falta packet, é muita treta, a regra é clara 355- até da pra usar a 360 365 (se você quiser ter dor de cabeça pra adaptar uns mods ) mas após isso? Loucura e_e 

Um mundo de diversão no Lineage 2

https://www.primeworld.com.br

Discord: Em breve

Comunidade brasileira de Lineage. Interlude Remastered / High Five / Essence 

Classes remasterizadas, sistemas únicos, diversão garantida.

Link para o comentário
Compartilhar em outros sites

  • 4 weeks later...
14 horas atrás, PeNaChO disse:

Experimenta testar com systems diferentes.

ja usei 8 diferentes na hora de da start dps que cloca senha ele da critical aparece aquela tela de loading e leva critical

Link para o comentário
Compartilhar em outros sites

  • 5 months later...
  • 1 month later...
  • 4 years later...
  • Registre-se

    Faça parte da maior e  mais antigas comunidades sobre Lineage2 da América Latina.





  • Patrocinadores

  • Quem Está Navegando

    • Nenhum usuário registrado visualizando esta página.
  • Posts

    • Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?    
    • muchas gracias muy lindos NPC 🙂
    • relaxa jovem gafanhoto, testa as quests. e posTa os erros indesejaveis.  
    • Se alguém pudesse me ensinar como codificar as missões, eu ficaria feliz em fazer isso sozinho ou pelo menos ajudar. Eu realmente quero jogar em um servidor onde todas as quests funcionem bem e melhor ainda se você puder fazer quests customizadas!
    • mas no interlude, nem todas as quests de class,  vai mostrar onde tem que ir, ate o reborn nao mostrava quando era interlude, só mostrou depois que eles colocaram client classic pra rodar, e ficou melhor ainda quando virou hellbound em diante, mas ha sim alguma chance de modificar isso direto no script para fazer igualmente, só basta te um pouco de paciencia e persistencia exato
    • 408_PathToElvenwizard dá Orion eu tive que mexer tbm, até modifiquei e consegui deixar ela igual do Classic, com a seta e a marcação no mapa. (não retail IL) Dá pra importar py de várias revs, o foda é que não da regular as quest py através do debug em tempo real, pelo menos eu não consegui rsrs
    • Hasta el momento todas las QUESTS son completables si te guias con un tutorial de youtube. El problema es que tienen bugs de locacion y de subquests que no avanzan o no te marcan correctamente a donde ir en el mapa, cosa que en Retail si se ve como corresponde.
    • estranho, mas pelo menos a galera nunca reclamo das quests quando tinha aberto 5x, geral fez class primeira e segunda job, poucos que compraram a class
    • en RUSaCis-3.5 data pack, las Quests estan en formato .java y son diferentes a como estan redactadas en jOrion y jFrozen 1.5 (ProyectX) package net.sf.l2j.gameserver.scripting.quest; import net.sf.l2j.commons.random.Rnd; import net.sf.l2j.gameserver.enums.Paperdoll; import net.sf.l2j.gameserver.enums.QuestStatus; import net.sf.l2j.gameserver.enums.actors.ClassId; import net.sf.l2j.gameserver.model.actor.Creature; import net.sf.l2j.gameserver.model.actor.Npc; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.network.serverpackets.SocialAction; import net.sf.l2j.gameserver.scripting.QuestState; public class Q224_TestOfSagittarius extends SecondClassQuest { private static final String QUEST_NAME = "Q224_TestOfSagittarius"; // Items private static final int BERNARD_INTRODUCTION = 3294; private static final int HAMIL_LETTER_1 = 3295; private static final int HAMIL_LETTER_2 = 3296; private static final int HAMIL_LETTER_3 = 3297; private static final int HUNTER_RUNE_1 = 3298; private static final int HUNTER_RUNE_2 = 3299; private static final int TALISMAN_OF_KADESH = 3300; private static final int TALISMAN_OF_SNAKE = 3301; private static final int MITHRIL_CLIP = 3302; private static final int STAKATO_CHITIN = 3303; private static final int REINFORCED_BOWSTRING = 3304; private static final int MANASHEN_HORN = 3305; private static final int BLOOD_OF_LIZARDMAN = 3306; private static final int CRESCENT_MOON_BOW = 3028; private static final int WOODEN_ARROW = 17; // Rewards private static final int MARK_OF_SAGITTARIUS = 3293; // NPCs private static final int BERNARD = 30702; private static final int HAMIL = 30626; private static final int SIR_ARON_TANFORD = 30653; private static final int VOKIAN = 30514; private static final int GAUEN = 30717; // Monsters private static final int ANT = 20079; private static final int ANT_CAPTAIN = 20080; private static final int ANT_OVERSEER = 20081; private static final int ANT_RECRUIT = 20082; private static final int ANT_PATROL = 20084; private static final int ANT_GUARD = 20086; private static final int NOBLE_ANT = 20089; private static final int NOBLE_ANT_LEADER = 20090; private static final int BREKA_ORC_SHAMAN = 20269; private static final int BREKA_ORC_OVERLORD = 20270; private static final int MARSH_STAKATO_WORKER = 20230; private static final int MARSH_STAKATO_SOLDIER = 20232; private static final int MARSH_STAKATO_DRONE = 20234; private static final int MARSH_SPIDER = 20233; private static final int ROAD_SCAVENGER = 20551; private static final int MANASHEN_GARGOYLE = 20563; private static final int LETO_LIZARDMAN = 20577; private static final int LETO_LIZARDMAN_ARCHER = 20578; private static final int LETO_LIZARDMAN_SOLDIER = 20579; private static final int LETO_LIZARDMAN_WARRIOR = 20580; private static final int LETO_LIZARDMAN_SHAMAN = 20581; private static final int LETO_LIZARDMAN_OVERLORD = 20582; private static final int SERPENT_DEMON_KADESH = 27090; public Q224_TestOfSagittarius() { super(224, "Test Of Sagittarius"); setItemsIds(BERNARD_INTRODUCTION, HAMIL_LETTER_1, HAMIL_LETTER_2, HAMIL_LETTER_3, HUNTER_RUNE_1, HUNTER_RUNE_2, TALISMAN_OF_KADESH, TALISMAN_OF_SNAKE, MITHRIL_CLIP, STAKATO_CHITIN, REINFORCED_BOWSTRING, MANASHEN_HORN, BLOOD_OF_LIZARDMAN, CRESCENT_MOON_BOW); addQuestStart(BERNARD); addTalkId(BERNARD, HAMIL, SIR_ARON_TANFORD, VOKIAN, GAUEN); addMyDying(ANT, ANT_CAPTAIN, ANT_OVERSEER, ANT_RECRUIT, ANT_PATROL, ANT_GUARD, NOBLE_ANT, NOBLE_ANT_LEADER, BREKA_ORC_SHAMAN, BREKA_ORC_OVERLORD, MARSH_STAKATO_WORKER, MARSH_STAKATO_SOLDIER, MARSH_STAKATO_DRONE, MARSH_SPIDER, ROAD_SCAVENGER, MANASHEN_GARGOYLE, LETO_LIZARDMAN, LETO_LIZARDMAN_ARCHER, LETO_LIZARDMAN_SOLDIER, LETO_LIZARDMAN_WARRIOR, LETO_LIZARDMAN_SHAMAN, LETO_LIZARDMAN_OVERLORD, SERPENT_DEMON_KADESH); } @Override public String onAdvEvent(String event, Npc npc, Player player) { String htmltext = event; QuestState st = player.getQuestList().getQuestState(QUEST_NAME); if (st == null) return htmltext; // BERNARD if (event.equalsIgnoreCase("30702-04.htm")) { st.setState(QuestStatus.STARTED); st.setCond(1); playSound(player, SOUND_ACCEPT); giveItems(player, BERNARD_INTRODUCTION, 1); if (giveDimensionalDiamonds39(player)) htmltext = "30702-04a.htm"; } // HAMIL else if (event.equalsIgnoreCase("30626-03.htm")) { st.setCond(2); playSound(player, SOUND_MIDDLE); takeItems(player, BERNARD_INTRODUCTION, 1); giveItems(player, HAMIL_LETTER_1, 1); } else if (event.equalsIgnoreCase("30626-07.htm")) { st.setCond(5); playSound(player, SOUND_MIDDLE); takeItems(player, HUNTER_RUNE_1, 10); giveItems(player, HAMIL_LETTER_2, 1); } // SIR_ARON_TANFORD else if (event.equalsIgnoreCase("30653-02.htm")) { st.setCond(3); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_1, 1); } // VOKIAN else if (event.equalsIgnoreCase("30514-02.htm")) { st.setCond(6); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_2, 1); } return htmltext; } @Override public String onTalk(Npc npc, Player player) { String htmltext = getNoQuestMsg(); QuestState st = player.getQuestList().getQuestState(QUEST_NAME); if (st == null) return htmltext; switch (st.getState()) { case CREATED: if (player.getClassId() != ClassId.ROGUE && player.getClassId() != ClassId.ELVEN_SCOUT && player.getClassId() != ClassId.ASSASSIN) htmltext = "30702-02.htm"; else if (player.getStatus().getLevel() < 39) htmltext = "30702-01.htm"; else htmltext = "30702-03.htm"; break; case STARTED: int cond = st.getCond(); switch (npc.getNpcId()) { case BERNARD: htmltext = "30702-05.htm"; break; case HAMIL: if (cond == 1) htmltext = "30626-01.htm"; else if (cond == 2 || cond == 3) htmltext = "30626-04.htm"; else if (cond == 4) htmltext = "30626-05.htm"; else if (cond > 4 && cond < 8) htmltext = "30626-08.htm"; else if (cond == 8) { htmltext = "30626-09.htm"; st.setCond(9); playSound(player, SOUND_MIDDLE); takeItems(player, HUNTER_RUNE_2, 10); giveItems(player, HAMIL_LETTER_3, 1); } else if (cond > 8 && cond < 12) htmltext = "30626-10.htm"; else if (cond == 12) { htmltext = "30626-11.htm"; st.setCond(13); playSound(player, SOUND_MIDDLE); } else if (cond == 13) htmltext = "30626-12.htm"; else if (cond == 14) { htmltext = "30626-13.htm"; takeItems(player, BLOOD_OF_LIZARDMAN, -1); takeItems(player, CRESCENT_MOON_BOW, 1); takeItems(player, TALISMAN_OF_KADESH, 1); giveItems(player, MARK_OF_SAGITTARIUS, 1); rewardExpAndSp(player, 54726, 20250); player.broadcastPacket(new SocialAction(player, 3)); playSound(player, SOUND_FINISH); st.exitQuest(false); } break; case SIR_ARON_TANFORD: if (cond == 2) htmltext = "30653-01.htm"; else if (cond > 2) htmltext = "30653-03.htm"; break; case VOKIAN: if (cond == 5) htmltext = "30514-01.htm"; else if (cond == 6) htmltext = "30514-03.htm"; else if (cond == 7) { htmltext = "30514-04.htm"; st.setCond(8); playSound(player, SOUND_MIDDLE); takeItems(player, TALISMAN_OF_SNAKE, 1); } else if (cond > 7) htmltext = "30514-05.htm"; break; case GAUEN: if (cond == 9) { htmltext = "30717-01.htm"; st.setCond(10); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_3, 1); } else if (cond == 10) htmltext = "30717-03.htm"; else if (cond == 11) { htmltext = "30717-02.htm"; st.setCond(12); playSound(player, SOUND_MIDDLE); takeItems(player, MANASHEN_HORN, 1); takeItems(player, MITHRIL_CLIP, 1); takeItems(player, REINFORCED_BOWSTRING, 1); takeItems(player, STAKATO_CHITIN, 1); giveItems(player, CRESCENT_MOON_BOW, 1); giveItems(player, WOODEN_ARROW, 10); } else if (cond > 11) htmltext = "30717-04.htm"; break; } break; case COMPLETED: htmltext = getAlreadyCompletedMsg(); break; } return htmltext; } @Override public void onMyDying(Npc npc, Creature killer) { final Player player = killer.getActingPlayer(); final QuestState st = checkPlayerState(player, npc, QuestStatus.STARTED); if (st == null) return; switch (npc.getNpcId()) { case ANT: case ANT_CAPTAIN: case ANT_OVERSEER: case ANT_RECRUIT: case ANT_PATROL: case ANT_GUARD: case NOBLE_ANT: case NOBLE_ANT_LEADER: if (st.getCond() == 3 && dropItems(player, HUNTER_RUNE_1, 1, 10, 500000)) st.setCond(4); break; case BREKA_ORC_SHAMAN: case BREKA_ORC_OVERLORD: if (st.getCond() == 6 && dropItems(player, HUNTER_RUNE_2, 1, 10, 500000)) { st.setCond(7); giveItems(player, TALISMAN_OF_SNAKE, 1); } break; case MARSH_STAKATO_WORKER: case MARSH_STAKATO_SOLDIER: case MARSH_STAKATO_DRONE: if (st.getCond() == 10 && dropItems(player, STAKATO_CHITIN, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, MITHRIL_CLIP, REINFORCED_BOWSTRING)) st.setCond(11); break; case MARSH_SPIDER: if (st.getCond() == 10 && dropItems(player, REINFORCED_BOWSTRING, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, MITHRIL_CLIP, STAKATO_CHITIN)) st.setCond(11); break; case ROAD_SCAVENGER: if (st.getCond() == 10 && dropItems(player, MITHRIL_CLIP, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, REINFORCED_BOWSTRING, STAKATO_CHITIN)) st.setCond(11); break; case MANASHEN_GARGOYLE: if (st.getCond() == 10 && dropItems(player, MANASHEN_HORN, 1, 1, 100000) && player.getInventory().hasItems(REINFORCED_BOWSTRING, MITHRIL_CLIP, STAKATO_CHITIN)) st.setCond(11); break; case LETO_LIZARDMAN: case LETO_LIZARDMAN_ARCHER: case LETO_LIZARDMAN_SOLDIER: case LETO_LIZARDMAN_WARRIOR: case LETO_LIZARDMAN_SHAMAN: case LETO_LIZARDMAN_OVERLORD: if (st.getCond() == 13) { if (((player.getInventory().getItemCount(BLOOD_OF_LIZARDMAN) - 120) * 5) > Rnd.get(100)) { playSound(player, SOUND_BEFORE_BATTLE); takeItems(player, BLOOD_OF_LIZARDMAN, -1); addSpawn(SERPENT_DEMON_KADESH, player, false, 300000, true); } else dropItemsAlways(player, BLOOD_OF_LIZARDMAN, 1, 0); } break; case SERPENT_DEMON_KADESH: if (st.getCond() == 13) { if (player.getInventory().getItemIdFrom(Paperdoll.RHAND) == CRESCENT_MOON_BOW) { st.setCond(14); playSound(player, SOUND_MIDDLE); giveItems(player, TALISMAN_OF_KADESH, 1); } else addSpawn(SERPENT_DEMON_KADESH, player, false, 300000, true); } break; } } }  
×
×
  • Criar Novo...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.