Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation since 11/15/2019 in all areas

  1. 1 point
    Baah

    Talkaction Shop

    Esse script venderá qualquer item da lista para o jogador que tenha gold suficiente. Compatível com TFS 1.x e OTBR Global se alterar os tipos de mensagem, deve ser instalado nas talkactions (XML) -- lista dos items a serem comercializados pelo sistema de honra item = { ["boots of haste"] = {id = 2195, price = 100}, -- lista de items, pode ser adicionado mais linhas com mais items } function onSay(player, words, param) choise = item[param] -- seta o indice da tabela que sera acessado id e price if choise then -- se foi digitado alguma coisa de parametro continuar if player:removeMoneyNpc(coise.price) then -- verifica se a honra do player é suficiente para esse item escolhido (choise) player:addItem(choise.id, 1) -- add o item escolhido (id) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "You have received " .. ItemType(choise.id):getName()) -- mensagem confirmando o recebimento. busca o nome do item por id else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "You have not enough money.") -- mensagem de erro caso nao tenha honra suficiente end else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "Available items on the Store: ") -- se nao houver parametro for index, itemInfo in pairs(item) do -- busca na lista os dados dos items disponiveis player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "Item: [" .. index .. "]. Price: [" .. itemInfo.price .. "].") -- informa os dados encontrados através de mensagem end end return false end
  2. 1 point
    Baah

    Bless Charm

    Criei esse código há algum tempo e talvez seja útil para alguém. Com esse código, que deve ser instalado em creaturescripts, o jogador que morrer e tiver os items especificados na backpack receberá todas as blessings ANTES de morrer. Esse script funciona com TFS 1.x, e pode ser compatível com OTBR Global com alguns ajustes. config = { id = 2195, -- id do item bless = 5, -- quantidade de blessings do servidor remover = true, -- remover item? true/false minLvl = 100 -- level minimo } -- lBaah function hasAllBlessings(player) --Verifica se o player tem todas blessings local cont = 0 for i=1,config.bless do if player:hasBlessing(i) then cont = cont+1 end end if cont >= config.bless then -- se nao tiver alguma bless prossegue com o sitema return true else return false end end function onPrepareDeath(creature, killer) if not creature:isPlayer() then return true end if hasAllBlessings(creature) then -- lBaah creature:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "You are already protected by blessings.") return true end if creature:getLevel() >= config.minLvl then if creature:getItemCount(config.id) >= 1 then for i = 1, config.bless do creature:addBlessing(i) end if config.remover then creature:removeItem(config.id, 1) creature:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "You were protected by a blessing charm.") end creature:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "You have been blessed by the charm before dying.") else creature:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "You were not wearing a blessing charm and was not blessed when died.") end else creature:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "You need level " .. config.minLvl .. " or higher to be automatic blessed.") end return true end
  3. 1 point
    tormentoiv

    Dev c++ erro -leay32

    @Majesty Obrigado segui seu tutorial e consegui completar com sucesso. Obrigado, pela sua ajuda.
  4. 1 point
    Majesty

    Dev c++ erro -leay32

    Tente compilar com este tutorial:
  5. 1 point
    gpedro

    [OTServBR-Global][MyAAC] login.php para Tibia 12

    [MyAAC] login.php para Tibia 12 Este plugin permite que você use novos recursos de login.php do cliente Tibia 12 e superior. Este plugin inclui o arquivo login.php, que será extraído para o diretório de instalação principal após a instalação. Plugin utilizado para conectar ao servidor OTServBR-Global com MyAAC. 1 - Como instalar: Vá para o Painel de Administração, selecione 'Plugins' e, em seguida, selecione myaac-tibia12-login-v1.3.zip e clique em upload. Isso é tudo! 2 - Download: [Hidden Content] 3 - Créditos slawkens fear lucien gpedro
  6. 1 point
    Gengo

    [OTClient] Entendendo as funções Opcodes

    Eai, galera, blz! Hoje vim trazer um tutorial sobre Opcodes, sei que hoje em dia tem muitos tutorias falando sobre isso, porém é sempre bom dar uma atualizada, afinal um tutorial nunca será "igual" a o outro e quanto mais tutorias sobre o assunto, melhor o entendimento. Primeiro vamos conhecer o que é esse tal de Opcodes, uma breve explicação que vemos por ai. O que são Opcodes? R: Opcodes é a comunicação entre o cliente e o servidor. Na source do servidor muitos poderiam utilizar sockets, que são pacotes de informação, diretamente sem usar funcionalidades do jogo como meio de comunicação, já o Opcode utiliza-se recursos in-game para fazer essa comunicação. Vamos analisar o código do módulo acima? Vamos ver qual é a funcionalidade dessas funções e o que ela espera nos seus respectivos parâmetros. Vamos por etapa: 1 - ProtocolGame.registerExtendedOpcode(Opcode, function(protocol, opcode, buffer) end) Essa função tem a funcionalidade de registrar um Opcode, como vemos o nome já é autoexplicativo. Parâmetros: Opcodes É um numero(Identificador) qualquer que vai do 0 ao 255, no caso desse módulo foi utilizado o numero 110. Function: Esse segundo parâmetro é uma função que fica esperando uma resposta do servidor, vemos que o eperado é que servidor nos envie um buffer qualquer, neste caso esperamos que seja enviado o nome do player. 2 - ProtocolGame.unregisterExtendedOpcode(Opcode) Essa função tem a funcionalidade de desregistrar um Opcode, como vemos o nome já é autoexplicativo. Parâmetro: Opcode: É o mesmo numero(Identificador) que utilizamos para registrar, assim a propria função saberá qual Opcode deve ser desfeita, digamos assim. 3- g_game.getProtocolGame():sendExtendedOpcode(Opcode, '') Essa função tem o intuito de solicitar/executar uma ação no servidor, nesse caso do módulo de exemplo, essa ação fará com que o otClient solicite ao servidor uma responsta no qual foi designada a ser feito, me retornar o nome do player. Parâmetros: Opcode: É o mesmo numero(Identificador) que utilizamos para registrar. buffer: Dados que poderam ser enviados ao servidor. Exemplo: Enviar uma pos, e verificar se contem uma creatura, nesse exemplo não foi enviado nada. Também temos na parte do servidor e é algo simples que dê para entender. Essa função espera que o client solicite/execute uma ação para o servidor possa processar e se preciso retornar algo que é esperado. Parâmetros: cid: Cid identificar do player, não vem ao caso explicar com o maior detalhe. opcode: É o mesmo numero(Identificador) que utilizamos para registrar na parte do client, assim o servidor sabe qual ação deve ser executada. buffer: Dados que o client enviou para o servidor. Podemos analisar com calma essa função, obersevem cada detalhe que é utilizado podemos ver que se a opcode for a mesma opcode registrada no client que nesse caso é o 110, solicitamos ao servidor que nos envie o nome da creatura que executou a ação, atraves da função: doSendPlayerExtendedOpcode doSendPlayerExtendedOpcode(cid, Opcode, buffer) Essa função tem o intuito de enviar informações para o client, e ao executar essa função, podemos perceber que lá quando registramos o Opcode ProtocolGame.registerExtendedOpcode na parte do módulo, o segundo parâmetro é executado. Parâmetros: cid: Cid identificar do player, não vem ao caso explicar com o maior detalhe. opcode: É o mesmo numero(Identificador) que utilizamos para registrar na parte do client, assim o servidor sabe qual ação deve ser executada. buffer: Dados que o servidor envia para client, nesse caso foi enviado o nome da creatura. Então vamos reforçar o tutorial e vermos o que aprendemos, vamos-lá. 1º Vemos que para registrar um Opcode, utilizamos a função: ProtocolGame.registerExtendedOpcode(Opcodes, function(protocol, opcode, buffer) end) na maioria das vezes utilizamos dentro da função init. 2º Vemos que precisamos também desregistrar a Opcode, e utilizamos a função: ProtocolGame.unregisterExtendedOpcode(Opcodes), mais utilizado na função do módulo em terminate. 3º Vemos que podemos fazer com que o client solicite uma ação ao servidor utilizando a função: g_game.getProtocolGame():sendExtendedOpcode(Opcodes, Buffer). 4º Vemos também que na parte do servidor, a função: onExtendedOpcode(cid, opcode, buffer) espera que o client solicite/execute algo que possa ser processado e se preciso enviar alguma responsta esperada com a função: doSendPlayerExtendedOpcode(cid, Opcodes, Buffer) Bom, espero que dê para entender com o exemplo e uma breve explicação de cada função. Desculpem-me de qualquer erro, se falei algo errado ou se precisava dizer algo a mais; podem me chamar no privado que estarei lendo e aceitando qualquer tipo de sugestão ou alteração, afinal estamos todos aqui para aprender e o importante é que todos entendam como tudo funciona, aprendam e pratiquem. Download do módulo:
  7. 1 point
    Majesty

    [Windows][Codeblocks] Compilando Sources OTClient

    [Windows][Codeblocks] Compilando Sources OTClient Tutorial explicando como compilar as Sources do OTClient com o Codeblocks. 1 - Downloads Necessários: - CMake: (32-bit download, 64-bit download) - Codeblocks: [Hidden Content] - MingW: [Hidden Content] - Edubart OTClient Sources: [Hidden Content] - OTLand OTClient Sources: [Hidden Content] 1.1 - Download Não Necessário: - Libs OTClient para MingW32: [Hidden Content] Obs: Libs OTClient já estão incluídas com o MingW! - Link de download no tópico apenas para conhecimento sobre as libs utilizadas. 2 - Instalação: - Faça a instalação do CMake (C:\Program Files\CMake). - Faça a instalação do Codeblocks (C:\Program Files (x86)\CodeBlocks). - Descompacte o MingW na unidade C:\. - Após descompactar o MingW, deverá ficar assim C:\MingW. Exemplo: - Descompacte as sources do OTClient na unidade C:\. Exemplo: C:\otclient-master. - Dentro da pasta C:\otclient-master, crie uma pasta chamada otclient-cmake. - A pasta otclient-cmake será utilizada para a criação do projeto do OTClient no CMake. 2.1 - Diretório Path: - Utilize a Tecla do logotipo do Windows + Pause para acessar as Propriedades do Sistema. - Acesse Configurações avançadas do sistema. - Na aba Avançado, clique em Variáveis de Ambiente. - Em variáveis de usuário, edite a váriavel Path e adicione o caminho abaixo: C:\Program Files\CMake\bin;C:\MinGW\bin;C:\MinGW\lib;C:\MinGW\include; 3 - CMake: - Encontre e abra o cmake-gui.exe em C:\Program Files\CMake\bin. Para facilitar a utilização, envie um atalho para a Área de Trabalho. - Antes de utilizar o CMake, acesse no menu Options > Warning Messages... > Supress Warnings > Marque as opções Developer Warnings e Deprecated Warnings. - Como configurar o projeto do OTClient no CMake: - Escolha o diretório das sources do OTClient. - Escolha o diretório que vai ser salvo o projeto do OTClient no CMake. - Clique no botão Configure escolha a opção Codeblocks - MingW Makefiles para ser o gerador do projeto. Ficando assim: - Espere ele gerar o projeto. - Feito isso, você deve configurar o CMake para compilar o OTClient (modo Release | OpenGL ou Directx9) - Isso deve ser feito uma vez para OpenGL e depois para Directx9. - OTClient CMake com modo Release e OpenGL: - CMAKE_BUILD_TYPE - Release + OPENGLES - OFF - OTClient CMake com modo Release e Directx9: - CMAKE_BUILD_TYPE - Release + OPENGLES - 2.0 - Feito isso, com a opção escolhida (Release + OpenGL ou Release + Directx9), clique no botão Generate. - O projeto otclient.cbp será salvo dentro da pasta C:\otclient-master\otclient-cmake. - OTClient pronto para ser compilado. 4 - Codeblocks: - Abra o Codeblocks. - Antes de abrir o projeto do OTClient, no menu selecione Settings > Compiler > Toolchain executables, verifique as configurações e deixe assim: - Diretório do Compilador: C:\MingW - Compilador C: gcc.exe - Compilador C++: g++.exe - Bibliotecas Dinâmicas: g++.exe - Bibliotecas Estáticas: ar.exe - Debugger: GDB/CDB debugger : Default - Compilador de Recursos: windres.exe - Programa make: mingw32-make.exe Imagem: - Depois, abra o projeto do OTClient com o comando Ctrl + O e abra o arquivo otclient.cbp: - Feito isso, para compilar o OTClient clique na opção Build: - O resultado final deverá ser esse: - OTClient compilado no Codeblocks com sucesso! - Como utilizar o OTClient: - Copie o otclient.exe da pasta otclient-cmake e cole na pasta otclient-master. - Copie as DLLs libwinpthread-1.dll, libEGL.dll e libGLESv2.dll da pasta C:\MingW\bin e cole na pasta otclient-master. - Copie o Tibia.spr e Tibia.dat da versão desejada em data/things/versão (no lugar de versão crie a pasta com o número, exemplos: 760, 860, 1098, etc). - Abra o otclient.exe. 5 - Créditos: Edubart (Sources OTClient) Majesty (Downloads Mediafire + Tutorial CMake e Codeblocks)
  8. 1 point
    Majesty

    OTServBR-Global 12.x

    Tutoriais: Mapping: Programação: Compilando Sources OTServBR-Global: Infraestrutura: [Linux - Ubuntu/Debian]OTServBR-Global + Apache + MySQL + MyAAC: [Windows][MySQL]OTServBR-Global + Uniform Server + MyAAC: [Windows][MySQL]OTServBR-Global + Uniform Server + GesiorAAC: [Windows][MySQL]OTServBR-Global + Uniform Server + ZnoteAAC: Downloads: Cliente 12: Ferramentas: [Hidden Content] Store para Tibia 12: FAQ 1: Pergunta: O executável fecha na hora de abrir o mapa, o que fazer? Resposta: Pasta data/world, descompacte o world.rar e deixe junto o otservbr.otbm + mapas complementares com o otservbr-house.xml e otservbrp-spawn.xml. 2: Pergunta: As imagens do store não aparecem no cliente 11, o que fazer? Resposta: Vá até pasta do cliente em packages/Tibia/storeimages e apague as pastas data8 e prepared. Depois, reinicie o XAMPP ou UniformServer, servidor e o cliente. E com os nomes, categorias, etc corretos no gamestore.lua, o cliente deverá carregar as imagens no shop. Para dúvidas e/ou problemas, utilize a seção Suporte: [Hidden Content]
  9. 1 point
    Majesty

    [Windows][Dev-C++] Compilando Sources TFS 0.4 (8.6)

    [Windows][Dev-C++] Compilando Sources TFS 0.4 (8.6) Tutorial explicando como compilar as sources do TFS 0.4 (8.6) com o Dev-C++. 1 - Downloads Necessários: - Stian's Dev-Cpp 64 bits: [Hidden Content] - OpenSSL 0.9.8a: [Hidden Content] - 0.9.8a/openssl-0.9.8a-1cm.DevPak/download 1.1 - Downloads Opcionais: - Sources TFS 0.4 rev3777 (8.6): [Hidden Content] - Sources TFS 0.4 rev3884 (8.6): [Hidden Content] 2 - Dev-C++: - Extraia os arquivos do Stian's Dev-Cpp 64 bits dentro do Disco Local (C:). - Renomeie a pasta Stians Repack Dev-Cpp 0.2 - 64bit para Dev-Cpp. - Abra o Dev-Cpp (C:\Dev-cpp\devcpp.exe). - Clique em Ferramentas > Package Manager: - Na janela que abrir, clique no botão Install: - Na próxima janela, selecione o pacote openssl-0.9.8a-1cm.DevPak baixado para fazer a instalação: - Instale o pacote openssl-0.9.8a-1cm.DevPak: - Feita a instalação, a janela do Package Manager pode ser fechada. - Seu Dev-Cpp está pronto para compilar as sources. 3 - Sources TFS 0.4 rev3777 (8.6): - Extraia as sources do TFS 0.4 rev3777 (8.6) em uma pasta. - Com o dev-cpp aberto, use o comando Ctrl+o para procurar e abrir o projeto .dev do TFS 0.4 rev3777 (8.6). - O .dev está dentro da pasta dev-cpp das sources: - Abra o TheForgottenServer-console.dev ou TheForgottenServer.dev (depende das sources utilizadas). - Para compilar as sources basta clicar em Executar > Compilar ou utilizar o comando Ctrl+F9. E pronto, sources compiladas com sucesso! 4 - FAQ Pergunta 1: Se as sources utilizadas forem outras, como alterar as preferências para utilizar SQLite, MySQL, Console? Resposta: Utilize o comando Alt + P, irá abrir uma janela e em paramêtros é onde deve ser adicionadas as opções. Lista de paramêtros: -D__USE_MYSQL__ -D__USE_SQLITE__ -D__CONSOLE__ 5 - DLL's Necessárias - Para rodar o servidor você precisa baixar as DLL's. Download: [Hidden Content]-(8.6)-opentibia-dllpack.zip Scan: [Hidden Content] 6 - Conectando ao Servidor - Para conectar ao servidor TFS 0.4 rev3777 (8.6) você precisa do Cliente Tibia 8.6 + IP Changer. Eles são encontrados para download nos seguintes tópicos: Clientes Tibia: IP Changer: 7 - Créditos Elwyn (Download Sources TFS 0.4 rev3777 (8.6)) Majesty (Tutorial + Download DLL's) Stian (Dev-Cpp)
This leaderboard is set to Sao Paulo/GMT-02:00
×