Jump to content
  • 0

Quest error with deleveling


Question

Posted

I used this guide to get the deleveling npc working.

 

For those who still do not understand well how to put into operation this quest: make a new directory in gameserver \ data \ scripts \ custom, and put the following script named : __init__.py

Line number On/Off | Expand/Contract | Select all

 

   import sys
   from net.sf.l2j.gameserver.model.base           import Experience
   from net.sf.l2j.gameserver.model.actor.instance import L2PcInstance
   from net.sf.l2j.gameserver.model.quest          import State
   from net.sf.l2j.gameserver.model.quest          import QuestState
   from net.sf.l2j.gameserver.model.quest.jython   import QuestJython as JQuest
    
   qn = "4005_Delevel"
     
   NPC=[6949]
   QuestId     = 4005
   QuestName   = "Delevel"
   QuestDesc   = "custom"
   InitialHtml = "1.htm"
    
   print "importing custom: 4005_Delevel"
    
   class Quest (JQuest) :
       def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
      
       def onEvent(self,event,st) :
           htmltext = event
          
           #Delevel
           if event == "1":
               if st.getQuestItemsCount(57) >= 250000:
                   st.takeItems(57,250000)
                   st.getPlayer().getStat().removeExpAndSp((st.getPlayer().getExp() - Experience.LEVEL[st.getPlayer().getStat().getLevel() - 1]),0)
                   return "1.htm"
               else:
                   htmltext = "You Do Not Have Enough Adena"
           return htmltext
    
       def onTalk (self,npc,player):
           st = player.getQuestState(qn)
           htmltext = "<html><head><body><center>I have nothing to say to you.</center></body></html>"
           st.setState(State.STARTED)
           return InitialHtml
    
   QUEST = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc)
    
   for npcId in NPC:
      QUEST.addStartNpc(npcId)
      QUEST.addTalkId(npcId)

 

 

1.htm

Line number On/Off | Expand/Contract | Select all

 

    <html>
    <head>
    <body>
    <font color="B09877"> Delevel Manager: </font><br>
    <font color="FF0000">Be very careful while using this service, level will not given back by GM's!</font>
    <br><br><br><br><br><br><br><center>
    <button value="Delevel 1 Level" action="bypass -h Quest 4005_Delevel 1" width=200 height=21 back="L2UI_ct1.button_df" fore="L2UI_ct1.button_df"><br>
    <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
    <font color="B09877"> PutHereAShortScript </font>
   </body>
   </html>

 

 

In gameserver\data\html\default put the following 6949.htm file

Line number On/Off | Expand/Contract | Select all

 

    <html><head><title>DelevelNpc</title></head><body>
    <font color="FF0000">Please take a break and vote for us in HopZone
       "YourVotesAdressIfYouWant"</font></br><br>
    <br>
    <img src="L2UI_CH3.onscrmsg_pattern01_2" width=300 height=32>
    <br><br><br><br><br><br><br><br><br><br><center>
    <button value="Delevel Me" action="bypass -h npc_%objectId%_Quest 4005_Delevel" width=200 height=21 back="L2UI_ct1.button_df" fore="L2UI_ct1.button_df"><br>
    <br><br><br><br><br><br><br><br><br><br><br><br><br>
    <font color="B09877">HereAShortScriptTO</font>
    </body>
   </center>
   </html>

 

 

In the gameserver\data go to script.cfg and add the midle line between the two existing

Line number On/Off | Expand/Contract | Select all

 

   

    custom/4000_ShadowWeapons/__init__.py
    custom/4005_Delevel/__init__.py
    custom/5000_MissQueen/__init__.py

 

 

Put the sql line in your custom_npc :

Line number On/Off | Expand/Contract | Select all

 

INSERT INTO `custom_npc` VALUES ('6949', '36477', 'BadGuy', '1', 'RamBase][DelevelNpc', '1', 'LineageNPC.a_fighterguild_teacher_MHuman', '8.00', '23.00', '70', 'male', 'L2Npc', '40', '2444', '2444', '0.00', '0.00', '10', '10', '10', '10', '10', '10', '0', '0', '500', '500', '500', '500', '278', '0', '333', '0', '0', NULL, '50', '120', '', '0', '0', '0', 'LAST_HIT', '0', '0', '0', 'balanced');

 

 

I think this should help to put this quest at work, feel free to modify htm or sql, if you do not like the text that appears, or the name of the NPC, or ID_template of NPC.

L.E. I forgot to say, in game spawn 6949 in the place where you want

 

But now I'm getting this error from: __init__.py.error

 

Error on: C:\l2royalknights\gameserver\data\scripts\custom\4005_Delevel\__init__.py.error.log
Line: -1 - Column: -1

Traceback (innermost last):
  (no code object) at line 0
SyntaxError: ('invalid syntax', ('__init__.py', 2, 4, '   from net.sf.l2j.gameserver.model.base           import Experience'))

 

Does anyone know how to fix it?

 

Your faithfully Mitjuh

 

2 answers to this question

Recommended Posts

  • 0
Posted

what pack do u use ? if u use l2jfree then change net.sf.l2j to com.l2jfree , if l2emu , net.l2emuproject

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Posts

    • https://l2avokado.com/ Hello everyone,   After some time of development, we've decided to open L2Avokado to the public in its current development stage. We're looking for players who enjoy Interlude and would like to help shape the project before its official release.   This isn't a "launch" announcement. Instead, we're inviting the community to log in, explore the server, test the systems we've built, and provide honest feedback. Whether it's bug reports, balance suggestions, progression ideas, or quality-of-life improvements, we'd love to hear them.   Our goal has always been to create an Interlude server that feels familiar while offering a fresh progression experience. We've intentionally avoided custom weapons, armor, and client modifications. Instead, we've focused on redesigning progression through reworked hunting grounds, quests, crafting, and gameplay systems while remaining compatible with a clean Interlude client.   At this stage, the core progression path has been implemented, including the main hunting grounds, quests, custom systems, and events. However, as the project is still under active development, there will inevitably be bugs, balance issues, and areas that require further polishing.   This is exactly why we'd like your help.   We're looking for players who are willing to: Test gameplay and progression. Report bugs and exploits. Suggest balance improvements. Share ideas for new features or quality-of-life changes. Help us build a server that the community genuinely enjoys playing.   The Client and System downloads are already available on our website, so you can jump straight into the game. We're also working on a dedicated launcher that will simplify installation and future updates.   If you're interested in helping develop a unique Interlude project and want your feedback to genuinely influence the direction of the server, we'd love to have you with us.   We look forward to seeing you in-game and hearing your thoughts on Discord. https://l2avokado.com/
    • IAM one of customers of this project. Have anti cheat, have user panel everything is working. Blocking adrenaline trashy plans without any problems.  So just GL for all lin2 project. I get support every time I need it. 
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..