Ir para conteúdo

Nogard

Barão
  • Total de itens

    239
  • Registro em

  • Última visita

  • Dias Ganhos

    54

Histórico de Reputação

  1. Upvote
    Nogard recebeu reputação de Legnus em #1 - Aula de scripting Lua - logica de programação.   
    Saquei. Mas o objetivo da lógica de programação seria exatamente o que eu disse ali, dar a noção ao aluno de que você precisaria informar tudo ao computador, tudo. "Equipe" e "Materiais" são termos extremamente relativos e o computador não iria pensar por si só, deduzindo o que seria. Mas de qualquer forma, boa sorte. O professor é você!
  2. Upvote
    Nogard deu reputação a L3K0T em Monstro Focando 1° no Summon depois no Player.   
    Fala galera, hoje estarei ensinando você como fazer os monstro (selvagens) focar primeiro no summons, depois no player, sem mexer na source, hoje estarei mostrando em scripts e é o mesmo que uso em meu servidor, então testado!
     
    vai em data/creaturescripts/scripts copia uma arquivo .lua e renomeia pra ataque.lua e coloca isso lá dentro.
     
    function onAttack(cid, target, attacker, type, combat, value) if isPlayer(target) and #getCreatureSummons(target) >= 1 then doMonsterSetTarget(cid, getCreatureSummons(target)[1]) end return true end agora no creaturescripts.xml coloca a tag
     
    <event type="attack" name="BlockHit6" event="script" value="ataque.lua"/> como usar ? é muito simples agora você vai em todos monstros selvagens e vai add lá em baixo.
     
    <script> <event name="BlockHit6"></event> </script> sempre antes do 
     
    </monster>  
    ADICIONA NO LOGIN.LUA 
     
    registerCreatureEvent(cid, "BlockHit6")  
     
    agora é só alegria parceiro  espero ter ajudado! 😘
  3. Upvote
    Nogard recebeu reputação de Legnus em Client Próprio [8.54 - 10.XX]   
    Sim, mas a quantia de caracteres deve ser exata. Você pode usar o Insert pra preencher os espaços restantes com valor nulo.
  4. Upvote
    Nogard recebeu reputação de Legnus em [TalkAction] Give a Present!   
    Para o inventário dentro de uma bag. Não vão pro dp. Não recebe offline.
  5. Upvote
    Nogard recebeu reputação de Legnus em Sprites Pokemons(Diancie,Cumbik,Mega Diancie.)   
    Boa! O segredo é praticar.
  6. Upvote
    Nogard recebeu reputação de GokuBlack em Free For Use!   
    O tópico servirá para postar sprites de uso livre.
     
     
     
       Conteúdo: 7 Pokémon (Chatot, Glameow, Hippopotas, Hippowddon, Purugly) + corpses.
     (credits are no needed but appreciated)
       DOWNLOAD
     
           
     
     
     
     
    Random Outfit
     






     
     
     
     
    Conteúdo: Placa Animada.
    DOWNLOAD
     

     
     
     
     
    Conteúdo: Pokémon Iniciais 5ª geração.
    Créditos: Jeff
    DOWNLOAD
     

     
     
     
    Conteúdo: Pokébolas.
    DOWNLOAD
     

     
     
     
     
     
    Participe!
     
  7. Upvote
    Nogard recebeu reputação de Legnus em Nogard Graphic Gallery   
    Alguns pokémons antigos na perspectiva:
     

  8. Upvote
    Nogard deu reputação a StriterAlfa em Tripeace - Desenvolvimento de site em .NET C#   
    O que é Tripeace?
    Tripeace é um site em código aberto para Tibia OT Server, sendo desenvolvido na linguagem C# .NET, principalmente para ser uma opção diferente aos sites existentes para OT Server em PHP. Tripeace é apenas o nome do projeto, nome de minha antiga guild no Tibia Global, mas será possível e fácil configurar o nome do site para o que você quiser.
     
     

    Quem é você, Striter?
    Me chamo Igor, tenho experiência profissional como desenvolvedor .NET por mais de 3 anos, principalmente como back-end. Também já trabalhei com automação de testes de sistemas e gestão de equipes de desenvolvimento. Atualmente estou desempregado. 
    Meu GitHub: igorquintaes · GitHub
    Meu Portfólio: Igor Pauli Quintaes

    O que será necessário para hospedar o site?
    - Sistema operacional Windows com IIS e .NET Framework instalados e atualizados, ou Linux;
    - Atualizar o banco de dados do jogo com um arquivo .sql que é disponibilizado junto ao projeto;
    - Opcionalmente, ter o Visual Studio instalado caso queira alterar regras de negócio ou adicionar novas funcionalidades (back-end);

    Características e recursos
    - Suporte a mais de um idioma simultaneamente
    O site tem uma linguagem padrão baseada no acesso do usuário, mas ele pode alterar para a linguagem que quiser em tempo real. É possível, também, adicionar facilmente novos idiomas ao projeto.

    - Segurança
    Projetado em arquitetura em camadas, para prevenir acessos indesejados e injeções de dados. Também possui sistemas próprios de logins e criptografia, sistema de proteção a SQL Injection e de acessos não autorizados.

    - Multi-plataforma
    Mesmo desenvolvido em C#, linguagem da microsoft, é possível hospedar o site tanto em um servidor Windows quanto em servidor Linux. É possível também hospedar em um local diferente ao do servidor do OT Server e do banco de dados.

    - ORM ao invés de consultas por SQL
    Acha chato trabalhar no back-end fazendo aqueles selects e updates utilizando linguagem de banco de dados? O Tripeace faz tudo isso baseado em variáveis. 

    - Registre tudo o que acontece
    A plataforma registra automaticamente o IP das pessoas, que páginas elas tentam acessar, a conta com a qual está conectada, tentativas de hack, tentativas de acessar páginas restritas, tentativas de explorar erros ou de enviar dados falsos. Tudo, e você ainda tem a opção de configurar para adicionar mais ou retirar algo que não deseja.

    - Painel administrativo para Gods e Game Masters
    Com informações sobre número de jogadores online, momentos de pico, edição de dados, bloqueio de contas, número de visitas e muito mais.

    - Template todo customizável
    Tendo conhecimento das linguagens utilizadas no front-end de um site (HTML, CSS, Javascript), é possível alterar todo o layout sem nem tocar no back-end do sistema, e nem mesmo ter o Visual Studio instalado. Dados dinâmicos para IFs, FORs, demais lógicas e variáveis estão em Razor Syntax, similar ao PHP mas sem precisar compilar com o back-end. 

    - Sistema de postagems
    Para notícias, novidades, anúncios, enquetes. O que você quiser, e com comentários.

    - Sistema de E-mails
    Para anúncios, recuperação de conta, alertas, e mais!

    O que já está pronto?
    - Conexão ao banco de dados e mapeamento em variáveis;
    - Sistema para suporte a vários idiomas;
    - Sistema de registro de atividades;
    - Sistema seguro de login;
    - Criação de conta;
    - Criação de personagem;
    - Painel administrativo;
    - Gerenciamento de contas no painel administrativo (listar, bloquear/desbloquear acesso do site, editar, banir/desbanir do jogo);

    O que ainda será desenvolvido?
    - Gerenciamento de contas no painel administrativo (exclusão de conta);
    - Gerenciamento de personagens no painel administrativo;
    - Gerenciamento de configurações no painel administrativo;
    - Biblioteca
    - Forum (?)
    - Sistema de postagens;
    - Sistema de Guilds;
    - Ranking;
    - Sistema VIP e de pagamentos;
    - Formulário de contato;
    - E mais, muito mais!

    Quais ferramentas Tripeace usa? (útil para devs)
    - C# .NET Core as como linguagem e framework back-end;
    - HTML, CSS, Javascript/JQuery w Razor Syntaxe para front-end;
    - Entity Framework Core como ORM (trabalhar com SQL em variáveis);
    - NLOG para registrar atividades;
    - Cloudscribe para paginações;
    - AutoMapper para mapear e transferir objetos entre camadas;
    - .NET Core Identity para criar sistema de login mais seguro e à parte ao do jogo.

    Código fonte (Aberto, licença MIT)
    GitHub - igorquintaes/Tripeace: An open-source and free Open Tibia Website written in C# .NET

    Doações
    O projeto é grande, totalmente código aberto, e quem tá fazendo é um cara desempregado. Se você está curtindo o andamento das coisas, dê uma contribuição aí!
    Meu PayPal: striteralfa@gmail.com
  9. Upvote
    Nogard recebeu reputação de Legnus em (resolvido) o que significa nil? com devo usar?   
    Depende do que você quer fazer exatamente, enquanto algum (qualquer) valor for retornado para "matador", seu while continuará sendo executado. Isso geraria um loop eterno e travaria seu servidor, haha.
     
     
     
     
  10. Upvote
    Nogard recebeu reputação de Legnus em Poketibia Reset Stone Script   
    Se a intenção é só adicionar vida, você precisa remover essas linhas:
     
     
    local off = pokes[pokemon].offense * Reset_rate * Resetslocal def = pokes[pokemon].defense * Reset_rate * Resetslocal agi = pokes[pokemon].agility * Resetslocal spatk = pokes[pokemon].specialattack * Reset_rate * Resets  
    doItemSetAttribute(myball.uid, "offense", getItemAttribute(myball.uid, "offense") + off)doItemSetAttribute(myball.uid, "defense", getItemAttribute(myball.uid, "defense") + def)doItemSetAttribute(myball.uid, "speed", getItemAttribute(myball.uid, "speed") + agi)doItemSetAttribute(myball.uid, "specialattack", getItemAttribute(myball.uid, "specialattack") + spatk)  
     
    Sobre o erro, esse:
     
    Reset_rate  
    provavelmente era uma variável usada na boost stone e você apenas alterou o nome. Logo, ela não existe.
     
     
     
    Nessa linha:
     
    local vit = pokes[pokemon].vitality * Reset_rate * Resets  
    O resultado seria o valor existente em "pokes" (a vitalidade do Pokémon) vezes o valor atual de resets + 1 (o valor que está sendo adicionado), vezes o bônus ganho.
     
     
    Crie uma variável chamada Reset_rate com o valor de vitalidade que você quer seja adicionado a cada "reset".
  11. Upvote
    Nogard recebeu reputação de Legnus em [Encerrado] [Encerrado] Mudar Layout de OTclient   
    As imagens em si ficam em data/images/ui, como janelas e progressbar. Mas, pra uma alteração mais detalhada você precisaria mexer no .otui de cada module em questão.
  12. Upvote
    Nogard deu reputação a 139 em Online Bonus   
    Script feito inspirado no sistema de Online Bônus do antigo servidor FoxWorld.
    Consiste em dar dias de Premium Account esporadicamente para aqueles jogadores que são ativos no servidor, estimulando todos a permanecerem o máximo de tempo conectados, especialmente os jogadores Free Account, que não podem contribuir com o servidor através de doações.
     
    Explicação:
    A cada uma hora initerrupta que o personagem ficar online, o mesmo irá ganhar 1 Online Bônus. 
    Acumulando 30 Online Bônus, o personagem ganha 1 dia de Premium Account, e a sua quantidade de Online Bônus recomeçará a ser contada a partir do zero.
    Para deixar bem claro, se dentro dessa uma hora o personagem deslogar por qualquer motivo, o contador da tal uma hora para.
     
    Exemplo:
    Zezinho entrou no servidor 15:00, então às 16:00 ele ganharia 1 Online Bônus. Mas Zezinho precisou ir na padaria, portanto deslogou às 15:20 (antes de 16:00).
    Digamos que ele tenha voltado às 15:30, sendo assim ele precisaria ficar online até 16:30, e de fato fica, ganhando o seu primeiro Online Bônus.
    Conforme os dias se passam, Zezinho vai ganhando alguns Online Bônus todos os dias, e finalmente consegue acumular 30 Online Bônus, ganhando então 1 dia de Premium Account, e zerando os seus 30 Online Bônus para que possa ganhar outro dia de Premium Account, quando acumular 30 novamente.
     
    Agora vamos ao código:
    Em data\creaturescripts\scripts crie um arquivo LUA com o nome de de "onlinebonus" e cole dentro:
    function addOnlineBonus(cid, horas, bonus_contador, bonus_max) if not isPlayer(cid) then return false end setPlayerStorageValue(cid, bonus_contador, getPlayerStorageValue(cid, bonus_contador) + 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Por completar uma hora online sem deslogar, você ganhou 1 Online Bônus. Total: ".. getPlayerStorageValue(cid,bonus_contador) .. ".") if getPlayerStorageValue(cid, bonus_contador) >= bonus_max then doPlayerSendTextMessage(cid, 19, "Seus ".. bonus_max .." Online Bônus foram convertidos em 1 dia de Premium Account!") doPlayerAddPremiumDays(cid, 1) setPlayerStorageValue(cid, bonus_contador, 0) end addEvent(addOnlineBonus, horas * 3600 * 1000, cid, horas, bonus_contador, bonus_max) endfunction onLogin(cid) local bonus_contador = 72702 -- Storage que vai guardar quantos online bonus o char possui. local horas = 1 -- Quantidade de horas o char precisa ficar logado pra receber cada online bonus. local bonus_max = 30 -- Quantidade de bonus que o char precisa atingir para ganhar 1 dia de premium account, zerando o contador. if getPlayerStorageValue(cid, bonus_contador) > 0 then doPlayerSendTextMessage(cid,22,"Você está com: " .. getPlayerStorageValue(cid,bonus_contador) .. " Online Bônus.") else setPlayerStorageValue(cid, bonus_contador, 0) doPlayerSendTextMessage(cid,22,"Você está com: 0 Online Bônus.") end addEvent(addOnlineBonus, horas * 3600 * 1000, cid, horas, bonus_contador, bonus_max) return true end  
    Agora em data\creaturescripts\creaturescripts.xml adicione a tag:
    <event type="login" name="onlinebonus" event="script" value="onlinebonus.lua"/>  
    E por último vá em data\creaturescripts\scripts\login.lua e adicione esta linha:
    registerCreatureEvent(cid, "onlinebonus")  
    Pronto
  13. Upvote
    Nogard recebeu reputação de Legnus em [Encerrado]Projeto DBZ World [ Formação de Equipe ]   
    Bem interessante. Inclusive tenho alguns gráficos disponíveis para negociação, seria um diferencial imenso!
     

     
     
     
    De qualquer forma, boa sorte.
  14. Upvote
    Nogard recebeu reputação de Legnus em [Encerrado] [Encerrado] Mudar Layout de OTclient   
    Se for algo que já exista ali, como inventário, healthbar, você poderia facilmente alterar as imagens e reposicionar os elementos. Do contrário precisaria criar algo novo, principalmente as funções em Lua.
     
    De início parece complexo, mas nada que você não consiga depois de um tempo mexendo.
  15. Upvote
    Nogard recebeu reputação de Legnus em Poketibia Reset Stone Script   
    pode ser nesse código mesmo, bem no início:
     
    Reset_rate = 100000  
     
     
     
  16. Upvote
    Nogard recebeu reputação de Legnus em Poketibia Reset Stone Script   
    yep, pode ser. 
  17. Upvote
    Nogard recebeu reputação de Legnus em Poketibia Reset Stone Script   
    Reset_rate = 100000function onUse(cid, item, topos, item2, frompos)local myball = getPlayerSlotItem(cid, 8)local Reset = getItemAttribute(myball.uid, "Reset") or 0local Resets = 0if Reset == 50 thenreturn doPlayerSendCancel(cid, "Sorry, is not possible.")end if #getCreatureSummons(cid) >= 1 thenif getPlayerAccess(cid) == 6 thenResets = ( 10 )endResets = Resets + 1local pokemon = getItemAttribute(myball.uid, "poke")local vit = pokes[pokemon].vitality * Reset_rate * ResetsdoSetItemAttribute(myball.uid, "Reset", Reset + Resets)doItemSetAttribute(myball.uid, "vitality", getItemAttribute(myball.uid, "vitality") + vit)doRemoveItem(item.uid)doSendMagicEffect(getThingPos(item2.uid), 40)doPlayerSendTextMessage(cid, 27, "Congrulations, your "..pokemon..", as beem Reseted +1.")doPlayerSendTextMessage(cid, 27, "Now your "..pokemon.." have a Reset +"..Resets + Reset..".")doSendAnimatedText(getThingPos(item2.uid), "Reset!", 71)doPlayerSetVocation(cid,4)elsereturn doPlayerSendCancel(cid, "Only use in yours pokemons.")endreturn trueend  
  18. Upvote
    Nogard recebeu reputação de Legnus em Poketibia Reset Stone Script   
    Reset_HP = 100000 -- quantia que será adicionada ao hpReset_Max = 100function onUse(cid, item, topos, item2, frompos)local myball = getPlayerSlotItem(cid, 8)local Resets = getItemAttribute(myball.uid, "Reset") or 0if Resets == Reset_Max thenreturn doPlayerSendCancel(cid, "Sorry, is not possible.")end if #getCreatureSummons(cid) >= 1 thenResets = Resets + 1local pokemon = getItemAttribute(myball.uid, "poke")local vit = pokes[pokemon].vitality + (Reset_HP * Resets)doSetItemAttribute(myball.uid, "Reset", Resets)doItemSetAttribute(myball.uid, "vitality", getItemAttribute(myball.uid, "vitality") + vit)setCreatureMaxHealth(getCreatureSummons(cid)[1], getCreatureMaxHealth(getCreatureSummons(cid)[1]) + Reset_HP)doRemoveItem(item.uid)doSendMagicEffect(getThingPos(item2.uid), 40)doPlayerSendTextMessage(cid, 27, "Congrulations, your "..pokemon..", as beem Reseted +1.")doPlayerSendTextMessage(cid, 27, "Now your "..pokemon.." have a Reset +"..Resets + Reset..".")doSendAnimatedText(getThingPos(item2.uid), "Reset!", 71)elsereturn doPlayerSendCancel(cid, "Only use in yours pokemons.")endreturn trueend  
  19. Upvote
    Nogard recebeu reputação de yanloco70 em [AJUDA] Removendo Version Client   
    Repare no que você pediu e no bloco que coloquei: g_app.getName(), Rev, Built on. São as mesmas 3 linhas de lá.
     
    clientVersionLabel:setText(g_app.getName() .. ' ' .. g_app.getVersion() .. '\n' .. 'Rev ' .. g_app.getBuildRevision() .. ' ('.. g_app.getBuildCommit() .. ')\n' .. 'Built on ' .. g_app.getBuildDate())  
     
    Pra retirar bastaria apagar essa linha:
     
    addEvent(function() g_effects.fadeIn(clientVersionLabel, 1500) end)  
  20. Upvote
    Nogard recebeu reputação de Wase Wiss em PokémonChangeSlots   
    Uma forma distinta de troca/Visualização dos status do seu Pokémon. Eu utilizei os próprios slots do Tibia, isso anula 100% da lag que ocorre nas barras de troca de Pokémon existentes em alguns servidores. No painel existem 6 espaços, onde você poderá colocar a Pokéball e usa-la em qualquer um deles, sem a necessidade de arrastar da bolsa.
     
    Então, seria útil pra você como jogador? Ou é algo desnecessário e você prefere do modo habitual?
     
    Espero opiniões, thanks.
     
     
     
    v2:
     
     
  21. Upvote
    Nogard recebeu reputação de lekomooooon em Client Próprio [8.54 - 10.XX]   
    Sim, mas a quantia de caracteres deve ser exata. Você pode usar o Insert pra preencher os espaços restantes com valor nulo.
  22. Upvote
    Nogard recebeu reputação de yanloco70 em Poketibia Reset Stone Script   
    pode ser nesse código mesmo, bem no início:
     
    Reset_rate = 100000  
     
     
     
  23. Upvote
    Nogard recebeu reputação de Sexyboyy em [Encerrado] [Encerrado] Mudar Layout de OTclient   
    As imagens em si ficam em data/images/ui, como janelas e progressbar. Mas, pra uma alteração mais detalhada você precisaria mexer no .otui de cada module em questão.
  24. Upvote
    Nogard recebeu reputação de yanloco70 em Poketibia Reset Stone Script   
    Se a intenção é só adicionar vida, você precisa remover essas linhas:
     
     
    local off = pokes[pokemon].offense * Reset_rate * Resetslocal def = pokes[pokemon].defense * Reset_rate * Resetslocal agi = pokes[pokemon].agility * Resetslocal spatk = pokes[pokemon].specialattack * Reset_rate * Resets  
    doItemSetAttribute(myball.uid, "offense", getItemAttribute(myball.uid, "offense") + off)doItemSetAttribute(myball.uid, "defense", getItemAttribute(myball.uid, "defense") + def)doItemSetAttribute(myball.uid, "speed", getItemAttribute(myball.uid, "speed") + agi)doItemSetAttribute(myball.uid, "specialattack", getItemAttribute(myball.uid, "specialattack") + spatk)  
     
    Sobre o erro, esse:
     
    Reset_rate  
    provavelmente era uma variável usada na boost stone e você apenas alterou o nome. Logo, ela não existe.
     
     
     
    Nessa linha:
     
    local vit = pokes[pokemon].vitality * Reset_rate * Resets  
    O resultado seria o valor existente em "pokes" (a vitalidade do Pokémon) vezes o valor atual de resets + 1 (o valor que está sendo adicionado), vezes o bônus ganho.
     
     
    Crie uma variável chamada Reset_rate com o valor de vitalidade que você quer seja adicionado a cada "reset".
  25. Upvote
    Nogard recebeu reputação de Frenvius em Client Próprio [8.54 - 10.XX]   
    Sim, mas a quantia de caracteres deve ser exata. Você pode usar o Insert pra preencher os espaços restantes com valor nulo.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...