Ir para conteúdo

MarceLoko

Membro
  • Registro em

  • Última visita

Tudo que MarceLoko postou

  1. Tenho problemas também em colocar atributos nos items também. Coloquei +20 sword em uma knight armor. Deu certo. Coloquei +10 sword em uma plate armor. Não funcionou!
  2. Bom dia! Estou com problema para retirar a restrição de vocação dos itens, como por exemplo paladin,knight armors etc. Preciso de uma explicação. Obrigado!
  3. MarceLoko postou uma resposta no tópico em Suporte Tibia OTServer
    Bom dia! Siga este tutorial: http://www.tibiaking.com/forum/topic/15122-gesior-retirar-8090-do-site-metodo-100/ Se você configurar para usar outra porta que não a porta 80, você terá que especificar qual porta está utilizando. Este tutorial ensinar a mascarar a url. Abraço!
  4. Boa noite! Você realmente quer usar hamachi? http://www.tibiaking.com/forum/topic/14560-hospedando-server-com-net-compartilhada-sem-hamachi/ www.tibiaking.com/forum/topic/47596-como-fazer-servidor-sem-hamachi-com-net-compartinhada-e-roteador/ Todo caso, cheque as portas 7171 e 7172 no firewall do windows e no roteador. Não esqueça de configurar o ip pelo config.lua, utilizando o ip fornecido pelo Hamachi. Abraço!
  5. MarceLoko postou uma resposta no tópico em Suporte Tibia OTServer
    Boa noite! Algum script está chamando uma tabela da database (z_ots_guildcomunication) que não existe. Você pode criá-la direto do phpmyadmin, mas deve saber quais colunas deve criar. Olhe o seu schema.sql para saber ao certo. Abraço!
  6. Abre o creaturescripts.xml e veja o nome do evento. Algum script está usando o nome errado. Abraço.
  7. Recomendo pegar todas os scripts já prontos do servidor, analisá-los e tentar modificá-los da sua própria maneira. Não tenha dó de gastar uma semana para aprender. Valerá o esforço, você terá adquirido noção de como construir todos scripts básicos. Abraço.
  8. Cara, entra no RME, Edit->Find->Find Unique. Vai aparecer uma lista de todos os itens que utilizam uniqueID. Como o nome já diz, é um valor ÚNICO, por isso o console apresenta erro. Abraço.
  9. Bom dia! Construi o script usando TFS 0.4, tibia 8.6 A quest tem duas etapas. Na primeira, você deve posicionar os Deathslicers na posição certa, e então a passagem se abre. Na segunda etapa, é um puzzle que existia no jogo Goof Troop de Super Nintendo. Você deve "chutar" (usar) os trens até a posição correta, usar a alavanca para que a pedra desaparece e você possa pegar sua recompensa. Poderia ter usado outro item, mas o trem está sem utilidade no meu servidor. Utilizei movements para os deathslicers e actions para o puzzle. O puzzle foi escrito de forma que possa ser criado a sala da forma que a pessoa imaginar, e apenas as dimensões da sala, a posição da pedra, a posição inicial dos trenzinhos e os itemid que o trem irá colidir devem ser configurados. Os arquivos estão anexados. https://www.virustotal.com/pt/file/2d71a16bd0103037f0c5b355796e191536184d42808f00292ba4b0cac2bed5c1/analysis/1422720612/ (o tema do jogo não sai da minha cabeça hehehhe) Abraço!! nas restrições da colisão, faltam os IDs 1945 e 1946, da alavanca. Creio que ainda é tempo de corrigir, nãoo é mesmo? hehe Concurso de Scripting.rar
  10. tente executar os códigos separados. DELETE FROM players WHERE id > 1 e DELETE FROM player_death DELETE FROM player_depotitems DELETE FROM player_items DELETE FROM player_killers DELETE FROM player_skills DELETE FROM player_spells DELETE FROM player_storage DELETE FROM player_viplist
  11. É simples, apenas crie uma restrição no NPC de barco, ou no teleport para a cidade, que apenas os players que tem a storage correspondente a 3 resets podem viajar para tal cidade. Você só precisa saber qual é esta storage. Se você postar o sistema de reset e o NPC, posso te ajudar ainda mais. Abraço.
  12. Eu postei um tutorial ontem de SQL, veja-o. http://www.tibiaking.com/forum/topic/50851-b%C3%A1sico-de-sql-via-lua/ Especificamente para teu caso, você só precisa usar os comandos: DELETE FROM players WHERE id ~= 1 e DELETE FROM player_death, player_depotitems, player_items, player_killers, player_skills, player_spells, player_storage, player_viplist Abraço!
  13. Terminei meu script. Irei lembrá-los dos tempos de Super Nintendo. Abraço!
  14. MarceLoko postou uma resposta no tópico em Tutoriais sobre Scripting
    É, eu não conheço sobre isso.. meu servidor está configurado como sha1, nunca troquei. É um prazer dividir conhecimento. Sempre que me sentir inspirado em trazer algum conteúdo, certamente o farei. Se o fórum necessitar de algum conteúdo, posso também trabalhar nisto. Só preciso ser informado. Abraços!
  15. MarceLoko postou uma resposta no tópico em Tutoriais sobre Scripting
    Boa noite! Trago ao fórum um simples porém útil tutorial de manipulação dos valores da database. O uso da database me garante melhor organização das minhas variáveis, em comparação a storages. Por storages você está preso a valores numéricos. Via database, você pode atribuir nomes, utilizar strings, e organizar as variáveis em grupos. Responderei dúvidas conforme for possível. Para inserir uma linha nova em uma tabela db.executeQuery("INSERT INTO `accounts` (`id` ,`name` ,`password`)VALUES ('5', 'marcelo', 'druida');") Neste exemplo, será adicionado na tabela accounts, uma nova conta marcelo/druida. (na verdade a senha é encriptada, mas serve como exemplo). Para alterar valores na database db.executeQuery("UPDATE players SET level = 1 WHERE id = 1 ;") Neste exemplo, o valor do level do player com ID 1 será alterado. players representa a tabela que será mudada level representa a coluna WHERE id representa a restrição, para que seja modificado apenas o player 1 Você pode alterar várias colunas ao mesmo tempo e usar várias restrições: db.executeQuery("UPDATE players SET level = 1, experience = 0, lookType = 128 WHERE vocation = 1, town_id = 2 ;") Neste exemplo, apenas o players Sorcerer que residem na town 2, terão o level, experience e outfit alterados. Devo-lhes lembrar, que qualquer alteração nos players deve ser com o player offline. Para isso, use: doRemoveCreature(cid) antes de alterar itens, mana, skills, etc. Sempre que o player sai os valores são atualizados, e a modificação será perdida! Para deletar valores db.executeQuery("DELETE FROM accounts WHERE id = 50 ;") Remove a conta id 50 da tabela. Você pode usar mais que uma restrição: WHERE premdays = 0, group_id = 1 Para pegar valores Em uma única linha de valores id = getPlayerGUIDByName(getPlayerName(cid)) local info = db.getResult("SELECT lastlogin, description FROM players WHERE id = " .. id .. " ;") local lastlogin = info:getDataInt("lastlogin") local description = info:getDataString("description") info:free() Explicação: Em info é armazenada a consulta à database. Para transformar a consulta em valores, você usa os métodos getDataInt e getDataString. Após adquirir os valores, use o método free() para fechar a consulta. Lembrando que você pode usar múltiplas restrições. Múltiplas linhas local player = db.getResult("SELECT * FROM `players` WHERE level = 50;") tabela = {} if player:getID() ~= -1 then while(true) do table.insert(tabela, {player:getDataInt("id"), player:getDataInt("cap"), player:getDataInt("balance")}) if not(player:next())then break end end player:free() else print("No database!") end return tabela Explicação: Todos os players serão selecionados nesta consulta. O asterisco * representa que todas as colunas da tabela serão selecionados. Portanto, você pode pegar qualquer coluna que quiser. O método getID() garante que a consulta foi bem sucedida. Caso contrário já retorna um erro. O laço de repetição while(true) do garante que todas as linhas da consulta serão vistas. Dentro do laço de repetição, será inserido na tabela = {} os valores da id, cap e balance. if not(player:next())then break end garante que na ultima linha da consulta o laço de repetição chega ao fim. Se por exemplo houver 3 players level 50, a tabela retornada terá o formato: tabela = {{id1,cap1,balance1},{id2,cap2,balance2},{id3,cap3,balance3}} ------ Como complemento, deixo link para tópico do administrador Matheus http://www.tibiaking.com/forum/topic/2023-phpmyadmin-comandos-uteis/ Bons estudos! Abraços!
  16. doCreatureAddHealth(cid, -valor, 3,combats[damageCombat].cor) doCreatureAddHealth(cid, health[, force]) O erro está aí.. tem parâmetros a mais
  17. MarceLoko postou uma resposta no tópico em Suporte Tibia OTServer
    Irei analisar a situação.. Todo caso, postarei isto como um pedido. Abraço!
  18. MarceLoko postou uma resposta no tópico em Suporte Tibia OTServer
    São N situações Por exemplo: usar uma potion, usar uma corda; qualquer coisa mesmo. Uma situação: ao pisar em certo tile, usar um SD no target. É importante que não seja simulado, seja o uso do próprio item mesmo. Abraço!
  19. MarceLoko postou uma resposta no tópico em Suporte Tibia OTServer
    Bom dia! Estou interessado em forçar o player a utilizar certa spell via scripting. Fazendo o player falar as palavras satisfaz alguma das minhas necessidades Entretanto, me tira a possibilidade de usar Runas. Se possível eu também iria querer que o player use certo item. Alguma idéia para tal possibilidade? Estou disposto a editar as sources. Abraço!
  20. MarceLoko postou uma resposta no tópico em Suporte Tibia OTServer
    Bom dia! No meu servidor existirá tal sistema, o qual eu liberarei o código. Entretanto farei mais avançado: No site, o próprio player escolhe a lingua, que fica armazenado na database. O player pode mudar a lingua pelo acc management. Nada impedirá que seja feito uma talkaction para fazer tal mudança. Se for realmente necessário pra ti, farei sem problemas. Nos NPCs e em qualquer outro lugar, você tera a simples função: getPlayerLanguage, que retornará a lingua do player. É um sistema extremamente simples, entretanto na minha lista de 'toDo' existe itens na frente. Estimo fazer E POSTAR tal sistema durante essa ou a próxima semana. SINTA-SE LIVRE para lembrar/cobrar a mim por mensagem privada. ABRAÇO!
  21. MarceLoko postou uma resposta no tópico em Suporte & Pedidos
    Bom dia! Adorei o projeto! Minhas ideias a algum tempo para o desenvolvimento de um servidor se assemelham a vossa ideia. Entretanto segui um rumo diferente, mas vejo vocês com imenso potencial! Continuem firmes! Abraço!
  22. Gostaria de acrescentar que renomear funções é algo mais simples. Cheque o compat.lua exemplo: doPlayerSetStorageValue = doCreatureSetStorage setPlayerStorageValue = doPlayerSetStorageValue getPlayerStorageValue = getCreatureStorage getGlobalStorageValue = getStorage setGlobalStorageValue = doSetStorage Abraço!
  23. MarceLoko postou uma resposta no tópico em Suporte Tibia OTServer
    Na fase Alfa do meu desenvolvimento estou usado meu próprio computador, entretanto muitos colaboradores se conectarão a mim Quando estiver preparando para um beta testing irei contratar um serviço VPS Para o momento, decidi usar um ip alternativo servidor.servegame.com servidorweb.servegame.com Falta praticidade mas não haverá problemas. Além de tudo, irei contatar minha provedora, se me garantirem não bloquear a porta, volto a postar aqui. No mais, muito obrigado pela atenção! Abraço!
  24. MarceLoko postou uma resposta no tópico em Suporte Tibia OTServer
    desconfio ser problema com a provedora de internet mesmo neste caso, não há nada que eu possa fazer, não é mesmo? imagino ser dificil que as empresas liberem a porta, devem ter seus motivos além disso, alguma outra alternativa?
  25. playerStorage = um valor armazenado no banco de dados referente ao PLAYER globalStorage = um valor armazenado no banco de dados sem atribuir a um player ou seja, se você precisa guardar qualquer valor para que seja usado em qualquer lugar que seja, globalStorage ex: você quer contabilizar o numero de demons mortos em um dia, deve usar globalStorage, pois qualquer player pode matar demons se você quer guardar um valor em que seja unico para cada player, playerStorage ex: você quer contabilizar o numero de demons mortos PELO PLAYER, deve usar playerStorage

Informação Importante

Confirmação de Termo