Jump to content
  • 0

__init__.py.error.log


Question

Posted

I get the following error:

 

Error on: C:\Lineage Server\Epilogue Server\gameserver\data\scripts\custom\7206_CustomInfo\__init__.py.error.log

Line: -1 - Column: -1

 

Traceback (innermost last):

  File "__init__.py", line 4, in ?

ImportError: no module named net

 

My init file looks as follows:

 

#Jython-based Top PvP Manger
import sys
from java.util                                   import Iterator
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
from net.sf.l2j.gameserver.network.serverpackets import CreatureSay
from net.sf.l2j                                  import L2DatabaseFactory

# ***************************************
# Info of custom quest                  *
# ***************************************

qn = "7206_CustomInfo"

NPCS = [7206]
Precio_ID   = 57

QuestId     = 7206
QuestName   = "CustomInfo"
QuestDesc   = "custom"
InitialHtml = "1.htm"

# ***************************************
# Jython Code                           *
# ***************************************



class Quest (JQuest) :

def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)

def onTalk (self,npc,player):
	return InitialHtml

def onEvent(self,event,st):
	htmltext = event
	cantidad_pago = st.getQuestItemsCount(Precio_ID)

	# *********
	# PK info *
	# *********

	if event == "1" :
		total_asesinados = 0
		htmltext_ini = "<html><head><title>TOP PK</title></head><body><table width=300><tr><td><font color =\"FF0000\"><center>Pos.</center></td><td><center><font color =\"FF0000\">Player name</color></center></td><td><center>Kills</center></td></tr>"
		htmltext_info =""			
		color = 1
		pos = 0
		con = L2DatabaseFactory.getInstance().getConnection()
		pks = con.prepareStatement("SELECT char_name,pkkills FROM characters WHERE pkkills>0 and accesslevel=0 order by pkkills desc limit 15")
		rs = pks.executeQuery()
		while (rs.next()) :
			char_name = rs.getString("char_name")
			char_pkkills = rs.getString("pkkills")
			total_asesinados = total_asesinados + int(char_pkkills)
			pos = pos + 1
			posstr = str(pos)
			if color == 1:
				color_text = "<font color =\"FFFFFF\">"
				color = 2
				htmltext_info = htmltext_info + "<tr><td><center><font color =\"FFFFFF\"><center>" + posstr + "</center></td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
			elif color == 2:
				color_text = "<font color =\"23ADC2\">"
				color = 1
				htmltext_info = htmltext_info + "<tr><td><center><font color =\"23ADC2\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
		htmltext_end = "</table></body></html>"
		htmltext_pklist = htmltext_ini + htmltext_info + htmltext_end
		con.close()
		return htmltext_pklist
	elif event == "1" and cantidad_pago < 3000 :
		htmltext = "<html><head><title>PK info Online</title></head><body><font color =\"FF0000\">Primero pagame...!! son 3000 adenas.</body></html>"
		return htmltext

 

		# **********
	# PvP info *
	# **********

	if event == "2" :
		total_asesinados = 0
		htmltext_ini = "<html><head><title>TOP PvP</title></head><body><table width=300><tr><td><font color =\"FF0000\"><center>Pos.</center></td><td><center><font color =\"FF0000\">Player name</color></center></td><td><center>Kills</center></td></tr>"
		htmltext_info =""			
		color = 1
		pos = 0
		con = L2DatabaseFactory.getInstance().getConnection()
		pks = con.prepareStatement("SELECT char_name,pvpkills FROM characters WHERE pvpkills>0 and accesslevel=0 order by pvpkills desc limit 15")
		rs = pks.executeQuery()
		while (rs.next()) :
			char_name = rs.getString("char_name")
			char_pkkills = rs.getString("pvpkills")
			total_asesinados = total_asesinados + int(char_pkkills)
			pos = pos + 1
			posstr = str(pos)
			if color == 1:
				color_text = "<font color =\"FFFFFF\">"
				color = 2
				htmltext_info = htmltext_info + "<tr><td><center><font color =\"FFFFFF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
			elif color == 2:
				color_text = "<font color =\"23ADC2\">"
				color = 1
				htmltext_info = htmltext_info + "<tr><td><center><font color =\"23ADC2\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
		htmltext_end = "</table></body></html>"
		htmltext_pklist = htmltext_ini + htmltext_info + htmltext_end
		con.close()
		return htmltext_pklist
	elif event == "2" and cantidad_pago < 3000 :
		htmltext = "<html><head><title>PK info Online</title></head><body><font color =\"FF0000\">Primero pagame...!! son 3000 adenas.</body></html>"
		return htmltext

	# *************
	# Adenas info *
	# *************

	if event == "3" :
		total_cantidad = 0
		htmltext_ini = "<html><head><title>Top Adena</title></head><body><table width=300><tr><td><font color =\"FF0000\"><center>Pos.</center></td><td><center><font color =\"FF0000\">Player name</color></center></td><td><center>Adenas</center></td></tr>"
		htmltext_info =""			
		color = 1
		pos = 0
		con = L2DatabaseFactory.getInstance().getConnection()
		pks = con.prepareStatement("SELECT count,owner_id FROM items WHERE item_id=57 order by count desc limit 20")
		rs = pks.executeQuery()
		while (rs.next()) :
			cantidad = rs.getString("count")
			pj_id = rs.getString("owner_id")
			total_cantidad = total_cantidad + long(cantidad)
			pos = pos + 1
			posstr = str(pos)
			charname = con.prepareStatement("SELECT char_name FROM characters WHERE charId=" + pj_id)
			rs2 = charname.executeQuery()
			while (rs2.next()) :
				char_name = rs2.getString("char_name")
			if color == 1:
				color_text = "<font color =\"FFFFFF\">"
				color = 2
				htmltext_info = htmltext_info + "<tr><td><center><font color =\"FFFFFF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + cantidad + "</center></td></tr>"
			elif color == 2:
				color_text = "<font color =\"23ADC2\">"
				color = 1
				htmltext_info = htmltext_info + "<tr><td><center><font color =\"23ADC2\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + cantidad + "</center></td></tr>"
		htmltext_end = "</table></body></html>"
		htmltext_pklist = htmltext_ini + htmltext_info + htmltext_end
		con.close()
		return htmltext_pklist
	elif event == "3" and cantidad_pago < 3000 :
		htmltext = "<html><head><title>Adenas info Online</title></head><body><font color =\"FF0000\">Primero pagame...!! son 100k adenas.</body></html>"
		return htmltext

 

		# *************
	# Nobless info *
	# *************

	if event == "4" :
		total_asesinados = 0
		htmltext_ini = "<html><head><title>Top Nobless order by PvP</title></head><body><table width=300><tr><td><center><font color =\"FF0000\">Pos.</td></center><td><center><font color =\"FF0000\">Player name</color></center></td></tr>"
		htmltext_info =""			
		color = 1
		pos = 0
		con = L2DatabaseFactory.getInstance().getConnection()
		pks = con.prepareStatement("SELECT char_name,pkkills,nobless FROM characters WHERE pkkills>0 and accesslevel=0 order by pkkills desc limit 10")
		rs = pks.executeQuery()
		while (rs.next()) :
			char_name = rs.getString("char_name")
			char_pkkills = rs.getString("nobless")
			pos = pos + 1
			posstr = str(pos)
			if color == 1:
				color_text = "<font color =\"FFFFFF\">"
				color = 2
				htmltext_info = htmltext_info + "<tr><td><center><font color =\"FFFFFF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td></tr>"
			elif color == 2:
				color_text = "<font color =\"23ADC2\">"
				color = 1
				htmltext_info = htmltext_info + "<tr><td><center><font color =\"23ADC2\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td></tr>"
		htmltext_end = "</table></body></html>"
		htmltext_pklist = htmltext_ini + htmltext_info + htmltext_end
		con.close()
		return htmltext_pklist
	elif event == "4" and cantidad_pago < 3000 :
		htmltext = "<html><head><title>PK info Online</title></head><body><font color =\"FF0000\">Primero pagame...!! son 3000 adenas.</body></html>"
		return htmltext

	# **********
	# Clan Top *
	# **********

	if event == "5" :
		total_asesinados = 0
		htmltext_ini = "<html><head><title>TOP Clan</title></head><body><table width=300><tr><td><font color =\"FF0000\"><center>Pos.</center></td><td><center><font color =\"FF0000\">Clan name</color></center></td><td><center>Level</center></td></tr>"
		htmltext_info =""			
		color = 1
		pos = 0
		con = L2DatabaseFactory.getInstance().getConnection()
		pks = con.prepareStatement("SELECT clan_name,clan_level,reputation_score FROM clan_data WHERE clan_level>0 order by clan_level desc limit 10")
		rs = pks.executeQuery()
		while (rs.next()) :
			char_name = rs.getString("clan_name")
			char_pkkills = rs.getString("clan_level")
			total_asesinados = total_asesinados + int(char_pkkills)
			pos = pos + 1
			posstr = str(pos)
			if color == 1:
				color_text = "<font color =\"FFFFFF\">"
				color = 2
				htmltext_info = htmltext_info + "<tr><td><center><font color =\"FFFFFF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
			elif color == 2:
				color_text = "<font color =\"23ADC2\">"
				color = 1
				htmltext_info = htmltext_info + "<tr><td><center><font color =\"23ADC2\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
		htmltext_end = "</table></body></html>"
		htmltext_pklist = htmltext_ini + htmltext_info + htmltext_end
		con.close()
		return htmltext_pklist
	elif event == "5" and cantidad_pago < 3000 :
		htmltext = "<html><head><title>PK info Online</title></head><body><font color =\"FF0000\">Primero pagame...!! son 3000 adenas.</body></html>"
		return htmltext


QUEST = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc)

for npcId in NPCS:
    QUEST.addStartNpc(npcId)
    QUEST.addTalkId(npcId)

 

I cant find the problem :/

Thanks for any help received.

13 answers to this question

Recommended Posts

  • 0
Posted

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

from net.sf.l2j.gameserver.network.serverpackets import CreatureSay

from net.sf.l2j                                  import L2DatabaseFactory

 

if i remember for epilogue is com.sf.l2j or something like this

  • 0
Posted

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

from net.sf.l2j.gameserver.network.serverpackets import CreatureSay

from net.sf.l2j                                  import L2DatabaseFactory

 

if i remember for epilogue is com.sf.l2j or something like this

U're wrong ... for epilogue is com.l2jserver
  • 0
Posted

change this

 

from java.util                                   import Iterator
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
from net.sf.l2j.gameserver.network.serverpackets import CreatureSay
from net.sf.l2j                                  import L2DatabaseFactory

 

for this

 

from java.util                                   import Iterator
from com.l2jserver.gameserver.model.quest           import State
from com.l2jserver.gameserver.model.quest           import QuestState
from com.l2jserver.gameserver.model.quest.jython    import QuestJython as JQuest
from com.l2jserver.gameserver.network.serverpackets import CreatureSay
from com.l2jserver                                 import L2DatabaseFactory

 

 

  • 0
Posted

Thank you and i'll try it asap :)

 

 

EDIT:

 

CAnt seem to get it going but i try to figure it out and learn a bit more about qusts :)

  • 0
Posted

Which means that you are using this version. So the imports have to stay as "net.sf.l2j" and not "com.l2jserver". BUT! The Error log says: "ImportError: no module named net". This means that you are using another Gracia Final Pack. The only thing you'll have to do, will be to change the imports depending on the imports of your serverpack.

Guest
This topic is now closed to further replies.


  • Posts

    • You might also take https://github.com/vercel-labs/agent-skills into consideration
    • Hay Algun datapack de L1 OFF ? 
    • pone los link para descargarlos por fa   
    • Greetings, everyone. I am sharing a configuration designed for any code editor/console with AI agents. This setup allows for expanded context and highly specific skills depending on your project requirements. It also comes with reusable skills ready for immediate use. Current configuration covers: WEB, L2j server datapacks, and L2j dev (including skills for handling decompiled Java datapacks, etc.). I have left a LINK to the original video on which this specific configuration is based. It also contains brief guides on how to implement new skills. You can simply ask your AI agent to review the guide to get started.   https://github.com/zambo420/Supercharge-your-AI-assistant-for-WEB-and-L2-DATAPACKS-dev.-.git   # 🤖 AI Skills Starter Kit - Forum Quick Start > **Supercharge your AI assistant (Claude, Gemini, Copilot)** ## ⚡ Installation in 2 Minutes   ### 1. Download and copy Copy the `Supercharge-your-AI-assistant-for-WEB-and-L2-DATAPACKS-dev.-/` folder to your project root.   ### 2. Rename and structure ``` your-project/ ├── skills/                      # Rename skills_reutilizables → skills │   ├── skill-creator/ │   ├── react-19/               # Copy the ones you need │   ├── typescript/ │   └── setup.ps1               # Copy from templates/ ├── AGENTS.md                    # Copy from templates/AGENTS.md.template └── src/                         # Your code ```   ### 3. Edit AGENTS.md Customize with your skills:   ```markdown   ## Available Skills | Skill | Description | File | |-------|-------------|------| | `react-19` | React 19 patterns | [SKILL.md](skills/react-19/SKILL.md) |   ## Auto-invoke Skills | Action | Skill | |--------|-------| | Working with React components | `react-19` | ```   ### 4. Sync ```powershell .\skills\setup.ps1 ```   ### 5. Done! Restart your AI assistant and start working.   ---   ## 📦 Included Skills (56 Total) ### Frontend - `react-19` - React 19, hooks, RSC - `typescript` - TypeScript patterns - `tailwind-4` - TailwindCSS v4 - `vite` - Build configuration - `zustand-5` - State management - `nextjs-15` - Next.js 15 - `i18next` - Internationalization - `react-router` - React Router v7 ### Backend - `zod-4` - Validation schemas - `ioredis` - Redis caching - `jwt` - JWT authentication - `django-drf` - Django REST Framework ### Testing & AI - `playwright` - E2E testing - `pytest` - Python testing - `ai-sdk-5` - Vercel AI SDK ### Utilities - `skill-creator` - Create new skills - `java-ant-build` - Apache Ant build system - `jira-epic` - Create Jira epics - `jira-task` - Create Jira tasks ### L2J/Game Server (33 skills) - `gameserver-data` - XMLs, multisells, spawns, NPCs - `gameserver-config` - Server configuration files - `authserver-config` - Login server configuration - `client-files` - Client textures, L2Text, system - `lucera2-core` - L2J core patterns, base classes - `lucera2-handlers` - Admin/user commands, bypass - `lucera2-services` - Community Board, ACP, Buffer - `lucera2-scripts` - Quests, NPCs, bosses, events - `lucera2-network` - Network packets - `lucera2-geodata` - Pathfinding, line of sight - `lucera2-ai` - NPC AI, monster behavior - `lucera2-zones` - Zone scripts, restrictions - `lucera2-achievements` - Achievement system - `lucera2-phantoms` - Fake players (bots) - `lucera2-data` - XML/SQL parsers, holders - `lucera2-authserver` - Login server Java code - `lucera2-olympiad` - Olympiad, heroes, nobles - `lucera2-residences` - Castles, clan halls, siege - `lucera2-skills-effects` - Skill effects, conditions - `lucera2-telegram` - Telegram bot integration - `lucera2-events-pvp` - TvT, GvG, CTF events - `lucera2-seasonal-events` - Holiday events - `lucera2-npc-instances` - Custom NPC types - `lucera2-items-inventory` - Items, inventory - `lucera2-clans-alliances` - Clans, wars - `lucera2-voting-ranking` - Voting rewards - `lucera2-siege-duel` - Siege, duel mechanics - `lucera2-pets-summons` - Pets, servitors - `lucera2-promo-rewards` - Promo codes, daily rewards - `lucera2-item-handlers` - Item handlers - `lucera2-instances-dungeons` - Instance dungeons - `lucera2-minigames` - Lottery, Fishing - `lucera2-autofarm` - AutoFarm bot system - `lucera2-party-matching` - Party finder - `lucera2-cursed-weapons` - Zariche, Akamanah - `lucera2-vip-premium` - VIP/premium accounts - `lucera2-extjar-projects` - Creating .ext.jar projects ---   ## 🎯 The Magic Trick The **Auto-invoke** table is the key:   ```markdown ## Auto-invoke Skills   | Action | Skill | |--------|-------| | Creating React components | `react-19` | | Adding TypeScript types | `typescript` | | Writing E2E tests | `playwright` | ```   **Without this table, AI ignores skills.** With it, they load automatically.   ---   ## 📁 Important Files | File | Purpose | |------|---------| | `AGENTS.md` | Main agent configuration | | `skills/setup.ps1` | Syncs to .claude/.gemini/.github | | `skills/*/SKILL.md` | Each skill definition |   ---   ## 💡 Tips 1. **One place only**: Keep all skills in `skills/` 2. **Auto-invoke**: Without this table, it won't work 3. **setup.ps1**: Run after every change 4. **Restart**: AI needs restart to load changes   ---   ## 🔧 Create Your Own Skill   ```markdown --- name: my-skill description: My skill description ---   ## When to Use - When to use this skill   ## Key Patterns - Important patterns   ## Code Examples \`\`\`typescript // Code example \`\`\` ```   Add to AGENTS.md and run `.\skills\setup.ps1`.   ---   ## 🤝 Compatibility - ✅ Claude Code (Antigravity) - ✅ Gemini CLI - ✅ GitHub Copilot - ✅ Cursor - ✅ Any AI that supports AGENTS.md   ---   ## 📚 More Info See `README.md` on github for complete guide and detailed documentation.    
  • 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..

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock