Ir para conteúdo
  • Cadastre-se
  • 0

Erro game serve OutOfMemoryError: Java heap space Ajuda!


admin123

Pergunta

Ola bom dia gostaria de ajuda em relação a este erro aqui: 

                  * Enchant Item                               [ Ok ]

===============================================================================
INFO  Replaced: 2002_EnchantItem with a new version
INFO  Siege of Dion: Sat Jan 13 20:00:00 BRST 2018
importing custom: 9999: NPCBuffer
importing custom: 10021_SubirLevel
Exception in thread "GameTimeController" java.lang.OutOfMemoryError: Java heap space
        at net.l2jpx.gameserver.controllers.GameTimeController.moveObjects(GameTimeController.java:133)

WARN  NPC 20214 class not found
java.lang.reflect.InvocationTargetException
Caused by: java.lang.OutOfMemoryError: Java heap space
        at javolution.util.FastList.newNode(FastList.java:693)
        at javolution.util.FastList.<init>(FastList.java:132)
        at javolution.util.FastList.<init>(FastList.java:99)
        at net.l2jpx.gameserver.model.L2Character.<init>(L2Character.java:5144)
        at net.l2jpx.gameserver.model.actor.instance.L2NpcInstance.<init>(L2NpcInstance.java:350)
        at net.l2jpx.gameserver.model.L2Attackable.<init>(L2Attackable.java:358)
        at net.l2jpx.gameserver.model.actor.instance.L2MonsterInstance.<init>(L2MonsterInstance.java:70)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
        at java.lang.reflect.Constructor.newInstance(Unknown Source)
        at net.l2jpx.gameserver.model.spawn.L2Spawn.doSpawn(L2Spawn.java:514)
        at net.l2jpx.gameserver.model.spawn.L2Spawn.init(L2Spawn.java:442)
        at net.l2jpx.gameserver.datatables.sql.SpawnTable.fillSpawnTable(SpawnTable.java:142)
        at net.l2jpx.gameserver.datatables.sql.SpawnTable.access$000(SpawnTable.java:48)
        at net.l2jpx.gameserver.datatables.sql.SpawnTable$NPCServerTask.run(SpawnTable.java:392)
        at net.l2jpx.gameserver.thread.ThreadPoolManager$RunnableWrapper.run(ThreadPoolManager.java:95)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
        at net.l2jpx.gameserver.controllers.GameTimeController$TimerThread.run(GameTimeController.java:199)
Exception in thread "GeneralSTPool-13" java.lang.OutOfMemoryError: Java heap space
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.addConditionWaiter(Unknown Source)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)WARN  10:39:19 TimerThread stop with following error. restart it.

        at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
        at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
WARN  Failed executing script: C:\Users\TORRES\Desktop\L2 Sagrado\gameserver\data\scripts\quests\5_MinersFavor\__init__.py. See __init__.py.error.LOGGER for details.
        at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
Java HotSpot(TM) Client VM warning: Exception java.lang.OutOfMemoryError occurred dispatching signal UNKNOWN to handler- the VM may need to be forcibly terminated

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "GeneralSTPool-4"
Exception in thread "GeneralSTPool-7" java.lang.OutOfMemoryError: Java heap space
Exception in thread "GeneralSTPool-11" Exception in thread "GeneralSTPool-14" java.lang.OutOfMemoryError: Java heap space
java.lang.OutOfMemoryError: Java heap space
INFO  [AutoSaveManager] AutoSaveTask, 0 players data saved.
INFO  [AutoSaveManager] ConnectionCheckTask, players connections checked.
INFO  [AutoSaveManager] AutoCleanDBTask, 0 entries cleaned from db.

stzAYFE.png?1

Link para o comentário
Compartilhar em outros sites

17 respostass a esta questão

Posts recomendados

  • 0
53 minutos atrás, admin123 disse:

Ola bom dia gostaria de ajuda em relação a este erro aqui: 

                  * Enchant Item                               [ Ok ]

===============================================================================
INFO  Replaced: 2002_EnchantItem with a new version
INFO  Siege of Dion: Sat Jan 13 20:00:00 BRST 2018
importing custom: 9999: NPCBuffer
importing custom: 10021_SubirLevel
Exception in thread "GameTimeController" java.lang.OutOfMemoryError: Java heap space
        at net.l2jpx.gameserver.controllers.GameTimeController.moveObjects(GameTimeController.java:133)

WARN  NPC 20214 class not found
java.lang.reflect.InvocationTargetException
Caused by: java.lang.OutOfMemoryError: Java heap space
        at javolution.util.FastList.newNode(FastList.java:693)
        at javolution.util.FastList.<init>(FastList.java:132)
        at javolution.util.FastList.<init>(FastList.java:99)
        at net.l2jpx.gameserver.model.L2Character.<init>(L2Character.java:5144)
        at net.l2jpx.gameserver.model.actor.instance.L2NpcInstance.<init>(L2NpcInstance.java:350)
        at net.l2jpx.gameserver.model.L2Attackable.<init>(L2Attackable.java:358)
        at net.l2jpx.gameserver.model.actor.instance.L2MonsterInstance.<init>(L2MonsterInstance.java:70)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
        at java.lang.reflect.Constructor.newInstance(Unknown Source)
        at net.l2jpx.gameserver.model.spawn.L2Spawn.doSpawn(L2Spawn.java:514)
        at net.l2jpx.gameserver.model.spawn.L2Spawn.init(L2Spawn.java:442)
        at net.l2jpx.gameserver.datatables.sql.SpawnTable.fillSpawnTable(SpawnTable.java:142)
        at net.l2jpx.gameserver.datatables.sql.SpawnTable.access$000(SpawnTable.java:48)
        at net.l2jpx.gameserver.datatables.sql.SpawnTable$NPCServerTask.run(SpawnTable.java:392)
        at net.l2jpx.gameserver.thread.ThreadPoolManager$RunnableWrapper.run(ThreadPoolManager.java:95)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
        at net.l2jpx.gameserver.controllers.GameTimeController$TimerThread.run(GameTimeController.java:199)
Exception in thread "GeneralSTPool-13" java.lang.OutOfMemoryError: Java heap space
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.addConditionWaiter(Unknown Source)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)WARN  10:39:19 TimerThread stop with following error. restart it.

        at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
        at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
WARN  Failed executing script: C:\Users\TORRES\Desktop\L2 Sagrado\gameserver\data\scripts\quests\5_MinersFavor\__init__.py. See __init__.py.error.LOGGER for details.
        at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
Java HotSpot(TM) Client VM warning: Exception java.lang.OutOfMemoryError occurred dispatching signal UNKNOWN to handler- the VM may need to be forcibly terminated

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "GeneralSTPool-4"
Exception in thread "GeneralSTPool-7" java.lang.OutOfMemoryError: Java heap space
Exception in thread "GeneralSTPool-11" Exception in thread "GeneralSTPool-14" java.lang.OutOfMemoryError: Java heap space
java.lang.OutOfMemoryError: Java heap space
INFO  [AutoSaveManager] AutoSaveTask, 0 players data saved.
INFO  [AutoSaveManager] ConnectionCheckTask, players connections checked.
INFO  [AutoSaveManager] AutoCleanDBTask, 0 entries cleaned from db.

 

1xFoI0n.jpg.5e0903bc1b582f95590d4a4c1fce368a.jpg

Link para o comentário
Compartilhar em outros sites


  • 0

Ja fiz esse tutorial e o erro continua.... meu pc tem 8gb java 8 64 

e o pre e esse que da erro no game serve: 

 la mesmo tem essa pergunta de um usuário mais não foi respondida,  e outra duvida porque la na area de pack eu nao posso eu não posso interagir nos tópicos e pergunta la não tenho privilegio ou e proibido ?

stzAYFE.png?1

Link para o comentário
Compartilhar em outros sites

  • 0

fiz esse tutorial ai que você respodeu ainda continua um erro parecido:

INFO  Replaced: 2002_EnchantItem with a new version
importing custom: 9999: NPCBuffer
importing custom: 10021_SubirLevel
WARN  Failed executing script: C:\Users\TORRES\Desktop\L2 Sagrado\gameserver\data\scripts\quests\SagasSuperclass\__init__.py. See __init__.py.error.LOGGER for details.
Exception in thread "GeneralSTPool-12" java.lang.OutOfMemoryError: Java heap space
WARN  Failed executing script: C:\Users\TORRES\Desktop\L2 Sagrado\gameserver\data\scripts\quests\1_LettersOfLove1\__init__.py. See __init__.py.error.LOGGER for details.
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "GeneralSTPool-10"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "GeneralSTPool-3"
Exception in thread "GeneralSTPool-3" Exception in thread "GeneralSTPool-6" Exception in thread "GeneralSTPool-15" java.lang.OutOfMemoryError: Java heap space
Exception in thread "GeneralSTPool-4" java.lang.OutOfMemoryError: Java heap space
java.lang.OutOfMemoryError: Java heap space
Exception in thread "GeneralSTPool-11" java.lang.OutOfMemoryError: Java heap space

stzAYFE.png?1

Link para o comentário
Compartilhar em outros sites

  • 0
17 minutos atrás, admin123 disse:

Ja fiz esse tutorial e o erro continua.... meu pc tem 8gb java 8 64 

e o pre e esse que da erro no game serve: 

 la mesmo tem essa pergunta de um usuário mais não foi respondida,  e outra duvida porque la na area de pack eu nao posso eu não posso interagir nos tópicos e pergunta la não tenho privilegio ou e proibido ?

qual java vc ta usando? tenta colocar a memoria maior entao ja que seu pc é de 8gb

1xFoI0n.jpg.5e0903bc1b582f95590d4a4c1fce368a.jpg

Link para o comentário
Compartilhar em outros sites

  • 0
2 minutos atrás, MeGaPacKl disse:

qual java vc ta usando? tenta colocar a memoria maior entao ja que seu pc é de 8gb

meu java e 8 64 bits  segue a configuração do meu start serve porfavor ver se tem algo errado :

 

@echo off
title L2 Sagrado: Game Server Console
:start
echo Starting L2J-Project-X Core Game Server.
echo Official website : http://www.l2sagrado.com
echo Enjoy by server core. Bee happy!
echo ------------------------------
echo.


REM -------------------------------------
REM Default parameters for a basic server.
java -Dfile.encoding=UTF8 -Xmn512m -Xmn512m -cp ./lib/*;./lib/uMad/*;l2jpx-core.jar net.l2jpx.gameserver.GameServer
REM
REM If you have a big server and lots of memory, you could experiment for example with
REM java -server -Xmx4096m -Xms1024m -Xmn512m -XX:PermSize=256m -XX:SurvivorRatio=8 -Xnoclassgc -XX:+AggressiveOpts
REM -------------------------------------

if ERRORLEVEL 7 goto telldown
if ERRORLEVEL 6 goto tellrestart
if ERRORLEVEL 5 goto taskrestart
if ERRORLEVEL 4 goto taskdown
REM 3 - abort
if ERRORLEVEL 2 goto restart
if ERRORLEVEL 1 goto error
goto end
:tellrestart
echo.
echo Telnet server Restart ...
echo Send you bug to : http://www.l2jpx.com
echo.
goto start
:taskrestart
echo.
echo Auto Task Restart ...
echo Send you bug to : http://www.l2jpx.com
echo.
goto start
:restart
echo.
echo Admin Restart ...
echo Send you bug to : http://www.l2jpx.com
echo.
goto start
:taskdown
echo .
echo Server terminated (Auto task)
echo Send you bug to : http://www.l2jpx.com
echo .
:telldown
echo .
echo Server terminated (Telnet)
echo Send you bug to : http://www.l2jpx.com
echo .
:error
echo.
echo Server terminated abnormally
echo Send you bug to : http://www.l2jpx.com
echo.
:end
echo.
echo server terminated
echo Send you bug to : http://www.l2jpx.com
echo.
:question
set choix=q
set /p choix=Restart(r) or Quit(q)
if /i %choix%==r goto start
if /i %choix%==q goto exit
:exit
exit
pause

stzAYFE.png?1

Link para o comentário
Compartilhar em outros sites

  • 0

Aumente também a quantidade de threads na rev, esse projeto não sei onde está a configuração de threads, mas mexe nela e isso provavelmente acabará, já que já aumentou a memória do gameserver.

 

//EDIT

Você não aumentou a memória do Gameserver, por isso não está mudando nada.

 

REM -------------------------------------
REM Default parameters for a basic server.
java -Dfile.encoding=UTF8 -Xmx5120m -Xmn1024m -cp ./lib/*;./lib/uMad/*;l2jpx-core.jar net.l2jpx.gameserver.GameServer
REM
REM If you have a big server and lots of memory, you could experiment for example with
REM java -server -Xmx4096m -Xms1024m -Xmn512m -XX:PermSize=256m -XX:SurvivorRatio=8 -Xnoclassgc -XX:+AggressiveOpts
REM ------------------------------------- 


Você estava editando errado, use o exemplo acima.

Editado por Tayran.JavaDev

"Tente ser uma pessoa de valor , não de sucesso" - Albert Einstein

 

 

Link para o comentário
Compartilhar em outros sites

  • 0

 

9 minutos atrás, Tayran.JavaDev disse:

Aumente também a quantidade de threads na rev, esse projeto não sei onde está a configuração de threads, mas mexe nela e isso provavelmente acabará, já que já aumentou a memória do gameserver.

Obrigado pelas respostas.. não faço ideia onde fica isso aqui mas, tenho outras rev aqui com com game serve com a memoria muito inferior a isso e roda normal aqui inclusive com   L2J-Project-X que se não me engane é base frozen

stzAYFE.png?1

Link para o comentário
Compartilhar em outros sites

  • 0
3 minutos atrás, admin123 disse:

Obrigado pelas respostas.. não faço ideia onde fica isso aqui mas, tenho outras rev aqui com com game serve com a memoria muito inferior a isso e roda normal aqui inclusive com   L2J-Project-X que se nao me engane é base frozen

Falou bem, outras revs, com outras necessidades, a solução está ai, só aplicar.

"Tente ser uma pessoa de valor , não de sucesso" - Albert Einstein

 

 

Link para o comentário
Compartilhar em outros sites

  • 0
15 minutos atrás, Tayran.JavaDev disse:

Aumente também a quantidade de threads na rev, esse projeto não sei onde está a configuração de threads, mas mexe nela e isso provavelmente acabará, já que já aumentou a memória do gameserver.

 

//EDIT

Você não aumentou a memória do Gameserver, por isso não está mudando nada.

 


REM -------------------------------------
REM Default parameters for a basic server.
java -Dfile.encoding=UTF8 -Xmx5120m -Xmn1024m -cp ./lib/*;./lib/uMad/*;l2jpx-core.jar net.l2jpx.gameserver.GameServer
REM
REM If you have a big server and lots of memory, you could experiment for example with
REM java -server -Xmx4096m -Xms1024m -Xmn512m -XX:PermSize=256m -XX:SurvivorRatio=8 -Xnoclassgc -XX:+AggressiveOpts
REM ------------------------------------- 


Você estava editando errado, use o exemplo acima.

fiz a Alteração com você disse agora o erro e outro segue:

 

Starting L2J-Project-X Core Game Server.
Official website : http://www.l2sagrado.com
Enjoy by server core. Bee happy!
------------------------------

Invalid initial young generation size: -Xmn5120m
The specified size exceeds the maximum representable size.
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

Server terminated abnormally
Send you bug to : http://www.l2jpx.com


server terminated
Send you bug to : http://www.l2jpx.com

Restart(r) or Quit(q)
 

stzAYFE.png?1

Link para o comentário
Compartilhar em outros sites

  • 0
java -Dfile.encoding=UTF8 -Xmx4096m -Xmn1024m 

Tente assim, você não tem disponível 5gb de memória, por isso o erro.

"Tente ser uma pessoa de valor , não de sucesso" - Albert Einstein

 

 

Link para o comentário
Compartilhar em outros sites

  • 0
10 minutos atrás, Tayran.JavaDev disse:

java -Dfile.encoding=UTF8 -Xmx4096m -Xmn1024m 

Tente assim, você não tem disponível 5gb de memória, por isso o erro.

Tentei  4096 não tive sucesso... ai tentei 3072   configuração atual :

 

REM -------------------------------------
REM Default parameters for a basic server.
java -Dfile.encoding=UTF8 -Xmn3072m -Xmn1024m -cp ./lib/*;./lib/uMad/*;l2jpx-core.jar net.l2jpx.gameserver.GameServer
REM
REM If you have a big server and lots of memory, you could experiment for example with
REM java -server -Xmx4096m -Xms1024m -Xmn512m -XX:PermSize=256m -XX:SurvivorRatio=8 -Xnoclassgc -XX:+AggressiveOpts
REM -------------------------------------

 

ERRO ATUAL: 

 

  * Enchant Item                               [ Ok ]

===============================================================================
INFO  Replaced: 2002_EnchantItem with a new version
INFO  Siege of Dion: Sat Jan 13 20:00:00 BRST 2018
importing custom: 9999: NPCBuffer
importing custom: 10021_SubirLevel
Exception in thread "main" Exception in thread "GeneralSTPool-12" java.lang.OutOfMemoryError: Java heap space
        at javolution.util.FastMap.setup(FastMap.java:257)
        at javolution.util.FastMap.<init>(FastMap.java:249)
        at javolution.util.FastMap.<init>(FastMap.java:218)

stzAYFE.png?1

Link para o comentário
Compartilhar em outros sites

  • 0

as outras revs estão usando só 512 da sua memória, essa está precisando de mais memória que o normal, quando a gente aumenta a memória do gameserver vem o erro que não tem essa memória disponível, então sim, o problema é interno, se aumentar da mesma forma em outra rev vai continuar o erro mesmo em outra rev.

"Tente ser uma pessoa de valor , não de sucesso" - Albert Einstein

 

 

Link para o comentário
Compartilhar em outros sites

  • 0

Eu estive com esse mesmo problema e o revolvi de maneira simples.

Vai em meu computador>clique com botão direito> Propriedade>

image.thumb.png.afa8f0d3ceeb1be824433097384345d1.png

 

Configurações Avançadas Sistema> 

image.thumb.png.f9f68a6b346677e7eccf54bc40dafb07.png

 

Variáveis de Ambiente>

image.png.d7c83aa3d3553fdc6a74f5b4172d65f4.png

 

Variáveis do sistema>_Java_Options.

De um duplo clique e aparecera uma tela igual essa.

image.png.9cfcf522faff30517311745f0c8b92cf.png

Depois é só configurar o valor desejado dar ok e correr pra torcida.

Demorei um dia pra achar essa solução super simples kkkkk

Screenshot_1.png.4e1e8b4bfdaca2be7f7d75189b4da0bf.png

 

image.png

image.png

image.png

Link para o tópico origial com o tutorial em uma das respostas. (está em inglês)

https://stackoverflow.com/questions/38227977/how-to-remove-error-picked-up-java-options-xmx512m

Editado por antares08

Andrew Alves Bianconi

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 esta pergunta...

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