Ir para conteúdo


[Tutorial] NPC BUFFER


207 respostas neste tópico

#21    KhayrusS

KhayrusS
  • "O" Cara

  • 3.957 posts

Postado 26 maio 2009 - 13:22

poxa, parabens ótimo...

...mais no meu server esta ocorrendo um erro de quest...

diz que tipo, eu não estou destinado a esta quest, ou não tenho o criterio a ser usado.


...sabe oq é isto?? obrgiado!!


Pelo que andei vendo o l2dot é basiado em l2jserver assim como o l2jfree, o problema deve ser apenas o path para os arquivos java;

import sys
from net.sf.l2j.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from net.sf.l2j.gameserver.datatables import SkillTable
from net.sf.l2j import L2DatabaseFactory
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


No caso do l2dot ficaria assim:

import sys
from com.l2dot.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from com.l2dot.gameserver.datatables import SkillTable
from com.l2dot import L2DatabaseFactory
from com.l2dot.gameserver.model.quest import State
from com.l2dot.gameserver.model.quest import QuestState
from com.l2dot.gameserver.model.quest.jython import QuestJython as JQuest

Ps: Ainda não testei mas creio que o problema seja esse

#22    Rhion

Rhion
  • Apedeuta

  • 1.278 posts

Postado 01 junho 2009 - 13:58

Galera como faz pro npc buffer cobrar um item pelos buffs ao invés de adena?E como faz pra esse certo item ser um item de quest?
Quem poder me ajudar agradeço desde já
"In a way, the supernatural is what's behind the curtain. Normally, you only need to see what's happening on stage. That's how reality works. If you don't know then it's for the best. Actually, learning about the supernatural only increases the number of things you don't know."'

#23    KhayrusS

KhayrusS
  • "O" Cara

  • 3.957 posts

Postado 01 junho 2009 - 15:41

ADENA_ID=57


Onde estiver assim, também pode ser outro nome dependendo do buffer, só colocar o id do item no lugar do id da adena
Para o item ser de quest é na tabela etcitem coluna item_type ( ou algo assim) colocar quest

Editado por KhayrusS, 01 junho 2009 - 15:41.


#24    Neill

Neill
  • Noob

  • 220 posts

Postado 01 junho 2009 - 22:16

KhayrusS, Parabéns...muito show.

Poderia me dizer onde aumento o tempo dos buffs, os meus ficaram com 40 minutos.

Obrigado.

[img]http://img230.imageshack.us/img230/2968/banner2top.gif[/img]


#25    Rhion

Rhion
  • Apedeuta

  • 1.278 posts

Postado 02 junho 2009 - 08:07

Onde estiver assim, também pode ser outro nome dependendo do buffer, só colocar o id do item no lugar do id da adena
Para o item ser de quest é na tabela etcitem coluna item_type ( ou algo assim) colocar quest


Mas no etcitem ñ tem o einhasad gold , se eu adicionar e trocar isso , ele vai virar de quest e dropar do mob q eu escolher?Tipow , eu ja vi item de quest dropar de mob la em pagans temple...

Editado por Rhion, 02 junho 2009 - 08:08.

"In a way, the supernatural is what's behind the curtain. Normally, you only need to see what's happening on stage. That's how reality works. If you don't know then it's for the best. Actually, learning about the supernatural only increases the number of things you don't know."'

#26    KhayrusS

KhayrusS
  • "O" Cara

  • 3.957 posts

Postado 02 junho 2009 - 09:42

Vai dropar sim ;)


KhayrusS, Parabéns...muito show.

Poderia me dizer onde aumento o tempo dos buffs, os meus ficaram com 40 minutos.

Obrigado.


editando tempo de buff

Editado por KhayrusS, 02 junho 2009 - 09:45.


#27    Gonorreia

Gonorreia
  • ForeverAlone

  • 4 posts

Postado 04 junho 2009 - 12:26

Opa, galera, estou com 1 dúvida:

Como coloca Cancelation por template?

Tentei esse código

<a action="bypass -h npc_%objectId%_Buff 1056">Cancelation</a><br>

mas não funciona.

Uso o L2j 6200 do k4n4bs, e eu adicionei o Cancelation na tabela NPC_buffer.

Dá um help ai plz!

#28    KhayrusS

KhayrusS
  • "O" Cara

  • 3.957 posts

Postado 04 junho 2009 - 16:01

Acho que não tem como, pelo menos nunca vi

#29    prchakal

prchakal
  • ForeverAlone

  • 1 posts

Postado 14 junho 2009 - 03:25

Seria bom você dizer o que é um NPC BUFFER, ja que é um tutorial e leigos como eu não tem a mínima idéia do que são.

#30    KhayrusS

KhayrusS
  • "O" Cara

  • 3.957 posts

Postado 14 junho 2009 - 11:08

NPC buffer nada mais é do que um npc que dá buff aos players!!

cobrando um certo valor de adena ou qualquer outro item, esses npcs foram criados com base no newbies helpers e dos npc da clan hall ^^

#31    Alx

Alx
  • ForeverAlone

  • 37 posts

Postado 20 agosto 2009 - 10:32

KhayrusS qro saber uma coisa mano qro saber como eu faço para so se buffar por acclevelou por donator pq no l2jdot tem o comando //setdonator eu acho ai tem como coloca so para quem for donator para se buffar?


Editado por Alx, 20 agosto 2009 - 10:33.


#32    Neill

Neill
  • Noob

  • 220 posts

Postado 20 agosto 2009 - 10:55

KhayrusS qro saber uma coisa mano qro saber como eu faço para so se buffar por acclevelou por donator pq no l2jdot tem o comando //setdonator eu acho ai tem como coloca so para quem for donator para se buffar?


Você pode criar uma moeda de buff vip para dar aos donators. Cria um buffer por script que vai checar se o player possui esta moeda na aba quest do inventário e dar os buffs.

qn = "99902_NPCBuffer"

NPC=[9105]
ADENA_ID=99995 --------> Moeda buffer vip
QuestId = 99902
QuestName = "NPCBuffer"
QuestDesc = "custom"
InitialHtml = "1.htm"

print "Importing custom: 99902: NPCBuffer"

class Quest (JQuest) :

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


def onEvent(self,event,st):
htmltext = event
count=st.getQuestItemsCount(ADENA_ID) ------> Aqui ele verifica se tem a moeda.
if count < 1 or st.getPlayer().getLevel() < 1 :
htmltext = "<html><head><body>Voce Nao Tem Buffer VIP COIN!<br></body></html>" ---> Não tem..
else:
st.takeItems(ADENA_ID,0)
st.getPlayer().setTarget(st.getPlayer())

if event == "1":
st.takeItems(ADENA_ID,0) ------> Tem a moeda, segue dando os buffs
st.getPlayer().useMagic(SkillTable.getInstance().getInfo(9951,5),False,False)
return "1.htm"
st.setState(COMPLETED)

Espero ter ajudado.

[img]http://img230.imageshack.us/img230/2968/banner2top.gif[/img]


#33    Guma

Guma
  • L2JBrasileiro

  • 5.477 posts

Postado 24 agosto 2009 - 03:23

bah ajudou basntande euu :D valewwwww

[img]https://www.ohloh.net/accounts/65499/widgets/account_tiny.gif[/img]

svn | timeline
activeMember.sendMessage("Quase tudo é possível quando se tem dedicação e habilidade. Grandes trabalhos são realizados não pela força, mas pela perseverança")


#34    Nick

Nick
  • LoL Br

  • 724 posts

Postado 01 setembro 2009 - 19:38

Khayruss tem como fazer um NPC de full buff, mas na hora q pessoal entrar nas olly corta os buff. tipo

como eh full buff, tem gente q se inscreve nas olly quando falta 3 segundos pra ser chamado ele pega um full buff

e chega dentro do colizeu sendo buffado :huh:

#35    Neill

Neill
  • Noob

  • 220 posts

Postado 01 setembro 2009 - 19:48

Khayruss tem como fazer um NPC de full buff, mas na hora q pessoal entrar nas olly corta os buff. tipo

como eh full buff, tem gente q se inscreve nas olly quando falta 3 segundos pra ser chamado ele pega um full buff

e chega dentro do colizeu sendo buffado :huh:


Olha nas suas configs das oly. Sempre tem uma opção de zerar os buffs.

[img]http://img230.imageshack.us/img230/2968/banner2top.gif[/img]


#36    Nick

Nick
  • LoL Br

  • 724 posts

Postado 02 setembro 2009 - 11:06

Neill obrigado por tentar ajudar, mas eh o seguinte, essa opção esta funcionando mas ela só anula os buff's q o player tem no momento q é chamado, no entanto eles pegam full buff e chegam sendo buffados dentro do colizeu.

#37    chucknorrisxd

chucknorrisxd
  • Muito Noob

  • 92 posts

Postado 05 setembro 2009 - 20:52

O MAN AI TA TUDO SERTINHO LA NA HORA QUE FUI CRIAR O NPC BUF . MAIS QUERIA SABER COMO FAIZ PARA COLCOAR AS OPCAO . DO FULL BUFF . TIPO OPCAO FULL MAGO . FULL ARQUEIRO ETC... ESSAS OPCAO E TAMBEM BUFAR MANUALMENTE ??? AEW VLW AEW E VO ESERAR A RESPOSTA OKS .. VLW ...

Editado por KhayrusS, 05 setembro 2009 - 21:03.


#38    KhayrusS

KhayrusS
  • "O" Cara

  • 3.957 posts

Postado 05 setembro 2009 - 21:12

1º. Não tem necessidade de dá quote no poste inteiro

Vou tentar te esplicar é bem fácil de fazer e de entender

#Wind Walk
if event == "2":
st.takeItems(ADENA_ID,200)
SkillTable.getInstance().getInfo(1204,2).getEffects(st.getPlayer(),st.getPlayer(
))
st.getPlayer().restoreHPMP()
return "2.htm"
st.setState(COMPLETED)


Aqui está o exemplo do wind walk, mas eu quero adicionar outra skill ai então o que eu tenho que fazer é isso:

if event == "2":
st.takeItems(ADENA_ID,200)
SkillTable.getInstance().getInfo(1204,2).getEffects(st.getPlayer(),st.getPlayer(
))
SkillTable.getInstance().getInfo(1257,3).getEffects(st.getPlayer(),st.getPlayer(
))

st.getPlayer().restoreHPMP()
return "2.htm"
st.setState(COMPLETED)


O que eu fiz?

Simples só adicionei mais uma coisa pro npc fazer quando você clicar no event 2
assim você pode adicionar quantos buffs você quiser nele

#39    MR-TRIPLOX

MR-TRIPLOX
  • ForeverAlone

  • 27 posts

Postado 19 setembro 2009 - 17:47

'hm

#40    ZInho

ZInho
  • Muito Noob

  • 82 posts

Postado 15 outubro 2009 - 12:42

nao consegui colocar para se buffar soh donater com uma moeda donate
fiz = e ainda buffa pela adena normal.


qn = "9999_NPCBuffer"

NPC=[40008]
ADENA_ID=4356 <-- moeda donate
QuestId = 9999
QuestName = "NPCBuffer"
QuestDesc = "custom"
InitialHtml = "1.htm"

print "Importing custom: 9999: NPCBuffer"

class Quest (JQuest) :

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


def onEvent(self,event,st):
htmltext = event
count=st.getQuestItemsCount(ADENA_ID)
if count < 200 or st.getPlayer().getLevel() < 40 :
htmltext = "<html><head><body> Voce nao pode receber buffs<br></body></html>"
return "7.htm"
else:
st.takeItems(ADENA_ID,0)
st.getPlayer().setTarget(st.getPlayer())

if event == "1":
st.takeItems(ADENA_ID,0)
st.getPlayer().useMagic(SkillTable.getInstance().getInfo(9951,5),False,False)
return "1.htm"
st.setState(COMPLETED)

if event == "2":
st.takeItems(ADENA_ID,0)
SkillTable.getInstance().getInfo(1240,3).getEffects(st.getPlayer(),st.getPlayer(
))
return "2.htm"
st.setState(COMPLETED)

if event == "3":
st.takeItems(ADENA_ID,0)
SkillTable.getInstance().getInfo(1032,3).getEffects(st.getPlayer(),st.getPlayer(
))
return "2.htm"
st.setState(COMPLETED)
......



Sabe por que esta cobrando adena ainda ?

Editado por ZInho, 15 outubro 2009 - 13:26.

[img]http://img15.imageshack.us/img15/985/assinaturaua.jpg[/img]




0 usuário(s) está(ão) lendo este tópico

0 membros, 0 visitantes, 0 usuários anônimos

© L2jBrasil - Todos os direitos reservados
NCsoft©, the interlocking NC logo, Lineage© II, and all associated logos and designs are trademarks or registered trademarks or service marks of NCsoft Corp.
All rights reserved and other trademarks are the property of their respective owners.