Rayzfox 1 Postado Outubro 15, 2007 Share Postado Outubro 15, 2007 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! Primeiro Passo: Criando o NPC, 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: 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! Segundo Passo: Colocando o NPC e o char que vai criar acc. 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: 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! Creditos: 95% Big Smoke 5% Eu Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/ Compartilhar em outros sites More sharing options...
_ferrari_ 1 Postado Outubro 15, 2007 Share Postado Outubro 15, 2007 Muito bom, aprovado por mim Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-403996 Compartilhar em outros sites More sharing options...
thayam 0 Postado Outubro 15, 2007 Share Postado Outubro 15, 2007 Aeeww muito bom! só muda o nome do tuto Poem Criando ACC Manager! E Tanha um tuto Perfect! Aprovado Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-404152 Compartilhar em outros sites More sharing options...
SephyrotSin 0 Postado Outubro 15, 2007 Share Postado Outubro 15, 2007 Ótimo tutorial, praticamente perfeito! Tem de tudo aí, SS, QUOTE, tá muito bom sim, Aprovado! Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-404198 Compartilhar em outros sites More sharing options...
SirAlquati 0 Postado Outubro 16, 2007 Share Postado Outubro 16, 2007 So Uma pergunta Ele funciona em OT 8.0? Abraços.... Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-405286 Compartilhar em outros sites More sharing options...
MaNeRiNhU 0 Postado Dezembro 27, 2007 Share Postado Dezembro 27, 2007 aki n funfa ot 8.0 yurots ajuda ai ;D ele da um erro na linha 284 perto do ">" ai o script nao carrega ajuda ai =))) Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-450510 Compartilhar em outros sites More sharing options...
Tucow 1 Postado Dezembro 27, 2007 Share Postado Dezembro 27, 2007 Esse tutorial é muito antigo, da época que existia npcs.xml =/ Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-450775 Compartilhar em outros sites More sharing options...
Addict 12 Postado Janeiro 2, 2008 Share Postado Janeiro 2, 2008 Aprovado, Movido para seção de scripts. Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-454370 Compartilhar em outros sites More sharing options...
Wenemy 0 Postado Fevereiro 24, 2008 Share Postado Fevereiro 24, 2008 É um acc manager basico, mas miuto bem editado, parabens //The Wenemy Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-486040 Compartilhar em outros sites More sharing options...
NeoMagician 0 Postado Março 2, 2008 Share Postado Março 2, 2008 Very Good topic! Até eu que não sei praticamente nada sobre Scripting consegui fazer meus NPCs! Aprovado e Recomendado! Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-490227 Compartilhar em outros sites More sharing options...
vitiman 1 Postado Julho 27, 2008 Share Postado Julho 27, 2008 Bem Util acho que vo colokar no meu servidor... Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-590189 Compartilhar em outros sites More sharing options...
jungts 0 Postado Agosto 7, 2008 Share Postado Agosto 7, 2008 cara no meu não ta fufando eu fiz aquela torre tbm os player funfa certinho, mais não ta carregando os npc eu coloquei aquilo tudo certinho da posição x y z o temple tbm o scrip e talz mais não carrega os npc. olha ai o que esta acontecendo http://br.msnusers.com/a396r2hk9idoahfs383...uras%2Ferro.jpg observe só a parte que tem data/npc/scrip.lua ta ligado no qual eu tou falando certo são cinco falhas quando vai se conectar que é os cinco npc add msn ou responder o tópico edvaldofdsf@hotmail.com posted by God Loko Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-598942 Compartilhar em outros sites More sharing options...
Tonynh 514 Postado Agosto 18, 2008 Share Postado Agosto 18, 2008 Show de bola :smile_positivo: parabéns Link para o comentário https://xtibia.com/forum/topic/65816-tutorialcolocando-npc-de-acc/#findComment-605507 Compartilhar em outros sites More sharing options...
Posts Recomendados