Ir para conteúdo
  • Cadastre-se

Tornando a empatia acessível em Life is Strange: True Colors, já disponível para Xbox One e Xbox Series X|S


L2jBrasil

Posts recomendados

Sumário

  • O gameplay sobrenatural presente em Life is Strange: True Colors foi construido em torno da habilidade de enxergar auras coloridas que rodeiam os personagens e mergulhar nas fortes emoções que elas representam.
  • Tornar acessível esse poder extremamente visual e colorido para os jogadores com deficiências visuais foi emblemático para a abordagem da Deck Nine à acessibilidade. O time de desenvolvimento buscou novas soluções e procurou entregar o Life is Strange mais inclusivo até hoje.
  • Enquanto perseguimos essa aspiração, sabemos que sempre haverá mais trabalho a frente. Ansiamos por criar inovações cada vez mais acessíveis em títulos futuros da Square Enix, com feedback e direcionamentos de nossa equipe de acessibilidade e dos nossos parceiros da Xbox.

Olá! Sou uma pequena parte do timede marca de Life is Strange: True Colors, que foi lançado recentemente para Xbox One e Xbox Series X|S. Hoje, quero apresentar para vocês como a Deck Nine Games e a Square Enix fizeram para garantir que nossa principal mecância de gameplay — analisar as emoções dos outros ao interagir com auras coloridas e intensas — fosse acessível para o publico mais amplo possível.


O poder da empatia


Alex Chen, nossa fantástica nova protagonista, pode enxergar, ouvir e sentir as fortes emoções dos outros como se fossem suas – um poder psíquico e sobrenatural.

Desde o início do desenvolvimento, o time sabia que este poder se manifestaria na forma de auras coloridas que rodeiam personagens não-jogáveis (NPCs), sendo possível identificar o estado emocional de um personagem antes de mergulhar a fundo e revelar seus segredos mais profundos.

listc_steph_anger_04_tritanopia.jpg

A aparência das quatro auras emocionais do jogo – azul para tristeza, vermelho para raiva, roxo para medo e dourado para alegria –, evoluiram diversas vezes durante o desenvolvimento, mas nunca se distanciaram da visão criativa do time.

Outra questão que foi central para o desenvolvedores foram as maneiras como um jogo que usa cores como um recurso narrativo e emotivo poderia melhor incluir e oferecer suporte para jogadores com deficiências visuais.


Um espectro acessível de cores


Em todo o globo, há aproximadamente 300 milhões de pessoas com daltonismo e que possuem um dos três tipos principais de discromatopsia, então sabiamos que uma parte importante do nosso público seria afetada por essa mecânica de jogo.

A solução? O time desenvolveu um conjunto de três filtros específicos e ajustáveis que podem ser encontrados no menu de Acessibilidade, que possuem opções para os três principais casos:
Deuteranopia (um filtro que torna os tons de verde mais distinguíveis que os vermelhos)
Protanopia (um filtro que torna os tons de vermelho mais distinguíveis que os verdes)
Tritanopia (um filtro que torna os tons de azul mais distinguíveis que os amarelos)

Conforme ajustarem as configurações, os jogadores verão exemplos dos filtros em ação com todas as quatro auras, e a intensidade do filtro pode ser ajustada para melhor se adequar ao pretendido. As configurações também podem ser ajustadas a qualquer momento durante o gameplay.

Naturalmente, tornar as auras mais acessíveis não se limitou aos filtros. Outro aspecto da acessibilidade de cores presente no jogo foi o desenvolvimento de texturas únicas para as auras, de forma que elas se tornassem ainda mais distintas umas das outras, mesmo em preto e branco.


Criando Momentos Nova para todos


Isso é aplicado à maioria das “auras principais” com que você irá interagir durante as cenas mais importantes da jornada de Alex – cenas que começam com o que chamamos de Momentos Nova: ocasiões em que a força da emoção é tanta que o mundo ao redor de Alex é alterado para refletir a realidade emocional do personagem.

Aqui, as propriedades características das diferentes auras se tornam mais evidentes – como os sombrios e sufocantes tentáculos do medo, ou as pulsantes ondas da tristeza.

A interface do usuário também tem influência em cada momento em que Alex usa seu super poder. Conforme a protagonista se aproxima de outro personagem e usa suas habilidades, o ícone de interação alterna entre diferentes estilos para representar cada emoção.

Com tantos recursos profundamente interligados com a narrativa presentes em Life is Strange: True Colors, foi ainda mais importante que garantíssemos uma experiência acessível para todos.

Na conversa de Major Nelson com Rebeccah Bassell, produtora de Life is Strange: True Colors da Deck Nines Games, ela destacou que, em relação à acessibilidade, não é necessário o trabalho de apenas um departamento, mesmo quando o jogo já está finalizado. “É um esforço que atravessa multiplas disciplinas desde o início: da direção de arte, a interface do usuário, a programação e, claro, aos testes de qualidade,” ela explicou. “Assim como todo o resto de um jogo, isso é resultado de um time inteiro trabalhando junto para entregar algo maior do que a soma das partes.”


Testando a acessibilidade durante a pandemia


Assim como muitos jogos que estão sendo lançados em 2021, os últimos meses de desenvolvimento de Life is Strange: True Colors se passaram durante a pandemia global. Todas as partes do jogo foram afetadas, sendo necessária a adaptação para que o desenvolvimento acontecesse de casa. O time também precisou encontrar formas criativas – e incomuns – de capturar algumas das performances mais surpreendentes do jogo em ambientes seguros em relação ao COVID.

Mas a pandemia também afetou os testes com jogadores. Tradicionalmente, a versão do jogo próxima da finalização é testada por pequenos grupos de testes ao redor do globo, de forma a garantir que o título possui o resultado esperado na audiência. Com esta opção fora de questão por causa da quarentena, os times optaram por um dos maiores recursos da Square Enix – sua equipe de funcionários.

listc_alex_hero_header_good_to_have_opti

Criar melhor acessibilidade para nossos títulos é uma preocupação chave para todos os nossos times de desenvolvimento ao redor do globo, como certificado por Améliane Chiasson, lider de acessibilidade da Square Enix West.

“O departamento de acessibilidade é uma novidade na Square Enix West e ainda estamos aprendendo e trabalhando para tornar os jogos mais acessíveis,” ela explica. “Por isso, estamos animados em estar envolvidos, próximo ao fim do desenvolvimento, e apoiando o time de Life is Strange: True Colors. Dito isso, estamos cientes que ainda há trabalho a ser feito. Esses aprendizados são muito importantes e vão nos ajudar em nossa missão de tornar as experiências que criamos mais inclusivas. Esta é nossa jornada, e somos muito gratos a nossa comunidade de jogadores, com deficiência ou não, que estão nos enviando feedback e comunicando entraves.”

Foi com a ajuda dos times da Améliane e da Crystal Dynamics User Research que os analistas foram recrutados para o trabalho.


Colhendo feedback mundial


Com funcionarios localizados em Los Angeles, Montreal, Londres, Paris e Hamburgo, e isso mencionando apenas alguns países, o time de Acessibilidade de Life is Strange: True Colors manteve contato com colaboradores que possuem discromatopsia, compartilhando builds de teste e recebendo importante feedback durante três sessões centrais em 2020. Oferecemos os nossos agradecimentos a esses analistas inesperados – e eles puderam jogar o jogo antes da hora!

Porém, nossas opções de acessibilidade não se resumiram aos filtros de cor. Como Life is Strange é uma franquia acessível por natureza, com gameplay guiado por exploração e conversação ao invés de requerir respostas rápidas do jogador, sempre buscamos aprimorar a acessibilidade de jogo a jogo. Por exemplo, sabemos que filtros de cor não são a única solução disponível ao abordar barreiras relacionadas à discromatopsia. No futuro, esperamos ser proativos logo no início do desenvolvimento de nossos jogos, para evitar encontrar essas barreiras.

Muitos aspectos do jogo podem ser ajustados, de legendas adaptáveis a diferentes tamanhos de texto e fontes, e a possibilidade de ajustar a velocidade com que você precisa fazer escolhas de diálogo.

Uma novidade em Life is Strange: True Colors são opções para pular gameplay que requer respostas habilidosas e avisos opcionais de aumentos repentinos de luminosidade e volume.


Criando acessibilidade para além do jogo


No Xbox One e Xbox Series X|S, a acessibilidade também se estende para além do que está codificado dentro do game por meio do brilhante Controle Adaptável Xbox, que oferece opções de acessibilidade de controle.

Trabalhando junto com o time de Xbox, exploramos ainda mais formas de trazer acessibilidade para o jogo. Dando sequência a nossa colaboração próxima em títulos anteriores de Life is Strange, ficou nítido que as opções são sempre maiores quando o jogador é colocado no centro da estratégia.

Ao conversar com Katy Jo Wright, diretora do Xbox Gaming for Everyone, ela compartilhou sua visão sobre as formas como desenvolvedoras como a Deck Nine Games podem ter impacto em tantos jogadores ávidos.

“Quando focamos intencionalmente em aqueles que não podem vivenciar a alegria de um jogo e nos esforçamos para solucionar esses entraves para eles, geralmente estamos involuntariamente abrindo as portas para que muitos outros possam aproveitar o game” ela explica. “Esse design inclusivo e acessível é um princípio central no Time Xbox, visto que queremos proporcionar experiências que todos possam jogar. É sempre inspirador ver times, como os desenvolvedores de Life is Strange: True Colors, irem além da conformidade para criarem experiências que podem ser aproveitadas por todos os jogadores.”

listc_haven_sunset.jpg

Também tivemos a sorte de colocar o jogo para teste pelo Microsoft Game Accessibility Testing Service (MGTAS) no fim do processo de desenvolvimento, a fim de ouvir feedbacks detalhados sobre todas as ferramentas de acessibilidade que incluimos e também receber direcionamentos para os próximos títulos do portfolio da Square Enix.

Anita Mortaloni, diretora de acessibilidade da Xbox, também falou sobre as incríveis possibilidades do programa e o que isso significa para tornar os jogos ainda mais acessíveis no futuro.

“Agora é tão fácil conseguir feedback de alta qualidade sobre acessibilidade de especialistas na área e jogadores com deficiências, tudo com o objetivo compartilhado de tornar os jogos mais acessíveis para nossas comunidades,” ela explica. “Queremos que todos saibam que nosso programa existe, assim como outros semelhantes a ele, e estamos muito felizes em ver mais e mais desenvolvedores usufruindo dessas inicitativas.”

Esperamos que Life is Strange: True Colors emocione e acolha você, seja quem for. Você já pode jogar Life is Strange: True Colors no Xbox One e Xbox Series X|S.

Related:
“Come and Get Your Love”: Guardiões da Galáxia da Marvel chega em 26 de outubro
Xbox comemora o Dia Mundial da Conscientização sobre a Acessibilidade
Apresentando a Transcrição e Síntese de Fala do Party Chat

Xbox Wire

Link para o comentário
Compartilhar em outros 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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  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.

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