Jump to content

Question

Posted

Hello i search forum for my problem but i don't find sth..  so i post it here...

 

i updated my server pack L2J server Beta to a new revirsion and i have  problem with my custom npcs... like toplist npc

 

the code is this .

import sys
from java.util import Iterator
from com.l2jserver import L2DatabaseFactory
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

qn = "36601_Toplist"

NPC         = 36601
QuestId     = 36601
MIN_LEVEL   = 0
MAX_LEVEL   = 86
QuestName   = "Toplist"
QuestDesc   = "custom"
InitialHtml = "1.htm"
DonateMaster  = "This ain't no free service nubblet! Now get out of my hare... Get it, 'hare'? - That gets me every time!"


class Quest  (JQuest):

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

def onEvent(self,event,st):
	htmltext = event
	level = st.getPlayer().getLevel()
	levelup = 86 - level
	if level < MIN_LEVEL :
		return"<html><head><body>No quicky for you! - Your to young shorty!</body></html>"
	if level > MAX_LEVEL :
	    return"<html><head><body>No quicky for you! - Your to old fatty!</body></html>"

	else:
            		#PK INFO
		if event == "01":
		 con = L2DatabaseFactory.getInstance().getConnection()
		 total_asesinados = 0
		 htmltext_ini = "<html><head><title>PK List</title></head><body><table width=300><tr><td><font color =\"FF00FF\">Pos.</td><td><center><font color =\"FFFF00\">*** Player ***</color></center></td><td><center>*** Kill's ***</center></td></tr>"
		 htmltext_info =""
		 color = 1
		 pos = 0
		 pks = con.prepareStatement("SELECT char_name,pkkills FROM characters WHERE pkkills>0 and accesslevel=0 order by pkkills desc limit 50")
		 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 =\"00FFFF\">"
		      color = 2
		      htmltext_info = htmltext_info + "<tr><td><center><font color =\"FF00FF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
		   elif color == 2:
		      color_text = "<font color =\"FF0000\">"
		      color = 1
		      htmltext_info = htmltext_info + "<tr><td><center><font color =\"FF00FF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
		 htmltext_end = "</table><center><font color=\"FFFFFF\">" + "A Total of " + str(total_asesinados) + " Pk's.</center></body></html>"
		 htmltext_pklist = htmltext_ini + htmltext_info + htmltext_end
		 L2DatabaseFactory.close(con)
		 return htmltext_pklist

            		#PVP INFO
		if event == "02":
		 con = L2DatabaseFactory.getInstance().getConnection()
		 total_asesinados = 0
		 htmltext_ini = "<html><head><title>PvP List</title></head><body><table width=300><tr><td><font color =\"FF00FF\">Pos.</td><td><center><font color =\"FFFF00\">*** Player ***</color></center></td><td><center>*** Kill's ***</center></td></tr>"
		 htmltext_info =""
		 color = 1
		 pos = 0
		 pks = con.prepareStatement("SELECT char_name,pvpkills FROM characters WHERE pvpkills>0 and accesslevel=0 order by pvpkills desc limit 50")
		 rs = pks.executeQuery()
		 while (rs.next()) :
		   char_name = rs.getString("char_name")
		   char_pvpkills = rs.getString("pvpkills")
		   total_asesinados = total_asesinados + int(char_pvpkills)
		   pos = pos + 1
		   posstr = str(pos)
		   if color == 1:
		      color_text = "<font color =\"00FFFF\">"
		      color = 2
		      htmltext_info = htmltext_info + "<tr><td><center><font color =\"FF00FF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pvpkills + "</center></td></tr>"
		   elif color == 2:
		      color_text = "<font color =\"FF0000\">"
		      color = 1
		      htmltext_info = htmltext_info + "<tr><td><center><font color =\"FF00FF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pvpkills + "</center></td></tr>"
		 htmltext_end = "</table><center><font color=\"FFFFFF\">" + "A Total of " + str(total_asesinados) + " PvP's.</center></body></html>"
		 htmltext_pklist = htmltext_ini + htmltext_info + htmltext_end
		 L2DatabaseFactory.close(con)
		 return htmltext_pklist

		if htmltext != event:

			st.exitQuest(1)

	return htmltext



def onFirstTalk (self,npc,player):

   st = player.getQuestState(qn)

   if not st : st = self.newQuestState(player)

   return InitialHtml


QUEST = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc)
QUEST.addStartNpc(NPC)
QUEST.addFirstTalkId(NPC)
QUEST.addTalkId(NPC)
print "###############################"
print "#      Top Lists - Loaded     #"
print "#                             #"

 

and when i start my gameserver.bat show me an error . i go to __init__.py error,log and i see this

 

Error on: C:\server new\game\data\scripts\custom\36601_Toplist\__init__.py.error.log
Line: -1 - Column: -1

Traceback (innermost last):
  File "custom/36601_Toplist/__init__.py", line 6, in ?
ImportError: no module named jython

 

and its true because no jython moduls is at com.l2jserver.gameserver.model.quest.jython .....

 

and here is a foto of my java

 

xe.png

 

any solution ... to change com.l2jserver.gameserver.model.quest.jython import QuestJython as JQuest  to sth else location that will exist jython??

 

thn'x in advance

 

Recommended Posts

  • 0
Posted

i will try again that are you telling me and if it's not working again i will add in my java jython that Cobra gave me...

 

Thats not solution, if you wanna make it work you must re-edit it for your revision in other case there may be errors...

  • 0
Posted

Thats not solution, if you wanna make it work you must re-edit it for your revision in other case there may be errors...

 

yeah in that you are telling me you are right... i change it and i leave it as you tell me and now i try to fix my npc's  to work with my rev. but if is exist eny solution that is more easy than this i'm doing now and someone know .. post it here..

Guest
This topic is now closed to further replies.


  • Posts

    • That's exactly how it’s designed — everything important is handled on the API server side, for example, processing requests to the game server. Each website has its own token/key for authentication; without it, there will be no interaction with the game server. Some data can be stored both on my side and on the server side to avoid making frequent requests to the server, which is logical.   Yes, there’s a lot of old, unused code that just needs to be cleaned up. It was used before, but after major rewrites it was left lying around. It doesn’t interfere with anything — it’s just there and doesn’t affect the system's operation.   Beaver meme kurwa is my favorite. Unfortunately, you don't know Russian — otherwise, you would’ve spotted even more Easter eggs. 😂   I said it’s been installed over 250 times on different domains. You can join my Telegram, there are almost 200 people there — and those are just the ones who entered the chat — and we’ll have a good laugh together at your doubts! 😂😂😂
    • Discord : utchiha_market Telegram : https://t.me/utchiha_market Auto Buy Store : https://utchihamkt.mysellauth.com/ Join our server for more products : https://discord.gg/qtkJASMbKV https://campsite.bio/utchihaamkt  
    • Discord : utchiha_market Telegram : https://t.me/utchiha_market Auto Buy Store : https://utchihamkt.mysellauth.com/ Join our server for more products : https://discord.gg/qtkJASMbKV https://campsite.bio/utchihaamkt  
    • i saw somewhere that: $var = (int) $_POST['some_id'] ?? string::error_class('text'); it was when i gave up and deleted the sources let him, he does not even understand what cross site or mitm means   still waiting for any client of yours so i can play with them     DUDE IM GONNA CALL YOU BoberKurwa FROM NOW ON!! rename your account aswell! BoberKurwa!   Note: what happend to your chatgpt answers boberkurwa did your subscription of $12.5/$20 ended?   it is PSR12 standard
    • if i was you i would check first argentinian developer team to learn and contribute then start my own project privatly and then practice in free coding for my self, then you would be ready to learn standards and code out of nothing, and if you fail means you are in good path, if you win you are in for higher level, whatever you do be persistent and focused, thats what i did when i had time.
  • Topics

×
×
  • Create New...