Ir para conteúdo

Miraboreas

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    Miraboreas deu reputação a Danihcv em [NPC] Papai Noel - Que dá presente   
    Bom galera, sei que o natal acabou de passar, porém esqueci de postar esse system antes...
    Fiz uma versão 2.0 do meu npc de natal (papai noel).
     
    Agora ao invés do bom velhinho entregar diretamente o item, vc recebe uma caixa que ao clicar vc recebe um item 100% aleatorio (dentre os itens que foram programados dentro do script).
     
     
    Funciona assim: o player vai até o papai noel e fala: hi, aí o papai noel fala ho-ho-ho... aí o player responde sim (ou yes) e então o player recebe uma caixa. Ao clicar na caixa, o player recebe um dos itens, que estiverem programados no script, de forma aleatoria.
     
     
    Então vamo lá.
     
    Pra adicionar esse system, primeiro vá na pasta data/npc e crie um arquivo chamado Papai Noel.xml e coloque isso dentro:
    <?xml version="1.0" encoding="UTF-8"?> <npc name="Papai Noel" script="data/npc/scripts/papai_noel.lua" walkinterval="1500" speed="100" walkradius="2" floorchange="0"> <health max="100" now="100"/> <look type="160" head="0" body="113" legs="94" feet="132" addons="0" mount="0"/> <parameters> <!--MESSAGES--> <parameter key="message_greet" value="HO-HO-HO, |PLAYERNAME| bem-vindo. Voce gostaria de um presente?"/> <parameter key="message_farewell" value="HO-HO-HO, tenha um feliz natal, |PLAYERNAME|."/> </parameters> </npc> Agora vá na pasta data/npc/scripts e crie um arquivo chamado papai_noel.lua e coloque isso dentro:



     
     
    Agora vá na pasta data/actions e adicione essa tag dentro do arquivo actions.xml:
    <action itemid="11401" event="script" value="giftbox.lua"/> Agora va na pasta data/actions/scripts  e crie um arquivo chamado giftbox.lua e coloque isso dentro:
    local items = { [1]=2160, --ID do item 1 [2]=2157, --ID do item 2 [3]=2121} --ID do item 3 local stor = (11401+os.date("%Y")) --Nao mexa function onUse(cid) if getPlayerStorageValue(cid, stor) ~= 1 then a = math.random(1, #items) doPlayerAddItem(cid, items[a], 1) setPlayerStorageValue(cid, stor, 1) else doPlayerSendCancel(cid, "Voce ja pegou seu presente.") end doPlayerRemoveItem(cid, 11401, 1) return true end E isso é tudo pessoal!
  2. Gostei
    Miraboreas deu reputação a Danihcv em [TUTORIAL] Adicionando novas mounts   
    Aqui no TK tem alguns tutoriais ensinando a botar novas mounts em seus servers, porém não achei nenhum que trouxesse uma informação fundamental: existe um limite de mounts que vc pode ter em seu server ao mesmo tempo.
    Por exemplo, em meu server o limite é de 50 mounts. Se eu colocar, no arquivo mounts.xml, 51 mounts, o player quando abrir a tela pra escolher a mount ou irá tomar debug, ou a mount simplesmente não estará lá.
     
    Tendo isso em mente, vamos ao tutorial:
     
    1°) Colocando a criatura como mount
     
       Abra seu arquivo mounts.xml que se encontra na pasta data/XML.
       Dentro dele adicione a seguinte tag:
     
       Em vermelho vc irá colocar o id da mount. Para descobrir qual o id da mount que vc está adicionando, basta ver o id da mount anterior e colocar o numero seguinte. Por exemplo, a mount anterior a essa tem o id 19.
     
       Em azul vc irá colocar o looktype da criatura (monstro). Para descobrir o looktype do monstro que vc qr adicionar, basta ver o looktype no arquivo .xml do monstro. Por exemplo no arquivo Crystal spider.xml:
     
       Em verde vc irá colocar o nome que irá aparecer para os players na tela de escolher a mount. Por exemplo, se eu tivesse colocado essa tag em mounts.xml:
    O player iria visualizar o seguinte:



     
       Em laranja vc irá colocar a speed da mount, ou seja, a velocidade com que o player irá se locomover quando estiver montado na mount.
     
       E por fim em roxo vc irá colocar se pra usar a mount é necessário ser premium (premium="yes") ou se qualquer player, premium ou não, poderá usar a mount (premium="no").
     
     
    2°) Colocando mounts proprias
       É o mesmo jeito de configurar, porém o outfit (looktype) vc irá pegar pelo seu dat (e spr) editor. Por exemplo, eu peguei a mount Emperor Deer da versão 10.71 e coloquei em meu client 10.10. No meu editor de dat e spr, ficou assim:



     
    Ou seja, a minha tag pra essa mount ficaria assim:
     
     
     
    Em breve farei um tutorial de como adicionar essas sprites de mounts proprias pra seu client. Quando o fizer, postarei o link aqui para complementar mais o tutorial.
     
     
    E isso é tudo, pessoal! Se gostaram do tutorial, não esquece o REP+ sahusahusa
    Se têm alguma sugestão de tutorial para me dar, manda pm.
  3. Gostei
    Miraboreas deu reputação a Danihcv em [TUTORIAL] (GOD) Ambient Light   
    Bom galera, faz tempo que não posto um tutorial, então resolvi trazer esse, que apesar de ser simples tem utilidade pra algumas pessoas.
     
    Esse é um sistema que eu criei pra fazer com que o god possa alterar a visão dele pra como se fosse sempre dia ou pra visão de players normais.

    1°)Como funciona:
        Quando o GOD entrar no server, ele já vai estar com a visão de "sempre dia". Se ele quiser ver que nem os players normais, basta falar /light. Se ele quiser voltar a ver "sempre dia" basta falar novamente /light
     
    2°)Instalando o sistema:
     
       Primeiramente vá em data\creaturescripts e adicione essa tag ao arquivo creaturescripts.xml:
    <event type="login" name="GodLight" event="script" value="godLight.lua"/>    Agora va em data\creaturescripts\scripts abra o arquivo login.lua e adicione isso antes do ultimo return true:
    registerCreatureEvent(cid, "GodLight")    Agora ainda na pasta data\creaturescripts\scripts crie um arquivo chamado godLight.lua e coloque isso dentro:



     
     
       Agora va na pasta data\talkactions e adicione essa tag ao arquivo talkactions.xml:
    <talkaction words="/light" event="script" access="5" value="godLight.lua"/>    Agora va na pasta data\talkactions\scripts e crie um arquivo chamado godLight.lua e coloque isso dentro:



     
    Pronto! Seu sistema está instalado.
     
    Se vc quiser que qualquer pessoa possa usar esse sistema, basta fazer o seguinte:



     
    E ao invés de colocar a tag (que está aí em cima) em talkactions.xml, coloque essa:
    <talkaction words="/light" event="script" value="godLight.lua"/>
     
     
    E isso é tudo, pessoal!
    Um sistema simples mas que pra alguns tem bastante utilidade. Em breve trarei novos tutoriais! Se tiverem alguma sugestão, podem mandar por pm.
  4. Gostei
    Miraboreas deu reputação a ryukicho em (Resolvido)[Pokemon] Como arrumar experiencia e outros   
    Como Arrumar Experiencia de Pokemon com Level e outros :
     
     
            Para Quem não sabe aumentar experiencia , arrumar tempo de ataque de Pokemon's e até mesmo trocar a Portrait , esse tutorial Escrito Por Min "Ryukicho" Venho lhe mostra o básico do configuration.lua.
     
    Como aumentar/abaixar Experiencia do PokeTibia , speed , ataque/defesa .   1 abra o arquivo configuration.lua com bloco de notas ou outro que se encontra na pasta server/data/lib  .
     
    Procure  isso no script , que se encontra logo no começo:



     
    explicação :
     



     
    Experiencia no config.lua  Procure por isso:



     
    Explicação :
     



     
    Como arrumar os tempos e ataque dos pokemon's   Vá em  configuration.lua e procure isso  :
    Obs : procure o pokemon que queira editar  em ( movestable = {   ), no meu caso peguei Salamence !
     



     
    Explicação :
     



     
     
    Bom galera se ajudei Rep+ Tutorial feito Por Min , aqui fiz somente o básico . caso tenha duvida Posta , que lhe ajudo 
     
     
  5. Gostei
    Miraboreas deu reputação a Danihcv em [TUTORIAL] Resolvendo qualquer erro na data base   
    Opa, galerinha do TK, pro meu primeiro tutorial resolvi fazer uma solução de um problema que desde que cheguei no TK, vejo que ocorre com uma certa frequência. Os erros da data base.
     
    Neste tutorial vou ensinar a resolver os erros do tipo No such table, Insert into, No such column, ... has no column named... etc.
     
    1°) NO SUCH TABLE
     
    Bom, para o erro No such table, basta vc visualizar qual table está faltando. Para isso basta ler o erro na distro:

     
    No caso da imagem, está faltando a table: player_statements
    Para resolver este e qualquer outro problema deste tipo, caso sua data base seja sqlite,
    basta abrir sua data base pelo Sqlite Studio(download: http://sqlitestudio.pl/?act=download) e clicar em Open SQL query editor:



     
    Mas caso sua data base seja Mysql abra pelo phpMyadmin, ou por outro editor de sua preferencia.
     
    1.1°) EXECUTANDO OS COMANDOS PARA RESOLVER O PROBLEMA
      Bom, dependendo da table que estiver faltando, vc irá colocar seu respectivo comando, segue abaixo TODOS os comandos básicos necessários para que sua data base fique Ok! :   (VC VAI PEGAR O COMANDO REFERENTE À TABLE QUE VC QUER!!!)
     
     
    account_viplist



     
    Sqlite




     
    accounts



     
    Sqlite




     
    bans



     
    Sqlite




     
    environment_killers



     
    Sqlite




     
    global_storage



     
    Sqlite




     
    guild_invites



     
    Sqlite




     
    guild_kills



     
    Sqlite




     
    guild_ranks



     
    Sqlite




     
    guild_wars



     
    Sqlite




     
    guilds



     
    Sqlite




     
    house_auctions



     
    Sqlite




     
    house_data



     
    Sqlite




     
    house_lists



     
    Sqlite




     
    houses



     
    Sqlite




     
    killers



     
    Sqlite




     
    market_history



     
    Sqlite




     
    market_offers



     
    Sqlite




     
    player_deaths



     
    Sqlite




     
    player_depotitems



     
    Sqlite




     
    player_inboxitems



     
    Sqlite




     
    player_items



     
    Sqlite




     
    player_killers



     
    Sqlite




     
    player_namelocks



     
    Sqlite




     
    player_skills



     
    Sqlite




     
    player_spells



     
    Sqlite




     
    player_statements



     
    Sqlite




     
    player_storage



     
    Sqlite




     
    player_viplist



     
    Sqlite




     
    players



     
    Sqlite




     
    server_config



     
    Sqlite




     
    server_motd



     
    Sqlite




     
    server_record



     
    Sqlite




     
    server_reports



     
    Sqlite




     
    tile_items



     
    Sqlite




     
    tile_store



     
    Sqlite




     
    tiles



     
    Sqlite




     
    announcements



     
    Sqlite




     
    pagsegurotransacoes



     
    Sqlite




     
    player_advances



     
    Sqlite




     
    reports



     
    Sqlite




     
    thanks



     
    Sqlite




     
    z_bug_logs



     
    Sqlite




     
    z_featured_article



     
    Sqlite




     
    z_forum



     
    Sqlite




     
    z_helpdesk



     
    Sqlite




     
    z_monsters



     
    Sqlite




     
    z_network_box



     
    Sqlite




     
    z_news_tickers



     
    Sqlite




     
    z_ots_comunication



     
    Sqlite




     
    z_polls



     
    Sqlite




     
    z_polls_answers



     
    Sqlite




     
    z_poll_votes



     
    Sqlite




     
    z_shop_history_item



     
    Sqlite




     
    z_shop_history_pacc



     
    Sqlite




     
    z_shop_offer



     
    Sqlite




     
    z_spells



     
    Sqlite




     
    z_news_big



     
    Sqlite




     
     
    2°) No such column /  "NOME DA TABLE" has no column named "NOME DA COLUMN QUE FALTA" / Insert into
      Bom, para resolver esse problema vc deve identificar em qual TABLE está essa coluna que falta. Para isso, basta ler o erro como na imagem:

     
    No caso da imagem, está faltando a column WORLD_ID dentro da table MARKET_OFFERS. Para resolver, vc deve executar excluir a sua table MARKET_OFFERS existante em sua data base, e em seguida, executar o domando da da market_offers, encontrado acima, logicamente isso só se aplica ao caso da imagem, depende do seu caso, vc deve excutar o comando da table que estiver sendo referida no erro. Mas antes de executá-lo vc deve excluir a sua table EXISTENTE, para então executar o comando.
     
    ESTA FORMA DE RESOLUÇÃO SE APLICA AOS TRÊS CASOS: NO SUCH COLUMN, ...HAS NO COLUMN NAMED... e INSERT INTO.
     
     
     
    Bom galera, é isso.
     
    SE ENCONTRAREM, OU SE DEPARAREM COM ALGUM ERRO, BASTA ME PEDIR AJUDA QUE EU DAREI TOTAL SUPORTE PARA VOCÊS!
     
    SE ESTIVR FALTANDO MAIS ALGUMA TABLE QUE EU NÃO COLOQUEI AQUI, PF ME INFORMEM E EU ATUALIZAREI O TÓPICO!!!
     
     
    Lembrem-se, se eu te ajudei, por favor, deem REP++ pois foi meio trabolhoso fazer este tutorial todo...
     
    ESTOU A DISPOSIÇÃO DE TODOS! Tanto por PM quanto por SKYPE, e até mesmo por aqui, pois vou checar este tópico regularmente!!
     
     
    Espero ter ajudado!!
    Abraços.

Informação Importante

Confirmação de Termo