-
Total de itens
121 -
Registro em
-
Última visita
-
Dias Ganhos
18
Posts postados por PoRaI
-
-
Cara, já tem uma função dessa no 1.2, o diretório dela é: data/talkactions/scripts/add_skill.lua.
-
Posta o código que fica mais fácil de ajudar. O problema é que você ta querendo colocar um atributo não permitido no item.
-
tira essa linha do script ow:
outfit.lookType = infoClan[getPlayerVocation(cid)].runOutfit
o certo mesmo era remover da função cmdMove a função de setCreatureOutfitbtw, isso já deve ajudar
-
Em 04/10/2017 at 16:49, Ceetros disse:
Quem disse que espero algo em troca?
A idéia do TPS é ser um servidor comunitário, com a comunidade toda ajudando.
Mas pelo visto a comunidade só tem otadmin, ou pessoas que só querem tudo na mão, incluo as pessoas que falaram que vão ajudar.
Inclusive um deles é da equipe do xtibia
Logo, caso você ache que eu quero reconhecimento ou algo do gênero, pode começar a ignorar meus tópicos, jaé?
Você acha mesmo que vão começar a contribuir só porque você criou um repositório no Github? Só vão contribuir quando você realmente criar UMA BASE DE POKÉMON. Isso não é uma base de Pokémon. Você só ta saindo ""programando"" aleatoriamente (sinceramente, se eu fosse pegar pra fazer algo nesse projeto, eu refaria basicamente tudo que você fez, lol) sem pensar na funcionalidade e usabilidade de adicionar coisas futuramente, ninguém vai usar isso até então. Você tá achando que quando postaram o otclient juntou um monte de programador pra ajudar do nada? Não. Começaram a ajudar porque já tinham algo. Antes de tudo, crie um roteiro de desenvolvimento PRA VOCÊ (querendo ou não você acaba sendo a pessoa mais influente, então na teoria, você precisa e vai acabar produzindo mais que todos), um exemplo de como fiz e segui no meu projeto:* Pokeball class
* Pokemon class
* Go/back
* Sistema de moves pro player
* Sistema de moves pro pokemon selvagem* Refazer o sistema de conditions do Tibia
* Order
* Catch
Em ordem e só passar pro próximo caso o sistema esteja 100%. Mas provavelmente você vai ignorar e eu provavelmente não estarei mais acompanhar o tópico, rs. -
Cara, então, vou dar duas dicas (acho que até o momento é só isso):
1º Defina uma linha que você irá seguir, nem todo mundo pensa da sua forma. Com o que será parecido? Pxg? Jogos da Nintendo? ou qual sua ideia? Deixe explicito isso.
2º Tenha metas, faça só o que é necessário no momento.Tava dando uma olhada e você colocou coisas como: "gympoke" e tipo... não faça isso cara, tem sistemas muito mais importante pra você pensar, tenha um foco e não perca ele se não você vai levar muito mais tempo para produzir, não deixe as coisas pela metade. E outra, não é nem de perto a melhor maneira de criar esse sistema, então, tenha foco para futuramente você focar nisso que você pode acabar tendo até uma ideia melhor.
Não me leve a mal, rofl. Futuramente irei contribuir, mas antes preciso terminar meu projeto que alias, só falta o balanceamento que é a parte mais complicada.
-
1 hora atrás, Dandjes disse:
Funcionou normal.
Nenhuma dessas duas outras opções funcionaram no script de change vocation, porém no comando de deathlist funcionou. Pelo que eu percebi nada funciona quando a questão é o script alterar algo na database. =/
Erro:[Error - Action Interface] [22/09/2017 21:47:55] data/actions/scripts/changevoc.lua:onUse [22/09/2017 21:47:55] Description: [22/09/2017 21:47:55] data/actions/scripts/changevoc.lua:58: attempt to concatenate a boolean value [22/09/2017 21:47:56] stack traceback: [22/09/2017 21:47:56] data/actions/scripts/changevoc.lua:58: in function <data/actions/scripts/changevoc.lua:1>
Aí é o script que tá com erro. É aquele mesmo do outro tópico? Afinal, pq você não usa aquele que eu mandei?
Edit:
Ele tá dando erro porque você tenta usar a função: getPlayerGUID(cid) depois que removeu a criatura, então a função vai retornar um valor boleano falso.
Troca os: " .. getPlayerGUID(cid) .. " por " .. pid .. " -
Não vai dar erro, o servidor dele falta a função executeQuery pelo log que ele mandou.
Bom, recomendo trocar o executeQuery por storeQuery ou getResult, apesar de ser gambiarra, bom... já que você não tem a source.
-
Mano, faz o seguinte... Coloca isso aqui em /data/lib/012-table.lua:
function table.val_to_str ( v ) if "string" == type( v ) then v = string.gsub( v, "\n", "\\n" ) if string.match( string.gsub(v,"[^'\"]",""), '^"+$' ) then return "'" .. v .. "'" end return '"' .. string.gsub(v,'"', '\\"' ) .. '"' else return "table" == type( v ) and table.tostring( v ) or tostring( v ) end end function table.key_to_str ( k ) if "string" == type( k ) and string.match( k, "^[_%a][_%a%d]*$" ) then return k else return "[" .. table.val_to_str( k ) .. "]" end end function table.tostring( tbl ) local result, done = {}, {} for k, v in ipairs( tbl ) do table.insert( result, table.val_to_str( v ) ) done[ k ] = true end for k, v in pairs( tbl ) do if not done[ k ] then table.insert( result, table.key_to_str( k ) .. "=" .. table.val_to_str( v ) ) end end return "{" .. table.concat( result, "," ) .. "}" end
Crie um script qualquer com isso aí:print(table.tostring(db))
e posta aqui o resultado que aparecer no seu console. -
local vocation_table = { [37001] = 1, [37011] = 2, [37012] = 3, [37013] = 4, } function onUse(cid, item, frompos, item2, topos) local voc = vocation_table[item.uid] if voc then if getPlayerVocation(cid) == voc then return doPlayerSendCancel(cid, "Você não pode trocar para a mesma vocação.") elseif getPlayerVocation(cid) == 0 then return doPlayerSendCancel(cid, "Você precisa ter uma vocação para ser outra.") elseif getCreatureCondition(cid, CONDITION_INFIGHT) then return doPlayerSendCancel(cid, "Você não pode trocar de vocação em combate.") end local pid = getPlayerGUID(cid) local level = math.max(1, getPlayerLevel(cid) - 8) local vocationInfo = getVocationInfo(voc) local hpLevel = vocationInfo.healthGain * level local manaLevel = vocationInfo.manaGain * level local baseInfo = getVocationInfo(0) local baseHp = baseInfo.healthGain * 8 local baseMana = baseInfo.manaGain * 8 doSendMagicEffect(topos, 14) setCreatureMaxHealth(cid, baseHp + hpLevel) setCreatureMaxMana(cid, baseMana + manaLevel) doPlayerSetVocation(cid, voc) doRemoveCreature(cid) local executeQuery = db.executeQuery or db.query executeQuery("UPDATE `player_skills` SET `value` = '10', count = '0' WHERE `player_id` = '".. pid .."';") executeQuery("UPDATE `players` SET `maglevel` = '0', `manaspent` = '0' WHERE `id` = '".. pid .."';") end return true end
Eu refiz o seu script, não sei se vai ajudar no seu caso.O que imagino que possa ser é: você ter criado uma variável chamada db e ter dado conflito com a tabela de funções db, sei lá.
E também, se possível, envia seu luascript.cpp pra eu dar uma olhada aí.
-
Qual é a distro?
Btw, tenta trocar todos os db.executeQuery no script para db.query e vê se resolve. -
39 minutos atrás, Bennyyw disse:
programador bom
ainda bem que tem um bom no diamond
-
A blacklist.xml e o version.xml da otland ta offline. É algo bem inútil que enfiaram na source.
Pra evitar esse erro e se você tiver as sources aí, vai no arquivo otserv.cpp e comenta da linha:
stdcout << ">> Checking software version... ";
até as linhas:
startupErrorMessage("Unable to fetch blacklist!");}
/* assim que comenta
dae é só você comentar da linha x que mandei até a linha y */ -
O fato de estar "saturado" é algo relativo, saturado pra quem?
A questão aqui é a seguinte: Porque você jogou X servidor? Pq ele era divertido pra você? Oq te prendia? Pq ele era bom?
É esse tipo de resposta (e como a do Fjinst) que estou procurando.
-
Na sua opinião:
O que é um bom servidor de Pokémon pra você? O que faz esse servidor ser bom pra você?
-
local pausa = 120*60*1000 -- (1000 = 1 segundos) Tempo que o script durarálocal texto = "You have 3 times more experience for 60 minutes, do not logout or else you will loose the bonus."local exp = 2.0 -- O quanto que você quer que dobre sua experiencia, por exemplo 2 é 2x as rates do seu server.function onUse(cid, item, frompos, item2, topos) if item.itemid == 7443 then doRemoveItem(item.uid, 1) doPlayerSetExperienceRate(cid, exp) doSendMagicEffect(frompos, 13) doPlayerSendTextMessage(cid, 22, texto) addEvent(potion, pausa, cid) endendfunction potion(cid) local textofinal = "Your bonus time is gone." -- Texto que irá receber quando o efeito da potion acabar. local expfinal = 1 --Não mude, isso é para a experiencia voltar ao normal. if isPlayer(cid) then doPlayerSetExperienceRate(cid, expfinal) doPlayerSendTextMessage(cid, 22, textofinal) endend
-
Sistema de Aura
É possível configurar a espessura da Aura por um script, sem precisar editar a source do cliente. Foi desenvolvido pra um servidor de Pokémon.
Sistema de Shop
A diferença desse sistema de Shop pelos que tem na net é que esse faz conexão com o servidor. Você pode adicionar novos itens, adicionar promoções, etc, sem os players precisarem atualizar o cliente.
-
Deixei meu contato no tópico. Foi mal a sumida pessoal, kek.
-
que isso em Leon fico legalzinho, só que achei muito pillow
-
Eu lembro SADLKmAWElmd.
Só não lembro se foi no Kpdo, NPO ou Svke... e também lembro dos fóruns, rofl. Acho que lembro que a última coisa q te mandei na época do MSN foi o sistema de Pokedex ASDLKMLFSKFTL old.
A quanto tempo, rofl. E obg. sz -
Obrigado pessoal, zdflkzmsd. Só uma coisa que esqueci de mencionar: não sou eu quem faz o Design. Geralmente quando me pedem um módulo fazem o Design dele por mim no Photoshop e me mandam o PSD. Eu basicamente replico, rofl.
-
Oi, eu faço. Manda PM.
-
Oi, eu sou o Porai e quero mostrar através deste tópico alguns sistemas que já desenvolvi. (estou tentando me vender :X)
Estou atuando como freelancer, para mais informações, PM.
OTPiece/Pirate King Online:
SpoilerPet System (Módulo/Sistema)
Spoiler
Criatura que segue o player, dá auto-loot nos itens configurados e possui slots limitados. Quando acabar os slots o auto-loot não irá mais funcionar. O botão deposit items transfere os items para o depot, cada pet com um tempo determinado. Se você estiver em frente ao depot o tempo de deposito será instantâneo.
Sistema de Market (Módulo)
Spoiler
Comprar e vender itens. Expiram em 60 horas.
Sistema de Task (Módulo)SpoilerSistema de task para recompensa os jogadores com task points por matar criaturas. Task points podem ser trocados por outras coisas, tipo: XP, Itens, etc.
Quest Log (Módulo)SpoilerSistema de quest log com suporte a tradução. Mostra marcações no minimap, ações baseadas em storages, etc.
Sistema de Imbuir Itens (Módulo)SpoilerSistema de encantar itens, igual o do Tibia Global. A diferença é que você pode usar Pirate Dust para aumentar o tempo dos encantos.
Sistema de Profissão (Módulo)Spoiler
Craftar itens baseado na sua profissão, skills da profissão e cada item com seu tempo. Pirate Dust aumenta o tempo do encanto do Imbuing, no sistema de profissão ele reduz o tempo de craftar um item.Outros
Spoiler1 - Controlar a velocidade dos efeitos in-game.
2 - Sistema de pulo.
3 - Sistema de shield. (quase um utamo, só que tem um efeito visual na vida e não usa a mana, é um sistema novo)
Fairy Tail Online:
SpoilerModulo de Guild Task (Request Board)
SpoilerCada guilda possui seu request board e ao iniciar um task ela irá sumir para os outros membros. São limitadas. Todos os dias uma guilda ganha um numero X de tasks novas.
Outros
Spoiler1 - Paperdoll. (Equipar um item e aparecer no personagem criando qualquer combinação de roupa)
2 - O sistema de efeitos é um pouco mais complexo: é possível alterar se ele vai aparecer em cima/baixo de criatura/item, velocidade e também cor (igual mask das outfits, td in-game).
3 - Outro tipo de configuração em efeitos: seguirem o player e não ficarem para trás.
4 - Sistema de canais. Sistema de instancia (?). Geralmente quando querem fazer um lugar onde só pode ter 1 player (tipo uma dungeon), utilizam mapas duplicados... e para não precisar duplicar mapas o sistema foi criado.
5 - Barra de ação. A cada cor representa uma ação e ela pode ter qualquer cor. Exemplo: rage em monstros (vermelha), exhaust em ações (branco), etc.
Outros:
SpoilerSistema de Aura
É possível configurar a espessura da Aura por um script, sem precisar editar a source do cliente. Foi desenvolvido pra um servidor de Pokémon.
Sistema de Shop
A diferença desse sistema de Shop pelos que tem na net é que esse faz conexão com o servidor. Você pode adicionar novos itens, adicionar promoções, etc, sem os players precisarem atualizar o cliente.
Meu módulos geralmente são sempre client/server side para evitar eventuais atualizações no cliente, caso queira adicionar novas informações.
Tenho beeeem mais coisa....... mas isso é bem cansativo de postar.
Discord: Porai#4377
-
Me lembra algo que estava iniciando anos atrás. :'C
https://www.youtube.com/watch?v=iPomklRktaY -
Seu sombreamento é uma droga. Na estante por exemplo, falta textura.
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.
[Resolvido] Spell que só funciona fora de battle 8.60
em Resolvidos
Postado
testa ae