pape90 Posted March 30, 2011 Posted March 30, 2011 Hi all, i'm getting trouble in installing this Npc found in web ( i found 3 or 4 of them, all substantially equal)... can somebody write a guide for a poor noob like me? XD
0 pape90 Posted March 30, 2011 Author Posted March 30, 2011 i create npc with ID 50300... i put the 50300.htm in HTML.. and i put the 50300_PKlist containing 1.htm and init.py file in gameserver - data- script - custom ... after that, i edit the data / script.properties and add the line in custom... start gameserver --> Error on: C:\Users\Nicho\Desktop\L2j Server\gameserver\data\scripts\custom\50300_PKlist\__init__.py.error.log Line: -1 - Column: -1 Traceback (innermost last): File "__init__.py", line 11, in ? ImportError: no module named l2jfree sorry for my BAD english :S
0 Revolver Posted March 30, 2011 Posted March 30, 2011 You should change the imports in order to suit with your datapack. - Rev
0 pape90 Posted March 30, 2011 Author Posted March 30, 2011 You should change the imports in order to suit with your datapack. - Rev in other words? :D
0 Matim Posted March 30, 2011 Posted March 30, 2011 in other words? :D At begining, take a look at sticked guides related with L2J core, modifing, compiling etc. You will understand most important things.
0 Revolver Posted March 30, 2011 Posted March 30, 2011 pape90, First of all what source code are you being using for your server? L2jServer,L2jFree?? Secondly,could you please send me this part of your code? - Rev
0 pape90 Posted March 31, 2011 Author Posted March 31, 2011 I tried to modify the init.py.. now no error, but when i select pvp or pk list, a long script error window appears. Here's the init.py file ( i have l2jserver) # ************************* # PKlist Online # Por ->K<- # Mi primer gran programa en Python, 4 de Julio del 2008 # Este Script es para mostrar Online y por orden, los PKs del server. # El problema que viene luego es la longitud del HTML, uno demasiado grande crasheara al cliente. # ************************* import sys from java.util import Iterator from com.l2jserver.util import Rnd 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 print "importing custom: 50300_PKlist" # *************************************** # Inicializacion de Variables del Quest * # *************************************** NPC=[50300] Precio_ID = 57 QuestId = 50300 QuestName = "PKlist" QuestDesc = "custom" InitialHtml = "1.htm" # ************************ # Creando la Clase Quest * # ************************ class Quest (JQuest) : def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr) # *********************** # Si hablas con el NPC: * # *********************** def onTalk (self,npc,player): return InitialHtml # *********************** # ***************************************************** # Ahora gobernamos los eventos que vienen desde el HTML # ***************************************************** def onEvent(self,event,st): htmltext = event cantidad_pago = st.getQuestItemsCount(Precio_ID) # ********* # PK info * # ********* if event == "1" and cantidad_pago >= 3000 : st.takeItems(Precio_ID,3000) total_asesinados = 0 htmltext_ini = "<html><head><title>Pk Info Online</title></head><body><table width=300><tr><td><font color =\"FF00FF\">Pos.</td><td><center><font color =\"FFFF00\">*** Player ***</color></center></td><td><center>*** Kills ***</center></td></tr>" htmltext_info ="" color = 1 pos = 0 con = L2DatabaseFactory.getInstance().getConnection(None) 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 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" and cantidad_pago >= 3000 : st.takeItems(Precio_ID,3000) total_asesinados = 0 htmltext_ini = "<html><head><title>PvP info Online</title></head><body><table width=300><tr><td><font color =\"FF00FF\">Pos.</td><td><center><font color =\"FFFF00\">*** Player ***</color></center></td><td><center>*** Kills ***</center></td></tr>" htmltext_info ="" color = 1 pos = 0 con = L2DatabaseFactory.getInstance().getConnection(None) 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_pkkills = rs.getString("pvpkills") 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) + " Kills.</center></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" and cantidad_pago >= 100000 : st.takeItems(Precio_ID,100000) total_cantidad = 0 htmltext_ini = "<html><head><title>Adena info Online</title></head><body><table width=300><tr><td><font color =\"FF00FF\">Pos.</td><td><center><font color =\"FFFF00\">*** Name ***</color></center></td><td><center>*** Adenas ***</center></td></tr>" htmltext_info ="" color = 1 pos = 0 con = L2DatabaseFactory.getInstance().getConnection(None) pks = con.prepareStatement("SELECT count,owner_id FROM items WHERE item_id=57 order by count desc limit 50") 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 =\"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>" + cantidad + "</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>" + cantidad + "</center></td></tr>" htmltext_end = "</table><center><font color=\"FFFFFF\">" + "Los TOPS suman " + str(total_cantidad) + " adenas.</center></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 # ************************************************* # Insertando Quest en la lista de Quest disponibles # ************************************************* QUEST = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc) for npcId in NPC: QUEST.addStartNpc(npcId) QUEST.addTalkId(npcId)
0 Matim Posted March 31, 2011 Posted March 31, 2011 First of all, next time put your code in quote/code block (I did it for you now) Secondly, we need error logs to find out what can be wrong.
0 pape90 Posted March 31, 2011 Author Posted March 31, 2011 Resolved. Error in importing, sorry for newbyeness and thx for the patience :D
0 Matim Posted April 1, 2011 Posted April 1, 2011 Resolved. Error in importing, sorry for newbyeness and thx for the patience :D Topic locked.
Question
pape90
Hi all, i'm getting trouble in installing this Npc found in web ( i found 3 or 4 of them, all substantially equal)... can somebody write a guide for a poor noob like me? XD
13 answers to this question
Recommended Posts