Ir para conteúdo
Entre para seguir isso  
Big Smoke

[N:Fácil] Colocando NPC de ACC...

Ajudei você?  

63 votos

  1. 1. Ajudei você?



Recommended Posts

Big Smoke    0
Big Smoke

Olá,

Como eu havia prometido eu vou colocar o tutorial de como colocar Acc Manager NPC...

Mais antes:

Atenção:

 

O NPC deve ser possicionado em um lugar que outros players com acc ja criada não possam subir/descer/olhar.

 

Por que?

Se um player com acc ja criada ver o otro criando poderá roubar sua senha e account para no futoro hackiar.

Então CUIDADO!

 

 

<div align="center">Primeiro Passo: Criando o NPC.</div>

 

Vá na pasta do seu OT, depois na pasta data e depois NPC,

Copie qualquer um e renomeie para: Acc Manager

 

Depois de ter Renomiado o arquivo da pasta seuot/data/npc aperte botão direito e depois EDITAR ( 2º Opção)

Irá Aparecer uma tela bloco de notas apague tudu oque está dentro e ponha isto:

 

<?xml version="1.0"?>

<npc name="Acc Manager" script="data/npc/scripts/manager.lua" access="3">

    <look type="1448" head="57" body="59" legs="40" feet="76"/>

</npc>

 

Depois salve e feche o bloco de notas que foi renomeiado para Acc Manager.

 

Agora vá na pasta data/npc/scripts copie qualquer um, botão direito editar..

Abrirá um bloco de notas apague tudu e ponha isto:

 

 

---little config-----------------------------------------
templex = 160
templey = 48
templez = 7
maxnamelen = 20
maxpasslen = 20
startlvl = 8
startexp = 4200
vocations = 1
healthstart = 185
manastart = 35
depoitemid = 2591
promoted = 0
---------skills-------------------------
--knight-------
kmlvl = 0
kfist = 10
kclub = 10
ksword = 10
kaxe = 10
kdist = 10
kshield = 10
kfish = 10
kcap = 400
--pall------------
pmlvl = 0
pfist = 10
pclub = 10
psword = 10
paxe = 10
pdist = 10
pshield = 10
pfish = 10
pcap = 400
---drut i sorc----
mmlvl = 0
mfist = 10
mclub = 10
msword = 10
maxe = 10
mdist = 10
mshield = 10
mfish = 10
mcap = 400
---end skills -------------------------------
--~Tr0p5 (20% and players.xml)
---end little config-----------------------------------------
focus = 0
talk_start = 0
target = 0
following = false
attacking = false
accstatus = 0
seksik = 3
myname = ''
mypass = ''
allow_pattern = '^[a-zA-Z -]+$'
allow_pattern2 = '^[a-zA-Z0-9 -]+$'
origmsg = ''
mypasscheck = ''
mynamecheck = ''
vocation = 0


function onThingMove(creature, thing, oldpos, oldstackpos)

end


function onCreatureAppear(creature)

end


function onCreatureDisappear(cid, pos)
if focus == cid then
selfSay('Good bye then.')
focus = 0
talk_start = 0
end
end


function onCreatureTurn(creature)

end
function msgcontains(txt, str)
return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))
end


function onCreatureSay(cid, type, msg)
origmsg = msg
msg = string.lower(msg)



if (msgcontains(msg, 'hi') and focus == 0) and getDistanceToCreature(cid) < 4 then
selfSay('Olá. Se quiser ser homem diga -man- , se quiser ser mulher diga -woman-.')
accstatus = 1
myname = ''
mypass = ''
myaccnumber = 0
focus = cid
talk_start = os.clock()


elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then
selfSay('Wait..')


elseif focus == cid then
talk_start = os.clock()

if accstatus == 1 then
if msgcontains(msg, 'man') then selfSay('What name do you want?')
seksik = 1
accstatus = 2
elseif msgcontains(msg, 'woman') then
selfSay('Que nick voce quer?')
seksik = 0
accstatus = 2
end




elseif accstatus == 66 then
if msgcontains(msg, 'paladin') then
vocation = 3
selfSay('O lutador sagrada da distancia?')

elseif msgcontains(msg, 'sorcerer') then
vocation = 1
selfSay('O poderoso bruxo sorcerer?')

elseif msgcontains(msg, 'druid') then
vocation = 2
selfSay('O guerreiro magico da natureza?')

elseif msgcontains(msg, 'knight') then
vocation = 4
selfSay('O guerreiro de armas pesadas?')
else
selfSay('Diga denovo.')
end

accstatus = 67


elseif accstatus == 2 then
myname = origmsg
mynamecheck = msg
if string.len(mynamecheck) <= maxnamelen then
if string.find(mynamecheck, allow_pattern) then
if io.open("data/players/"..myname..".xml" , "r") == nil then
selfSay('Ok. '..myname..' eh seu nome?')
accstatus = 3
else
selfSay('Este nome jah está sendo usado, por favor diga outro.')
end
else
selfSay('Caracteres ilegais em seu nick, por favor diga outro.')
end
else
selfSay('Nome muito longo, por favor diga outro.')
end
elseif msgcontains(msg, 'yes') then
if accstatus == 3 then
if vocations == 0 then
selfSay('Ok, diga-me sua senha')
vocation = 0
accstatus = 4
else
selfSay('Que vocação voce deseja ser?')
accstatus = 66
end
elseif accstatus == 5 then
if seksik == 0 then
selfSay('Otimo! Voce eh mulher chamada: '..myname..' sua senha eh: '..mypass..'. Certo ?')
else
selfSay('Otimo! Voce eh homem chamado: '..myname..' sua senha eh: '..mypass..'. Certo ?')

end
accstatus = 6
elseif accstatus == 6 then
selfSay('Ok, riga -rand- para eu escolher sua account.')
accstatus = 7
elseif accstatus == 67 then
selfSay('Diga-me sua senha.')
accstatus = 4
end
elseif msgcontains(msg, 'not') then
if accstatus == 3 then
selfSay('Escolha outro.')
accstatus = 2
elseif accstatus == 5 then
selfSay('Escolha outro.')
accstatus = 4
elseif accstatus == 6 then
selfSay('Vamos de novo, se quiser ser homem diga -man- , se quiser ser mulher diga -woman-.')
accstatus = 1
elseif accstatus == 67 then
selfSay('Diga-me sua vocacao de novo')
accstatus = 66
end
elseif accstatus == 4 then
mypass = origmsg
mypasscheck = msg
if string.len(mypasscheck) <= maxpasslen then
if string.find(mypasscheck, allow_pattern2) then
selfSay('sua senha eh: '..mypass..' Certo ?')
accstatus = 5
else
selfSay('Caracteres ilegais.')
end
else
selfSay('Muito longo.')
end

elseif msgcontains(msg, 'rand') and accstatus == 7 then
if manastart == 0 then
manastartc = 1
else
manastartc = manastart
end
if healthstart == 0 then
healthstartc = 1
else
healthstartc = healthstart
end
if vocations == 0 then
mlvl = 1
fist = 10
club = 10
sword = 10
axe = 10
dist = 10
shield = 10
fish = 10
cap = 100
else
if vocation == 1 or vocation == 2 then
mlvl = mmlvl
fist = mfist
club = mclub
sword = msword
axe = maxe
dist = mdist
shield = mshield
fish = mfish
cap = mcap

elseif vocation == 3 then
mlvl = pmlvl
fist = pfist
club = pclub
sword = psword
axe = paxe
dist = pdist
shield = pshield
fish = pfish
cap = pcap
elseif vocation == 4 then
mlvl = kmlvl
fist = kfist
club = kclub
sword = ksword
axe = kaxe
dist = kdist
shield = kshield
fish = kfish
cap = kcap

end
end

myaccnumber = math.random(100000,999999)
if io.open("data/accounts/"..myaccnumber..".xml" , "r") == nil then
selfSay('Sua acc eh: '..myaccnumber..' Diga -next- para temrinar, e lembre-se, jogue sua backpack fora quando começar')
accstatus = 8
f = assert(io.open("./data/accounts/"..myaccnumber..".xml", "w"))
f = io.open("./data/accounts/"..myaccnumber..".xml", "w")
f:write("<?xml version="1.0"?><account pass=""..mypass.."" type="1" premDays="0"><characters><character name=""..myname..""/></characters></account>")
f:close()
f = assert(io.open("./data/players/"..myname..".xml", "w"))
f = io.open("./data/players/"..myname..".xml", "w")
f:write("<?xml version="1.0"?><player name=""..myname.."" id="" ..myaccnumber.."" account=""..myaccnumber.."" sex=""..seksik.."" lookdir="2" exp=""..startexp.."" voc=""..vocation.."" level=""..startlvl.."" access="0" cap=""..cap.."" maglevel=""..mlvl.."" maxdepotitems="1000" lastlogin="0" lastlogout="0" premmium="0" promoted=""..promoted.."" soul="100" warning="0" red="0" banTicks="0" reason="" rook="0" sleeping="0" knowaddon="0" lookaddon="0"><spawn x=""..templex.."" y=""..templey.."" z=""..templez..""/><temple x=""..templex.."" y=""..templey.."" z=""..templez..""/><health now=""..healthstart.."" max=""..healthstartc.."" food="0"/><mana now=""..manastartc.."" max=""..manastartc.."" spent="0"/><look type="128" head="77" body="79" legs="78" feet="77"/><guild name="" rank="" nick="" id=""/><skills><skill skillid="0" level=""..fist.."" tries="0"/><skill skillid="1" level=""..club.."" tries="0"/><skill skillid="2" level=""..sword.."" tries="0"/><skill skillid="3" level=""..axe.."" tries="0"/><skill skillid="4" level=""..dist.."" tries="0"/><skill skillid="5" level=""..shield.."" tries="0"/><skill skillid="6" level=""..fish.."" tries="0"/></skills><ban comment="" action=""/><skull redskulltime="0" redskull="0"/><deaths/><spells/><inventory><slot slotid="3"><item id="1988"><inside><item id="2120"/><item id="2509"/><item id="2459"/><item id="5710"/></inside></item></slot><slot slotid="4"><item id=""/></slot><slot slotid="6"><item id="2398"/></slot><slot slotid="7"><item id="2649"/></slot><slot slotid="8"><item id="2643"/></slot></inventory><depots><depot depotid="1"><item id=""..depoitemid..""><inside><item id="2594"/></inside></item></depot></depots><storage/><viplist/></player>")
f:close()
r22 = math.random(10,99999)
h = io.open("./data/players/players.xml", "r")
h:read()
doop = h:read("*a")
h:close()
g = io.open("./data/players/players.xml", "w")
g:write("<players>n<player guid=""..r22..""  name=""..myname..""/>n"..doop.."n")
g:close()

else
selfSay('Error say --rand-- again')
end



elseif msgcontains(msg, 'next') and accstatus == 8 then
selfSay('Number: '..myaccnumber..' password: '..mypass..'. by ~Tr0p5')
accstatus = 0




elseif string.find(msg, '(%a*)bye(%a*)') and getDistanceToCreature(cid) < 4 then
selfSay('Até mais, ' .. creatureGetName(cid) .. '!')
focus = 0
accstatus = 0
myname = ''
mypass = ''
myaccnumber = 0
seksik = ''
talk_start = 0
end
end
end


function onCreatureChangeOutfit(creature)

end


function onThink()
if (os.clock() - talk_start) > 30 then
if focus > 0 then
selfSay('Next please!')
end
focus = 0
end
if focus ~= 0 then
if getDistanceToCreature(focus) > 5 then
selfSay('Good bye!')
focus = 0
end
end
end

 

Feito isto salve tudo e pronto está pronto o seu NPC acc manager mais...

Para que quando os players criarem acc e eles aparecerem no templo certinho procure no MAP EDITOR o lugar que você quer o templo e depois no scripit acima procure isso:

templex = 160

templey = 48

templez = 7

 

No meu o map editor tava assim o meu templo la no canto:

 

parte1ia2.png

 

No meu tava assim eu não sei o de vocês pode ficar 900 456 7 depende é só ir no :

 

templex = 160

templey = 48

templez = 7

 

E mudar!

 

<div align="center">Segundo Passo: Colocando o NPC e o char que vai criar acc.</div>

 

Para colocar o seu NPC em algum lugar do mapa para os chars forem criados eu recomendo ir no map editor e criar tipo um prediu com 5 andares e por 1 Acc Manager em cada andar:

 

parte2db0.png

 

A imagem acima explica como por os NPC e os char.

 

Os char são facil, faça uma conta (1/1) e faça 5 chars (Um em cada andar),

Após isso você vai prescizar colocar o NPC no map para isso vá na pasta data/word e procure por npc.xml (Botão direito EDITAR) aparecera um bloco de notas abra umas 5 tag e faça isso:

 

<npc name="Acc Manager" x="570" y="714" z="0" dir="2"/>
<npc name="Acc Manager" x="570" y="714" z="1" dir="2"/>
<npc name="Acc Manager" x="570" y="714" z="2" dir="2"/>
<npc name="Acc Manager" x="570" y="714" z="3" dir="2"/>
<npc name="Acc Manager" x="570" y="714" z="4" dir="2"/>

 

Na parte :

 

x="570" y="714" z="4" dir="2"/>

 

Será a posição em que o NPC vai aparecer quando você abrir o OT:

 

(As cordenadas do prédio de 5 andares pode ser vista no MAP EDITOR)

 

PRONTO!

Agora você não vai prescizar criar SITES para criar accs é só fazer isso ai que ja deu!

Duvidas postem aqui!

Responderei quando for possivel!

Obrigado por leem meu TUTORIAL eu demorei pacas pra fazer por favor comentem! eu ficaria agradecido!

 

Ajudei você?

Doe pelo menos 10 Ot$ para min!

 

Desde já, obrigado.

 

//Big Smoke, meu nick verdadeiro Don Rodrigo.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Razor    1
Razor

MUITO BOM!

Estava faltando um tutorial desse no forum!

Obrigado :)

 

Aprovado e movido.

 

esK~

Compartilhar este post


Link para o post
Compartilhar em outros sites
Vurang    0
Vurang

Aew manow bom tuto

 

 

sop uma duvida eli funfa em 7.92?

c sim em da um tioke ae

 

vlw

 

flws

Compartilhar este post


Link para o post
Compartilhar em outros sites
Big Smoke    0
Big Smoke

Olá,

@Vurang

Eu tenho quase a certeza que sim, vou testar aqui e ver se eu consigo, se consiguir eu posto aqui.

EDIT: Não pegou mais eu atualizarei para 7.92 em breve.

@Razor

Obrigado, sempre colocarei tutorias quando for possivel.

@Topic

Eu pesso por favor comentem por favor!!

Compartilhar este post


Link para o post
Compartilhar em outros sites
Perfect Storm    0
Perfect Storm

Bom mt gente que não gosta de ter seu site usa =P ajuda mt gente

 

 

Flws =P

Compartilhar este post


Link para o post
Compartilhar em outros sites
Morbi    0
Morbi

Nuss, até agora ta dando td certo... to conseguindo fazer certinho, eu to sem OT$ pra te doar, mas quando eu tiver eu te doo... vlw depois respondo se deu td certo flw

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
Morbi    0
Morbi

Nuss, terminei de fazer o NPC Acc Manager (tudo certinho), olha vc ta de parabéns... vlw, meu OT agora ta funcionando bem, só falta fazer alguns ajustes no mapa, scripts, NPCs, e etc... ai ja posso bota ele on pra players....

 

vlw

fuiiiiiiii

Compartilhar este post


Link para o post
Compartilhar em outros sites
The_Zoio    0
The_Zoio

muito bom, mas como eu mudo os itens que o char vai usar quando nascer, e colocar rope e shovel na BP??

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
DarkElf    0
DarkElf

Muito Bom,

 

Realmente nunca vi um totu de como colocar NPC de ACC

 

Aprovado

 

Vlws

 

-------------------

Obrigado a todos,

Membro nº: 26,747

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
DiRtY    0
DiRtY

deu erro aki :|

 

qd dou /s acc manager cai o tibia e fica dando issu no OT

 

imagemid6.jpg

Compartilhar este post


Link para o post
Compartilhar em outros sites
Big Smoke    0
Big Smoke

@DiRtY

Você tem certeza que colocou:

 

<?xml version="1.0"?>

 

<npc name="Acc Manager" script="data/npc/scripts/manager.lua" access="3">

 

<look type="1448" head="57" body="59" legs="40" feet="76"/>

 

</npc>

 

Certinho na pasta data/npcs?

 

Não pode ter nenhuma letra a mais ou a menos senão buga!

 

Ou você errou no arquivo do SCRIPT:

 

manager.lua

 

não pode ter erro de ortagrafia

 

@The_Zoio

Irei atualizar o tutorial em breve!

 

@All

Obrigado!

Comentem

Compartilhar este post


Link para o post
Compartilhar em outros sites
jonatas    0
jonatas

Cara Aki Deu E Fiko Uma Beleza,Os PLayer Gostaram smile.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites
brparra    0
brparra

Aki deu o Mesmo erro... o arquivo .Lua ta certo bom pelomenos do modo que vc falou pra fazer...

 

acho eu que o erro está nas cordenadas, tem como vc explica esta linha do arquivo .lua.

 

o certo é ficar assin: <spawn x="160" y="54" z="7"/><temple x="160" y="54" z="7"/>

 

como é ?

 

obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites
BieL    1
BieL

vlw

vo usa no meu ot

flw

Compartilhar este post


Link para o post
Compartilhar em outros sites
vini_91    0
vini_91

 

 

deu erro aki :|

 

qd dou /s acc manager cai o tibia e fica dando issu no OT

 

imagemid6.jpg[/b]

 

deu msm erro aki, o problema é no arquivo .lua

deve ter algo a - ou a +

Compartilhar este post


Link para o post
Compartilhar em outros sites
Niguem    0
Niguem

Aew Vlw Pelo Acc Maneger Mais eu acho que vc deve atualizar issu para 7.92

n sei fazer muito bem wink.gif

gostaria de fazer

tentei n funfou na 7.92

tou pessando em correr para site ;p

 

tongue.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites
dingo    0
dingo

Muito bom, só me diz uma coisa um prédio não daria pra um acc ve o otro?

Compartilhar este post


Link para o post
Compartilhar em outros sites
Sakz    0
Sakz

Ótimo tutorial, simples porém útil.

 

Parabéns, mais também agora quase todos os OT's estão vindo com Acc Manager, mesmo assim esse seu está bem bom. :}~

 

APROVADO

 

Bom, como já falei muitos OT's de hoje em dia estão vindo com Acc Manager, mais é sempre bom ficar sabendo um pouco mais né ?

 

Parabéns, bom trabalho.

 

Abraços!

 

[b//Blade\\[b/]

Compartilhar este post


Link para o post
Compartilhar em outros sites
rhcorr    0
rhcorr

Aqui também deu esse erro

('>' expected near '1.0')

Lua error: attempt to call a nil value

Backtrace:

Já botei IGUAL ao que você postou e não funcionou do mesmo jeito.

manager.lua certo, npc certinho.

Parece ser um problema com Ots 7.8(1)

 

Esse script é pra 7.6?

Gostaria que resolvesse esse problema :<

Abrass

Compartilhar este post


Link para o post
Compartilhar em outros sites
bananinhao    0
bananinhao

otimo tuto

 

aki deu erro nao

 

vlw ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
Entre para seguir isso  

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×