Ir para conteúdo
  • Cadastre-se

Recrutamento teste L2 evolution


kazamajr

Posts recomendados

Boa noite pessoal do l2jbrasil, estou desenvolvendo um servidor de Lineage 2 interlude estilo facção e pretendo fazer o primeiro teste de jogabilidade.

Nesse post estarei trazendo algumas informações sobre o servidor e juntamente um convite para quem quiser participar do teste.

Servidor

Server estilo facção

Área jogável reduzida

Novas classes

Novos skills

Novos skill effects

Rework de armor's set's

Rework de alguns skills

 

Jogabilidade

Você começa o jogo nível 1 dentro de uma sala e escolhe a facção em qual pretende jogar, logo em seguida é teleportado para sua cidade base.

Ao avançar de nível no jogo irá surgir caixas de diálogo com explicações sobre o jogo e como funciona.

No nível 10 você já será capaz de trocar sua classe (o que só é feito 1 vez no jogo todo).

O intuito da reformulação e criação de novas classes e skills é para tornar cada classe útil, com seu valor e torna-la unica. Com base na minha experiencia dentre vários servidores em que já joguei, presenciei uma jogabilidade limitada e sistêmica, a maioria das lutas e pvp's são basicamente apertar vários botões e ver quem morre primeiro. Quero que cada skill utilizada seja de extrema importância para decidir o rumo da batalha, tornar o jogo mais estratégico e dinâmico

Exemplo de reformulação de skill:

Dano over time como poison, bleed e etc, agora executam o alvo, não mais deixam os jogadores e mobs com 1 de hp.

 

Classes

Aqui irei mostrar um preview do kit de skills de cada classe.

Fighters

Spoiler

Archer

FK4KH49.png

 

Ranger

Mr0KHeT.png

 

Gladiator

I152iIU.png

 

Light Knight

XqxWf00.png

 

Dark Knight

kB0Wx6a.png

 

Dagger Trickster

QjACds2.png

 

Dagger Blood

K6foo5a.png

 

Berserker

cTBFy4w.png

 

Warlord

55Dtply.png

 

Warhammer

IAKb60z.png

 

Destroyer

cmb5QeV.png

Mages

Spoiler

Fire Master

8fTcN1N.png

 

Ice Master

ebqg3jm.png

 

Water Master

Xccc6Ic.png

 

Wind Master

nmLJjax.png

 

Dark Master

nmLJjax.png

 

Light Healer Master

nmLJjax.png

 

Summon Master

VSZ5Mhq.png

 

Poison Master

QWbuTfV.png

 

Shaman

N6swD4j.png

 

Items e Drops

Para se conseguir recursos como Adena será necessário matar monstros e coletar os materiais dropados e vender para os NPC's (Não se dropa Adena diretamente).

Para adquirir Armas, armaduras, consumíveis e etc, será apenas coletando recursos e materiais (Nada de craft e recipe).

Por exemplo:

  • Item no-grade, D, C, B e A serão adquiridos por Adena.
  • Item Grade S e Dynasty serão adquiridos por Adena e Materiais.

Existem muitos outros objetivos a serem alcançados dentro do jogo, como obtenção de passivas, nobles, hero, cubics, rebirth, pets, tattos, entre outros.

No servidor existe um sistema de player drop - se um jogador morrer ele tem chance de dropar 2 materiais de sua bolsa. Então é possível dropar jogadores sem estar PK.

 

Facções

Interações entre facções

"Friendly Fire" - é possível atacar a própria facção.

Ao atacar um jogador da mesma facção você ficará flag, se caso o jogador atacá-lo de volta então será considerado uma batalha entre 2 jogadores e ninguém será penalizado com karma, mas ao assassinar algum jogador de sua própria facção sem ser revidado você receberá karma, no caso se for abatido enquanto tiver karma correrá o risco de dropar seus equipamentos.

Ao abater jogadores da facção adversária você será recompensado.

Todas as ações como criação de grupos, clan, ally, etc entre as duas facções estão restritas, com exceção do trade.

Você pode trocar items com a facção inimiga mas será penalizado com karma após a troca, pois está traindo sua facção ao negociar com o inimigo.

 

Level Up & Drop Zone

Cada facção tem suas zonas de up seguras, e algumas farm zones também. Para adquirir items até grade S é possível dropar seus materiais e recursos no próprio mapa de sua facção não necessitando de competir a zona com a facção adversária.

As zonas safe para up e farm são até nivel 70, onde estão presentes guardas para defender suas terras das forças inimigas.

A partir de nível 70+ as zonas de farm e up são livres, podendo as 2 facções transitarem pelo mesmo mapa sem a interferência de guardas para ajudar na defesa.

Se encontra no servidor os mapas de elven village, dark elven village, neutral zone, primeval isle, catacombs.

 

Vídeo teaser do servidor:

 

Estas são algumas informações básicas que gostaria de compartilhar com vocês.

Quem estiver interessado no projeto peço que participe do grupo no discord: https://discord.gg/GjNmHsC

 

Quero agradecer a todos que lerem esse post e peço que deixem o feedback se possível.

Qualquer duvida ou questionamento sobre o servidor eu estarei respondendo aqui.

 

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


  • L2JBr ADM

@kazamajr

 

Seu tópico parece um e-mail, tente organizar em categorias e utilizar os recursos de formatação como titulo, negrito , listas numeradas ou não, etc.

 

Pergunta, você irá compartilhar os arquivos desse projeto ou só está querendo arrumar "players" pra testar?

EJoOSOj.gif

Sua pergunta foi respondida? Certifique-se de marcar a resposta como a solução aceita.
Se existe mais de uma resposta, utilize o "vote up" para destacá-la.
Se você achar uma resposta útil, diga obrigado clicando no botão "Gostei".

Link para o comentário
Compartilhar em outros sites

17 minutos atrás, Grundor disse:

@kazamajr

 

Seu tópico parece um e-mail, tente organizar em categorias e utilizar os recursos de formatação como titulo, negrito , listas numeradas ou não, etc.

 

Pergunta, você irá compartilhar os arquivos desse projeto ou só está querendo arrumar "players" pra testar?

Obrigado pelo feedback, como é meu primeiro POST eu n sei organizar muito bem,mas vou melhorar o tópico.

Em relação a sua duvida, inicialmente não pretendo compartilhar meus arquivos pq ainda tenho a intenção de abrir esse server oficialmente.

Link para o comentário
Compartilhar em outros sites

  • L2JBr ADM
30 minutos atrás, kazamajr disse:

inicialmente não pretendo compartilhar meus arquivos pq ainda tenho a intenção de abrir esse server oficialmente.

Nesse caso vou estar movendo o tópico para área de recrutamento ?

EJoOSOj.gif

Sua pergunta foi respondida? Certifique-se de marcar a resposta como a solução aceita.
Se existe mais de uma resposta, utilize o "vote up" para destacá-la.
Se você achar uma resposta útil, diga obrigado clicando no botão "Gostei".

Link para o comentário
Compartilhar em outros sites

17 minutos atrás, Criz disse:

Esse projeto esta em quantos %, pois achei muito interessante!!

Olá, fico feliz q tenha se interessado, bom o projeto já está praticamente pronto, o que resta agora são testes de jogabilidade e algumas implementações.

Estou organizando tudo agora para realizar o primeiro teste, nele vou detectar possíveis bugs e erros que deixei passar no desenvolvimento.

Link para o comentário
Compartilhar em outros sites

10 minutos atrás, arthursergiop disse:

Amigo, gostei muito e com certeza assim que estiver ON entrarei pra brincar. Dependendo do meu tempo até me disponibilizo para participar dos testes.

Obrigado @arthursergiop pelo feedback, quando for realizar o teste estarei avisando aqui também.

Não deixe de participar do nosso grupo no discord para ficar por dentro de tudo https://discord.gg/GjNmHsC

Convide seus amigos também ?

 

Link para o comentário
Compartilhar em outros sites

  • 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.