From e910ddb1778884d1b0d00633e7acf3e4cca8f0fc Mon Sep 17 00:00:00 2001
From: Sdw- <jeremy.garreau.pro@gmail.com>
Date: Tue, 18 Nov 2014 16:56:53 +0100
Subject: [PATCH] Adding support for start quest condition Reviewed by:
 @NosBit, @UnAfraid, LoneRanger

---
 .../handlers/bypasshandlers/QuestLink.java    | 171 ++++++++++--------
 .../quests/118_ToLeadAndBeLed/__init__.py     |   2 +-
 .../quests/120_PavelsResearch/__init__.py     |   2 +-
 .../123_TheLeaderAndTheFollower/__init__.py   |   2 +-
 .../scripts/quests/171_ActsOfEvil/__init__.py |   2 +-
 .../quests/178_IconicTrinity/__init__.py      |   2 +-
 .../__init__.py                               |   2 +-
 .../__init__.py                               |   2 +-
 .../quests/216_TrialOfGuildsman/__init__.py   |   2 +-
 .../quests/220_TestimonyOfGlory/__init__.py   |   2 +-
 .../quests/222_TestOfDuelist/__init__.py      |   2 +-
 .../quests/223_TestOfChampion/__init__.py     |   2 +-
 .../quests/224_TestOfSagittarius/__init__.py  |   2 +-
 .../quests/225_TestOfSearcher/__init__.py     |   2 +-
 .../quests/226_TestOfHealer/__init__.py       |   2 +-
 .../quests/227_TestOfReformer/__init__.py     |   2 +-
 .../quests/228_TestOfMagus/__init__.py        |   2 +-
 .../quests/229_TestOfWitchcraft/__init__.py   |   8 +-
 .../22_TragedyInVonHellmannForest/__init__.py |   2 +-
 .../quests/230_TestOfSummoner/__init__.py     |   2 +-
 .../quests/231_TestOfMaestro/__init__.py      |   2 +-
 .../scripts/quests/232_TestOfLord/__init__.py |   2 +-
 .../quests/233_TestOfWarspirit/__init__.py    |   6 +-
 .../quests/234_FatesWhisper/__init__.py       |   2 +-
 .../quests/236_SeedsOfChaos/__init__.py       |   2 +-
 .../scripts/quests/23_LidiasHeart/__init__.py |   2 +-
 .../scripts/quests/255_Tutorial/__init__.py   |   2 +-
 .../25_HidingBehindTheTruth/__init__.py       |   2 +-
 .../quests/330_AdeptOfTaste/__init__.py       |   2 +-
 .../quests/333_BlackLionHunt/__init__.py      |   2 +-
 .../quests/334_TheWishingPotion/__init__.py   |   2 +-
 .../quests/335_TheSongOfTheHunter/__init__.py |   2 +-
 .../quests/336_CoinOfMagic/__init__.py        |   2 +-
 .../337_AudienceWithTheLandDragon/__init__.py |   2 +-
 .../340_SubjugationOfLizardmen/__init__.py    |   2 +-
 .../__init__.py                               |   2 +-
 .../quests/348_ArrogantSearch/__init__.py     |   2 +-
 .../scripts/quests/351_BlackSwan/__init__.py  |   2 +-
 .../quests/372_LegacyOfInsolence/__init__.py  |   2 +-
 .../quests/373_SupplierOfReagents/__init__.py |   2 +-
 .../383_SearchingForTreasure/__init__.py      |   2 +-
 .../384_WarehouseKeepersPastime/__init__.py   |   2 +-
 .../quests/386_StolenDignity/__init__.py      |   2 +-
 .../scripts/quests/419_GetAPet/__init__.py    |   2 +-
 .../quests/422_RepentYourSins/__init__.py     |   2 +-
 .../quests/426_FishingShot/__init__.py        |   2 +-
 .../503_PursuitClanAmbition/__init__.py       |   2 +-
 .../604_DaimontheWhiteEyedPart2/__init__.py   |   2 +-
 .../quests/60_GoodWorkReward/__init__.py      |   2 +-
 .../quests/620_FourGoblets/__init__.py        |   2 +-
 .../65_CertifiedSoulBreaker/__init__.py       |   2 +-
 .../quests/663_SeductiveWhispers/__init__.py  |   2 +-
 .../quests/66_CertifiedArbalester/__init__.py |   2 +-
 .../scripts/quests/AbstractSagaQuest.java     |   2 +-
 .../Q00001_LettersOfLove.java                 |   2 +-
 .../Q00002_WhatWomenWant.java                 |   2 +-
 .../Q00003_WillTheSealBeBroken.java           |   2 +-
 .../Q00004_LongLiveThePaagrioLord.java        |   2 +-
 .../Q00005_MinersFavor.java                   |   2 +-
 .../Q00006_StepIntoTheFuture.java             |   2 +-
 .../Q00007_ATripBegins.java                   |   2 +-
 .../Q00008_AnAdventureBegins.java             |   2 +-
 .../Q00009_IntoTheCityOfHumans.java           |   2 +-
 .../Q00010_IntoTheWorld.java                  |   2 +-
 .../Q00011_SecretMeetingWithKetraOrcs.java    |   2 +-
 .../Q00012_SecretMeetingWithVarkaSilenos.java |   2 +-
 .../Q00013_ParcelDelivery.java                |   2 +-
 .../Q00014_WhereaboutsOfTheArchaeologist.java |   2 +-
 .../Q00015_SweetWhispers.java                 |   2 +-
 .../Q00016_TheComingDarkness.java             |   2 +-
 .../Q00017_LightAndDarkness.java              |   2 +-
 .../Q00018_MeetingWithTheGoldenRam.java       |   2 +-
 .../Q00019_GoToThePastureland.java            |   2 +-
 .../Q00020_BringUpWithLove.java               |   2 +-
 .../Q00021_HiddenTruth.java                   |   2 +-
 ...00024_InhabitantsOfTheForestOfTheDead.java |   2 +-
 .../Q00026_TiredOfWaiting.java                |   2 +-
 .../Q00027_ChestCaughtWithABaitOfWind.java    |   2 +-
 .../Q00028_ChestCaughtWithABaitOfIcyAir.java  |   2 +-
 .../Q00029_ChestCaughtWithABaitOfEarth.java   |   2 +-
 .../Q00030_ChestCaughtWithABaitOfFire.java    |   2 +-
 .../Q00031_SecretBuriedInTheSwamp.java        |   2 +-
 .../Q00033_MakeAPairOfDressShoes.java         |   2 +-
 .../Q00034_InSearchOfCloth.java               |   2 +-
 .../Q00035_FindGlitteringJewelry.java         |   2 +-
 .../Q00036_MakeASewingKit.java                |   2 +-
 .../Q00037_MakeFormalWear.java                |   2 +-
 .../Q00040_ASpecialOrder.java                 |   2 +-
 .../Q00042_HelpTheUncle.java                  |   2 +-
 .../Q00043_HelpTheSister.java                 |   2 +-
 .../Q00044_HelpTheSon/Q00044_HelpTheSon.java  |   2 +-
 .../Q00045_ToTalkingIsland.java               |   2 +-
 ...0046_OnceMoreInTheArmsOfTheMotherTree.java |   2 +-
 .../Q00047_IntoTheDarkElvenForest.java        |   2 +-
 .../Q00048_ToTheImmortalPlateau.java          |   2 +-
 .../Q00049_TheRoadHome.java                   |   2 +-
 .../Q00050_LanoscosSpecialBait.java           |   2 +-
 .../Q00051_OFullesSpecialBait.java            |   2 +-
 .../Q00052_WilliesSpecialBait.java            |   2 +-
 .../Q00053_LinnaeusSpecialBait.java           |   2 +-
 .../Q00101_SwordOfSolidarity.java             |   4 +-
 .../Q00102_SeaOfSporesFever.java              |   4 +-
 .../Q00104_SpiritOfMirrors.java               |   2 +-
 .../Q00105_SkirmishWithOrcs.java              |   2 +-
 .../Q00106_ForgottenTruth.java                |   4 +-
 .../Q00108_JumbleTumbleDiamondFuss.java       |   4 +-
 .../Q00109_InSearchOfTheNest.java             |   2 +-
 .../Q00110_ToThePrimevalIsle.java             |   2 +-
 .../Q00112_WalkOfFate/Q00112_WalkOfFate.java  |   2 +-
 .../Q00113_StatusOfTheBeaconTower.java        |   2 +-
 .../Q00114_ResurrectionOfAnOldManager.java    |   2 +-
 .../Q00115_TheOtherSideOfTruth.java           |   2 +-
 .../Q00119_LastImperialPrince.java            |   2 +-
 .../Q00121_PavelTheGiant.java                 |   2 +-
 .../Q00122_OminousNews.java                   |   2 +-
 .../Q00124_MeetingTheElroki.java              |   2 +-
 .../Q00125_TheNameOfEvil1.java                |   2 +-
 .../Q00126_TheNameOfEvil2.java                |   2 +-
 .../Q00128_PailakaSongOfIceAndFire.java       |   2 +-
 .../Q00130_PathToHellbound.java               |   2 +-
 .../Q00131_BirdInACage.java                   |   2 +-
 .../Q00132_MatrasCuriosity.java               |   2 +-
 .../Q00133_ThatsBloodyHot.java                |   2 +-
 .../Q00134_TempleMissionary.java              |   2 +-
 .../Q00135_TempleExecutor.java                |   2 +-
 .../Q00136_MoreThanMeetsTheEye.java           |   2 +-
 .../Q00137_TempleChampionPart1.java           |   2 +-
 .../Q00138_TempleChampionPart2.java           |   2 +-
 .../Q00139_ShadowFoxPart1.java                |   2 +-
 .../Q00140_ShadowFoxPart2.java                |   2 +-
 .../Q00141_ShadowFoxPart3.java                |   2 +-
 .../Q00142_FallenAngelRequestOfDawn.java      |   2 +-
 .../Q00143_FallenAngelRequestOfDusk.java      |   2 +-
 .../Q00146_TheZeroHour.java                   |   2 +-
 ...Q00147_PathtoBecominganEliteMercenary.java |   2 +-
 ...0148_PathtoBecominganExaltedMercenary.java |   2 +-
 .../Q00151_CureForFever.java                  |   2 +-
 .../Q00152_ShardsOfGolem.java                 |   2 +-
 .../Q00153_DeliverGoods.java                  |   2 +-
 .../Q00155_FindSirWindawood.java              |   2 +-
 .../Q00156_MillenniumLove.java                |   2 +-
 .../Q00157_RecoverSmuggledGoods.java          |   2 +-
 .../Q00158_SeedOfEvil/Q00158_SeedOfEvil.java  |   2 +-
 .../Q00159_ProtectTheWaterSource.java         |   2 +-
 .../Q00161_FruitOfTheMotherTree.java          |   2 +-
 .../Q00162_CurseOfTheUndergroundFortress.java |   2 +-
 .../Q00163_LegacyOfThePoet.java               |   2 +-
 .../Q00164_BloodFiend/Q00164_BloodFiend.java  |   2 +-
 .../Q00165_ShilensHunt.java                   |   2 +-
 .../Q00166_MassOfDarkness.java                |   2 +-
 .../Q00167_DwarvenKinship.java                |   2 +-
 .../Q00168_DeliverSupplies.java               |   2 +-
 .../Q00169_OffspringOfNightmares.java         |   2 +-
 .../Q00170_DangerousSeduction.java            |   2 +-
 .../Q00172_NewHorizons.java                   |   2 +-
 .../Q00173_ToTheIsleOfSouls.java              |   2 +-
 .../Q00174_SupplyCheck.java                   |   2 +-
 .../Q00176_StepsForHonor.java                 |   2 +-
 .../Q00179_IntoTheLargeCavern.java            |   2 +-
 .../Q00182_NewRecruits.java                   |   2 +-
 .../Q00183_RelicExploration.java              |   2 +-
 .../Q00186_ContractExecution.java             |   2 +-
 .../Q00187_NikolasHeart.java                  |   2 +-
 .../Q00188_SealRemoval.java                   |   2 +-
 .../Q00189_ContractCompletion.java            |   2 +-
 .../Q00190_LostDream/Q00190_LostDream.java    |   2 +-
 .../Q00191_VainConclusion.java                |   2 +-
 .../Q00237_WindsOfChange.java                 |   2 +-
 .../Q00238_SuccessFailureOfBusiness.java      |   2 +-
 .../Q00239_WontYouJoinUs.java                 |   2 +-
 .../Q00240_ImTheOnlyOneYouCanTrust.java       |   2 +-
 .../Q00241_PossessorOfAPreciousSoul1.java     |   2 +-
 .../Q00242_PossessorOfAPreciousSoul2.java     |   2 +-
 .../Q00246_PossessorOfAPreciousSoul3.java     |   2 +-
 .../Q00247_PossessorOfAPreciousSoul4.java     |   2 +-
 .../Q00249_PoisonedPlainsOfTheLizardmen.java  |   2 +-
 .../Q00250_WatchWhatYouEat.java               |   2 +-
 .../Q00251_NoSecrets/Q00251_NoSecrets.java    |   2 +-
 .../Q00254_LegendaryTales.java                |   2 +-
 .../Q00257_TheGuardIsBusy.java                |   2 +-
 .../Q00258_BringWolfPelts.java                |   2 +-
 .../Q00259_RequestFromTheFarmOwner.java       |   2 +-
 .../Q00260_OrcHunting/Q00260_OrcHunting.java  |   2 +-
 .../Q00261_CollectorsDream.java               |   2 +-
 .../Q00262_TradeWithTheIvoryTower.java        |   2 +-
 .../Q00263_OrcSubjugation.java                |   2 +-
 .../Q00264_KeenClaws/Q00264_KeenClaws.java    |   2 +-
 .../Q00265_BondsOfSlavery.java                |   2 +-
 .../Q00266_PleasOfPixies.java                 |   2 +-
 .../Q00267_WrathOfVerdure.java                |   2 +-
 .../Q00268_TracesOfEvil.java                  |   2 +-
 .../Q00269_InventionAmbition.java             |   2 +-
 .../Q00270_TheOneWhoEndsSilence.java          |   2 +-
 .../Q00271_ProofOfValor.java                  |   2 +-
 .../Q00272_WrathOfAncestors.java              |   2 +-
 .../Q00273_InvadersOfTheHolyLand.java         |   2 +-
 .../Q00274_SkirmishWithTheWerewolves.java     |   2 +-
 .../Q00275_DarkWingedSpies.java               |   2 +-
 .../Q00276_TotemOfTheHestui.java              |   2 +-
 .../Q00277_GatekeepersOffering.java           |   2 +-
 .../Q00278_HomeSecurity.java                  |   2 +-
 .../Q00279_TargetOfOpportunity.java           |   2 +-
 .../Q00280_TheFoodChain.java                  |   2 +-
 .../Q00281_HeadForTheHills.java               |   2 +-
 .../Q00283_TheFewTheProudTheBrave.java        |   2 +-
 .../Q00287_FiguringItOut.java                 |   2 +-
 .../Q00288_HandleWithCare.java                |   2 +-
 .../Q00289_NoMoreSoupForYou.java              |   2 +-
 .../Q00290_ThreatRemoval.java                 |   2 +-
 .../Q00293_TheHiddenVeins.java                |   2 +-
 .../Q00297_GatekeepersFavor.java              |   2 +-
 .../Q00300_HuntingLetoLizardman.java          |   2 +-
 .../Q00303_CollectArrowheads.java             |   2 +-
 .../Q00306_CrystalOfFireAndIce.java           |   2 +-
 .../Q00307_ControlDeviceOfTheGiants.java      |   2 +-
 .../Q00308_ReedFieldMaintenance.java          |   2 +-
 .../Q00309_ForAGoodCause.java                 |   2 +-
 .../Q00310_OnlyWhatRemains.java               |   2 +-
 .../Q00311_ExpulsionOfEvilSpirits.java        |   2 +-
 .../Q00312_TakeAdvantageOfTheCrisis.java      |   2 +-
 .../Q00313_CollectSpores.java                 |   2 +-
 .../Q00319_ScentOfDeath.java                  |   2 +-
 .../Q00320_BonesTellTheFuture.java            |   2 +-
 .../Q00324_SweetestVenom.java                 |   2 +-
 .../Q00325_GrimCollector.java                 |   2 +-
 .../Q00326_VanquishRemnants.java              |   2 +-
 .../Q00328_SenseForBusiness.java              |   2 +-
 .../Q00329_CuriosityOfADwarf.java             |   2 +-
 .../Q00331_ArrowOfVengeance.java              |   2 +-
 .../Q00338_AlligatorHunter.java               |   2 +-
 .../Q00350_EnhanceYourWeapon.java             |   2 +-
 .../Q00354_ConquestOfAlligatorIsland.java     |   2 +-
 .../Q00356_DigUpTheSeaOfSpores.java           |   2 +-
 .../Q00360_PlunderTheirSupplies.java          |   2 +-
 .../Q00368_TrespassingIntoTheHolyGround.java  |   2 +-
 .../Q00423_TakeYourBestShot.java              |   2 +-
 .../Q00431_WeddingMarch.java                  |   2 +-
 .../Q00432_BirthdayPartySong.java             |   2 +-
 .../Q00450_GraveRobberRescue.java             |   2 +-
 .../Q00451_LuciensAltar.java                  |   2 +-
 .../Q00452_FindingtheLostSoldiers.java        |   2 +-
 .../Q00453_NotStrongEnoughAlone.java          |   2 +-
 .../Q00455_WingsOfSand.java                   |   2 +-
 .../Q00456_DontKnowDontCare.java              |   2 +-
 .../Q00457_LostAndFound.java                  |   2 +-
 .../Q00458_PerfectForm.java                   |   2 +-
 .../Q00461_RumbleInTheBase.java               |   2 +-
 .../Q00463_IMustBeaGenius.java                |   2 +-
 .../quests/Q00464_Oath/Q00464_Oath.java       |   2 +-
 ...504_CompetitionForTheBanditStronghold.java |   2 +-
 .../Q00508_AClansReputation.java              |   2 +-
 .../Q00509_AClansFame/Q00509_AClansFame.java  |   2 +-
 .../Q00510_AClansPrestige.java                |   2 +-
 .../Q00511_AwlUnderFoot.java                  |   2 +-
 .../Q00551_OlympiadStarter.java               |   2 +-
 .../Q00552_OlympiadVeteran.java               |   2 +-
 .../Q00553_OlympiadUndefeated.java            |   2 +-
 .../Q00601_WatchingEyes.java                  |   2 +-
 .../Q00602_ShadowOfLight.java                 |   2 +-
 .../Q00605_AllianceWithKetraOrcs.java         |   2 +-
 .../Q00606_BattleAgainstVarkaSilenos.java     |   2 +-
 .../Q00607_ProveYourCourageKetra.java         |   2 +-
 .../Q00608_SlayTheEnemyCommanderKetra.java    |   2 +-
 .../Q00609_MagicalPowerOfWaterPart1.java      |   2 +-
 .../Q00610_MagicalPowerOfWaterPart2.java      |   2 +-
 .../Q00611_AllianceWithVarkaSilenos.java      |   2 +-
 .../Q00612_BattleAgainstKetraOrcs.java        |   2 +-
 .../Q00613_ProveYourCourageVarka.java         |   2 +-
 .../Q00614_SlayTheEnemyCommanderVarka.java    |   2 +-
 .../Q00615_MagicalPowerOfFirePart1.java       |   2 +-
 .../Q00616_MagicalPowerOfFirePart2.java       |   2 +-
 .../Q00617_GatherTheFlames.java               |   2 +-
 .../Q00618_IntoTheFlame.java                  |   2 +-
 .../Q00619_RelicsOfTheOldEmpire.java          |   2 +-
 .../Q00624_TheFinestIngredientsPart1.java     |   2 +-
 .../Q00626_ADarkTwilight.java                 |   2 +-
 .../Q00627_HeartInSearchOfPower.java          |   2 +-
 .../Q00631_DeliciousTopChoiceMeat.java        |   2 +-
 ...Q00634_InSearchOfFragmentsOfDimension.java |   2 +-
 .../Q00636_TruthBeyond.java                   |   2 +-
 .../Q00637_ThroughOnceMore.java               |   2 +-
 .../Q00639_GuardiansOfTheHolyGrail.java       |   2 +-
 .../Q00641_AttackSailren.java                 |   2 +-
 .../Q00642_APowerfulPrimevalCreature.java     |   2 +-
 .../Q00643_RiseAndFallOfTheElrokiTribe.java   |   2 +-
 .../Q00644_GraveRobberAnnihilation.java       |   2 +-
 .../Q00645_GhostsOfBatur.java                 |   2 +-
 .../Q00646_SignsOfRevolt.java                 |   2 +-
 .../Q00647_InfluxOfMachines.java              |   2 +-
 .../Q00649_ALooterAndARailroadMan.java        |   2 +-
 .../Q00650_ABrokenDream.java                  |   2 +-
 .../Q00651_RunawayYouth.java                  |   2 +-
 .../Q00652_AnAgedExAdventurer.java            |   2 +-
 .../Q00653_WildMaiden/Q00653_WildMaiden.java  |   2 +-
 ...00659_IdRatherBeCollectingFairyBreath.java |   2 +-
 .../Q00662_AGameOfCards.java                  |   2 +-
 .../Q00688_DefeatTheElrokianRaiders.java      |   2 +-
 .../Q00690_JudesRequest.java                  |   2 +-
 .../Q00691_MatrasSuspiciousRequest.java       |   2 +-
 .../Q00692_HowtoOpposeEvil.java               |   2 +-
 .../Q00699_GuardianOfTheSkies.java            |   2 +-
 .../Q00700_CursedLife/Q00700_CursedLife.java  |   2 +-
 .../Q00701_ProofOfExistence.java              |   2 +-
 .../Q00702_ATrapForRevenge.java               |   2 +-
 .../Q00901_HowLavasaurusesAreMade.java        |   2 +-
 .../Q00902_ReclaimOurEra.java                 |   2 +-
 .../Q00903_TheCallOfAntharas.java             |   2 +-
 .../Q00905_RefinedDragonBlood.java            |   2 +-
 .../Q00906_TheCallOfValakas.java              |   2 +-
 .../Q00907_DragonTrophyValakas.java           |   2 +-
 .../Q00998_FallenAngelSelect.java             |   2 +-
 .../Q10267_JourneyToGracia.java               |   2 +-
 .../Q10268_ToTheSeedOfInfinity.java           |   2 +-
 .../Q10269_ToTheSeedOfDestruction.java        |   2 +-
 .../Q10271_TheEnvelopingDarkness.java         |   2 +-
 .../Q10272_LightFragment.java                 |   2 +-
 .../Q10273_GoodDayToFly.java                  |   2 +-
 .../Q10274_CollectingInTheAir.java            |   2 +-
 .../Q10275_ContainingTheAttributePower.java   |   2 +-
 .../Q10276_MutatedKaneusGludio.java           |   2 +-
 .../Q10277_MutatedKaneusDion.java             |   2 +-
 .../Q10278_MutatedKaneusHeine.java            |   2 +-
 .../Q10279_MutatedKaneusOren.java             |   2 +-
 .../Q10280_MutatedKaneusSchuttgart.java       |   2 +-
 .../Q10281_MutatedKaneusRune.java             |   2 +-
 .../Q10282_ToTheSeedOfAnnihilation.java       |   2 +-
 .../Q10283_RequestOfIceMerchant.java          |   2 +-
 .../Q10288_SecretMission.java                 |   2 +-
 .../Q10291_FireDragonDestroyer.java           |   2 +-
 .../Q10501_ZakenEmbroideredSoulCloak.java     |   2 +-
 .../Q10502_FreyaEmbroideredSoulCloak.java     |   2 +-
 .../Q10503_FrintezzaEmbroideredSoulCloak.java |   2 +-
 .../Q10505_JewelOfValakas.java                |   2 +-
 333 files changed, 435 insertions(+), 418 deletions(-)

diff --git a/L2J_DataPack/dist/game/data/scripts/handlers/bypasshandlers/QuestLink.java b/L2J_DataPack/dist/game/data/scripts/handlers/bypasshandlers/QuestLink.java
index 65cf503382..639b9dc81a 100644
--- a/L2J_DataPack/dist/game/data/scripts/handlers/bypasshandlers/QuestLink.java
+++ b/L2J_DataPack/dist/game/data/scripts/handlers/bypasshandlers/QuestLink.java
@@ -18,23 +18,23 @@
  */
 package handlers.bypasshandlers;
 
+import java.util.ArrayList;
+import java.util.HashSet;
 import java.util.List;
+import java.util.Set;
 import java.util.logging.Level;
 
-import javolution.util.FastList;
-
-import com.l2jserver.Config;
-import com.l2jserver.gameserver.cache.HtmCache;
+import com.l2jserver.gameserver.datatables.NpcData;
 import com.l2jserver.gameserver.handler.IBypassHandler;
 import com.l2jserver.gameserver.instancemanager.QuestManager;
 import com.l2jserver.gameserver.model.actor.L2Character;
 import com.l2jserver.gameserver.model.actor.L2Npc;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.events.EventType;
 import com.l2jserver.gameserver.model.events.listeners.AbstractEventListener;
 import com.l2jserver.gameserver.model.quest.Quest;
 import com.l2jserver.gameserver.model.quest.QuestState;
-import com.l2jserver.gameserver.model.quest.State;
 import com.l2jserver.gameserver.network.SystemMessageId;
 import com.l2jserver.gameserver.network.serverpackets.ActionFailed;
 import com.l2jserver.gameserver.network.serverpackets.NpcHtmlMessage;
@@ -89,37 +89,49 @@ public class QuestLink implements IBypassHandler
 	{
 		final StringBuilder sb = StringUtil.startAppend(150, "<html><body>");
 		String state = "";
+		String color = "";
 		int questId = -1;
-		for (Quest q : quests)
+		for (Quest quest : quests)
 		{
-			if (q == null)
+			if (quest == null)
 			{
 				continue;
 			}
 			
-			StringUtil.append(sb, "<a action=\"bypass -h npc_", String.valueOf(npc.getObjectId()), "_Quest ", q.getName(), "\">[");
-			final QuestState qs = player.getQuestState(q.getScriptName());
+			final QuestState qs = player.getQuestState(quest.getScriptName());
 			if ((qs == null) || qs.isCreated())
 			{
-				state = q.isCustomQuest() ? "" : "01";
+				state = quest.isCustomQuest() ? "" : "01";
+				if (quest.canStartQuest(player))
+				{
+					color = "bbaa88";
+				}
+				else
+				{
+					color = "a62f31";
+				}
 			}
 			else if (qs.isStarted())
 			{
-				state = q.isCustomQuest() ? " (In Progress)" : "02";
+				state = quest.isCustomQuest() ? " (In Progress)" : "02";
+				color = "ffdd66";
 			}
 			else if (qs.isCompleted())
 			{
-				state = q.isCustomQuest() ? " (Done)" : "03";
+				state = quest.isCustomQuest() ? " (Done)" : "03";
+				color = "787878";
 			}
+			StringUtil.append(sb, "<a action=\"bypass -h npc_", String.valueOf(npc.getObjectId()), "_Quest ", quest.getName(), "\">[");
+			StringUtil.append(sb, "<font color=\"" + color + "\">");
 			
-			if (q.isCustomQuest())
+			if (quest.isCustomQuest())
 			{
-				StringUtil.append(sb, q.getDescr(), state);
+				StringUtil.append(sb, quest.getDescr(), state);
 			}
 			else
 			{
-				questId = q.getId();
-				if (q.getId() > 10000)
+				questId = quest.getId();
+				if (quest.getId() > 10000)
 				{
 					questId -= 5000;
 				}
@@ -129,7 +141,7 @@ public class QuestLink implements IBypassHandler
 				}
 				StringUtil.append(sb, "<fstring>", String.valueOf(questId), state, "</fstring>");
 			}
-			sb.append("]</a><br>");
+			sb.append("]</font></a><br>");
 		}
 		sb.append("</body></html>");
 		
@@ -153,10 +165,10 @@ public class QuestLink implements IBypassHandler
 	{
 		String content = null;
 		
-		Quest q = QuestManager.getInstance().getQuest(questId);
+		final Quest q = QuestManager.getInstance().getQuest(questId);
 		
 		// Get the state of the selected quest
-		QuestState qs = player.getQuestState(questId);
+		final QuestState qs = player.getQuestState(questId);
 		
 		if (q != null)
 		{
@@ -179,52 +191,15 @@ public class QuestLink implements IBypassHandler
 						return;
 					}
 				}
-				// check for start point
-				for (AbstractEventListener listener : npc.getListeners(EventType.ON_NPC_QUEST_START))
-				{
-					if (listener.getOwner() instanceof Quest)
-					{
-						final Quest quest = (Quest) listener.getOwner();
-						if (quest == q)
-						{
-							qs = q.newQuestState(player);
-							break;
-						}
-					}
-				}
 			}
+			
+			q.notifyTalk(npc, player);
 		}
 		else
 		{
 			content = Quest.getNoQuestMsg(player); // no quests found
 		}
 		
-		if ((q != null) && (qs != null))
-		{
-			// If the quest is already started, no need to show a window
-			if (!q.notifyTalk(npc, player))
-			{
-				return;
-			}
-			
-			questId = q.getName();
-			String stateId = State.getStateName(qs.getState());
-			String path = "data/scripts/quests/" + questId + "/" + stateId + ".htm";
-			content = HtmCache.getInstance().getHtm(player.getHtmlPrefix(), path); // TODO path for quests html
-			
-			if (Config.DEBUG)
-			{
-				if (content != null)
-				{
-					_log.fine("Showing quest window for quest " + questId + " html path: " + path);
-				}
-				else
-				{
-					_log.fine("File not exists for quest " + questId + " html path: " + path);
-				}
-			}
-		}
-		
 		// Send a Server->Client packet NpcHtmlMessage to the L2PcInstance in order to display the message of the L2NpcInstance
 		if (content != null)
 		{
@@ -235,6 +210,43 @@ public class QuestLink implements IBypassHandler
 		player.sendPacket(ActionFailed.STATIC_PACKET);
 	}
 	
+	/**
+	 * @param player
+	 * @param npcId The Identifier of the NPC
+	 * @return a table containing all QuestState from the table _quests in which the L2PcInstance must talk to the NPC.
+	 */
+	private static List<QuestState> getQuestsForTalk(final L2PcInstance player, int npcId)
+	{
+		// Create a QuestState table that will contain all QuestState to modify
+		final List<QuestState> states = new ArrayList<>();
+		
+		final L2NpcTemplate template = NpcData.getInstance().getTemplate(npcId);
+		if (template == null)
+		{
+			_log.log(Level.WARNING, QuestLink.class.getSimpleName() + ": " + player.getName() + " requested quests for talk on non existing npc " + npcId);
+			return states;
+		}
+		
+		// Go through the QuestState of the L2PcInstance quests
+		for (AbstractEventListener listener : template.getListeners(EventType.ON_NPC_TALK))
+		{
+			if (listener.getOwner() instanceof Quest)
+			{
+				final Quest quest = (Quest) listener.getOwner();
+				
+				// Copy the current L2PcInstance QuestState in the QuestState table
+				final QuestState st = player.getQuestState(quest.getName());
+				if (st != null)
+				{
+					states.add(st);
+				}
+			}
+		}
+		
+		// Return a table containing all QuestState to modify
+		return states;
+	}
+	
 	/**
 	 * Collect awaiting quests/start points and display a QuestChooseWindow (if several available) or QuestWindow.
 	 * @param player the L2PcInstance that talk with the {@code npc}.
@@ -242,28 +254,26 @@ public class QuestLink implements IBypassHandler
 	 */
 	public static void showQuestWindow(L2PcInstance player, L2Npc npc)
 	{
+		boolean conditionMeet = false;
 		// collect awaiting quests and start points
-		List<Quest> options = new FastList<>();
-		
-		QuestState[] awaits = player.getQuestsForTalk(npc.getTemplate().getId());
+		final Set<Quest> options = new HashSet<>();
 		
 		// Quests are limited between 1 and 999 because those are the quests that are supported by the client.
 		// By limiting them there, we are allowed to create custom quests at higher IDs without interfering
-		if (awaits != null)
+		for (QuestState state : getQuestsForTalk(player, npc.getId()))
 		{
-			for (QuestState state : awaits)
+			final Quest quest = state.getQuest();
+			if (quest == null)
 			{
-				if (state.getQuest() == null)
-				{
-					_log.log(Level.WARNING, player + " Requested incorrect quest state for non existing quest: " + state.getQuestName());
-					continue;
-				}
-				if (!options.contains(state.getQuest()))
+				_log.log(Level.WARNING, player + " Requested incorrect quest state for non existing quest: " + state.getQuestName());
+				continue;
+			}
+			if ((quest.getId() > 0) && (quest.getId() < 20000))
+			{
+				options.add(quest);
+				if (quest.canStartQuest(player))
 				{
-					if ((state.getQuest().getId() > 0) && (state.getQuest().getId() < 20000))
-					{
-						options.add(state.getQuest());
-					}
+					conditionMeet = true;
 				}
 			}
 		}
@@ -273,21 +283,28 @@ public class QuestLink implements IBypassHandler
 			if (listener.getOwner() instanceof Quest)
 			{
 				final Quest quest = (Quest) listener.getOwner();
-				if (!options.contains(quest) && (quest.getId() > 0) && (quest.getId() < 20000))
+				if ((quest.getId() > 0) && (quest.getId() < 20000))
 				{
 					options.add(quest);
+					if (quest.canStartQuest(player))
+					{
+						conditionMeet = true;
+					}
 				}
 			}
 		}
 		
-		// Display a QuestChooseWindow (if several quests are available) or QuestWindow
-		if (options.size() > 1)
+		if (!conditionMeet)
+		{
+			showQuestWindow(player, npc, "");
+		}
+		else if (options.size() > 1)
 		{
 			showQuestChooseWindow(player, npc, options.toArray(new Quest[options.size()]));
 		}
 		else if (options.size() == 1)
 		{
-			showQuestWindow(player, npc, options.get(0).getName());
+			showQuestWindow(player, npc, options.stream().findFirst().get().getName());
 		}
 		else
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/118_ToLeadAndBeLed/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/118_ToLeadAndBeLed/__init__.py
index c824a9a918..2bfb5daa8b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/118_ToLeadAndBeLed/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/118_ToLeadAndBeLed/__init__.py
@@ -87,7 +87,7 @@ class Quest (JQuest) :
  def onTalk (self,npc,player):
    npcId = npc.getId()
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    id = st.getState()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/120_PavelsResearch/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/120_PavelsResearch/__init__.py
index 0fcac23d0e..67af68dceb 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/120_PavelsResearch/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/120_PavelsResearch/__init__.py
@@ -213,7 +213,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
     htmltext = Quest.getNoQuestMsg(player)
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     if not st : return htmltext
     state = st.getState()
     npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/123_TheLeaderAndTheFollower/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/123_TheLeaderAndTheFollower/__init__.py
index eaecd5446c..8a7635d8ff 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/123_TheLeaderAndTheFollower/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/123_TheLeaderAndTheFollower/__init__.py
@@ -80,7 +80,7 @@ class Quest (JQuest) :
  def onTalk (self,npc,player):
    npcId = npc.getId()
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    id = st.getState()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/__init__.py
index b91b8f8d6f..715cdf3d71 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/__init__.py
@@ -60,7 +60,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
      htmltext = Quest.getNoQuestMsg(player)
-     st = player.getQuestState(qn)
+     st = self.getQuestState(player, true)
      if not st : return htmltext
 
      npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/178_IconicTrinity/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/178_IconicTrinity/__init__.py
index b5f98f35ab..f0f474a18e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/178_IconicTrinity/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/178_IconicTrinity/__init__.py
@@ -100,7 +100,7 @@ class Quest (JQuest) :
  def onTalk (self,npc,player):
      npcId = npc.getId()
      htmltext = Quest.getNoQuestMsg(player)
-     st = player.getQuestState(qn)
+     st = self.getQuestState(player, true)
      if not st : return htmltext
      id = st.getState()
      cond = st.getInt("cond")
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/184_Nikolas_Cooperation_Contract/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/184_Nikolas_Cooperation_Contract/__init__.py
index dc4e9aeee7..f3d46d103b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/184_Nikolas_Cooperation_Contract/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/184_Nikolas_Cooperation_Contract/__init__.py
@@ -112,7 +112,7 @@ class Quest (JQuest) :
 
     def onTalk (self,npc,player):
         htmltext = Quest.getNoQuestMsg(player)
-        st = player.getQuestState(qn)
+        st = self.getQuestState(player, true)
         if not st : return htmltext
         npcId = npc.getId()
         id = st.getState()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/185_Nikolas_Cooperation_Consideration/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/185_Nikolas_Cooperation_Consideration/__init__.py
index 5aeea3e4f8..a00b262810 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/185_Nikolas_Cooperation_Consideration/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/185_Nikolas_Cooperation_Consideration/__init__.py
@@ -112,7 +112,7 @@ class Quest (JQuest) :
 
     def onTalk (self,npc,player):
         htmltext = Quest.getNoQuestMsg(player)
-        st = player.getQuestState(qn)
+        st = self.getQuestState(player, true)
         if not st : return htmltext
         npcId = npc.getId()
         id = st.getState()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/216_TrialOfGuildsman/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/216_TrialOfGuildsman/__init__.py
index 35fb37ab93..d28ef096e9 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/216_TrialOfGuildsman/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/216_TrialOfGuildsman/__init__.py
@@ -137,7 +137,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
    npcId = npc.getId()
    id = st.getState()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/220_TestimonyOfGlory/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/220_TestimonyOfGlory/__init__.py
index 587357bb4b..92794399ab 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/220_TestimonyOfGlory/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/220_TestimonyOfGlory/__init__.py
@@ -186,7 +186,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/222_TestOfDuelist/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/222_TestOfDuelist/__init__.py
index 5d1c02d970..49046730df 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/222_TestOfDuelist/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/222_TestOfDuelist/__init__.py
@@ -88,7 +88,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/223_TestOfChampion/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/223_TestOfChampion/__init__.py
index 598e9feef6..ad8da6cbec 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/223_TestOfChampion/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/223_TestOfChampion/__init__.py
@@ -112,7 +112,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
    npcId = npc.getId()
    id = st.getState()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/224_TestOfSagittarius/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/224_TestOfSagittarius/__init__.py
index 99a736754a..42850fe0de 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/224_TestOfSagittarius/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/224_TestOfSagittarius/__init__.py
@@ -128,7 +128,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/225_TestOfSearcher/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/225_TestOfSearcher/__init__.py
index ba5d2644a0..ee146f3392 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/225_TestOfSearcher/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/225_TestOfSearcher/__init__.py
@@ -85,7 +85,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
    cond = st.getInt("cond")
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/226_TestOfHealer/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/226_TestOfHealer/__init__.py
index 2b2872d83b..7e872692b9 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/226_TestOfHealer/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/226_TestOfHealer/__init__.py
@@ -141,7 +141,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/227_TestOfReformer/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/227_TestOfReformer/__init__.py
index 69fa4a70b9..25592ea8df 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/227_TestOfReformer/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/227_TestOfReformer/__init__.py
@@ -83,7 +83,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/228_TestOfMagus/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/228_TestOfMagus/__init__.py
index 47f5930089..1120071a5e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/228_TestOfMagus/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/228_TestOfMagus/__init__.py
@@ -110,7 +110,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/229_TestOfWitchcraft/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/229_TestOfWitchcraft/__init__.py
index 5243f214a6..51486a6002 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/229_TestOfWitchcraft/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/229_TestOfWitchcraft/__init__.py
@@ -66,8 +66,8 @@ DROPLIST={
 
 class Quest (JQuest) :
 
-  def __init__(self,id,name,descr):
-    JQuest.__init__(self,id,name,descr)
+  def __init__(self,id,name,descr):
+    JQuest.__init__(self,id,name,descr)
     self.questItemIds = range(3308,3336)+[3029]
 
   def onEvent (self,event,st) :
@@ -193,7 +193,7 @@ class Quest (JQuest) :
   def onTalk (self,npc,player):
     htmltext = Quest.getNoQuestMsg(player)
     
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     if not st : return htmltext
 
     npcId = npc.getId()
@@ -219,7 +219,7 @@ class Quest (JQuest) :
       return htmltext
     # already done
     elif id == State.COMPLETED:
-      return Quest.getAlreadyCompletedMsg(player)
+      return Quest.getAlreadyCompletedMsg(player)
 
     # in progress, player is working on the quest
     else:
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/22_TragedyInVonHellmannForest/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/22_TragedyInVonHellmannForest/__init__.py
index 49fe8af138..05d4cf3645 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/22_TragedyInVonHellmannForest/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/22_TragedyInVonHellmannForest/__init__.py
@@ -155,7 +155,7 @@ class Quest (JQuest) :
    return htmltext 
 
  def onTalk (self,npc,player):
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    htmltext = Quest.getNoQuestMsg(player) 
    if not st: return htmltext
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/230_TestOfSummoner/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/230_TestOfSummoner/__init__.py
index 71fabe9118..cc9dcd1f89 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/230_TestOfSummoner/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/230_TestOfSummoner/__init__.py
@@ -195,7 +195,7 @@ class Quest (JQuest) :
 
    def onTalk (self,npc,player):
       htmltext = Quest.getNoQuestMsg(player)
-      st = player.getQuestState(qn)
+      st = self.getQuestState(player, true)
       if not st : return htmltext
 
       npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/231_TestOfMaestro/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/231_TestOfMaestro/__init__.py
index 5b54a2e823..ca627796c2 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/231_TestOfMaestro/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/231_TestOfMaestro/__init__.py
@@ -94,7 +94,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/232_TestOfLord/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/232_TestOfLord/__init__.py
index 5f8c6b41ba..310358bf44 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/232_TestOfLord/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/232_TestOfLord/__init__.py
@@ -155,7 +155,7 @@ class Quest (JQuest) :
     
   def onTalk (self,npc,player):
     htmltext = Quest.getNoQuestMsg(player)
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     if not st : return htmltext
 
     npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/233_TestOfWarspirit/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/233_TestOfWarspirit/__init__.py
index d21ceeea2c..3185f921cf 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/233_TestOfWarspirit/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/233_TestOfWarspirit/__init__.py
@@ -143,7 +143,7 @@ class Quest (JQuest) :
 
   def onTalk (self,npc,player):
     htmltext = Quest.getNoQuestMsg(player)
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     if not st : return htmltext
 
     npcId = npc.getId()
@@ -350,9 +350,9 @@ class Quest (JQuest) :
           count = st.getQuestItemsCount(item)
           if count >= maxcount : continue
           st.giveItems(item,1)
-          if st.getInt(var) < 9:
+          if st.getInt(var) < 9:
             isValue = isValue + 1
-            st.set(var,str(isValue))
+            st.set(var,str(isValue))
           if st.getQuestItemsCount(KIRUNAS_SKULL) and st.getInt(var)==9:
             st.set(var,"10")
             st.playSound("ItemSound.quest_middle")
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/234_FatesWhisper/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/234_FatesWhisper/__init__.py
index db93fe4964..d182c38b31 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/234_FatesWhisper/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/234_FatesWhisper/__init__.py
@@ -138,7 +138,7 @@ class Quest (JQuest) :
 
   def onTalk (self,npc,player):
     htmltext = Quest.getNoQuestMsg(player)
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     if not st : return htmltext
 
     npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/236_SeedsOfChaos/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/236_SeedsOfChaos/__init__.py
index 879727b543..3e5cd0861d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/236_SeedsOfChaos/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/236_SeedsOfChaos/__init__.py
@@ -143,7 +143,7 @@ class Quest (JQuest) :
  
  def onTalk (self,npc,player):
     htmltext = Quest.getNoQuestMsg(player)
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     if not st : return htmltext
     npcId = npc.getId()
     id = st.getState()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/23_LidiasHeart/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/23_LidiasHeart/__init__.py
index f46ae53b4c..619239117c 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/23_LidiasHeart/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/23_LidiasHeart/__init__.py
@@ -81,7 +81,7 @@ class Quest (JQuest) :
 
     def onTalk (self,npc,player):
         htmltext = Quest.getNoQuestMsg(player)
-        st = player.getQuestState(qn)
+        st = self.getQuestState(player, true)
         if not st : return htmltext
         state = st.getState()
         if state == State.COMPLETED :
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/255_Tutorial/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/255_Tutorial/__init__.py
index 59b933dc6d..db8a3b3b65 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/255_Tutorial/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/255_Tutorial/__init__.py
@@ -131,7 +131,7 @@ class Quest (JQuest) :
     def onAdvEvent(self,event,npc,player):
         if Config.DISABLE_TUTORIAL :
             return
-        st = player.getQuestState(qn)
+        st = self.getQuestState(player, true)
         classId = int(st.getPlayer().getClassId().getId())
         string = event[0:2]
         htmltext = ""
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/25_HidingBehindTheTruth/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/25_HidingBehindTheTruth/__init__.py
index 3f76151540..b75923ecec 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/25_HidingBehindTheTruth/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/25_HidingBehindTheTruth/__init__.py
@@ -126,7 +126,7 @@ class Quest (JQuest) :
 
     def onTalk (self,npc,player):
         htmltext = Quest.getNoQuestMsg(player)
-        st = player.getQuestState(qn)
+        st = self.getQuestState(player, true)
         if not st : return htmltext
         npcId = npc.getId()
         id = st.getState()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/330_AdeptOfTaste/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/330_AdeptOfTaste/__init__.py
index 70ba53b908..6faaaf29af 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/330_AdeptOfTaste/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/330_AdeptOfTaste/__init__.py
@@ -109,7 +109,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/333_BlackLionHunt/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/333_BlackLionHunt/__init__.py
index d3af66a550..96277bc0f5 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/333_BlackLionHunt/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/333_BlackLionHunt/__init__.py
@@ -462,7 +462,7 @@ class Quest (JQuest) :
     
   def onTalk (self,npc,player):
     htmltext = Quest.getNoQuestMsg(player)
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     if not st : return htmltext
 
     npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/334_TheWishingPotion/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/334_TheWishingPotion/__init__.py
index 41a50ec813..7755155c63 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/334_TheWishingPotion/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/334_TheWishingPotion/__init__.py
@@ -228,7 +228,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
    npcId = npc.getId()
    cond = st.getInt("cond")
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/335_TheSongOfTheHunter/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/335_TheSongOfTheHunter/__init__.py
index b218eaf071..28242bc3d6 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/335_TheSongOfTheHunter/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/335_TheSongOfTheHunter/__init__.py
@@ -398,7 +398,7 @@ class Quest (JQuest) :
 
     def onTalk (self,npc,player):
         htmltext = Quest.getNoQuestMsg(player)
-        st = player.getQuestState(qn)
+        st = self.getQuestState(player, true)
         if not st : return htmltext
         npcId = npc.getId()
         cond = st.getInt("cond")
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/336_CoinOfMagic/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/336_CoinOfMagic/__init__.py
index f7fb2f9baa..23ae418178 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/336_CoinOfMagic/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/336_CoinOfMagic/__init__.py
@@ -292,7 +292,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/337_AudienceWithTheLandDragon/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/337_AudienceWithTheLandDragon/__init__.py
index badb6190a0..ed2d4f4d26 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/337_AudienceWithTheLandDragon/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/337_AudienceWithTheLandDragon/__init__.py
@@ -102,7 +102,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
     htmltext = Quest.getNoQuestMsg(player)
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     if not st : return htmltext
     npcId = npc.getId()
     cond = st.getInt("cond")
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/340_SubjugationOfLizardmen/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/340_SubjugationOfLizardmen/__init__.py
index 06970df0ab..70cec7f56f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/340_SubjugationOfLizardmen/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/340_SubjugationOfLizardmen/__init__.py
@@ -64,7 +64,7 @@ class Quest (JQuest) :
  def onTalk (self,npc,player):
      npcId = npc.getId()
      htmltext = Quest.getNoQuestMsg(player)
-     st = player.getQuestState(qn)
+     st = self.getQuestState(player, true)
      if not st : return htmltext
      id = st.getState()
      cond = st.getInt("cond")
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/343_UnderTheShadowOfTheIvoryTower/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/343_UnderTheShadowOfTheIvoryTower/__init__.py
index 2e53697b68..4d86638ccd 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/343_UnderTheShadowOfTheIvoryTower/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/343_UnderTheShadowOfTheIvoryTower/__init__.py
@@ -149,7 +149,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
      htmltext = Quest.getNoQuestMsg(player)
-     st = player.getQuestState(qn)
+     st = self.getQuestState(player, true)
      if not st : return htmltext
 
      npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/348_ArrogantSearch/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/348_ArrogantSearch/__init__.py
index 17e6480a65..621a39f92a 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/348_ArrogantSearch/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/348_ArrogantSearch/__init__.py
@@ -192,7 +192,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
     htmltext = Quest.getNoQuestMsg(player)
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     if not st : return htmltext
 
     npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/351_BlackSwan/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/351_BlackSwan/__init__.py
index 5898701fc9..742160592f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/351_BlackSwan/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/351_BlackSwan/__init__.py
@@ -52,7 +52,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
      htmltext = Quest.getNoQuestMsg(player)
-     st = player.getQuestState(qn)
+     st = self.getQuestState(player, true)
      if not st : return htmltext
      npcId = npc.getId()
      id = st.getState()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/372_LegacyOfInsolence/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/372_LegacyOfInsolence/__init__.py
index dcd8837505..2ea4dabbc2 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/372_LegacyOfInsolence/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/372_LegacyOfInsolence/__init__.py
@@ -133,7 +133,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/373_SupplierOfReagents/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/373_SupplierOfReagents/__init__.py
index 4e3cd367b7..cb3ea5da33 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/373_SupplierOfReagents/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/373_SupplierOfReagents/__init__.py
@@ -251,7 +251,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/383_SearchingForTreasure/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/383_SearchingForTreasure/__init__.py
index 83c8a2c1bc..4ad1261b7f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/383_SearchingForTreasure/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/383_SearchingForTreasure/__init__.py
@@ -67,7 +67,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
      htmltext = Quest.getNoQuestMsg(player)
-     st = player.getQuestState(qn)
+     st = self.getQuestState(player, true)
      if not st : return htmltext
 
      npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/384_WarehouseKeepersPastime/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/384_WarehouseKeepersPastime/__init__.py
index 9e00b55002..010affe0c4 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/384_WarehouseKeepersPastime/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/384_WarehouseKeepersPastime/__init__.py
@@ -213,7 +213,7 @@ class Quest (JQuest) :
    return htmltext
 
  def onTalk (self,npc,player) :
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    htmltext = Quest.getNoQuestMsg(player) 
    if not st: return htmltext
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/386_StolenDignity/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/386_StolenDignity/__init__.py
index 45d359dcfc..4f06c9a6af 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/386_StolenDignity/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/386_StolenDignity/__init__.py
@@ -175,7 +175,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/419_GetAPet/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/419_GetAPet/__init__.py
index 51132a5782..9f081bcc4d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/419_GetAPet/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/419_GetAPet/__init__.py
@@ -180,7 +180,7 @@ class Quest (JQuest):
 
   def onTalk (self,npc,player):
     htmltext = Quest.getNoQuestMsg(player)
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     if not st : return htmltext
 
     npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/422_RepentYourSins/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/422_RepentYourSins/__init__.py
index 1012c2b03c..a5f0ad7cc8 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/422_RepentYourSins/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/422_RepentYourSins/__init__.py
@@ -128,7 +128,7 @@ class Quest (JQuest) :
 
  def onTalk (Self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
    condition = st.getInt("cond")
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/426_FishingShot/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/426_FishingShot/__init__.py
index 28cea2b0a0..878c5f36c0 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/426_FishingShot/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/426_FishingShot/__init__.py
@@ -79,7 +79,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/503_PursuitClanAmbition/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/503_PursuitClanAmbition/__init__.py
index e0f7a6fbad..b9715b2831 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/503_PursuitClanAmbition/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/503_PursuitClanAmbition/__init__.py
@@ -296,7 +296,7 @@ class Quest (JQuest) :
 
   def onTalk (self,npc,player):
     htmltext = Quest.getNoQuestMsg(player)
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     if not st : return htmltext
 
     npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/__init__.py
index e1c8e66028..1796940546 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/__init__.py
@@ -90,7 +90,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player): 
    htmltext = Quest.getNoQuestMsg(player) 
-   st = player.getQuestState(qn) 
+   st = self.getQuestState(player, true)
    if st : 
      npcId = npc.getId() 
      id = st.getState() 
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/60_GoodWorkReward/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/60_GoodWorkReward/__init__.py
index 759f1317a0..e8ab9c5387 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/60_GoodWorkReward/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/60_GoodWorkReward/__init__.py
@@ -149,7 +149,7 @@ class Quest (JQuest) :
 
  def onTalk (self,npc,player):
    htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    if not st : return htmltext
 
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/620_FourGoblets/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/620_FourGoblets/__init__.py
index 0b25a8e19f..76e5cf9202 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/620_FourGoblets/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/620_FourGoblets/__init__.py
@@ -39,7 +39,7 @@ class Quest (JQuest) :
 
   def onTalk (Self,npc,player) :
     htmltext = Quest.getNoQuestMsg(player)
-    st = player.getQuestState(qn)
+    st = self.getQuestState(player, true)
     id = st.getState()
     if id == State.CREATED :
       st.set("cond","0")
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/65_CertifiedSoulBreaker/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/65_CertifiedSoulBreaker/__init__.py
index c40356ee6d..2c30379869 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/65_CertifiedSoulBreaker/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/65_CertifiedSoulBreaker/__init__.py
@@ -113,7 +113,7 @@ class Quest (JQuest) :
 
     def onTalk (self,npc,player):
         htmltext = Quest.getNoQuestMsg(player)
-        st = player.getQuestState(qn)
+        st = self.getQuestState(player, true)
         if not st : return htmltext
         npcId = npc.getId()
         id = st.getState()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/663_SeductiveWhispers/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/663_SeductiveWhispers/__init__.py
index bcbacac200..d244a27e52 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/663_SeductiveWhispers/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/663_SeductiveWhispers/__init__.py
@@ -152,7 +152,7 @@ class Quest (JQuest) :
    return htmltext
 
  def onTalk (self,npc,player):
-   st = player.getQuestState(qn)
+   st = self.getQuestState(player, true)
    htmltext = Quest.getNoQuestMsg(player)
    if not st : return htmltext
    npcId = npc.getId()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/66_CertifiedArbalester/__init__.py b/L2J_DataPack/dist/game/data/scripts/quests/66_CertifiedArbalester/__init__.py
index 0b139aad2e..20a81a5e91 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/66_CertifiedArbalester/__init__.py
+++ b/L2J_DataPack/dist/game/data/scripts/quests/66_CertifiedArbalester/__init__.py
@@ -96,7 +96,7 @@ class Quest (JQuest) :
 
     def onTalk (self,npc,player):
         htmltext = Quest.getNoQuestMsg(player)
-        st = player.getQuestState(qn)
+        st = self.getQuestState(player, true)
         if not st : return htmltext
         npcId = npc.getId()
         id = st.getState()
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/AbstractSagaQuest.java b/L2J_DataPack/dist/game/data/scripts/quests/AbstractSagaQuest.java
index 411fdd4139..b2fe5ef407 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/AbstractSagaQuest.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/AbstractSagaQuest.java
@@ -745,7 +745,7 @@ public abstract class AbstractSagaQuest extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st != null)
 		{
 			int npcId = npc.getId();
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00001_LettersOfLove/Q00001_LettersOfLove.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00001_LettersOfLove/Q00001_LettersOfLove.java
index eda7dcd39d..e95ff9f26c 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00001_LettersOfLove/Q00001_LettersOfLove.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00001_LettersOfLove/Q00001_LettersOfLove.java
@@ -88,7 +88,7 @@ public class Q00001_LettersOfLove extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00002_WhatWomenWant/Q00002_WhatWomenWant.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00002_WhatWomenWant/Q00002_WhatWomenWant.java
index a70588e0d9..2c618e2080 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00002_WhatWomenWant/Q00002_WhatWomenWant.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00002_WhatWomenWant/Q00002_WhatWomenWant.java
@@ -97,7 +97,7 @@ public class Q00002_WhatWomenWant extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/Q00003_WillTheSealBeBroken.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/Q00003_WillTheSealBeBroken.java
index 5ec2e5cebd..8773ae7c43 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/Q00003_WillTheSealBeBroken.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/Q00003_WillTheSealBeBroken.java
@@ -113,7 +113,7 @@ public class Q00003_WillTheSealBeBroken extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/Q00004_LongLiveThePaagrioLord.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/Q00004_LongLiveThePaagrioLord.java
index d6b676903e..00cd7b6e10 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/Q00004_LongLiveThePaagrioLord.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/Q00004_LongLiveThePaagrioLord.java
@@ -88,7 +88,7 @@ public class Q00004_LongLiveThePaagrioLord extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00005_MinersFavor/Q00005_MinersFavor.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00005_MinersFavor/Q00005_MinersFavor.java
index 2249118e50..95ed745379 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00005_MinersFavor/Q00005_MinersFavor.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00005_MinersFavor/Q00005_MinersFavor.java
@@ -96,7 +96,7 @@ public class Q00005_MinersFavor extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00006_StepIntoTheFuture/Q00006_StepIntoTheFuture.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00006_StepIntoTheFuture/Q00006_StepIntoTheFuture.java
index d2ef32a96a..9814f9e59d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00006_StepIntoTheFuture/Q00006_StepIntoTheFuture.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00006_StepIntoTheFuture/Q00006_StepIntoTheFuture.java
@@ -93,7 +93,7 @@ public class Q00006_StepIntoTheFuture extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00007_ATripBegins/Q00007_ATripBegins.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00007_ATripBegins/Q00007_ATripBegins.java
index 2e1def6d27..7e1f9ba1bb 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00007_ATripBegins/Q00007_ATripBegins.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00007_ATripBegins/Q00007_ATripBegins.java
@@ -93,7 +93,7 @@ public class Q00007_ATripBegins extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00008_AnAdventureBegins/Q00008_AnAdventureBegins.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00008_AnAdventureBegins/Q00008_AnAdventureBegins.java
index 5f1bcf8d08..7b04aeee02 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00008_AnAdventureBegins/Q00008_AnAdventureBegins.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00008_AnAdventureBegins/Q00008_AnAdventureBegins.java
@@ -93,7 +93,7 @@ public class Q00008_AnAdventureBegins extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00009_IntoTheCityOfHumans/Q00009_IntoTheCityOfHumans.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00009_IntoTheCityOfHumans/Q00009_IntoTheCityOfHumans.java
index b5a230e211..b15b9cc233 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00009_IntoTheCityOfHumans/Q00009_IntoTheCityOfHumans.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00009_IntoTheCityOfHumans/Q00009_IntoTheCityOfHumans.java
@@ -82,7 +82,7 @@ public class Q00009_IntoTheCityOfHumans extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00010_IntoTheWorld/Q00010_IntoTheWorld.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00010_IntoTheWorld/Q00010_IntoTheWorld.java
index 7632ee0a34..27f63ae501 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00010_IntoTheWorld/Q00010_IntoTheWorld.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00010_IntoTheWorld/Q00010_IntoTheWorld.java
@@ -96,7 +96,7 @@ public class Q00010_IntoTheWorld extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00011_SecretMeetingWithKetraOrcs/Q00011_SecretMeetingWithKetraOrcs.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00011_SecretMeetingWithKetraOrcs/Q00011_SecretMeetingWithKetraOrcs.java
index 084744325c..f57ef9b9ad 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00011_SecretMeetingWithKetraOrcs/Q00011_SecretMeetingWithKetraOrcs.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00011_SecretMeetingWithKetraOrcs/Q00011_SecretMeetingWithKetraOrcs.java
@@ -87,7 +87,7 @@ public class Q00011_SecretMeetingWithKetraOrcs extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00012_SecretMeetingWithVarkaSilenos/Q00012_SecretMeetingWithVarkaSilenos.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00012_SecretMeetingWithVarkaSilenos/Q00012_SecretMeetingWithVarkaSilenos.java
index 3576729538..ccc200c2d6 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00012_SecretMeetingWithVarkaSilenos/Q00012_SecretMeetingWithVarkaSilenos.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00012_SecretMeetingWithVarkaSilenos/Q00012_SecretMeetingWithVarkaSilenos.java
@@ -87,7 +87,7 @@ public class Q00012_SecretMeetingWithVarkaSilenos extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java
index 128cf22776..a9e0f48963 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java
@@ -81,7 +81,7 @@ public class Q00013_ParcelDelivery extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00014_WhereaboutsOfTheArchaeologist/Q00014_WhereaboutsOfTheArchaeologist.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00014_WhereaboutsOfTheArchaeologist/Q00014_WhereaboutsOfTheArchaeologist.java
index 6986556e82..0990d329c0 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00014_WhereaboutsOfTheArchaeologist/Q00014_WhereaboutsOfTheArchaeologist.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00014_WhereaboutsOfTheArchaeologist/Q00014_WhereaboutsOfTheArchaeologist.java
@@ -81,7 +81,7 @@ public class Q00014_WhereaboutsOfTheArchaeologist extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java
index 5c4bbdc897..ec3eaf8167 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java
@@ -79,7 +79,7 @@ public class Q00015_SweetWhispers extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00016_TheComingDarkness/Q00016_TheComingDarkness.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00016_TheComingDarkness/Q00016_TheComingDarkness.java
index fd281777cb..71dcadf1c1 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00016_TheComingDarkness/Q00016_TheComingDarkness.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00016_TheComingDarkness/Q00016_TheComingDarkness.java
@@ -89,7 +89,7 @@ public class Q00016_TheComingDarkness extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00017_LightAndDarkness/Q00017_LightAndDarkness.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00017_LightAndDarkness/Q00017_LightAndDarkness.java
index ce764c9d71..f270e35c4a 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00017_LightAndDarkness/Q00017_LightAndDarkness.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00017_LightAndDarkness/Q00017_LightAndDarkness.java
@@ -94,7 +94,7 @@ public class Q00017_LightAndDarkness extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00018_MeetingWithTheGoldenRam/Q00018_MeetingWithTheGoldenRam.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00018_MeetingWithTheGoldenRam/Q00018_MeetingWithTheGoldenRam.java
index 343c02368b..492ecfdae5 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00018_MeetingWithTheGoldenRam/Q00018_MeetingWithTheGoldenRam.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00018_MeetingWithTheGoldenRam/Q00018_MeetingWithTheGoldenRam.java
@@ -88,7 +88,7 @@ public class Q00018_MeetingWithTheGoldenRam extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00019_GoToThePastureland/Q00019_GoToThePastureland.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00019_GoToThePastureland/Q00019_GoToThePastureland.java
index e6683d4dd7..e48926ff42 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00019_GoToThePastureland/Q00019_GoToThePastureland.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00019_GoToThePastureland/Q00019_GoToThePastureland.java
@@ -90,7 +90,7 @@ public class Q00019_GoToThePastureland extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00020_BringUpWithLove/Q00020_BringUpWithLove.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00020_BringUpWithLove/Q00020_BringUpWithLove.java
index ac44c26438..835af88865 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00020_BringUpWithLove/Q00020_BringUpWithLove.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00020_BringUpWithLove/Q00020_BringUpWithLove.java
@@ -95,7 +95,7 @@ public class Q00020_BringUpWithLove extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00021_HiddenTruth/Q00021_HiddenTruth.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00021_HiddenTruth/Q00021_HiddenTruth.java
index 8d5e829bf9..05444fcc85 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00021_HiddenTruth/Q00021_HiddenTruth.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00021_HiddenTruth/Q00021_HiddenTruth.java
@@ -216,7 +216,7 @@ public class Q00021_HiddenTruth extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00024_InhabitantsOfTheForestOfTheDead/Q00024_InhabitantsOfTheForestOfTheDead.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00024_InhabitantsOfTheForestOfTheDead/Q00024_InhabitantsOfTheForestOfTheDead.java
index 96a9419930..25480310bf 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00024_InhabitantsOfTheForestOfTheDead/Q00024_InhabitantsOfTheForestOfTheDead.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00024_InhabitantsOfTheForestOfTheDead/Q00024_InhabitantsOfTheForestOfTheDead.java
@@ -220,7 +220,7 @@ public class Q00024_InhabitantsOfTheForestOfTheDead extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00026_TiredOfWaiting/Q00026_TiredOfWaiting.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00026_TiredOfWaiting/Q00026_TiredOfWaiting.java
index 845ac7fdc4..c993f7b765 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00026_TiredOfWaiting/Q00026_TiredOfWaiting.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00026_TiredOfWaiting/Q00026_TiredOfWaiting.java
@@ -111,7 +111,7 @@ public final class Q00026_TiredOfWaiting extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00027_ChestCaughtWithABaitOfWind/Q00027_ChestCaughtWithABaitOfWind.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00027_ChestCaughtWithABaitOfWind/Q00027_ChestCaughtWithABaitOfWind.java
index 19d47918e3..9478128004 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00027_ChestCaughtWithABaitOfWind/Q00027_ChestCaughtWithABaitOfWind.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00027_ChestCaughtWithABaitOfWind/Q00027_ChestCaughtWithABaitOfWind.java
@@ -90,7 +90,7 @@ public class Q00027_ChestCaughtWithABaitOfWind extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00028_ChestCaughtWithABaitOfIcyAir/Q00028_ChestCaughtWithABaitOfIcyAir.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00028_ChestCaughtWithABaitOfIcyAir/Q00028_ChestCaughtWithABaitOfIcyAir.java
index ecd8089c81..2d4f12bafa 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00028_ChestCaughtWithABaitOfIcyAir/Q00028_ChestCaughtWithABaitOfIcyAir.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00028_ChestCaughtWithABaitOfIcyAir/Q00028_ChestCaughtWithABaitOfIcyAir.java
@@ -90,7 +90,7 @@ public class Q00028_ChestCaughtWithABaitOfIcyAir extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00029_ChestCaughtWithABaitOfEarth/Q00029_ChestCaughtWithABaitOfEarth.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00029_ChestCaughtWithABaitOfEarth/Q00029_ChestCaughtWithABaitOfEarth.java
index 3e9387825a..d18a5beb45 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00029_ChestCaughtWithABaitOfEarth/Q00029_ChestCaughtWithABaitOfEarth.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00029_ChestCaughtWithABaitOfEarth/Q00029_ChestCaughtWithABaitOfEarth.java
@@ -90,7 +90,7 @@ public class Q00029_ChestCaughtWithABaitOfEarth extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00030_ChestCaughtWithABaitOfFire/Q00030_ChestCaughtWithABaitOfFire.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00030_ChestCaughtWithABaitOfFire/Q00030_ChestCaughtWithABaitOfFire.java
index 2faa236254..715420833c 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00030_ChestCaughtWithABaitOfFire/Q00030_ChestCaughtWithABaitOfFire.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00030_ChestCaughtWithABaitOfFire/Q00030_ChestCaughtWithABaitOfFire.java
@@ -89,7 +89,7 @@ public class Q00030_ChestCaughtWithABaitOfFire extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00031_SecretBuriedInTheSwamp/Q00031_SecretBuriedInTheSwamp.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00031_SecretBuriedInTheSwamp/Q00031_SecretBuriedInTheSwamp.java
index 6932273790..ff2ed5927e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00031_SecretBuriedInTheSwamp/Q00031_SecretBuriedInTheSwamp.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00031_SecretBuriedInTheSwamp/Q00031_SecretBuriedInTheSwamp.java
@@ -127,7 +127,7 @@ public final class Q00031_SecretBuriedInTheSwamp extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/Q00033_MakeAPairOfDressShoes.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/Q00033_MakeAPairOfDressShoes.java
index 78065daa10..c19169a245 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/Q00033_MakeAPairOfDressShoes.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/Q00033_MakeAPairOfDressShoes.java
@@ -111,7 +111,7 @@ public class Q00033_MakeAPairOfDressShoes extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/Q00034_InSearchOfCloth.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/Q00034_InSearchOfCloth.java
index e2d2397a36..f4f80a5887 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/Q00034_InSearchOfCloth.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/Q00034_InSearchOfCloth.java
@@ -140,7 +140,7 @@ public class Q00034_InSearchOfCloth extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00035_FindGlitteringJewelry/Q00035_FindGlitteringJewelry.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00035_FindGlitteringJewelry/Q00035_FindGlitteringJewelry.java
index c7fd5a6e05..ad535f7a71 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00035_FindGlitteringJewelry/Q00035_FindGlitteringJewelry.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00035_FindGlitteringJewelry/Q00035_FindGlitteringJewelry.java
@@ -132,7 +132,7 @@ public class Q00035_FindGlitteringJewelry extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00036_MakeASewingKit/Q00036_MakeASewingKit.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00036_MakeASewingKit/Q00036_MakeASewingKit.java
index f348e013d4..c65c0c0d7f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00036_MakeASewingKit/Q00036_MakeASewingKit.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00036_MakeASewingKit/Q00036_MakeASewingKit.java
@@ -124,7 +124,7 @@ public class Q00036_MakeASewingKit extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00037_MakeFormalWear/Q00037_MakeFormalWear.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00037_MakeFormalWear/Q00037_MakeFormalWear.java
index 3335495c70..3d632d33c3 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00037_MakeFormalWear/Q00037_MakeFormalWear.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00037_MakeFormalWear/Q00037_MakeFormalWear.java
@@ -128,7 +128,7 @@ public class Q00037_MakeFormalWear extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java
index 30a9ea7d76..df6606e7bc 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java
@@ -134,7 +134,7 @@ public final class Q00040_ASpecialOrder extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java
index bdd3116b0c..326bba57f1 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java
@@ -134,7 +134,7 @@ public class Q00042_HelpTheUncle extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java
index aabdc03e8f..b8a94c7972 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java
@@ -134,7 +134,7 @@ public class Q00043_HelpTheSister extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java
index 159798cf9d..e0d11e754c 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java
@@ -135,7 +135,7 @@ public class Q00044_HelpTheSon extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00045_ToTalkingIsland/Q00045_ToTalkingIsland.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00045_ToTalkingIsland/Q00045_ToTalkingIsland.java
index 697c94a9fc..2d08ec5831 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00045_ToTalkingIsland/Q00045_ToTalkingIsland.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00045_ToTalkingIsland/Q00045_ToTalkingIsland.java
@@ -188,7 +188,7 @@ public final class Q00045_ToTalkingIsland extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
-		QuestState st = talker.getQuestState(getName());
+		QuestState st = getQuestState(talker, true);
 		String htmltext = getNoQuestMsg(talker);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00046_OnceMoreInTheArmsOfTheMotherTree/Q00046_OnceMoreInTheArmsOfTheMotherTree.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00046_OnceMoreInTheArmsOfTheMotherTree/Q00046_OnceMoreInTheArmsOfTheMotherTree.java
index 6da3a79e85..2005608e1d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00046_OnceMoreInTheArmsOfTheMotherTree/Q00046_OnceMoreInTheArmsOfTheMotherTree.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00046_OnceMoreInTheArmsOfTheMotherTree/Q00046_OnceMoreInTheArmsOfTheMotherTree.java
@@ -188,7 +188,7 @@ public final class Q00046_OnceMoreInTheArmsOfTheMotherTree extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
-		QuestState st = talker.getQuestState(getName());
+		QuestState st = getQuestState(talker, true);
 		String htmltext = getNoQuestMsg(talker);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00047_IntoTheDarkElvenForest/Q00047_IntoTheDarkElvenForest.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00047_IntoTheDarkElvenForest/Q00047_IntoTheDarkElvenForest.java
index 9a882697dd..e0ec006bc8 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00047_IntoTheDarkElvenForest/Q00047_IntoTheDarkElvenForest.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00047_IntoTheDarkElvenForest/Q00047_IntoTheDarkElvenForest.java
@@ -188,7 +188,7 @@ public final class Q00047_IntoTheDarkElvenForest extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
-		QuestState st = talker.getQuestState(getName());
+		QuestState st = getQuestState(talker, true);
 		String htmltext = getNoQuestMsg(talker);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00048_ToTheImmortalPlateau/Q00048_ToTheImmortalPlateau.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00048_ToTheImmortalPlateau/Q00048_ToTheImmortalPlateau.java
index ce2f1dd82e..64c080c7f1 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00048_ToTheImmortalPlateau/Q00048_ToTheImmortalPlateau.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00048_ToTheImmortalPlateau/Q00048_ToTheImmortalPlateau.java
@@ -188,7 +188,7 @@ public final class Q00048_ToTheImmortalPlateau extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
-		QuestState st = talker.getQuestState(getName());
+		QuestState st = getQuestState(talker, true);
 		String htmltext = getNoQuestMsg(talker);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00049_TheRoadHome/Q00049_TheRoadHome.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00049_TheRoadHome/Q00049_TheRoadHome.java
index 7e9a5117bc..e5bf8b8585 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00049_TheRoadHome/Q00049_TheRoadHome.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00049_TheRoadHome/Q00049_TheRoadHome.java
@@ -188,7 +188,7 @@ public final class Q00049_TheRoadHome extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
-		QuestState st = talker.getQuestState(getName());
+		QuestState st = getQuestState(talker, true);
 		String htmltext = getNoQuestMsg(talker);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00050_LanoscosSpecialBait/Q00050_LanoscosSpecialBait.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00050_LanoscosSpecialBait/Q00050_LanoscosSpecialBait.java
index cea6a0e123..31be123c75 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00050_LanoscosSpecialBait/Q00050_LanoscosSpecialBait.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00050_LanoscosSpecialBait/Q00050_LanoscosSpecialBait.java
@@ -111,7 +111,7 @@ public class Q00050_LanoscosSpecialBait extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00051_OFullesSpecialBait/Q00051_OFullesSpecialBait.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00051_OFullesSpecialBait/Q00051_OFullesSpecialBait.java
index bfaf467b47..eab808d6da 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00051_OFullesSpecialBait/Q00051_OFullesSpecialBait.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00051_OFullesSpecialBait/Q00051_OFullesSpecialBait.java
@@ -107,7 +107,7 @@ public class Q00051_OFullesSpecialBait extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00052_WilliesSpecialBait/Q00052_WilliesSpecialBait.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00052_WilliesSpecialBait/Q00052_WilliesSpecialBait.java
index 18a011ba5c..978042b3aa 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00052_WilliesSpecialBait/Q00052_WilliesSpecialBait.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00052_WilliesSpecialBait/Q00052_WilliesSpecialBait.java
@@ -107,7 +107,7 @@ public class Q00052_WilliesSpecialBait extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00053_LinnaeusSpecialBait/Q00053_LinnaeusSpecialBait.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00053_LinnaeusSpecialBait/Q00053_LinnaeusSpecialBait.java
index c74ac9fe77..511f497be4 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00053_LinnaeusSpecialBait/Q00053_LinnaeusSpecialBait.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00053_LinnaeusSpecialBait/Q00053_LinnaeusSpecialBait.java
@@ -119,7 +119,7 @@ public class Q00053_LinnaeusSpecialBait extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/Q00101_SwordOfSolidarity.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/Q00101_SwordOfSolidarity.java
index 7f01ab1c91..93d688cec2 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/Q00101_SwordOfSolidarity.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/Q00101_SwordOfSolidarity.java
@@ -20,8 +20,8 @@ package quests.Q00101_SwordOfSolidarity;
 
 import quests.Q00281_HeadForTheHills.Q00281_HeadForTheHills;
 
-import com.l2jserver.gameserver.enums.Race;
 import com.l2jserver.gameserver.enums.QuestSound;
+import com.l2jserver.gameserver.enums.Race;
 import com.l2jserver.gameserver.model.actor.L2Npc;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 import com.l2jserver.gameserver.model.holders.ItemHolder;
@@ -165,7 +165,7 @@ public class Q00101_SwordOfSolidarity extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/Q00102_SeaOfSporesFever.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/Q00102_SeaOfSporesFever.java
index 2fe6137c34..b070fcbd13 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/Q00102_SeaOfSporesFever.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/Q00102_SeaOfSporesFever.java
@@ -21,8 +21,8 @@ package quests.Q00102_SeaOfSporesFever;
 import java.util.HashMap;
 import java.util.Map;
 
-import com.l2jserver.gameserver.enums.Race;
 import com.l2jserver.gameserver.enums.QuestSound;
+import com.l2jserver.gameserver.enums.Race;
 import com.l2jserver.gameserver.model.actor.L2Npc;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 import com.l2jserver.gameserver.model.quest.Quest;
@@ -121,7 +121,7 @@ public class Q00102_SeaOfSporesFever extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/Q00104_SpiritOfMirrors.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/Q00104_SpiritOfMirrors.java
index 2efea04a59..76f5dd593d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/Q00104_SpiritOfMirrors.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/Q00104_SpiritOfMirrors.java
@@ -116,7 +116,7 @@ public final class Q00104_SpiritOfMirrors extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/Q00105_SkirmishWithOrcs.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/Q00105_SkirmishWithOrcs.java
index 1d6ae21672..e91201194d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/Q00105_SkirmishWithOrcs.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/Q00105_SkirmishWithOrcs.java
@@ -156,7 +156,7 @@ public final class Q00105_SkirmishWithOrcs extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
-		final QuestState st = talker.getQuestState(getName());
+		final QuestState st = getQuestState(talker, true);
 		String htmltext = getNoQuestMsg(talker);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00106_ForgottenTruth/Q00106_ForgottenTruth.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00106_ForgottenTruth/Q00106_ForgottenTruth.java
index 2712e2362e..d976527cfb 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00106_ForgottenTruth/Q00106_ForgottenTruth.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00106_ForgottenTruth/Q00106_ForgottenTruth.java
@@ -20,8 +20,8 @@ package quests.Q00106_ForgottenTruth;
 
 import quests.Q00281_HeadForTheHills.Q00281_HeadForTheHills;
 
-import com.l2jserver.gameserver.enums.Race;
 import com.l2jserver.gameserver.enums.QuestSound;
+import com.l2jserver.gameserver.enums.Race;
 import com.l2jserver.gameserver.model.actor.L2Npc;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 import com.l2jserver.gameserver.model.quest.Quest;
@@ -115,7 +115,7 @@ public final class Q00106_ForgottenTruth extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
-		final QuestState st = talker.getQuestState(getName());
+		final QuestState st = getQuestState(talker, true);
 		String htmltext = getNoQuestMsg(talker);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/Q00108_JumbleTumbleDiamondFuss.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/Q00108_JumbleTumbleDiamondFuss.java
index 9c10b15f68..9e5d8acb4a 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/Q00108_JumbleTumbleDiamondFuss.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/Q00108_JumbleTumbleDiamondFuss.java
@@ -23,8 +23,8 @@ import java.util.Map;
 
 import quests.Q00281_HeadForTheHills.Q00281_HeadForTheHills;
 
-import com.l2jserver.gameserver.enums.Race;
 import com.l2jserver.gameserver.enums.QuestSound;
+import com.l2jserver.gameserver.enums.Race;
 import com.l2jserver.gameserver.model.actor.L2Npc;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 import com.l2jserver.gameserver.model.holders.ItemHolder;
@@ -146,7 +146,7 @@ public final class Q00108_JumbleTumbleDiamondFuss extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
-		final QuestState st = talker.getQuestState(getName());
+		final QuestState st = getQuestState(talker, true);
 		String htmltext = getNoQuestMsg(talker);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00109_InSearchOfTheNest/Q00109_InSearchOfTheNest.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00109_InSearchOfTheNest/Q00109_InSearchOfTheNest.java
index a9545a7c79..5e3d557a93 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00109_InSearchOfTheNest/Q00109_InSearchOfTheNest.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00109_InSearchOfTheNest/Q00109_InSearchOfTheNest.java
@@ -80,7 +80,7 @@ public class Q00109_InSearchOfTheNest extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00110_ToThePrimevalIsle/Q00110_ToThePrimevalIsle.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00110_ToThePrimevalIsle/Q00110_ToThePrimevalIsle.java
index 6dd294a4b4..a55e84a1c6 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00110_ToThePrimevalIsle/Q00110_ToThePrimevalIsle.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00110_ToThePrimevalIsle/Q00110_ToThePrimevalIsle.java
@@ -73,7 +73,7 @@ public class Q00110_ToThePrimevalIsle extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00112_WalkOfFate/Q00112_WalkOfFate.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00112_WalkOfFate/Q00112_WalkOfFate.java
index 42c107ad72..24b6747b4c 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00112_WalkOfFate/Q00112_WalkOfFate.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00112_WalkOfFate/Q00112_WalkOfFate.java
@@ -78,7 +78,7 @@ public class Q00112_WalkOfFate extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00113_StatusOfTheBeaconTower/Q00113_StatusOfTheBeaconTower.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00113_StatusOfTheBeaconTower/Q00113_StatusOfTheBeaconTower.java
index bd52eb5643..9feeb7a258 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00113_StatusOfTheBeaconTower/Q00113_StatusOfTheBeaconTower.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00113_StatusOfTheBeaconTower/Q00113_StatusOfTheBeaconTower.java
@@ -87,7 +87,7 @@ public class Q00113_StatusOfTheBeaconTower extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java
index 4973c15179..daaa758f05 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java
@@ -358,7 +358,7 @@ public class Q00114_ResurrectionOfAnOldManager extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00115_TheOtherSideOfTruth/Q00115_TheOtherSideOfTruth.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00115_TheOtherSideOfTruth/Q00115_TheOtherSideOfTruth.java
index af9fa862f2..b8ce2705c3 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00115_TheOtherSideOfTruth/Q00115_TheOtherSideOfTruth.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00115_TheOtherSideOfTruth/Q00115_TheOtherSideOfTruth.java
@@ -387,7 +387,7 @@ public class Q00115_TheOtherSideOfTruth extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00119_LastImperialPrince/Q00119_LastImperialPrince.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00119_LastImperialPrince/Q00119_LastImperialPrince.java
index de041b2536..84098d10e7 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00119_LastImperialPrince/Q00119_LastImperialPrince.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00119_LastImperialPrince/Q00119_LastImperialPrince.java
@@ -102,7 +102,7 @@ public class Q00119_LastImperialPrince extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00121_PavelTheGiant/Q00121_PavelTheGiant.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00121_PavelTheGiant/Q00121_PavelTheGiant.java
index bf104f0b0b..5699df1531 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00121_PavelTheGiant/Q00121_PavelTheGiant.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00121_PavelTheGiant/Q00121_PavelTheGiant.java
@@ -68,7 +68,7 @@ public class Q00121_PavelTheGiant extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java
index 63e00f0d06..d204ae1e40 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java
@@ -69,7 +69,7 @@ public class Q00122_OminousNews extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00124_MeetingTheElroki/Q00124_MeetingTheElroki.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00124_MeetingTheElroki/Q00124_MeetingTheElroki.java
index 662ee94d6d..cd71a47eec 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00124_MeetingTheElroki/Q00124_MeetingTheElroki.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00124_MeetingTheElroki/Q00124_MeetingTheElroki.java
@@ -100,7 +100,7 @@ public class Q00124_MeetingTheElroki extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java
index 2d41c9a13a..d3fb7f56ff 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java
@@ -292,7 +292,7 @@ public class Q00125_TheNameOfEvil1 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java
index cc496067aa..0f4ad38a01 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java
@@ -337,7 +337,7 @@ public class Q00126_TheNameOfEvil2 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00128_PailakaSongOfIceAndFire/Q00128_PailakaSongOfIceAndFire.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00128_PailakaSongOfIceAndFire/Q00128_PailakaSongOfIceAndFire.java
index 5584636665..f322a203b4 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00128_PailakaSongOfIceAndFire/Q00128_PailakaSongOfIceAndFire.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00128_PailakaSongOfIceAndFire/Q00128_PailakaSongOfIceAndFire.java
@@ -183,7 +183,7 @@ public final class Q00128_PailakaSongOfIceAndFire extends Quest
 	public final String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00130_PathToHellbound/Q00130_PathToHellbound.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00130_PathToHellbound/Q00130_PathToHellbound.java
index 280815d6e5..b58f68c274 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00130_PathToHellbound/Q00130_PathToHellbound.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00130_PathToHellbound/Q00130_PathToHellbound.java
@@ -122,7 +122,7 @@ public class Q00130_PathToHellbound extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00131_BirdInACage/Q00131_BirdInACage.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00131_BirdInACage/Q00131_BirdInACage.java
index 6cf0b1acd1..87a136a178 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00131_BirdInACage/Q00131_BirdInACage.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00131_BirdInACage/Q00131_BirdInACage.java
@@ -166,7 +166,7 @@ public class Q00131_BirdInACage extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00132_MatrasCuriosity/Q00132_MatrasCuriosity.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00132_MatrasCuriosity/Q00132_MatrasCuriosity.java
index 2787929836..68bdc72151 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00132_MatrasCuriosity/Q00132_MatrasCuriosity.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00132_MatrasCuriosity/Q00132_MatrasCuriosity.java
@@ -142,7 +142,7 @@ public final class Q00132_MatrasCuriosity extends Quest
 	public final String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00133_ThatsBloodyHot/Q00133_ThatsBloodyHot.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00133_ThatsBloodyHot/Q00133_ThatsBloodyHot.java
index 625eeac6cf..6bc236dd89 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00133_ThatsBloodyHot/Q00133_ThatsBloodyHot.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00133_ThatsBloodyHot/Q00133_ThatsBloodyHot.java
@@ -152,7 +152,7 @@ public class Q00133_ThatsBloodyHot extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00134_TempleMissionary/Q00134_TempleMissionary.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00134_TempleMissionary/Q00134_TempleMissionary.java
index fe59f45abc..88f50740da 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00134_TempleMissionary/Q00134_TempleMissionary.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00134_TempleMissionary/Q00134_TempleMissionary.java
@@ -162,7 +162,7 @@ public class Q00134_TempleMissionary extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00135_TempleExecutor/Q00135_TempleExecutor.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00135_TempleExecutor/Q00135_TempleExecutor.java
index 25e88fbf2e..61fe36fee9 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00135_TempleExecutor/Q00135_TempleExecutor.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00135_TempleExecutor/Q00135_TempleExecutor.java
@@ -152,7 +152,7 @@ public class Q00135_TempleExecutor extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00136_MoreThanMeetsTheEye/Q00136_MoreThanMeetsTheEye.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00136_MoreThanMeetsTheEye/Q00136_MoreThanMeetsTheEye.java
index 5a9a535b08..406ac56ef3 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00136_MoreThanMeetsTheEye/Q00136_MoreThanMeetsTheEye.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00136_MoreThanMeetsTheEye/Q00136_MoreThanMeetsTheEye.java
@@ -171,7 +171,7 @@ public class Q00136_MoreThanMeetsTheEye extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00137_TempleChampionPart1/Q00137_TempleChampionPart1.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00137_TempleChampionPart1/Q00137_TempleChampionPart1.java
index f85a609e08..a398cc1d61 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00137_TempleChampionPart1/Q00137_TempleChampionPart1.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00137_TempleChampionPart1/Q00137_TempleChampionPart1.java
@@ -118,7 +118,7 @@ public class Q00137_TempleChampionPart1 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00138_TempleChampionPart2/Q00138_TempleChampionPart2.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00138_TempleChampionPart2/Q00138_TempleChampionPart2.java
index b4be96901f..b660422674 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00138_TempleChampionPart2/Q00138_TempleChampionPart2.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00138_TempleChampionPart2/Q00138_TempleChampionPart2.java
@@ -139,7 +139,7 @@ public class Q00138_TempleChampionPart2 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00139_ShadowFoxPart1/Q00139_ShadowFoxPart1.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00139_ShadowFoxPart1/Q00139_ShadowFoxPart1.java
index 07ce042a8e..0bd133e7d0 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00139_ShadowFoxPart1/Q00139_ShadowFoxPart1.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00139_ShadowFoxPart1/Q00139_ShadowFoxPart1.java
@@ -144,7 +144,7 @@ public class Q00139_ShadowFoxPart1 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00140_ShadowFoxPart2/Q00140_ShadowFoxPart2.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00140_ShadowFoxPart2/Q00140_ShadowFoxPart2.java
index 678819cf32..e5b9238698 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00140_ShadowFoxPart2/Q00140_ShadowFoxPart2.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00140_ShadowFoxPart2/Q00140_ShadowFoxPart2.java
@@ -154,7 +154,7 @@ public class Q00140_ShadowFoxPart2 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java
index 3a093f5ad2..0f6faf40e6 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java
@@ -149,7 +149,7 @@ public class Q00141_ShadowFoxPart3 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00142_FallenAngelRequestOfDawn/Q00142_FallenAngelRequestOfDawn.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00142_FallenAngelRequestOfDawn/Q00142_FallenAngelRequestOfDawn.java
index 288912a543..7ca530816f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00142_FallenAngelRequestOfDawn/Q00142_FallenAngelRequestOfDawn.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00142_FallenAngelRequestOfDawn/Q00142_FallenAngelRequestOfDawn.java
@@ -174,7 +174,7 @@ public class Q00142_FallenAngelRequestOfDawn extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00143_FallenAngelRequestOfDusk/Q00143_FallenAngelRequestOfDusk.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00143_FallenAngelRequestOfDusk/Q00143_FallenAngelRequestOfDusk.java
index 0828eac168..6bbc351dc9 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00143_FallenAngelRequestOfDusk/Q00143_FallenAngelRequestOfDusk.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00143_FallenAngelRequestOfDusk/Q00143_FallenAngelRequestOfDusk.java
@@ -144,7 +144,7 @@ public class Q00143_FallenAngelRequestOfDusk extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00146_TheZeroHour/Q00146_TheZeroHour.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00146_TheZeroHour/Q00146_TheZeroHour.java
index df310c3e8a..403f928a30 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00146_TheZeroHour/Q00146_TheZeroHour.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00146_TheZeroHour/Q00146_TheZeroHour.java
@@ -84,7 +84,7 @@ public class Q00146_TheZeroHour extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00147_PathtoBecominganEliteMercenary/Q00147_PathtoBecominganEliteMercenary.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00147_PathtoBecominganEliteMercenary/Q00147_PathtoBecominganEliteMercenary.java
index b29586b724..92dba41cd4 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00147_PathtoBecominganEliteMercenary/Q00147_PathtoBecominganEliteMercenary.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00147_PathtoBecominganEliteMercenary/Q00147_PathtoBecominganEliteMercenary.java
@@ -85,7 +85,7 @@ public class Q00147_PathtoBecominganEliteMercenary extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00148_PathtoBecominganExaltedMercenary/Q00148_PathtoBecominganExaltedMercenary.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00148_PathtoBecominganExaltedMercenary/Q00148_PathtoBecominganExaltedMercenary.java
index 82d6340fb3..b15af6b15d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00148_PathtoBecominganExaltedMercenary/Q00148_PathtoBecominganExaltedMercenary.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00148_PathtoBecominganExaltedMercenary/Q00148_PathtoBecominganExaltedMercenary.java
@@ -82,7 +82,7 @@ public class Q00148_PathtoBecominganExaltedMercenary extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00151_CureForFever/Q00151_CureForFever.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00151_CureForFever/Q00151_CureForFever.java
index d64cef8b14..7fb2bea828 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00151_CureForFever/Q00151_CureForFever.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00151_CureForFever/Q00151_CureForFever.java
@@ -86,7 +86,7 @@ public class Q00151_CureForFever extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/Q00152_ShardsOfGolem.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/Q00152_ShardsOfGolem.java
index ac4e0090cf..84bb60d060 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/Q00152_ShardsOfGolem.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/Q00152_ShardsOfGolem.java
@@ -108,7 +108,7 @@ public class Q00152_ShardsOfGolem extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00153_DeliverGoods/Q00153_DeliverGoods.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00153_DeliverGoods/Q00153_DeliverGoods.java
index 76d0c48204..0f530e5d7c 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00153_DeliverGoods/Q00153_DeliverGoods.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00153_DeliverGoods/Q00153_DeliverGoods.java
@@ -79,7 +79,7 @@ public class Q00153_DeliverGoods extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st != null)
 		{
 			if (npc.getId() == ARNOLD_ID)
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00155_FindSirWindawood/Q00155_FindSirWindawood.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00155_FindSirWindawood/Q00155_FindSirWindawood.java
index 180f8821ba..f437305f70 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00155_FindSirWindawood/Q00155_FindSirWindawood.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00155_FindSirWindawood/Q00155_FindSirWindawood.java
@@ -64,7 +64,7 @@ public class Q00155_FindSirWindawood extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00156_MillenniumLove/Q00156_MillenniumLove.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00156_MillenniumLove/Q00156_MillenniumLove.java
index bd104ab5b6..650e9d5755 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00156_MillenniumLove/Q00156_MillenniumLove.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00156_MillenniumLove/Q00156_MillenniumLove.java
@@ -106,7 +106,7 @@ public class Q00156_MillenniumLove extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/Q00157_RecoverSmuggledGoods.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/Q00157_RecoverSmuggledGoods.java
index 9993e90308..9d9c3d0d46 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/Q00157_RecoverSmuggledGoods.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/Q00157_RecoverSmuggledGoods.java
@@ -97,7 +97,7 @@ public class Q00157_RecoverSmuggledGoods extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00158_SeedOfEvil/Q00158_SeedOfEvil.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00158_SeedOfEvil/Q00158_SeedOfEvil.java
index 8c4b69e7e1..a1e4f4a6c8 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00158_SeedOfEvil/Q00158_SeedOfEvil.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00158_SeedOfEvil/Q00158_SeedOfEvil.java
@@ -93,7 +93,7 @@ public class Q00158_SeedOfEvil extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/Q00159_ProtectTheWaterSource.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/Q00159_ProtectTheWaterSource.java
index 3864cdd360..1b856b4570 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/Q00159_ProtectTheWaterSource.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/Q00159_ProtectTheWaterSource.java
@@ -107,7 +107,7 @@ public class Q00159_ProtectTheWaterSource extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/Q00161_FruitOfTheMotherTree.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/Q00161_FruitOfTheMotherTree.java
index 368f223d7e..e578531c2c 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/Q00161_FruitOfTheMotherTree.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/Q00161_FruitOfTheMotherTree.java
@@ -78,7 +78,7 @@ public class Q00161_FruitOfTheMotherTree extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/Q00162_CurseOfTheUndergroundFortress.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/Q00162_CurseOfTheUndergroundFortress.java
index cb9c9dc559..1e6163aea5 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/Q00162_CurseOfTheUndergroundFortress.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/Q00162_CurseOfTheUndergroundFortress.java
@@ -143,7 +143,7 @@ public class Q00162_CurseOfTheUndergroundFortress extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/Q00163_LegacyOfThePoet.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/Q00163_LegacyOfThePoet.java
index 67e846ee36..23b9f02f74 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/Q00163_LegacyOfThePoet.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/Q00163_LegacyOfThePoet.java
@@ -144,7 +144,7 @@ public class Q00163_LegacyOfThePoet extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00164_BloodFiend/Q00164_BloodFiend.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00164_BloodFiend/Q00164_BloodFiend.java
index fbe15c7393..068d120632 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00164_BloodFiend/Q00164_BloodFiend.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00164_BloodFiend/Q00164_BloodFiend.java
@@ -80,7 +80,7 @@ public class Q00164_BloodFiend extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00165_ShilensHunt/Q00165_ShilensHunt.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00165_ShilensHunt/Q00165_ShilensHunt.java
index 65c79f2fab..ede2442767 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00165_ShilensHunt/Q00165_ShilensHunt.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00165_ShilensHunt/Q00165_ShilensHunt.java
@@ -96,7 +96,7 @@ public class Q00165_ShilensHunt extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00166_MassOfDarkness/Q00166_MassOfDarkness.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00166_MassOfDarkness/Q00166_MassOfDarkness.java
index 72c8b44649..142849e4f9 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00166_MassOfDarkness/Q00166_MassOfDarkness.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00166_MassOfDarkness/Q00166_MassOfDarkness.java
@@ -79,7 +79,7 @@ public class Q00166_MassOfDarkness extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00167_DwarvenKinship/Q00167_DwarvenKinship.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00167_DwarvenKinship/Q00167_DwarvenKinship.java
index 5697a839a7..4171546f8b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00167_DwarvenKinship/Q00167_DwarvenKinship.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00167_DwarvenKinship/Q00167_DwarvenKinship.java
@@ -109,7 +109,7 @@ public class Q00167_DwarvenKinship extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00168_DeliverSupplies/Q00168_DeliverSupplies.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00168_DeliverSupplies/Q00168_DeliverSupplies.java
index 71cde17866..4aa81cebe6 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00168_DeliverSupplies/Q00168_DeliverSupplies.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00168_DeliverSupplies/Q00168_DeliverSupplies.java
@@ -78,7 +78,7 @@ public class Q00168_DeliverSupplies extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/Q00169_OffspringOfNightmares.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/Q00169_OffspringOfNightmares.java
index 3a29ba505b..3b442e0ea8 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/Q00169_OffspringOfNightmares.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/Q00169_OffspringOfNightmares.java
@@ -110,7 +110,7 @@ public class Q00169_OffspringOfNightmares extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00170_DangerousSeduction/Q00170_DangerousSeduction.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00170_DangerousSeduction/Q00170_DangerousSeduction.java
index 0fdcd43f1c..3365067c95 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00170_DangerousSeduction/Q00170_DangerousSeduction.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00170_DangerousSeduction/Q00170_DangerousSeduction.java
@@ -90,7 +90,7 @@ public class Q00170_DangerousSeduction extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00172_NewHorizons/Q00172_NewHorizons.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00172_NewHorizons/Q00172_NewHorizons.java
index 4c583f4e3d..f88190631c 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00172_NewHorizons/Q00172_NewHorizons.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00172_NewHorizons/Q00172_NewHorizons.java
@@ -80,7 +80,7 @@ public class Q00172_NewHorizons extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00173_ToTheIsleOfSouls/Q00173_ToTheIsleOfSouls.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00173_ToTheIsleOfSouls/Q00173_ToTheIsleOfSouls.java
index dd2b378456..0bcf0ab787 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00173_ToTheIsleOfSouls/Q00173_ToTheIsleOfSouls.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00173_ToTheIsleOfSouls/Q00173_ToTheIsleOfSouls.java
@@ -89,7 +89,7 @@ public class Q00173_ToTheIsleOfSouls extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00174_SupplyCheck/Q00174_SupplyCheck.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00174_SupplyCheck/Q00174_SupplyCheck.java
index 297f1ff114..a8c2658094 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00174_SupplyCheck/Q00174_SupplyCheck.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00174_SupplyCheck/Q00174_SupplyCheck.java
@@ -81,7 +81,7 @@ public class Q00174_SupplyCheck extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00176_StepsForHonor/Q00176_StepsForHonor.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00176_StepsForHonor/Q00176_StepsForHonor.java
index 0daa8d430c..db76628dac 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00176_StepsForHonor/Q00176_StepsForHonor.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00176_StepsForHonor/Q00176_StepsForHonor.java
@@ -61,7 +61,7 @@ public class Q00176_StepsForHonor extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00179_IntoTheLargeCavern/Q00179_IntoTheLargeCavern.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00179_IntoTheLargeCavern/Q00179_IntoTheLargeCavern.java
index 7370c0286f..ceef8ce604 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00179_IntoTheLargeCavern/Q00179_IntoTheLargeCavern.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00179_IntoTheLargeCavern/Q00179_IntoTheLargeCavern.java
@@ -83,7 +83,7 @@ public class Q00179_IntoTheLargeCavern extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00182_NewRecruits/Q00182_NewRecruits.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00182_NewRecruits/Q00182_NewRecruits.java
index bbf02562ce..8eaea01e3e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00182_NewRecruits/Q00182_NewRecruits.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00182_NewRecruits/Q00182_NewRecruits.java
@@ -80,7 +80,7 @@ public class Q00182_NewRecruits extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00183_RelicExploration/Q00183_RelicExploration.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00183_RelicExploration/Q00183_RelicExploration.java
index f80df010ae..715a82aaf5 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00183_RelicExploration/Q00183_RelicExploration.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00183_RelicExploration/Q00183_RelicExploration.java
@@ -117,7 +117,7 @@ public final class Q00183_RelicExploration extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00186_ContractExecution/Q00186_ContractExecution.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00186_ContractExecution/Q00186_ContractExecution.java
index 0f1be5b59c..505c1a2e71 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00186_ContractExecution/Q00186_ContractExecution.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00186_ContractExecution/Q00186_ContractExecution.java
@@ -153,7 +153,7 @@ public final class Q00186_ContractExecution extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00187_NikolasHeart/Q00187_NikolasHeart.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00187_NikolasHeart/Q00187_NikolasHeart.java
index b1faecd5bd..707f46783e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00187_NikolasHeart/Q00187_NikolasHeart.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00187_NikolasHeart/Q00187_NikolasHeart.java
@@ -108,7 +108,7 @@ public final class Q00187_NikolasHeart extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00188_SealRemoval/Q00188_SealRemoval.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00188_SealRemoval/Q00188_SealRemoval.java
index e9edaf76b0..e71d658bbe 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00188_SealRemoval/Q00188_SealRemoval.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00188_SealRemoval/Q00188_SealRemoval.java
@@ -111,7 +111,7 @@ public final class Q00188_SealRemoval extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00189_ContractCompletion/Q00189_ContractCompletion.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00189_ContractCompletion/Q00189_ContractCompletion.java
index 0fbff40b6a..aea7f3c631 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00189_ContractCompletion/Q00189_ContractCompletion.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00189_ContractCompletion/Q00189_ContractCompletion.java
@@ -118,7 +118,7 @@ public final class Q00189_ContractCompletion extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00190_LostDream/Q00190_LostDream.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00190_LostDream/Q00190_LostDream.java
index e1bf74cedf..7180781b0e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00190_LostDream/Q00190_LostDream.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00190_LostDream/Q00190_LostDream.java
@@ -100,7 +100,7 @@ public final class Q00190_LostDream extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00191_VainConclusion/Q00191_VainConclusion.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00191_VainConclusion/Q00191_VainConclusion.java
index 4646c18874..e99b1cf374 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00191_VainConclusion/Q00191_VainConclusion.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00191_VainConclusion/Q00191_VainConclusion.java
@@ -119,7 +119,7 @@ public final class Q00191_VainConclusion extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java
index 0661b4da45..7b481a3022 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java
@@ -154,7 +154,7 @@ public class Q00237_WindsOfChange extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
 		String htmltext = getNoQuestMsg(talker);
-		final QuestState st = talker.getQuestState(getName());
+		final QuestState st = getQuestState(talker, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java
index 61134b67d6..57473cb429 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java
@@ -140,7 +140,7 @@ public class Q00238_SuccessFailureOfBusiness extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
 		String htmltext = getNoQuestMsg(talker);
-		final QuestState st = talker.getQuestState(getName());
+		final QuestState st = getQuestState(talker, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00239_WontYouJoinUs/Q00239_WontYouJoinUs.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00239_WontYouJoinUs/Q00239_WontYouJoinUs.java
index 3556c09e49..ab5471d11e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00239_WontYouJoinUs/Q00239_WontYouJoinUs.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00239_WontYouJoinUs/Q00239_WontYouJoinUs.java
@@ -140,7 +140,7 @@ public class Q00239_WontYouJoinUs extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
 		String htmltext = getNoQuestMsg(talker);
-		final QuestState st = talker.getQuestState(getName());
+		final QuestState st = getQuestState(talker, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00240_ImTheOnlyOneYouCanTrust/Q00240_ImTheOnlyOneYouCanTrust.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00240_ImTheOnlyOneYouCanTrust/Q00240_ImTheOnlyOneYouCanTrust.java
index 115538024b..19a4cf177b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00240_ImTheOnlyOneYouCanTrust/Q00240_ImTheOnlyOneYouCanTrust.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00240_ImTheOnlyOneYouCanTrust/Q00240_ImTheOnlyOneYouCanTrust.java
@@ -108,7 +108,7 @@ public class Q00240_ImTheOnlyOneYouCanTrust extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00241_PossessorOfAPreciousSoul1/Q00241_PossessorOfAPreciousSoul1.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00241_PossessorOfAPreciousSoul1/Q00241_PossessorOfAPreciousSoul1.java
index a096161a5d..a5d0b52afc 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00241_PossessorOfAPreciousSoul1/Q00241_PossessorOfAPreciousSoul1.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00241_PossessorOfAPreciousSoul1/Q00241_PossessorOfAPreciousSoul1.java
@@ -262,7 +262,7 @@ public class Q00241_PossessorOfAPreciousSoul1 extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00242_PossessorOfAPreciousSoul2/Q00242_PossessorOfAPreciousSoul2.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00242_PossessorOfAPreciousSoul2/Q00242_PossessorOfAPreciousSoul2.java
index 9b53beda27..4faf49f27a 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00242_PossessorOfAPreciousSoul2/Q00242_PossessorOfAPreciousSoul2.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00242_PossessorOfAPreciousSoul2/Q00242_PossessorOfAPreciousSoul2.java
@@ -164,7 +164,7 @@ public class Q00242_PossessorOfAPreciousSoul2 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00246_PossessorOfAPreciousSoul3/Q00246_PossessorOfAPreciousSoul3.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00246_PossessorOfAPreciousSoul3/Q00246_PossessorOfAPreciousSoul3.java
index a35015156e..88205a9c57 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00246_PossessorOfAPreciousSoul3/Q00246_PossessorOfAPreciousSoul3.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00246_PossessorOfAPreciousSoul3/Q00246_PossessorOfAPreciousSoul3.java
@@ -254,7 +254,7 @@ public class Q00246_PossessorOfAPreciousSoul3 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00247_PossessorOfAPreciousSoul4/Q00247_PossessorOfAPreciousSoul4.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00247_PossessorOfAPreciousSoul4/Q00247_PossessorOfAPreciousSoul4.java
index 7bbebbeba4..115dc6b0b3 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00247_PossessorOfAPreciousSoul4/Q00247_PossessorOfAPreciousSoul4.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00247_PossessorOfAPreciousSoul4/Q00247_PossessorOfAPreciousSoul4.java
@@ -100,7 +100,7 @@ public class Q00247_PossessorOfAPreciousSoul4 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00249_PoisonedPlainsOfTheLizardmen/Q00249_PoisonedPlainsOfTheLizardmen.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00249_PoisonedPlainsOfTheLizardmen/Q00249_PoisonedPlainsOfTheLizardmen.java
index 890d6d1674..574197c307 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00249_PoisonedPlainsOfTheLizardmen/Q00249_PoisonedPlainsOfTheLizardmen.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00249_PoisonedPlainsOfTheLizardmen/Q00249_PoisonedPlainsOfTheLizardmen.java
@@ -72,7 +72,7 @@ public class Q00249_PoisonedPlainsOfTheLizardmen extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00250_WatchWhatYouEat/Q00250_WatchWhatYouEat.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00250_WatchWhatYouEat/Q00250_WatchWhatYouEat.java
index d8129821fb..674be6c11d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00250_WatchWhatYouEat/Q00250_WatchWhatYouEat.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00250_WatchWhatYouEat/Q00250_WatchWhatYouEat.java
@@ -145,7 +145,7 @@ public class Q00250_WatchWhatYouEat extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00251_NoSecrets/Q00251_NoSecrets.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00251_NoSecrets/Q00251_NoSecrets.java
index 8efeb132a2..f75f55c6c4 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00251_NoSecrets/Q00251_NoSecrets.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00251_NoSecrets/Q00251_NoSecrets.java
@@ -118,7 +118,7 @@ public class Q00251_NoSecrets extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java
index 3b23b3df52..17537f737b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java
@@ -105,7 +105,7 @@ public class Q00254_LegendaryTales extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/Q00257_TheGuardIsBusy.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/Q00257_TheGuardIsBusy.java
index b13b766cd7..a27ecf61e3 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/Q00257_TheGuardIsBusy.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/Q00257_TheGuardIsBusy.java
@@ -149,7 +149,7 @@ public final class Q00257_TheGuardIsBusy extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00258_BringWolfPelts/Q00258_BringWolfPelts.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00258_BringWolfPelts/Q00258_BringWolfPelts.java
index 53a9044495..a7085fd54a 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00258_BringWolfPelts/Q00258_BringWolfPelts.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00258_BringWolfPelts/Q00258_BringWolfPelts.java
@@ -101,7 +101,7 @@ public final class Q00258_BringWolfPelts extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/Q00259_RequestFromTheFarmOwner.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/Q00259_RequestFromTheFarmOwner.java
index ca75edab9b..e9b730e8ef 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/Q00259_RequestFromTheFarmOwner.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/Q00259_RequestFromTheFarmOwner.java
@@ -139,7 +139,7 @@ public final class Q00259_RequestFromTheFarmOwner extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00260_OrcHunting/Q00260_OrcHunting.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00260_OrcHunting/Q00260_OrcHunting.java
index b87f22abf4..d859406202 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00260_OrcHunting/Q00260_OrcHunting.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00260_OrcHunting/Q00260_OrcHunting.java
@@ -113,7 +113,7 @@ public final class Q00260_OrcHunting extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00261_CollectorsDream/Q00261_CollectorsDream.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00261_CollectorsDream/Q00261_CollectorsDream.java
index cf95168414..25991e3328 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00261_CollectorsDream/Q00261_CollectorsDream.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00261_CollectorsDream/Q00261_CollectorsDream.java
@@ -89,7 +89,7 @@ public final class Q00261_CollectorsDream extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/Q00262_TradeWithTheIvoryTower.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/Q00262_TradeWithTheIvoryTower.java
index 4881db92ed..4eadabcf3a 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/Q00262_TradeWithTheIvoryTower.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/Q00262_TradeWithTheIvoryTower.java
@@ -102,7 +102,7 @@ public final class Q00262_TradeWithTheIvoryTower extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00263_OrcSubjugation/Q00263_OrcSubjugation.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00263_OrcSubjugation/Q00263_OrcSubjugation.java
index aa11e5a508..626eb79f61 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00263_OrcSubjugation/Q00263_OrcSubjugation.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00263_OrcSubjugation/Q00263_OrcSubjugation.java
@@ -110,7 +110,7 @@ public final class Q00263_OrcSubjugation extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00264_KeenClaws/Q00264_KeenClaws.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00264_KeenClaws/Q00264_KeenClaws.java
index c3aead8b31..e01e13e988 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00264_KeenClaws/Q00264_KeenClaws.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00264_KeenClaws/Q00264_KeenClaws.java
@@ -108,7 +108,7 @@ public final class Q00264_KeenClaws extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/Q00265_BondsOfSlavery.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/Q00265_BondsOfSlavery.java
index 0edc5ae223..30b9d646d1 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/Q00265_BondsOfSlavery.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/Q00265_BondsOfSlavery.java
@@ -108,7 +108,7 @@ public final class Q00265_BondsOfSlavery extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00266_PleasOfPixies/Q00266_PleasOfPixies.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00266_PleasOfPixies/Q00266_PleasOfPixies.java
index 2d39d338d8..a50968c8b0 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00266_PleasOfPixies/Q00266_PleasOfPixies.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00266_PleasOfPixies/Q00266_PleasOfPixies.java
@@ -109,7 +109,7 @@ public final class Q00266_PleasOfPixies extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/Q00267_WrathOfVerdure.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/Q00267_WrathOfVerdure.java
index 6d70987806..8b26348419 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/Q00267_WrathOfVerdure.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/Q00267_WrathOfVerdure.java
@@ -98,7 +98,7 @@ public final class Q00267_WrathOfVerdure extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00268_TracesOfEvil/Q00268_TracesOfEvil.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00268_TracesOfEvil/Q00268_TracesOfEvil.java
index d5c56dfe4a..c2611e6889 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00268_TracesOfEvil/Q00268_TracesOfEvil.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00268_TracesOfEvil/Q00268_TracesOfEvil.java
@@ -88,7 +88,7 @@ public final class Q00268_TracesOfEvil extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00269_InventionAmbition/Q00269_InventionAmbition.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00269_InventionAmbition/Q00269_InventionAmbition.java
index 5c2728ccf2..3b1e5f7910 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00269_InventionAmbition/Q00269_InventionAmbition.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00269_InventionAmbition/Q00269_InventionAmbition.java
@@ -114,7 +114,7 @@ public final class Q00269_InventionAmbition extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00270_TheOneWhoEndsSilence/Q00270_TheOneWhoEndsSilence.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00270_TheOneWhoEndsSilence/Q00270_TheOneWhoEndsSilence.java
index ed0ef8d15a..233c932464 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00270_TheOneWhoEndsSilence/Q00270_TheOneWhoEndsSilence.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00270_TheOneWhoEndsSilence/Q00270_TheOneWhoEndsSilence.java
@@ -337,7 +337,7 @@ public class Q00270_TheOneWhoEndsSilence extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00271_ProofOfValor/Q00271_ProofOfValor.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00271_ProofOfValor/Q00271_ProofOfValor.java
index a1e8868883..3f4c348aef 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00271_ProofOfValor/Q00271_ProofOfValor.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00271_ProofOfValor/Q00271_ProofOfValor.java
@@ -90,7 +90,7 @@ public final class Q00271_ProofOfValor extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = null;
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/Q00272_WrathOfAncestors.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/Q00272_WrathOfAncestors.java
index 20de499472..5a5ca1be19 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/Q00272_WrathOfAncestors.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/Q00272_WrathOfAncestors.java
@@ -88,7 +88,7 @@ public final class Q00272_WrathOfAncestors extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = null;
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/Q00273_InvadersOfTheHolyLand.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/Q00273_InvadersOfTheHolyLand.java
index 5116cbfc0a..e7cefa51d9 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/Q00273_InvadersOfTheHolyLand.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/Q00273_InvadersOfTheHolyLand.java
@@ -115,7 +115,7 @@ public final class Q00273_InvadersOfTheHolyLand extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = null;
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/Q00274_SkirmishWithTheWerewolves.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/Q00274_SkirmishWithTheWerewolves.java
index 1282c6e773..3e897d5b95 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/Q00274_SkirmishWithTheWerewolves.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/Q00274_SkirmishWithTheWerewolves.java
@@ -95,7 +95,7 @@ public final class Q00274_SkirmishWithTheWerewolves extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/Q00275_DarkWingedSpies.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/Q00275_DarkWingedSpies.java
index 8eb9e3c8c7..14904a36bc 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/Q00275_DarkWingedSpies.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/Q00275_DarkWingedSpies.java
@@ -127,7 +127,7 @@ public final class Q00275_DarkWingedSpies extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
-		final QuestState st = talker.getQuestState(getName());
+		final QuestState st = getQuestState(talker, true);
 		String htmltext = getNoQuestMsg(talker);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/Q00276_TotemOfTheHestui.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/Q00276_TotemOfTheHestui.java
index 7f80a266c0..2a3169815e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/Q00276_TotemOfTheHestui.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/Q00276_TotemOfTheHestui.java
@@ -131,7 +131,7 @@ public final class Q00276_TotemOfTheHestui extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/Q00277_GatekeepersOffering.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/Q00277_GatekeepersOffering.java
index 7b94922aa2..250a6fe47b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/Q00277_GatekeepersOffering.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/Q00277_GatekeepersOffering.java
@@ -90,7 +90,7 @@ public class Q00277_GatekeepersOffering extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00278_HomeSecurity/Q00278_HomeSecurity.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00278_HomeSecurity/Q00278_HomeSecurity.java
index ba9c035b81..5643fc9fcf 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00278_HomeSecurity/Q00278_HomeSecurity.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00278_HomeSecurity/Q00278_HomeSecurity.java
@@ -173,7 +173,7 @@ public class Q00278_HomeSecurity extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00279_TargetOfOpportunity/Q00279_TargetOfOpportunity.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00279_TargetOfOpportunity/Q00279_TargetOfOpportunity.java
index 38258075aa..6e6edfd827 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00279_TargetOfOpportunity/Q00279_TargetOfOpportunity.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00279_TargetOfOpportunity/Q00279_TargetOfOpportunity.java
@@ -123,7 +123,7 @@ public final class Q00279_TargetOfOpportunity extends Quest
 	public final String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00280_TheFoodChain/Q00280_TheFoodChain.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00280_TheFoodChain/Q00280_TheFoodChain.java
index 0843e5ed8f..8a88566fb3 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00280_TheFoodChain/Q00280_TheFoodChain.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00280_TheFoodChain/Q00280_TheFoodChain.java
@@ -174,7 +174,7 @@ public final class Q00280_TheFoodChain extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
-		final QuestState st = talker.getQuestState(getName());
+		final QuestState st = getQuestState(talker, true);
 		String htmltext = getNoQuestMsg(talker);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00281_HeadForTheHills/Q00281_HeadForTheHills.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00281_HeadForTheHills/Q00281_HeadForTheHills.java
index 92676f47f5..b777b3d4b0 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00281_HeadForTheHills/Q00281_HeadForTheHills.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00281_HeadForTheHills/Q00281_HeadForTheHills.java
@@ -170,7 +170,7 @@ public final class Q00281_HeadForTheHills extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00283_TheFewTheProudTheBrave/Q00283_TheFewTheProudTheBrave.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00283_TheFewTheProudTheBrave/Q00283_TheFewTheProudTheBrave.java
index f644d8989c..8ec9acc602 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00283_TheFewTheProudTheBrave/Q00283_TheFewTheProudTheBrave.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00283_TheFewTheProudTheBrave/Q00283_TheFewTheProudTheBrave.java
@@ -115,7 +115,7 @@ public final class Q00283_TheFewTheProudTheBrave extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
-		final QuestState st = talker.getQuestState(getName());
+		final QuestState st = getQuestState(talker, true);
 		String htmltext = getNoQuestMsg(talker);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00287_FiguringItOut/Q00287_FiguringItOut.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00287_FiguringItOut/Q00287_FiguringItOut.java
index b0a1cc94c6..ebeb556112 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00287_FiguringItOut/Q00287_FiguringItOut.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00287_FiguringItOut/Q00287_FiguringItOut.java
@@ -182,7 +182,7 @@ public class Q00287_FiguringItOut extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		final QuestState prev = player.getQuestState(Q00250_WatchWhatYouEat.class.getSimpleName());
 		
 		if (st == null)
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00288_HandleWithCare/Q00288_HandleWithCare.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00288_HandleWithCare/Q00288_HandleWithCare.java
index 6bfa210ab0..ad56d0104a 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00288_HandleWithCare/Q00288_HandleWithCare.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00288_HandleWithCare/Q00288_HandleWithCare.java
@@ -187,7 +187,7 @@ public class Q00288_HandleWithCare extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00289_NoMoreSoupForYou/Q00289_NoMoreSoupForYou.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00289_NoMoreSoupForYou/Q00289_NoMoreSoupForYou.java
index 1fef495a37..9d80f19b44 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00289_NoMoreSoupForYou/Q00289_NoMoreSoupForYou.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00289_NoMoreSoupForYou/Q00289_NoMoreSoupForYou.java
@@ -237,7 +237,7 @@ public class Q00289_NoMoreSoupForYou extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00290_ThreatRemoval/Q00290_ThreatRemoval.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00290_ThreatRemoval/Q00290_ThreatRemoval.java
index e779507e4a..743156d655 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00290_ThreatRemoval/Q00290_ThreatRemoval.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00290_ThreatRemoval/Q00290_ThreatRemoval.java
@@ -197,7 +197,7 @@ public class Q00290_ThreatRemoval extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/Q00293_TheHiddenVeins.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/Q00293_TheHiddenVeins.java
index 5763ad1315..d57e5e2418 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/Q00293_TheHiddenVeins.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/Q00293_TheHiddenVeins.java
@@ -131,7 +131,7 @@ public final class Q00293_TheHiddenVeins extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/Q00297_GatekeepersFavor.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/Q00297_GatekeepersFavor.java
index 6def9756b4..c85eb898bb 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/Q00297_GatekeepersFavor.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/Q00297_GatekeepersFavor.java
@@ -90,7 +90,7 @@ public class Q00297_GatekeepersFavor extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00300_HuntingLetoLizardman/Q00300_HuntingLetoLizardman.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00300_HuntingLetoLizardman/Q00300_HuntingLetoLizardman.java
index 6f544b755d..3ab35f7e29 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00300_HuntingLetoLizardman/Q00300_HuntingLetoLizardman.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00300_HuntingLetoLizardman/Q00300_HuntingLetoLizardman.java
@@ -145,7 +145,7 @@ public final class Q00300_HuntingLetoLizardman extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00303_CollectArrowheads/Q00303_CollectArrowheads.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00303_CollectArrowheads/Q00303_CollectArrowheads.java
index 0bf2836e21..bc7a26acde 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00303_CollectArrowheads/Q00303_CollectArrowheads.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00303_CollectArrowheads/Q00303_CollectArrowheads.java
@@ -80,7 +80,7 @@ public final class Q00303_CollectArrowheads extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/Q00306_CrystalOfFireAndIce.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/Q00306_CrystalOfFireAndIce.java
index 5ade3b4007..bb547a9013 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/Q00306_CrystalOfFireAndIce.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/Q00306_CrystalOfFireAndIce.java
@@ -126,7 +126,7 @@ public final class Q00306_CrystalOfFireAndIce extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00307_ControlDeviceOfTheGiants/Q00307_ControlDeviceOfTheGiants.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00307_ControlDeviceOfTheGiants/Q00307_ControlDeviceOfTheGiants.java
index ec9e2cb3e9..b6f05b22e7 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00307_ControlDeviceOfTheGiants/Q00307_ControlDeviceOfTheGiants.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00307_ControlDeviceOfTheGiants/Q00307_ControlDeviceOfTheGiants.java
@@ -171,7 +171,7 @@ public class Q00307_ControlDeviceOfTheGiants extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00308_ReedFieldMaintenance/Q00308_ReedFieldMaintenance.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00308_ReedFieldMaintenance/Q00308_ReedFieldMaintenance.java
index a1a1433858..351cf4b7cc 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00308_ReedFieldMaintenance/Q00308_ReedFieldMaintenance.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00308_ReedFieldMaintenance/Q00308_ReedFieldMaintenance.java
@@ -239,7 +239,7 @@ public class Q00308_ReedFieldMaintenance extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
 		String htmltext = getNoQuestMsg(talker);
-		final QuestState st = talker.getQuestState(getName());
+		final QuestState st = getQuestState(talker, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00309_ForAGoodCause/Q00309_ForAGoodCause.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00309_ForAGoodCause/Q00309_ForAGoodCause.java
index 8878427466..3a443ce40e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00309_ForAGoodCause/Q00309_ForAGoodCause.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00309_ForAGoodCause/Q00309_ForAGoodCause.java
@@ -242,7 +242,7 @@ public class Q00309_ForAGoodCause extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance talker)
 	{
 		String htmltext = getNoQuestMsg(talker);
-		final QuestState st = talker.getQuestState(getName());
+		final QuestState st = getQuestState(talker, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00310_OnlyWhatRemains/Q00310_OnlyWhatRemains.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00310_OnlyWhatRemains/Q00310_OnlyWhatRemains.java
index 1c90135a3d..30cbd4a555 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00310_OnlyWhatRemains/Q00310_OnlyWhatRemains.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00310_OnlyWhatRemains/Q00310_OnlyWhatRemains.java
@@ -132,7 +132,7 @@ public class Q00310_OnlyWhatRemains extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00311_ExpulsionOfEvilSpirits/Q00311_ExpulsionOfEvilSpirits.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00311_ExpulsionOfEvilSpirits/Q00311_ExpulsionOfEvilSpirits.java
index 8b5ce76b14..10e07ac927 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00311_ExpulsionOfEvilSpirits/Q00311_ExpulsionOfEvilSpirits.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00311_ExpulsionOfEvilSpirits/Q00311_ExpulsionOfEvilSpirits.java
@@ -156,7 +156,7 @@ public final class Q00311_ExpulsionOfEvilSpirits extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState qs = getQuestState(player, false);
+		final QuestState qs = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (qs == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00312_TakeAdvantageOfTheCrisis/Q00312_TakeAdvantageOfTheCrisis.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00312_TakeAdvantageOfTheCrisis/Q00312_TakeAdvantageOfTheCrisis.java
index 38458f7dce..2d86999a6b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00312_TakeAdvantageOfTheCrisis/Q00312_TakeAdvantageOfTheCrisis.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00312_TakeAdvantageOfTheCrisis/Q00312_TakeAdvantageOfTheCrisis.java
@@ -117,7 +117,7 @@ public class Q00312_TakeAdvantageOfTheCrisis extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00313_CollectSpores/Q00313_CollectSpores.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00313_CollectSpores/Q00313_CollectSpores.java
index 8c948b8c9f..8be709859a 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00313_CollectSpores/Q00313_CollectSpores.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00313_CollectSpores/Q00313_CollectSpores.java
@@ -97,7 +97,7 @@ public final class Q00313_CollectSpores extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00319_ScentOfDeath/Q00319_ScentOfDeath.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00319_ScentOfDeath/Q00319_ScentOfDeath.java
index dabf4666f8..5ec38e6a47 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00319_ScentOfDeath/Q00319_ScentOfDeath.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00319_ScentOfDeath/Q00319_ScentOfDeath.java
@@ -105,7 +105,7 @@ public class Q00319_ScentOfDeath extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/Q00320_BonesTellTheFuture.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/Q00320_BonesTellTheFuture.java
index 61bf88afc0..738cb7a805 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/Q00320_BonesTellTheFuture.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/Q00320_BonesTellTheFuture.java
@@ -82,7 +82,7 @@ public final class Q00320_BonesTellTheFuture extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00324_SweetestVenom/Q00324_SweetestVenom.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00324_SweetestVenom/Q00324_SweetestVenom.java
index 382f8a453f..0453e1d43c 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00324_SweetestVenom/Q00324_SweetestVenom.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00324_SweetestVenom/Q00324_SweetestVenom.java
@@ -79,7 +79,7 @@ public class Q00324_SweetestVenom extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00325_GrimCollector/Q00325_GrimCollector.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00325_GrimCollector/Q00325_GrimCollector.java
index 3db03f97a8..b5222be272 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00325_GrimCollector/Q00325_GrimCollector.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00325_GrimCollector/Q00325_GrimCollector.java
@@ -220,7 +220,7 @@ public final class Q00325_GrimCollector extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00326_VanquishRemnants/Q00326_VanquishRemnants.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00326_VanquishRemnants/Q00326_VanquishRemnants.java
index 3f1984b5ee..5ed28e7735 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00326_VanquishRemnants/Q00326_VanquishRemnants.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00326_VanquishRemnants/Q00326_VanquishRemnants.java
@@ -115,7 +115,7 @@ public final class Q00326_VanquishRemnants extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = null;
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00328_SenseForBusiness/Q00328_SenseForBusiness.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00328_SenseForBusiness/Q00328_SenseForBusiness.java
index 06db339beb..46c2b872b7 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00328_SenseForBusiness/Q00328_SenseForBusiness.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00328_SenseForBusiness/Q00328_SenseForBusiness.java
@@ -100,7 +100,7 @@ public class Q00328_SenseForBusiness extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/Q00329_CuriosityOfADwarf.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/Q00329_CuriosityOfADwarf.java
index 0644fc0497..c3c7623dbb 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/Q00329_CuriosityOfADwarf.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/Q00329_CuriosityOfADwarf.java
@@ -120,7 +120,7 @@ public final class Q00329_CuriosityOfADwarf extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/Q00331_ArrowOfVengeance.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/Q00331_ArrowOfVengeance.java
index a813ef4af4..273f36920b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/Q00331_ArrowOfVengeance.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/Q00331_ArrowOfVengeance.java
@@ -99,7 +99,7 @@ public class Q00331_ArrowOfVengeance extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00338_AlligatorHunter/Q00338_AlligatorHunter.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00338_AlligatorHunter/Q00338_AlligatorHunter.java
index 6c11e108eb..31b8087425 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00338_AlligatorHunter/Q00338_AlligatorHunter.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00338_AlligatorHunter/Q00338_AlligatorHunter.java
@@ -113,7 +113,7 @@ public class Q00338_AlligatorHunter extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00350_EnhanceYourWeapon/Q00350_EnhanceYourWeapon.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00350_EnhanceYourWeapon/Q00350_EnhanceYourWeapon.java
index 27405b4191..830fa6ae3b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00350_EnhanceYourWeapon/Q00350_EnhanceYourWeapon.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00350_EnhanceYourWeapon/Q00350_EnhanceYourWeapon.java
@@ -220,7 +220,7 @@ public class Q00350_EnhanceYourWeapon extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/Q00354_ConquestOfAlligatorIsland.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/Q00354_ConquestOfAlligatorIsland.java
index 7420e74aea..319d6a7729 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/Q00354_ConquestOfAlligatorIsland.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/Q00354_ConquestOfAlligatorIsland.java
@@ -159,7 +159,7 @@ public final class Q00354_ConquestOfAlligatorIsland extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00356_DigUpTheSeaOfSpores/Q00356_DigUpTheSeaOfSpores.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00356_DigUpTheSeaOfSpores/Q00356_DigUpTheSeaOfSpores.java
index d91d1cf63e..2539e0c0ef 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00356_DigUpTheSeaOfSpores/Q00356_DigUpTheSeaOfSpores.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00356_DigUpTheSeaOfSpores/Q00356_DigUpTheSeaOfSpores.java
@@ -165,7 +165,7 @@ public final class Q00356_DigUpTheSeaOfSpores extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState qs = getQuestState(player, true);
+		final QuestState qs = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (qs.isCreated())
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00360_PlunderTheirSupplies/Q00360_PlunderTheirSupplies.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00360_PlunderTheirSupplies/Q00360_PlunderTheirSupplies.java
index d03d64a050..7c0d2e3ced 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00360_PlunderTheirSupplies/Q00360_PlunderTheirSupplies.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00360_PlunderTheirSupplies/Q00360_PlunderTheirSupplies.java
@@ -129,7 +129,7 @@ public final class Q00360_PlunderTheirSupplies extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00368_TrespassingIntoTheHolyGround/Q00368_TrespassingIntoTheHolyGround.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00368_TrespassingIntoTheHolyGround/Q00368_TrespassingIntoTheHolyGround.java
index b3324dc4fe..25fbeb4ee4 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00368_TrespassingIntoTheHolyGround/Q00368_TrespassingIntoTheHolyGround.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00368_TrespassingIntoTheHolyGround/Q00368_TrespassingIntoTheHolyGround.java
@@ -120,7 +120,7 @@ public final class Q00368_TrespassingIntoTheHolyGround extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00423_TakeYourBestShot/Q00423_TakeYourBestShot.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00423_TakeYourBestShot/Q00423_TakeYourBestShot.java
index 7441871dbf..f12f1fede2 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00423_TakeYourBestShot/Q00423_TakeYourBestShot.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00423_TakeYourBestShot/Q00423_TakeYourBestShot.java
@@ -109,7 +109,7 @@ public class Q00423_TakeYourBestShot extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00431_WeddingMarch/Q00431_WeddingMarch.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00431_WeddingMarch/Q00431_WeddingMarch.java
index 191fe1762b..63acf90c25 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00431_WeddingMarch/Q00431_WeddingMarch.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00431_WeddingMarch/Q00431_WeddingMarch.java
@@ -111,7 +111,7 @@ public class Q00431_WeddingMarch extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00432_BirthdayPartySong/Q00432_BirthdayPartySong.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00432_BirthdayPartySong/Q00432_BirthdayPartySong.java
index 432d90f592..b820ddb8b3 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00432_BirthdayPartySong/Q00432_BirthdayPartySong.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00432_BirthdayPartySong/Q00432_BirthdayPartySong.java
@@ -106,7 +106,7 @@ public class Q00432_BirthdayPartySong extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java
index 3b36be3dfa..5b22a68ad6 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java
@@ -92,7 +92,7 @@ public class Q00450_GraveRobberRescue extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00451_LuciensAltar/Q00451_LuciensAltar.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00451_LuciensAltar/Q00451_LuciensAltar.java
index 026a4ef908..4c86599b23 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00451_LuciensAltar/Q00451_LuciensAltar.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00451_LuciensAltar/Q00451_LuciensAltar.java
@@ -87,7 +87,7 @@ public class Q00451_LuciensAltar extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java
index e41c508e14..4068793bb7 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java
@@ -96,7 +96,7 @@ public class Q00452_FindingtheLostSoldiers extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00453_NotStrongEnoughAlone/Q00453_NotStrongEnoughAlone.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00453_NotStrongEnoughAlone/Q00453_NotStrongEnoughAlone.java
index ab1b65235d..7e07bdb5f2 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00453_NotStrongEnoughAlone/Q00453_NotStrongEnoughAlone.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00453_NotStrongEnoughAlone/Q00453_NotStrongEnoughAlone.java
@@ -268,7 +268,7 @@ public class Q00453_NotStrongEnoughAlone extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		QuestState prev = player.getQuestState(Q10282_ToTheSeedOfAnnihilation.class.getSimpleName());
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00455_WingsOfSand/Q00455_WingsOfSand.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00455_WingsOfSand/Q00455_WingsOfSand.java
index 4bc6622d13..98bc49aecb 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00455_WingsOfSand/Q00455_WingsOfSand.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00455_WingsOfSand/Q00455_WingsOfSand.java
@@ -133,7 +133,7 @@ public class Q00455_WingsOfSand extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java
index f8811412af..199224ec30 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java
@@ -184,7 +184,7 @@ public final class Q00456_DontKnowDontCare extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState qs = player.getQuestState(getName());
+		final QuestState qs = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		
 		if (qs == null)
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00457_LostAndFound/Q00457_LostAndFound.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00457_LostAndFound/Q00457_LostAndFound.java
index 5b7da60d0a..039145e7d5 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00457_LostAndFound/Q00457_LostAndFound.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00457_LostAndFound/Q00457_LostAndFound.java
@@ -207,7 +207,7 @@ public final class Q00457_LostAndFound extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			st = newQuestState(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00458_PerfectForm/Q00458_PerfectForm.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00458_PerfectForm/Q00458_PerfectForm.java
index 22d46d532b..09df5d76d2 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00458_PerfectForm/Q00458_PerfectForm.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00458_PerfectForm/Q00458_PerfectForm.java
@@ -285,7 +285,7 @@ public class Q00458_PerfectForm extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00461_RumbleInTheBase/Q00461_RumbleInTheBase.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00461_RumbleInTheBase/Q00461_RumbleInTheBase.java
index 3d70524518..90c617ed23 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00461_RumbleInTheBase/Q00461_RumbleInTheBase.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00461_RumbleInTheBase/Q00461_RumbleInTheBase.java
@@ -135,7 +135,7 @@ public class Q00461_RumbleInTheBase extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java
index 58786e22cd..5c0bf66d3e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java
@@ -208,7 +208,7 @@ public class Q00463_IMustBeaGenius extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00464_Oath/Q00464_Oath.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00464_Oath/Q00464_Oath.java
index 28c0bedcd3..5fbea0fb1c 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00464_Oath/Q00464_Oath.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00464_Oath/Q00464_Oath.java
@@ -222,7 +222,7 @@ public class Q00464_Oath extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if ((st != null) && st.isStarted())
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00504_CompetitionForTheBanditStronghold/Q00504_CompetitionForTheBanditStronghold.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00504_CompetitionForTheBanditStronghold/Q00504_CompetitionForTheBanditStronghold.java
index 6cd8535ae9..e38089ed8d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00504_CompetitionForTheBanditStronghold/Q00504_CompetitionForTheBanditStronghold.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00504_CompetitionForTheBanditStronghold/Q00504_CompetitionForTheBanditStronghold.java
@@ -107,7 +107,7 @@ public final class Q00504_CompetitionForTheBanditStronghold extends Quest
 	@Override
 	public final String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00508_AClansReputation/Q00508_AClansReputation.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00508_AClansReputation/Q00508_AClansReputation.java
index 47504ad517..6761f86b2d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00508_AClansReputation/Q00508_AClansReputation.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00508_AClansReputation/Q00508_AClansReputation.java
@@ -161,7 +161,7 @@ public class Q00508_AClansReputation extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00509_AClansFame/Q00509_AClansFame.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00509_AClansFame/Q00509_AClansFame.java
index d6db4b7980..5a7533437d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00509_AClansFame/Q00509_AClansFame.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00509_AClansFame/Q00509_AClansFame.java
@@ -148,7 +148,7 @@ public class Q00509_AClansFame extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00510_AClansPrestige/Q00510_AClansPrestige.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00510_AClansPrestige/Q00510_AClansPrestige.java
index 6550163159..7fe7fdc1e2 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00510_AClansPrestige/Q00510_AClansPrestige.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00510_AClansPrestige/Q00510_AClansPrestige.java
@@ -110,7 +110,7 @@ public class Q00510_AClansPrestige extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java
index 7e1c861239..6220c7eb4d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java
@@ -417,7 +417,7 @@ public final class Q00511_AwlUnderFoot extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = Quest.getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String ret = checkFortCondition(player, npc, false);
 		if (ret != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00551_OlympiadStarter/Q00551_OlympiadStarter.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00551_OlympiadStarter/Q00551_OlympiadStarter.java
index 466b4b0637..430e1ba4d1 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00551_OlympiadStarter/Q00551_OlympiadStarter.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00551_OlympiadStarter/Q00551_OlympiadStarter.java
@@ -202,7 +202,7 @@ public class Q00551_OlympiadStarter extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00552_OlympiadVeteran/Q00552_OlympiadVeteran.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00552_OlympiadVeteran/Q00552_OlympiadVeteran.java
index bb6e944704..176d58f34b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00552_OlympiadVeteran/Q00552_OlympiadVeteran.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00552_OlympiadVeteran/Q00552_OlympiadVeteran.java
@@ -186,7 +186,7 @@ public class Q00552_OlympiadVeteran extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00553_OlympiadUndefeated/Q00553_OlympiadUndefeated.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00553_OlympiadUndefeated/Q00553_OlympiadUndefeated.java
index 60aba7d9c9..d1356f9a02 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00553_OlympiadUndefeated/Q00553_OlympiadUndefeated.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00553_OlympiadUndefeated/Q00553_OlympiadUndefeated.java
@@ -152,7 +152,7 @@ public class Q00553_OlympiadUndefeated extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00601_WatchingEyes/Q00601_WatchingEyes.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00601_WatchingEyes/Q00601_WatchingEyes.java
index fcbb6edf87..abc6c90c1d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00601_WatchingEyes/Q00601_WatchingEyes.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00601_WatchingEyes/Q00601_WatchingEyes.java
@@ -143,7 +143,7 @@ public class Q00601_WatchingEyes extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00602_ShadowOfLight/Q00602_ShadowOfLight.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00602_ShadowOfLight/Q00602_ShadowOfLight.java
index f9c6e294b4..ee2203fc72 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00602_ShadowOfLight/Q00602_ShadowOfLight.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00602_ShadowOfLight/Q00602_ShadowOfLight.java
@@ -150,7 +150,7 @@ public class Q00602_ShadowOfLight extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00605_AllianceWithKetraOrcs/Q00605_AllianceWithKetraOrcs.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00605_AllianceWithKetraOrcs/Q00605_AllianceWithKetraOrcs.java
index 42de5cf0a6..638e00536f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00605_AllianceWithKetraOrcs/Q00605_AllianceWithKetraOrcs.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00605_AllianceWithKetraOrcs/Q00605_AllianceWithKetraOrcs.java
@@ -283,7 +283,7 @@ public class Q00605_AllianceWithKetraOrcs extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00606_BattleAgainstVarkaSilenos/Q00606_BattleAgainstVarkaSilenos.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00606_BattleAgainstVarkaSilenos/Q00606_BattleAgainstVarkaSilenos.java
index 91be441bae..2716c40c7d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00606_BattleAgainstVarkaSilenos/Q00606_BattleAgainstVarkaSilenos.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00606_BattleAgainstVarkaSilenos/Q00606_BattleAgainstVarkaSilenos.java
@@ -124,7 +124,7 @@ public class Q00606_BattleAgainstVarkaSilenos extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00607_ProveYourCourageKetra/Q00607_ProveYourCourageKetra.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00607_ProveYourCourageKetra/Q00607_ProveYourCourageKetra.java
index 1a36b4c865..17fd77843d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00607_ProveYourCourageKetra/Q00607_ProveYourCourageKetra.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00607_ProveYourCourageKetra/Q00607_ProveYourCourageKetra.java
@@ -107,7 +107,7 @@ public class Q00607_ProveYourCourageKetra extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00608_SlayTheEnemyCommanderKetra/Q00608_SlayTheEnemyCommanderKetra.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00608_SlayTheEnemyCommanderKetra/Q00608_SlayTheEnemyCommanderKetra.java
index 423188e5e9..8a113e1d97 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00608_SlayTheEnemyCommanderKetra/Q00608_SlayTheEnemyCommanderKetra.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00608_SlayTheEnemyCommanderKetra/Q00608_SlayTheEnemyCommanderKetra.java
@@ -107,7 +107,7 @@ public class Q00608_SlayTheEnemyCommanderKetra extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00609_MagicalPowerOfWaterPart1/Q00609_MagicalPowerOfWaterPart1.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00609_MagicalPowerOfWaterPart1/Q00609_MagicalPowerOfWaterPart1.java
index 84e377f3ab..26e544431f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00609_MagicalPowerOfWaterPart1/Q00609_MagicalPowerOfWaterPart1.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00609_MagicalPowerOfWaterPart1/Q00609_MagicalPowerOfWaterPart1.java
@@ -156,7 +156,7 @@ public class Q00609_MagicalPowerOfWaterPart1 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00610_MagicalPowerOfWaterPart2/Q00610_MagicalPowerOfWaterPart2.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00610_MagicalPowerOfWaterPart2/Q00610_MagicalPowerOfWaterPart2.java
index 97f43862b6..ad1c217e87 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00610_MagicalPowerOfWaterPart2/Q00610_MagicalPowerOfWaterPart2.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00610_MagicalPowerOfWaterPart2/Q00610_MagicalPowerOfWaterPart2.java
@@ -158,7 +158,7 @@ public class Q00610_MagicalPowerOfWaterPart2 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00611_AllianceWithVarkaSilenos/Q00611_AllianceWithVarkaSilenos.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00611_AllianceWithVarkaSilenos/Q00611_AllianceWithVarkaSilenos.java
index 72f71bf9be..d8f685d357 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00611_AllianceWithVarkaSilenos/Q00611_AllianceWithVarkaSilenos.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00611_AllianceWithVarkaSilenos/Q00611_AllianceWithVarkaSilenos.java
@@ -283,7 +283,7 @@ public class Q00611_AllianceWithVarkaSilenos extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00612_BattleAgainstKetraOrcs/Q00612_BattleAgainstKetraOrcs.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00612_BattleAgainstKetraOrcs/Q00612_BattleAgainstKetraOrcs.java
index aea47aa22a..19ca70ff19 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00612_BattleAgainstKetraOrcs/Q00612_BattleAgainstKetraOrcs.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00612_BattleAgainstKetraOrcs/Q00612_BattleAgainstKetraOrcs.java
@@ -124,7 +124,7 @@ public class Q00612_BattleAgainstKetraOrcs extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00613_ProveYourCourageVarka/Q00613_ProveYourCourageVarka.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00613_ProveYourCourageVarka/Q00613_ProveYourCourageVarka.java
index 5467bae16b..c11708d77f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00613_ProveYourCourageVarka/Q00613_ProveYourCourageVarka.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00613_ProveYourCourageVarka/Q00613_ProveYourCourageVarka.java
@@ -107,7 +107,7 @@ public class Q00613_ProveYourCourageVarka extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00614_SlayTheEnemyCommanderVarka/Q00614_SlayTheEnemyCommanderVarka.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00614_SlayTheEnemyCommanderVarka/Q00614_SlayTheEnemyCommanderVarka.java
index 39be548a2b..ca17ff43e0 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00614_SlayTheEnemyCommanderVarka/Q00614_SlayTheEnemyCommanderVarka.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00614_SlayTheEnemyCommanderVarka/Q00614_SlayTheEnemyCommanderVarka.java
@@ -107,7 +107,7 @@ public class Q00614_SlayTheEnemyCommanderVarka extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00615_MagicalPowerOfFirePart1/Q00615_MagicalPowerOfFirePart1.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00615_MagicalPowerOfFirePart1/Q00615_MagicalPowerOfFirePart1.java
index 1a53d38d75..71dc426c2e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00615_MagicalPowerOfFirePart1/Q00615_MagicalPowerOfFirePart1.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00615_MagicalPowerOfFirePart1/Q00615_MagicalPowerOfFirePart1.java
@@ -156,7 +156,7 @@ public class Q00615_MagicalPowerOfFirePart1 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00616_MagicalPowerOfFirePart2/Q00616_MagicalPowerOfFirePart2.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00616_MagicalPowerOfFirePart2/Q00616_MagicalPowerOfFirePart2.java
index e85bfada56..1edafc9dff 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00616_MagicalPowerOfFirePart2/Q00616_MagicalPowerOfFirePart2.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00616_MagicalPowerOfFirePart2/Q00616_MagicalPowerOfFirePart2.java
@@ -158,7 +158,7 @@ public class Q00616_MagicalPowerOfFirePart2 extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00617_GatherTheFlames/Q00617_GatherTheFlames.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00617_GatherTheFlames/Q00617_GatherTheFlames.java
index 8c8981fe33..8fd1a35409 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00617_GatherTheFlames/Q00617_GatherTheFlames.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00617_GatherTheFlames/Q00617_GatherTheFlames.java
@@ -177,7 +177,7 @@ public class Q00617_GatherTheFlames extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00618_IntoTheFlame/Q00618_IntoTheFlame.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00618_IntoTheFlame/Q00618_IntoTheFlame.java
index 499f5b24f8..8000cebd4d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00618_IntoTheFlame/Q00618_IntoTheFlame.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00618_IntoTheFlame/Q00618_IntoTheFlame.java
@@ -144,7 +144,7 @@ public class Q00618_IntoTheFlame extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00619_RelicsOfTheOldEmpire/Q00619_RelicsOfTheOldEmpire.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00619_RelicsOfTheOldEmpire/Q00619_RelicsOfTheOldEmpire.java
index 768719c3f3..897a587dcd 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00619_RelicsOfTheOldEmpire/Q00619_RelicsOfTheOldEmpire.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00619_RelicsOfTheOldEmpire/Q00619_RelicsOfTheOldEmpire.java
@@ -306,7 +306,7 @@ public final class Q00619_RelicsOfTheOldEmpire extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00624_TheFinestIngredientsPart1/Q00624_TheFinestIngredientsPart1.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00624_TheFinestIngredientsPart1/Q00624_TheFinestIngredientsPart1.java
index 65a53b71b0..83565e78ee 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00624_TheFinestIngredientsPart1/Q00624_TheFinestIngredientsPart1.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00624_TheFinestIngredientsPart1/Q00624_TheFinestIngredientsPart1.java
@@ -130,7 +130,7 @@ public final class Q00624_TheFinestIngredientsPart1 extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00626_ADarkTwilight/Q00626_ADarkTwilight.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00626_ADarkTwilight/Q00626_ADarkTwilight.java
index 2bfbc5d98d..eb7ea88a10 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00626_ADarkTwilight/Q00626_ADarkTwilight.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00626_ADarkTwilight/Q00626_ADarkTwilight.java
@@ -145,7 +145,7 @@ public class Q00626_ADarkTwilight extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java
index 4d7a51f9ba..7c70f052ef 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java
@@ -185,7 +185,7 @@ public class Q00627_HeartInSearchOfPower extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00631_DeliciousTopChoiceMeat/Q00631_DeliciousTopChoiceMeat.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00631_DeliciousTopChoiceMeat/Q00631_DeliciousTopChoiceMeat.java
index 1875ab906c..e9adc34e73 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00631_DeliciousTopChoiceMeat/Q00631_DeliciousTopChoiceMeat.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00631_DeliciousTopChoiceMeat/Q00631_DeliciousTopChoiceMeat.java
@@ -200,7 +200,7 @@ public class Q00631_DeliciousTopChoiceMeat extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00634_InSearchOfFragmentsOfDimension/Q00634_InSearchOfFragmentsOfDimension.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00634_InSearchOfFragmentsOfDimension/Q00634_InSearchOfFragmentsOfDimension.java
index daae27eafe..01b1924117 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00634_InSearchOfFragmentsOfDimension/Q00634_InSearchOfFragmentsOfDimension.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00634_InSearchOfFragmentsOfDimension/Q00634_InSearchOfFragmentsOfDimension.java
@@ -172,7 +172,7 @@ public final class Q00634_InSearchOfFragmentsOfDimension extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState qs = getQuestState(player, true);
+		final QuestState qs = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (qs.isCreated())
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00636_TruthBeyond/Q00636_TruthBeyond.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00636_TruthBeyond/Q00636_TruthBeyond.java
index a3690b8845..0a957e844a 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00636_TruthBeyond/Q00636_TruthBeyond.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00636_TruthBeyond/Q00636_TruthBeyond.java
@@ -86,7 +86,7 @@ public final class Q00636_TruthBeyond extends Quest
 	@Override
 	public final String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00637_ThroughOnceMore/Q00637_ThroughOnceMore.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00637_ThroughOnceMore/Q00637_ThroughOnceMore.java
index 585380f44b..5321805bc3 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00637_ThroughOnceMore/Q00637_ThroughOnceMore.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00637_ThroughOnceMore/Q00637_ThroughOnceMore.java
@@ -114,7 +114,7 @@ public final class Q00637_ThroughOnceMore extends Quest
 	@Override
 	public final String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00639_GuardiansOfTheHolyGrail/Q00639_GuardiansOfTheHolyGrail.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00639_GuardiansOfTheHolyGrail/Q00639_GuardiansOfTheHolyGrail.java
index d4459cf336..8db8999447 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00639_GuardiansOfTheHolyGrail/Q00639_GuardiansOfTheHolyGrail.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00639_GuardiansOfTheHolyGrail/Q00639_GuardiansOfTheHolyGrail.java
@@ -39,7 +39,7 @@ public final class Q00639_GuardiansOfTheHolyGrail extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st != null)
 		{
 			st.exitQuest(true);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00641_AttackSailren/Q00641_AttackSailren.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00641_AttackSailren/Q00641_AttackSailren.java
index 41a3d01937..f6c3e57367 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00641_AttackSailren/Q00641_AttackSailren.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00641_AttackSailren/Q00641_AttackSailren.java
@@ -110,7 +110,7 @@ public class Q00641_AttackSailren extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00642_APowerfulPrimevalCreature/Q00642_APowerfulPrimevalCreature.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00642_APowerfulPrimevalCreature/Q00642_APowerfulPrimevalCreature.java
index 031a375f99..5873666fae 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00642_APowerfulPrimevalCreature/Q00642_APowerfulPrimevalCreature.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00642_APowerfulPrimevalCreature/Q00642_APowerfulPrimevalCreature.java
@@ -142,7 +142,7 @@ public class Q00642_APowerfulPrimevalCreature extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00643_RiseAndFallOfTheElrokiTribe/Q00643_RiseAndFallOfTheElrokiTribe.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00643_RiseAndFallOfTheElrokiTribe/Q00643_RiseAndFallOfTheElrokiTribe.java
index 8ada891fad..2e504de261 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00643_RiseAndFallOfTheElrokiTribe/Q00643_RiseAndFallOfTheElrokiTribe.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00643_RiseAndFallOfTheElrokiTribe/Q00643_RiseAndFallOfTheElrokiTribe.java
@@ -232,7 +232,7 @@ public class Q00643_RiseAndFallOfTheElrokiTribe extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00644_GraveRobberAnnihilation/Q00644_GraveRobberAnnihilation.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00644_GraveRobberAnnihilation/Q00644_GraveRobberAnnihilation.java
index 46a5801af7..0b2fbbff15 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00644_GraveRobberAnnihilation/Q00644_GraveRobberAnnihilation.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00644_GraveRobberAnnihilation/Q00644_GraveRobberAnnihilation.java
@@ -134,7 +134,7 @@ public final class Q00644_GraveRobberAnnihilation extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00645_GhostsOfBatur/Q00645_GhostsOfBatur.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00645_GhostsOfBatur/Q00645_GhostsOfBatur.java
index c942d0b282..dcb3e65327 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00645_GhostsOfBatur/Q00645_GhostsOfBatur.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00645_GhostsOfBatur/Q00645_GhostsOfBatur.java
@@ -122,7 +122,7 @@ public class Q00645_GhostsOfBatur extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00646_SignsOfRevolt/Q00646_SignsOfRevolt.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00646_SignsOfRevolt/Q00646_SignsOfRevolt.java
index d018efaa8e..fa93040d16 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00646_SignsOfRevolt/Q00646_SignsOfRevolt.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00646_SignsOfRevolt/Q00646_SignsOfRevolt.java
@@ -45,7 +45,7 @@ public class Q00646_SignsOfRevolt extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st != null)
 		{
 			st.exitQuest(true);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00647_InfluxOfMachines/Q00647_InfluxOfMachines.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00647_InfluxOfMachines/Q00647_InfluxOfMachines.java
index 062c46f158..95e4125bae 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00647_InfluxOfMachines/Q00647_InfluxOfMachines.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00647_InfluxOfMachines/Q00647_InfluxOfMachines.java
@@ -140,7 +140,7 @@ public class Q00647_InfluxOfMachines extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00649_ALooterAndARailroadMan/Q00649_ALooterAndARailroadMan.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00649_ALooterAndARailroadMan/Q00649_ALooterAndARailroadMan.java
index f609ca693c..1e49ba590f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00649_ALooterAndARailroadMan/Q00649_ALooterAndARailroadMan.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00649_ALooterAndARailroadMan/Q00649_ALooterAndARailroadMan.java
@@ -102,7 +102,7 @@ public final class Q00649_ALooterAndARailroadMan extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00650_ABrokenDream/Q00650_ABrokenDream.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00650_ABrokenDream/Q00650_ABrokenDream.java
index 9aac37cb93..e5eb47cc84 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00650_ABrokenDream/Q00650_ABrokenDream.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00650_ABrokenDream/Q00650_ABrokenDream.java
@@ -107,7 +107,7 @@ public final class Q00650_ABrokenDream extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00651_RunawayYouth/Q00651_RunawayYouth.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00651_RunawayYouth/Q00651_RunawayYouth.java
index cc7f9302fd..54abb4de4f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00651_RunawayYouth/Q00651_RunawayYouth.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00651_RunawayYouth/Q00651_RunawayYouth.java
@@ -77,7 +77,7 @@ public class Q00651_RunawayYouth extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java
index 1fa404a91e..ec40909926 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java
@@ -77,7 +77,7 @@ public class Q00652_AnAgedExAdventurer extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00653_WildMaiden/Q00653_WildMaiden.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00653_WildMaiden/Q00653_WildMaiden.java
index 99bc3dbe07..2934d97b86 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00653_WildMaiden/Q00653_WildMaiden.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00653_WildMaiden/Q00653_WildMaiden.java
@@ -77,7 +77,7 @@ public class Q00653_WildMaiden extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00659_IdRatherBeCollectingFairyBreath/Q00659_IdRatherBeCollectingFairyBreath.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00659_IdRatherBeCollectingFairyBreath/Q00659_IdRatherBeCollectingFairyBreath.java
index 08704b0d76..e6f9e04392 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00659_IdRatherBeCollectingFairyBreath/Q00659_IdRatherBeCollectingFairyBreath.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00659_IdRatherBeCollectingFairyBreath/Q00659_IdRatherBeCollectingFairyBreath.java
@@ -121,7 +121,7 @@ public final class Q00659_IdRatherBeCollectingFairyBreath extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00662_AGameOfCards/Q00662_AGameOfCards.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00662_AGameOfCards/Q00662_AGameOfCards.java
index 109ae18cd5..4c7c5a4eb4 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00662_AGameOfCards/Q00662_AGameOfCards.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00662_AGameOfCards/Q00662_AGameOfCards.java
@@ -611,7 +611,7 @@ public final class Q00662_AGameOfCards extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00688_DefeatTheElrokianRaiders/Q00688_DefeatTheElrokianRaiders.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00688_DefeatTheElrokianRaiders/Q00688_DefeatTheElrokianRaiders.java
index cac068dc3a..36cb14a3a5 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00688_DefeatTheElrokianRaiders/Q00688_DefeatTheElrokianRaiders.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00688_DefeatTheElrokianRaiders/Q00688_DefeatTheElrokianRaiders.java
@@ -143,7 +143,7 @@ public class Q00688_DefeatTheElrokianRaiders extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00690_JudesRequest/Q00690_JudesRequest.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00690_JudesRequest/Q00690_JudesRequest.java
index 0f16300e11..af004b84e6 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00690_JudesRequest/Q00690_JudesRequest.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00690_JudesRequest/Q00690_JudesRequest.java
@@ -160,7 +160,7 @@ public class Q00690_JudesRequest extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00691_MatrasSuspiciousRequest/Q00691_MatrasSuspiciousRequest.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00691_MatrasSuspiciousRequest/Q00691_MatrasSuspiciousRequest.java
index 30fef01a5d..1a24030f13 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00691_MatrasSuspiciousRequest/Q00691_MatrasSuspiciousRequest.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00691_MatrasSuspiciousRequest/Q00691_MatrasSuspiciousRequest.java
@@ -150,7 +150,7 @@ public final class Q00691_MatrasSuspiciousRequest extends Quest
 	public final String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00692_HowtoOpposeEvil/Q00692_HowtoOpposeEvil.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00692_HowtoOpposeEvil/Q00692_HowtoOpposeEvil.java
index 9565f50f29..9a8b2dcff5 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00692_HowtoOpposeEvil/Q00692_HowtoOpposeEvil.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00692_HowtoOpposeEvil/Q00692_HowtoOpposeEvil.java
@@ -203,7 +203,7 @@ public final class Q00692_HowtoOpposeEvil extends Quest
 	public final String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00699_GuardianOfTheSkies/Q00699_GuardianOfTheSkies.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00699_GuardianOfTheSkies/Q00699_GuardianOfTheSkies.java
index 24d581f5ec..2f449ca71f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00699_GuardianOfTheSkies/Q00699_GuardianOfTheSkies.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00699_GuardianOfTheSkies/Q00699_GuardianOfTheSkies.java
@@ -140,7 +140,7 @@ public class Q00699_GuardianOfTheSkies extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00700_CursedLife/Q00700_CursedLife.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00700_CursedLife/Q00700_CursedLife.java
index ec880ffac8..e047376102 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00700_CursedLife/Q00700_CursedLife.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00700_CursedLife/Q00700_CursedLife.java
@@ -114,7 +114,7 @@ public class Q00700_CursedLife extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st != null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00701_ProofOfExistence/Q00701_ProofOfExistence.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00701_ProofOfExistence/Q00701_ProofOfExistence.java
index 8f6bf1be6b..a895e16659 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00701_ProofOfExistence/Q00701_ProofOfExistence.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00701_ProofOfExistence/Q00701_ProofOfExistence.java
@@ -141,7 +141,7 @@ public class Q00701_ProofOfExistence extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00702_ATrapForRevenge/Q00702_ATrapForRevenge.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00702_ATrapForRevenge/Q00702_ATrapForRevenge.java
index 647b1f1636..040c36a5c9 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00702_ATrapForRevenge/Q00702_ATrapForRevenge.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00702_ATrapForRevenge/Q00702_ATrapForRevenge.java
@@ -365,7 +365,7 @@ public class Q00702_ATrapForRevenge extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00901_HowLavasaurusesAreMade/Q00901_HowLavasaurusesAreMade.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00901_HowLavasaurusesAreMade/Q00901_HowLavasaurusesAreMade.java
index f2ed131e1a..255001ab48 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00901_HowLavasaurusesAreMade/Q00901_HowLavasaurusesAreMade.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00901_HowLavasaurusesAreMade/Q00901_HowLavasaurusesAreMade.java
@@ -132,7 +132,7 @@ public class Q00901_HowLavasaurusesAreMade extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00902_ReclaimOurEra/Q00902_ReclaimOurEra.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00902_ReclaimOurEra/Q00902_ReclaimOurEra.java
index 987a08b62a..ee775cc933 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00902_ReclaimOurEra/Q00902_ReclaimOurEra.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00902_ReclaimOurEra/Q00902_ReclaimOurEra.java
@@ -169,7 +169,7 @@ public final class Q00902_ReclaimOurEra extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00903_TheCallOfAntharas/Q00903_TheCallOfAntharas.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00903_TheCallOfAntharas/Q00903_TheCallOfAntharas.java
index 2e6857af81..88e5069455 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00903_TheCallOfAntharas/Q00903_TheCallOfAntharas.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00903_TheCallOfAntharas/Q00903_TheCallOfAntharas.java
@@ -124,7 +124,7 @@ public class Q00903_TheCallOfAntharas extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00905_RefinedDragonBlood/Q00905_RefinedDragonBlood.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00905_RefinedDragonBlood/Q00905_RefinedDragonBlood.java
index 320564317d..c9afee08ed 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00905_RefinedDragonBlood/Q00905_RefinedDragonBlood.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00905_RefinedDragonBlood/Q00905_RefinedDragonBlood.java
@@ -162,7 +162,7 @@ public final class Q00905_RefinedDragonBlood extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00906_TheCallOfValakas/Q00906_TheCallOfValakas.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00906_TheCallOfValakas/Q00906_TheCallOfValakas.java
index cf262fe99c..92ee6c9fbc 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00906_TheCallOfValakas/Q00906_TheCallOfValakas.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00906_TheCallOfValakas/Q00906_TheCallOfValakas.java
@@ -105,7 +105,7 @@ public class Q00906_TheCallOfValakas extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00907_DragonTrophyValakas/Q00907_DragonTrophyValakas.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00907_DragonTrophyValakas/Q00907_DragonTrophyValakas.java
index ed432b2734..67c3c92022 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00907_DragonTrophyValakas/Q00907_DragonTrophyValakas.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00907_DragonTrophyValakas/Q00907_DragonTrophyValakas.java
@@ -102,7 +102,7 @@ public class Q00907_DragonTrophyValakas extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q00998_FallenAngelSelect/Q00998_FallenAngelSelect.java b/L2J_DataPack/dist/game/data/scripts/quests/Q00998_FallenAngelSelect/Q00998_FallenAngelSelect.java
index c8bb040910..a0b2eada04 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q00998_FallenAngelSelect/Q00998_FallenAngelSelect.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q00998_FallenAngelSelect/Q00998_FallenAngelSelect.java
@@ -88,7 +88,7 @@ public class Q00998_FallenAngelSelect extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		final QuestState qs = player.getQuestState(Q00141_ShadowFoxPart3.class.getSimpleName());
 		if ((st == null) || !st.isStarted())
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10267_JourneyToGracia/Q10267_JourneyToGracia.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10267_JourneyToGracia/Q10267_JourneyToGracia.java
index f1ef171638..158faab44b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10267_JourneyToGracia/Q10267_JourneyToGracia.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10267_JourneyToGracia/Q10267_JourneyToGracia.java
@@ -77,7 +77,7 @@ public class Q10267_JourneyToGracia extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10268_ToTheSeedOfInfinity/Q10268_ToTheSeedOfInfinity.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10268_ToTheSeedOfInfinity/Q10268_ToTheSeedOfInfinity.java
index 31a71b187b..07e1336d94 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10268_ToTheSeedOfInfinity/Q10268_ToTheSeedOfInfinity.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10268_ToTheSeedOfInfinity/Q10268_ToTheSeedOfInfinity.java
@@ -66,7 +66,7 @@ public class Q10268_ToTheSeedOfInfinity extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10269_ToTheSeedOfDestruction/Q10269_ToTheSeedOfDestruction.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10269_ToTheSeedOfDestruction/Q10269_ToTheSeedOfDestruction.java
index 5f41124086..b745dd75ef 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10269_ToTheSeedOfDestruction/Q10269_ToTheSeedOfDestruction.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10269_ToTheSeedOfDestruction/Q10269_ToTheSeedOfDestruction.java
@@ -66,7 +66,7 @@ public class Q10269_ToTheSeedOfDestruction extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10271_TheEnvelopingDarkness/Q10271_TheEnvelopingDarkness.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10271_TheEnvelopingDarkness/Q10271_TheEnvelopingDarkness.java
index f4468f41a3..d41cf92fe5 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10271_TheEnvelopingDarkness/Q10271_TheEnvelopingDarkness.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10271_TheEnvelopingDarkness/Q10271_TheEnvelopingDarkness.java
@@ -79,7 +79,7 @@ public class Q10271_TheEnvelopingDarkness extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10272_LightFragment/Q10272_LightFragment.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10272_LightFragment/Q10272_LightFragment.java
index a94f2eac0c..d701076f94 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10272_LightFragment/Q10272_LightFragment.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10272_LightFragment/Q10272_LightFragment.java
@@ -177,7 +177,7 @@ public class Q10272_LightFragment extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10273_GoodDayToFly/Q10273_GoodDayToFly.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10273_GoodDayToFly/Q10273_GoodDayToFly.java
index 23f1de0c6d..0db3e40f1d 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10273_GoodDayToFly/Q10273_GoodDayToFly.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10273_GoodDayToFly/Q10273_GoodDayToFly.java
@@ -123,7 +123,7 @@ public class Q10273_GoodDayToFly extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10274_CollectingInTheAir/Q10274_CollectingInTheAir.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10274_CollectingInTheAir/Q10274_CollectingInTheAir.java
index 23ed0a7a74..0cd1eba7ea 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10274_CollectingInTheAir/Q10274_CollectingInTheAir.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10274_CollectingInTheAir/Q10274_CollectingInTheAir.java
@@ -122,7 +122,7 @@ public class Q10274_CollectingInTheAir extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java
index 4e1e1f3f88..2ab6dd4db4 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java
@@ -178,7 +178,7 @@ public class Q10275_ContainingTheAttributePower extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10276_MutatedKaneusGludio/Q10276_MutatedKaneusGludio.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10276_MutatedKaneusGludio/Q10276_MutatedKaneusGludio.java
index b2dcb1876e..faf62de8f0 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10276_MutatedKaneusGludio/Q10276_MutatedKaneusGludio.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10276_MutatedKaneusGludio/Q10276_MutatedKaneusGludio.java
@@ -113,7 +113,7 @@ public class Q10276_MutatedKaneusGludio extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10277_MutatedKaneusDion/Q10277_MutatedKaneusDion.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10277_MutatedKaneusDion/Q10277_MutatedKaneusDion.java
index 4909d143e0..56ca2bf9c3 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10277_MutatedKaneusDion/Q10277_MutatedKaneusDion.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10277_MutatedKaneusDion/Q10277_MutatedKaneusDion.java
@@ -113,7 +113,7 @@ public class Q10277_MutatedKaneusDion extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10278_MutatedKaneusHeine/Q10278_MutatedKaneusHeine.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10278_MutatedKaneusHeine/Q10278_MutatedKaneusHeine.java
index 65bb0c1cc0..c627489589 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10278_MutatedKaneusHeine/Q10278_MutatedKaneusHeine.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10278_MutatedKaneusHeine/Q10278_MutatedKaneusHeine.java
@@ -113,7 +113,7 @@ public class Q10278_MutatedKaneusHeine extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10279_MutatedKaneusOren/Q10279_MutatedKaneusOren.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10279_MutatedKaneusOren/Q10279_MutatedKaneusOren.java
index c2074fd997..2b23fe410b 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10279_MutatedKaneusOren/Q10279_MutatedKaneusOren.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10279_MutatedKaneusOren/Q10279_MutatedKaneusOren.java
@@ -113,7 +113,7 @@ public class Q10279_MutatedKaneusOren extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10280_MutatedKaneusSchuttgart/Q10280_MutatedKaneusSchuttgart.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10280_MutatedKaneusSchuttgart/Q10280_MutatedKaneusSchuttgart.java
index de904b4d2a..cd2891a34a 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10280_MutatedKaneusSchuttgart/Q10280_MutatedKaneusSchuttgart.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10280_MutatedKaneusSchuttgart/Q10280_MutatedKaneusSchuttgart.java
@@ -113,7 +113,7 @@ public class Q10280_MutatedKaneusSchuttgart extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10281_MutatedKaneusRune/Q10281_MutatedKaneusRune.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10281_MutatedKaneusRune/Q10281_MutatedKaneusRune.java
index 8eacc712fc..dd57d0d768 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10281_MutatedKaneusRune/Q10281_MutatedKaneusRune.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10281_MutatedKaneusRune/Q10281_MutatedKaneusRune.java
@@ -111,7 +111,7 @@ public class Q10281_MutatedKaneusRune extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10282_ToTheSeedOfAnnihilation/Q10282_ToTheSeedOfAnnihilation.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10282_ToTheSeedOfAnnihilation/Q10282_ToTheSeedOfAnnihilation.java
index f08f00964f..0ffd04bbfd 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10282_ToTheSeedOfAnnihilation/Q10282_ToTheSeedOfAnnihilation.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10282_ToTheSeedOfAnnihilation/Q10282_ToTheSeedOfAnnihilation.java
@@ -73,7 +73,7 @@ public class Q10282_ToTheSeedOfAnnihilation extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java
index 170592e7e4..e9a9c2ca7e 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java
@@ -124,7 +124,7 @@ public class Q10283_RequestOfIceMerchant extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10288_SecretMission/Q10288_SecretMission.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10288_SecretMission/Q10288_SecretMission.java
index 6776b13093..bd8ede3ea1 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10288_SecretMission/Q10288_SecretMission.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10288_SecretMission/Q10288_SecretMission.java
@@ -112,7 +112,7 @@ public class Q10288_SecretMission extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return htmltext;
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10291_FireDragonDestroyer/Q10291_FireDragonDestroyer.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10291_FireDragonDestroyer/Q10291_FireDragonDestroyer.java
index be3e9eb68b..f54e5045a0 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10291_FireDragonDestroyer/Q10291_FireDragonDestroyer.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10291_FireDragonDestroyer/Q10291_FireDragonDestroyer.java
@@ -111,7 +111,7 @@ public class Q10291_FireDragonDestroyer extends Quest
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
 		String htmltext = getNoQuestMsg(player);
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		
 		if (st == null)
 		{
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10501_ZakenEmbroideredSoulCloak/Q10501_ZakenEmbroideredSoulCloak.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10501_ZakenEmbroideredSoulCloak/Q10501_ZakenEmbroideredSoulCloak.java
index 7ce3390c08..be96bcde87 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10501_ZakenEmbroideredSoulCloak/Q10501_ZakenEmbroideredSoulCloak.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10501_ZakenEmbroideredSoulCloak/Q10501_ZakenEmbroideredSoulCloak.java
@@ -95,7 +95,7 @@ public class Q10501_ZakenEmbroideredSoulCloak extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10502_FreyaEmbroideredSoulCloak/Q10502_FreyaEmbroideredSoulCloak.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10502_FreyaEmbroideredSoulCloak/Q10502_FreyaEmbroideredSoulCloak.java
index cfec70b038..b0b7bdc8c8 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10502_FreyaEmbroideredSoulCloak/Q10502_FreyaEmbroideredSoulCloak.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10502_FreyaEmbroideredSoulCloak/Q10502_FreyaEmbroideredSoulCloak.java
@@ -95,7 +95,7 @@ public class Q10502_FreyaEmbroideredSoulCloak extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10503_FrintezzaEmbroideredSoulCloak/Q10503_FrintezzaEmbroideredSoulCloak.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10503_FrintezzaEmbroideredSoulCloak/Q10503_FrintezzaEmbroideredSoulCloak.java
index 132878de91..9a9c82e71f 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10503_FrintezzaEmbroideredSoulCloak/Q10503_FrintezzaEmbroideredSoulCloak.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10503_FrintezzaEmbroideredSoulCloak/Q10503_FrintezzaEmbroideredSoulCloak.java
@@ -96,7 +96,7 @@ public class Q10503_FrintezzaEmbroideredSoulCloak extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
diff --git a/L2J_DataPack/dist/game/data/scripts/quests/Q10505_JewelOfValakas/Q10505_JewelOfValakas.java b/L2J_DataPack/dist/game/data/scripts/quests/Q10505_JewelOfValakas/Q10505_JewelOfValakas.java
index 472e579b23..48a79f8e15 100644
--- a/L2J_DataPack/dist/game/data/scripts/quests/Q10505_JewelOfValakas/Q10505_JewelOfValakas.java
+++ b/L2J_DataPack/dist/game/data/scripts/quests/Q10505_JewelOfValakas/Q10505_JewelOfValakas.java
@@ -108,7 +108,7 @@ public class Q10505_JewelOfValakas extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		if (st == null)
 		{
 			return getNoQuestMsg(player);
-- 
GitLab