Jump to content

Question

Posted

re magkes dn ktlvenw gt apla otan pataw panw sto npc m dixnei Quest me mple grammata tpt allo

 

 

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 = "50300_PKlist"

 

NPC        = 36601

QuestId    = 50300

MIN_LEVEL  = 1

MAX_LEVEL  = 85

QuestName  = "PKlist"

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>PG-L2 PK INFO</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>PG-L2 PVP INFO</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 "# PVP PK INFO Loaded"

3 answers to this question

Recommended Posts

  • 0
Posted

ayto edw einai to htm onomaseto 1.htm kai balto mazi me to __init__.py

 

<html>

  <head>

    <title>Top PvP-Pk Rank's</title>

  </head>

<body>

<center><img src="L2UI_CH3.herotower_deco" width=256 height=32>

<center>

<br>

<td><center><font color="FFFFFF">Hello Stranger,<br> I can inform you about Pk-PvP Stats of the server!</font></center></td>

<br>

<br>

<br>

<tr><td width=270 align="center">

<button action="bypass -h Quest 50300_PKlist 01" value="*Pk Stats*" width=130 height=25 back="L2UI_ct1.button_df" fore="L2UI_ct1.button_df">

</td>

</tr>

<tr><td width=270 align="center">

 </td>

</tr>

<tr><td width=270 align="center">

<button action="bypass -h Quest 50300_PKlist 02" value="*PvP Stats*" width=130 height=25 back="L2UI_ct1.button_df" fore="L2UI_ct1.button_df">

</td>

</tr>

<tr><td width=270 align="center">

 </td>

</tr>

<center><img src="L2UI_CH3.herotower_deco" width=256 height=32></center>

</body>

</html>

 

 

ayto edw einai to script onomase to __init__.py kai balto sto game/data/script/50300_pklist

 

 

 

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 = "50300_PKlist"

 

NPC        = 36601

QuestId    = 50300

MIN_LEVEL  = 0

MAX_LEVEL  = 86

QuestName  = "PKlist"

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>PG-L2 PK INFO</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>PG-L2 PVP INFO</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 "# PVP PK INFO Loaded"

Guest
This topic is now closed to further replies.


  • Posts

    • most eggciting post in 2025 for sure!!!!
    • https://github.com/JulioPradoL2j/L2JDreamV2/commit/8f788b03c40404b72d7a321ef24e113f91a619ac     Descrição Este é um sistema de Reset de Personagem Personalizado criado para servidores L2J, inspirado em mecânicas clássicas de MMORPGs com foco em progressão PvP. Totalmente configurável via XML, este sistema permite criar um ciclo de evolução contínuo, recompensando jogadores que atingem o ápice com benefícios e novas metas.  Principais Funcionalidades Reset ativado ao atingir nível máximo, com requisitos de: Itens específicos Quantidade mínima de PvP Custo em moedas/itens Configuração via arquivo XML: Recompensas personalizáveis (itens, moedas, skills, etc) Redução de EXP ou retorno ao nível inicial Condições específicas para liberar o reset Sistema de Ranking: Rankings de Reset Diário e Mensal Premiação automática para os Top players Rankings reiniciam automaticamente no final do período Suporte a jogadores offline: Reset pode remover skills e aplicar recompensas direto no banco de dados Requisitos Técnicos Baseado em L2J DreamV2 / aCis 409 Compatível com bancos de dados MySQL Leitura de configuração via XML (resetData.xml)    Explicação das Configurações  Requisitos levelMax="80" → o jogador precisa atingir o nível 80. requiredPvps="0" → não exige PvP para resetar. expPenalty="0.8" → perde 20% da EXP total ao resetar. <item required="57-10000000;" /> → exige 10kk Adena.  Recompensas Recompensa fixa por reset: 57-15000 → 15k Adena 6392-3 → 3 unidades de item com ID 6392 Recompensa por skill (exemplo): 3135-4 (até nível 4) 3130-2 (até nível 2) 3131-10 (até nível 10)    Comandos para Administradores (Admin Commands) O sistema conta com comandos dedicados para encerrar manualmente os rankings de reset (diário ou mensal), forçando a distribuição imediata dos prêmios para os jogadores que se destacaram.  Comandos Disponíveis Comando Descrição //reset_end_daily Finaliza manualmente o ranking diário e distribui os prêmios configurados. //reset_end_monthly Finaliza manualmente o ranking mensal e distribui os prêmios configurados.   <?xml version="1.0" encoding="UTF-8"?> <list> <reset levelMax="80" requiredPvps="0" expPenalty="0.8"> <set rankingDisplayLimit="3" /> <set dailyPoints="2" /> <set monthlyPoints="1" /> <set removeResetSkills="true" /> <set logger="false" /> <requiredItems> <item required="57-10000000;" /> </requiredItems> <rewardItems> <item reward="57-15000;6392-3" skill="3135-4;3130-2;3131-10" /> </rewardItems> <prizes enable="true" type="DAILY" time="13:00"> <prize position="1" reward="57-15000;6392-3" /> <prize position="2" reward="57-10000;6392-2" /> <prize position="3" reward="57-5000;6392-1" /> </prizes> <prizes enable="true" type="MONTH" time="00:00"> <prize position="1" reward="57-15000;6392-3" /> <prize position="2" reward="57-10000;6392-2" /> <prize position="3" reward="57-5000;6392-1" /> </prizes> </reset> </list>  
    • This topic reminds me a bit of the old glory days! 😂 
    • Funny part is, i wouldnt make the effort of downvoting you if you weren't constantly sniping my profile to downvote me, and then when i downvote back you cry about it LOL
  • Topics

×
×
  • Create New...

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