Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''changer''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • xTibia - Notícias e Suporte
    • Regras
    • Noticias
    • Soluções
    • Projetos Patrocinados
    • Tutoriais para Iniciantes
    • Imprensa
  • OTServ
    • Notícias e Debates
    • OTServlist
    • Downloads
    • Recursos
    • Suporte
    • Pedidos
    • Show-Off
    • Tutoriais
  • OFF-Topic
    • Barzinho do Éks
    • Design
    • Informática

Encontrar resultados em...

Encontrar resultados que contenham...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Sou

Encontrado 5 registros

  1. Opa galera! Hoje trago um tutorial de como criar um OtServers e outras coisas Sobre ele. Sigam e prestem atenção! Esse é meu primeiro Post, então não reclamem, ainda sou iniciante aqui no xtibia "REP AQUI SE EU TE AJUDEI!" Para criar um OTServ, primeiramente, peço a você que tenha um pouco de paciência e dedicação. Se concentre bastante ao ler o tutorial abaixo, não é nada complicado, mas procure extrair todas as informações que o mesmo oferece. Primeiros passos Obviamente, antes de tudo, você precisa de todos os arquivos necessários para rodar o servidor no seu computador e um registro no fórum. Para se registrar gratuitamente clique aqui (informe um e-mail real no campo, pois você precisará confirmar o registro). Depois que você criar o registro, clique aqui para entrar na seção "Download de OTServs", baixe o servidor da versão que mais lhe chamar a atenção (para ter certeza se ele é bom, examine as respostas dos outros membros e o próprio tópico) e descompacte ele (todos os servidores da seção vêm compactados em arquivos RAR/ZIP, clique aqui e baixe o programa para descompactá-los) no diretório Meus Documentos ou qualquer outro de fácil acesso. Você verá vários arquivos e pastas, mas por enquanto não mexa nem exclua nada. Dê um duplo clique no arquivo config.lua que está localizado no diretório matriz, e faça-o ser executado com o notepad (bloco de notas). Segundo passo Configurando o config.lua Quarto e último passo: Após essas configurações, você já pode abrir seu servidor para testá-lo (Visualize o F.A.Q abaixo caso não saiba entrar no servidor). Porém, você ainda pode fazer várias alterações nele, como criar novos monstros, magias, runas, e até NPCs! Nota: Em caso de falta de DLL na execução do servidor, visite o site DLL-Files (www.dll-files.com) e utilize a caixa de busca para encontrá-las e baixá-las. Depois, descompacte elas no diretório aonde está localizado o executável (otserv.exe). F.A.Q Como abrir meu servidor? Após configurar corretamente o config.lua, dê um duplo clique no executável (OTServ.exe ou TheForgottenServer.exe; pode variar) e aguarde a abertura do servidor. Se no processo aparecer qualquer mensagem de erro, tire uma screenshot do erro e poste nos comentários para obter ajuda. Se o servidor abrir sem erros, você já está pronto para testá-lo! Como entrar no meu servidor? Como saber meu IP? Há várias maneiras para descobrir seu IP, vamos tentar duas delas. Vá até o menu Iniciar -> Configurações -> Painel de controle e clique no item Conexões de rede. Dê um duplo clique na conexão local (a conexão ativa) e vá até a aba Suporte. Seu endereço de IP estará lá. Outra maneira, ligeiramente mais fácil, é visitar o site WhatIsMyIp, copiar o IP e colar ele no arquivo de configuração do servidor. O que é "Account Manager"? Account Manager é, em poucas palavras, um NPC que cria uma conta para você. Hoje em dia, é mais utilizado do que websites, devido a sua praticidade e também por exilar o uso de webservers para rodar os sites, tais que acarretam mais uso da memória do computador. Praticamente todos os servidor atuais possuem um Account Manager imbutido e, também, uma opção para desabilitá-lo se você quiser. Fica a seu critério decidir se vai usá-lo ou não. Não conseguem conectar? Se os jogadores não estiverem conseguindo entrar no seu servidor, provavelmente é porque a porta inserida na variável "port" (padrão 7171) está bloqueada para acesso remoto. Para desbloquea-la é simples. Vá até o menu Iniciar > Configurações > Painel de controle e clique no item Firewall do windows. Se você achar conveniente, desative-o por completo, e peça para seus amigos tentarem acessar novamente o servidor, porém, se quiser deixar seu computador com a proteção do programa, faça o seguinte: Vá até a aba Exceções, e clique no botão Adicionar Porta. No campo Nome digite Tibia (ou qualquer outro) e no campo Porta, 7171 (porta inserida no config.lua). Após isso nenhuma alteração é necessária, clique em Ok. Recomendo também desativar qualquer anti-vírus ou firewall opcional, caso estejam previnindo acessos à porta. Tente novamente e veja os resultados. Problemas com scripts? Caso o seu servidor apresente qualquer tipo de "LUA error", é porque você adicionou/modificou algo que não é suportado pela linguagem LUA, ou mal uso do mesmo. Para resolver o problema é simples: basta visualizar qual é a linha que está ocorrendo tais erros, e verificar se o script segue o padrão da linguagem. Problemas com websites? Geralmente todo tipo de erro relacionado com linguagens se baseia no ato de acessar a linha que o aplicativo indica, e verificar se está correto. Na linguagem PHP, que é utilizada para a criação de websites de OTServ, não é diferente. Normalmente, os websites vêm com um arquivo específico que possui todas as variáveis globais (config.php), que é aonde você deve configurar. Para que os outros possam acessar seu website, você deve possuir um webserver instalado em sua máquina. -------------- Tá tudo bem explicado, não precisa de foto né? só é prestar atenção no texto! xD Outros problemas? Não hesite em utilizar os comentários! Estaremos aqui pra te ajudar!
  2. Nome: Advanced Vocation Changer Autor: JoseJunior23 Server: TFS 3.6 Como functiona? Você é Knight e quer ser Sorcerer, basta você digitar /acv 1 e sua vocação será mudada para sorcerer. OBS: O melhor de tudo é você não irá perder seus SKILLS/ML, pois eles serão guardados, cada vocação fica com seus ml/skills guardados em diferentes storages. enquanto ao HP/MANA será igual ao seu vocations.xml porem fiz a minha maneira, oque quer dizer que você irá ter que configurar essa parte. Comandos /acv 1 = sorcerer /acv 2 = druid /acv 3 = paladin /acv 4 = knight Instalação 1º na pasta server/mods cria um arquivo XML chamado Advanced Change Vocation e coloque isso dentro: <?xml version="1.0" encoding="UTF-8"?> <mod name="ADVANCED CHANGE VOCATION" version="1.0" author="josejunior23" contact="[email protected]<script cf-hash='f9e31' type="text/javascript"> /* */</script>" enabled="yes"> <talkaction words="/acv" case-sensitive="yes" event="script" value="ACV.lua"/> <event type="logout" name="acv_logout" event="script" value="ACV_logout.lua"/> <event type="login" name="acv_login" event="script" value="ACV_login.lua"/> <event type="death" name="acv_death" event="script" value="ACV_death.lua"/> </mod> 2º na pasta server/mods/scripts cria um arquivo LUA chamado ACV e coloque isso dentro: -- Advanced Vocation Changer! -- scripted by josejunior23 function onSay(cid, words, param, channel) if(acv_exhaustion.enable == true) and (isExhausted(cid)) then doPlayerSendTextMessage(cid, acv_msg_color, "You can't change your vocation now! You still need to wait: " .. fixTimer(getPlayerStorageValue(cid, acv_exhaustion.storage))) return true end if not (param) or not (isNumber(param)) or (tonumber(param) > 4) or (tonumber(param) < 1) then doPlayerSendTextMessage(cid, acv_msg_color, "You can change your vocation up to 1 till 4 vocations (/acv VOCATIONID)!\n 1 = sorcerer, 2 = druid, 3 = paladin and 4 = knight.") return true end if(tonumber(param) == getVocationCfg(getPlayerVocation(cid))) then doPlayerSendTextMessage(cid, acv_msg_color, "You are already " .. getArticle(getPlayerVocationName(cid)) .. " " .. getPlayerVocationName(cid) .. ".") return true end if(getCreatureCondition(cid, CONDITION_INFIGHT)) then doPlayerSendTextMessage(cid, acv_msg_color, "You may not change your vocation while in battle.") return true end local newvoc = acv_config[tonumber(param)] if(newvoc) then savePlayerVocation(cid) local vocID = getPlayerVocation(cid) local vocStorage = getVocationStorage(vocID) if(acv_fun_cfg.text.doCreatureSay == true) then doCreatureSay(cid, acv_fun_cfg.text.text, acv_fun_cfg.text.talkType) end if(acv_fun_cfg.effect.doSendMagicEffect == true) then doSendMagicEffect(getCreaturePosition(cid), acv_fun_cfg.effect.effect) end if(acv_exhaustion.enable == true) then addExhausted(cid, acv_exhaustion.time) end changePlayerVocation(cid, tonumber(param)) end return true end 3º na pasta server/mods/scripts cria um arquivo LUA chamado acv_login e coloque isso dentro: -- Advanced Vocation Changer! -- scripted by josejunior23 function onLogin(cid) if(getPlayerPromotionLevel(cid) == 1) and (getPlayerVocation(cid) <= 4) then doPlayerSetVocation(cid, getPlayerVocation(cid) + 4) end if(acv_enable_msg_on_login == true) then doPlayerSendTextMessage(cid, acv_msg_color, "Your vocation is: " .. getPlayerVocationName(cid) .. ".") end local events = {"acv_logout", "acv_death"} for i = 1, #events do registerCreatureEvent(cid, events[i]) end return true end 4º na pasta server/mods/scripts cria um arquivo LUA chamado acv_logout e coloque isso dentro: -- Advanced Vocation Changer! -- scripted by josejunior23 function onLogout(cid) savePlayerVocation(cid) return true end 5º na pasta server/mods/scripts cria um arquivo LUA chamado acv_death e coloque isso dentro: -- Advanced Vocation Changer! -- scripted by josejunior23 function onDeath(cid, corpse, deathList) savePlayerVocation(cid) return true end 6º na pasta server/data/lib cria um arquivo LUA chamado ACV_lib e coloque isso dentro: LEMBRE-SE DE CONFIGURAR O CODIGO ESSA PARTE! -- Advanced Vocation Changer! -- scripted by josejunior23 acv_enable_msg_on_login = true; acv_msg_color = MESSAGE_STATUS_CONSOLE_ORANGE; -- message colour send in default channel acv_exhaustion = {enable = true, storage = "acv_exh", time = 5}; -- time in seconds 60 x 60 = 3600 = 1 hour acv_first_storage = "firstvoc"; -- saves players first vocation acv_fun_cfg = { text = {doCreatureSay = true, text = "#CHANGING VOCATION#", talkType = TALKTYPE_ORANGE_1}, effect = {doSendMagicEffect = true, effect = 10} -- effect 10 = teleport } acv_config = { -- make sure none of those storages are already in use! [1] = 73974, -- sorcerer UNIQUE STORAGE!!! [2] = 73983, -- druid UNIQUE STORAGE!!! [3] = 73992, -- paladin UNIQUE STORAGE!!! [4] = 73991 -- knight UNIQUE STORAGE!!! } getFormula = function(cid) -- how to config -> change the numbers below to the same as vocations.xml (gainhp, gainmana) return { health = { -- Sorcerer [1] = 5, -- sorcerer gains X HEALTH each level (gainhp) [5] = 5, -- master sorcerer gains X HEALTH each level (gainhp) -- Druid [2] = 5, -- druid gains X HEALTH each level (gainhp) [6] = 5, -- elder druid gains X HEALTH each level (gainhp) -- Paladin [3] = 10, -- paladin gains X HEALTH each level (gainhp) [7] = 10, -- royal paladin gains X HEALTH each level (gainhp) -- Knight [4] = 22, -- knight gains X HEALTH each level (gainhp) [8] = 22 -- elite knight gains X HEALTH each level (gainhp) }, mana = { -- Sorcerer [1] = 30, -- sorcerer gains X MANA each level (gainmana) [5] = 30, -- master sorcerer gains X MANA each level (gainmana) -- Druid [2] = 30, -- druid gains X MANA each level (gainmana) [6] = 30, -- elder druid gains X MANA each level (gainmana) -- Paladin [3] = 15, -- paladin gains X MANA each level (gainmana) [7] = 15, -- royal paladin gains X MANA each level (gainmana) -- Knight [4] = 5, -- knight gains X MANA each level (gainmana) [8] = 5 -- elite knight gains X MANA each level (gainmana) } } end function fixTimer(v) local seconds, minutes, hours = v - os.time(), 0, 0 while seconds >= 60 do minutes = minutes + 1 seconds = seconds - 60 end while minutes >= 60 do hours = hours + 1 minutes = minutes - 60 end local str1, str2, str3 = hours > 1 and hours .. " hours, " or "" .. "", minutes > 1 and minutes .. " minutes and " or "" .. "", seconds .. " seconds." or "" .. "" return str1 .. str2 .. str3 end function isExhausted(cid) return getPlayerStorageValue(cid, acv_exhaustion.storage) > os.time() and true or false end function addExhausted(cid, time) -- time in seconds return setPlayerStorageValue(cid, acv_exhaustion.storage, os.time() +time) end function setStorageString(cid, storage, string) return setPlayerStorageValue(cid, storage, "S" .. string) end function getStorageString(cid, storage) return string.sub(getPlayerStorageValue(cid, storage), 2) end function getVocationStorage(id) return acv_config[getVocationCfg(id)] end function getPlayerFirstVocation(cid) return getPlayerStorageValue(cid, acv_first_storage) end function getVocationCfg(id) if(id > 4) then id = id - 4 end return id end function savePlayerVocation(cid) local maglevel, fist, club, sword, axe, dist, shield, fish = getPlayerMagLevel(cid), getPlayerSkillLevel(cid, 0), getPlayerSkillLevel(cid, 1), getPlayerSkillLevel(cid, 2), getPlayerSkillLevel(cid, 3), getPlayerSkillLevel(cid, 4), getPlayerSkillLevel(cid, 5), getPlayerSkillLevel(cid, 6) local vocID = getPlayerVocation(cid) local vocStorage = getVocationStorage(vocID) if(getPlayerPromotionLevel(cid) == 1) and (getPlayerVocation(cid) <= 4) then vocID = getPlayerVocation(cid) + 4 doPlayerSetVocation(cid, vocID) end return setStorageString(cid, vocStorage, maglevel .. "-" .. fist .. "-" .. club .. "-" .. sword .. "-" .. axe .. "-" .. dist .. "-" .. shield .. "-" .. fish .. "-" .. vocID) end function setupPlayerVocation(cid, arg) local pid = getPlayerGUID(cid) doRemoveCreature(cid, true) db.executeQuery("UPDATE `players` SET `maglevel` = " .. arg.maglevel .. " WHERE `id` = ".. pid .. ";") db.executeQuery("UPDATE `player_skills` SET `value` = " .. arg.fist .. " WHERE `player_id` = ".. pid .. " and `skillid` = ".. 0 ..";") db.executeQuery("UPDATE `player_skills` SET `value` = " .. arg.club .. " WHERE `player_id` = ".. pid .. " and `skillid` = ".. 1 ..";") db.executeQuery("UPDATE `player_skills` SET `value` = " .. arg.sword .. " WHERE `player_id` = ".. pid .. " and `skillid` = ".. 2 ..";") db.executeQuery("UPDATE `player_skills` SET `value` = " .. arg.axe .. " WHERE `player_id` = ".. pid .. " and `skillid` = ".. 3 ..";") db.executeQuery("UPDATE `player_skills` SET `value` = " .. arg.dist .. " WHERE `player_id` = ".. pid .. " and `skillid` = ".. 4 ..";") db.executeQuery("UPDATE `player_skills` SET `value` = " .. arg.shield .. " WHERE `player_id` = ".. pid .. " and `skillid` = ".. 5 ..";") db.executeQuery("UPDATE `player_skills` SET `value` = " .. arg.fish .. " WHERE `player_id` = ".. pid .. " and `skillid` = ".. 6 ..";") return true end function changePlayerVocation(cid, id) savePlayerVocation(cid) local newVoc = getVocationStorage(id) if(getPlayerStorageValue(cid, newVoc) == -1) or (getPlayerStorageValue(cid, newVoc) == 0) then local level = getPlayerLevel(cid) local vocationsset = { [1] = 1 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 1, -- default Sorcerer [2] = 1 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 2, -- default Druid [3] = 1 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 3, -- default Paladin [4] = 1 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 10 .. "-" .. 4 -- default Knight } setStorageString(cid, newVoc, vocationsset[getVocationCfg(id)]) end if(getPlayerFirstVocation(cid) == -1) or (getPlayerFirstVocation(cid) == 0) then setPlayerStorageValue(cid, acv_first_storage, getPlayerVocationName(cid)) end local get = string.explode(getStorageString(cid, newVoc), "-") local maglevel, fist, club, sword, axe, dist, shield, fish, voc = get[1], get[2], get[3], get[4], get[5], get[6], get[7], get[8], get[9] voc = tonumber(voc) if(getPlayerPromotionLevel(cid) == 1) and (voc <= 4) then voc = voc + 4 end doPlayerSetVocation(cid, voc) setCreatureMaxHealth(cid, getPlayerLevel(cid) * getFormula(cid).health[voc]) doCreatureAddHealth(cid, getPlayerLevel(cid) * getFormula(cid).health[voc]) setCreatureMaxMana(cid, getPlayerLevel(cid) * getFormula(cid).mana[voc]) doCreatureAddMana(cid, getPlayerLevel(cid) * getFormula(cid).mana[voc]) setupPlayerVocation(cid, {maglevel = maglevel, fist = fist, club = club, sword = sword, axe = axe, dist = dist, shield = shield, fish = fish}) return true end The end. <3
  3. rauanv

    Ajuda poketibia

    Alguem me ajuda por favor ): Eu tenho o windows 8 aqui, e gostaria de criar um poketibia, porem.... o tibia multi ip changer, nao roda nesse windows !!! Ja mudei a compatibilidade e nada, então queria saber, se alguem pode me ajudar a fazer um client, que nao precise do ip changer
  4. Bom sou mais um viciado em tibia, jogava oficial até que ums amigos deram a ideia de criar um OT tomei a iniciativa... ...Tudo pronto, mas editei um OT graça a o Xtibia com vários tutoriais, mas não estou conseguindo criar um Cliente com meu ip, ou até mesmo baixar um ip changer 9.81 "SEM VÍRUS" se alquem poder mandar um link, ou um tutoria que preste que funcione, agradeço muito ou até memos criar um Cliente para mim IP: vassa.no-ip.org se esse ip num pegar pode fazer um fazer com qual quer ip ai que eu cadastro depois bastar ter ".no-ip.org" ! Brigadão E se eu postei no local errado desculpem!
  5. olá pessoal vim aki mostrar para vcs o ais novo ipchanger da atualidade melhor q o asprate: KTibiaX Ipchanger!! Idioma: Portugues Brasileiro e Ingles: Pratico: KTibiaX IPchanger e mto pratico para akeles q n sabem mta coisa: IpChanger: suporta das versões 7.1 até 8.60 Checador de OT: ele tbm serve como um "otservlist" onde ele pode checar o dono,o motd e outros,ele tbm chca o lag!: (server test: sv1.radbr.com) Como podem ver,ele realmente chaca o sv, ate os monstros kkkkk Variedade de Temas: escolha os temas a seu gosto (tem outros): Mto legal esse Ipchanger né, mas ele prcisa de NET.Framework 2.0 para ser rodado,sem problema! o link sera postado aki para download (EM BREVE TUTORIAL DE COMO USALO). Download KTibiaX IPchanger:https://tibialaunch....her213Net20.zip Download NET.Framework 2.0:http://download.micr...5a/d#####fx.exe Creditos: Keyrox(criador),Comet2(post) SE VC GOSTOU POR FAVOR DA UM REP+ AEW FOI DIFICIL FAZER O POST. P.S:Links de Download sao diretos. EDIT: Quase eskeco o Scan!!! sem problema!: Scan do KtibiaX IpChanger: https://www.virustotal.com/file/b577aea95b6c5a5f88a7a352ba568fca6be23c0b293057e69a05b245c2707165/analysis/
×
×
  • Criar Novo...