Líderes
-
-
thelifeofpbion
MembroPontos737Total de itens -
SoyColombiaa
MembroPontos71Total de itens -
xWhiteWolf
HéroiPontos3605Total de itens
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 04/06/17 em todas áreas
-
[Link Quebrado] Pokemon Evolution [DxP]
[Link Quebrado] Pokemon Evolution [DxP]
ricksi2012 e um outro reagiu a victor0707 por uma resposta no tópico
2 pontosFala ai Galera vim postar um ot aki que passei algum tempo editando , porem um membro a roubou e para que ele não tenha lucro nenhum irei estar postando aki no TibiaKing. Contém: Tv System Shiny Ditto e Ditto Ditto Memory Cath com exp. PokeDex Mostra status dos pokes. [ Adaptada ao Systema novo de Wildlvl ] Wildlvl Ajustado para dar mais força ao pokemon [ Antes so dava HP ] Bike System Shop Único [ Ametita shop ] Mega Evolution Y e X < Contem todos os Megas da 1 e 2 geração Mapa Unico Npc Daily Box 1 ao 7 Helds Funcionando 100% Client Adaptado Outland Saffari Unica Varias PokeBalls Icone System Moves Infinitos todos que achamos foram removidos Novos Shinys Dungeons Varias Shiny Box. Varias Box Boosted Held Box - 1 ao 7 Varias Ilhas Systema de Npc Que te leva as ilhas. Vários Bugs da DxP Corrigidas Porem não foram todas. Foram Removidas Varias armadilhas e são 11 no total para quem não sabe , e Adaptado melhor para funcionar no DxP porem o cara que adaptou Error 404 não permitiu a Postagem desse Execultavel e nem das Sources , Por motivos pessoais. Prints: Alias Esse [ADM] Jobson que roubou Download Server + Client : https://www.4shared.com/rar/Bwh_EbMwei/Evolution_-_Server.html Site Original da DxP: >> WebSite << >> Scan << Client Descompilado : https://www.4shared.com/rar/fgRPeamaca/PXE_Client_Descompilado.html Obs: 4Shared já tem scan. Creditos: Equipe e criador que disponibilizarão a DxP Smoke [ Eu ] Error 404 Se Gostou decha Pelo menos um Rep ++ Ai :]2 pontos -
[Ajuda] Spell
[Ajuda] Spell
Radamanthys Wov e um outro reagiu a KotZletY por uma resposta no tópico
2 pontos@Thayguroficial Acho que não preciso explicar. [1] = 107, 1 é o id da vocação e 107 é o efeito, adicione quantas vocações desejar e o efeito que ela irá soltar.2 pontos -
Best Baiak Completo
Best Baiak Completo
brunodisenna reagiu a Werner por uma resposta no tópico
1 pontoEae pessoal do Tk Trago aqui um Baiak (BestBaiak) com um novo visual e completo! Se trata de um Servidor 8.60, completo e ja pronto para ser colocado Online, sem bugs. (funciona melhor em MySql) + de 50 Hunts Free Muitos trainers, assim não ficara sem. Vocations Equilibradas. War System com escudos. Itens donates balanceados. Contando com todos os Eventos atuais: Zombie Event Snowball War Event Capture the Flag Battlefield Desert War Defend The Tower Fire storm Boss King Conta também com: Castle 24h Castle 48h Vip1 e Vip2 Free Area Donate SuperUp Dodge e Critical system Extra Cidade com mais houses MiniGames Sistema de !autoloot já instalado Quest Promotion 2 Npc que troca itens por EventCoins Monstros exclusivos ScreenShots do Servidor Donwload: Servidor completo 4shared: Clique Aqui! Servidor completo Mediafire: Clique Aqui! Scan VirusTotal:(Acusando malware por conta das executáveis): Clique Aqui! Créditos: Coisas como items.xml e items.otb com os itens donate já editados podem ser encontrados aqui no tópico. Suporte para alguns bugs encontrados até o momento também se encontram no tópico. Espero que gostem.1 ponto -
SNOWBAL EVENT TIBIA
SNOWBAL EVENT TIBIA
Deathstroke reagiu a Absolute por uma resposta no tópico
1 pontoOlá amigos, membros, visitantes, papagaios, enfim... Depois de muito me pedirem o evento SNOWBAL WAR EVENT, trago ele 100% pra vocês. Como funciona? Os jogadores irão se divertir em uma emocionante partida de guerra de bolas de neve. O objetivo principal do evento é derrubar o número máximo de jogadores durante uma partida - atirando bolas de neve contra seus inimigos. O jogador que mais pontos fizer até o termino do evento será o vencedor (recompensa pode ser configurada). Sem delongas, vamos ao que interessa... Em data/actions abra o seu actions.xml e insira a seguinte linha: <action actionid="7900" event="script" value="snowballaction.lua" /> Em data/actions/scripts crie um arquivo com o nome de snowballaction.lua e insira o seguinte conteúdo: function onUse(cid, item, frompos, item2, topos) if item.actionid == 7900 then if(SBW_AMMOINFI) then doPlayerSendTextMessage(cid, 27, "as bolas de neve sao infinitas, nao ha necessidade que voce compre-as.") else if (getPlayerStorageValue(cid, SBW_SCORE) > 0) and (getPlayerStorageValue(cid, SBW_AMMO) < 30) then doPlayerSetStorageValue(cid, SBW_SCORE, getPlayerStorageValue(cid, SBW_SCORE)-1) doPlayerSetStorageValue(cid, SBW_AMMO, getPlayerStorageValue(cid, SBW_AMMO)+SBW_AMMOBUY) doPlayerSendTextMessage(cid, 27, "Voce trocou " .. SBW_AMMOBUY .. "x bolas de neve por 1 ponto de placar.") doSendMagicEffect(getCreaturePosition(cid),4) else doPlayerSendTextMessage(cid, 27, "Voce nao possui pontos de jogo o suficiente ou ja esta carregando muitas bolas de neve.") end end end end Em data/talkactions abra o seu talkactions.xml e insira a seguinte linha: <talkaction words="!snowball" event="script" value="snowballtalk.lua"/> Em data/talkactions/scripts crie um arquivo com o nome de snowballtalk.lua e insira o seguinte conteúdo: function onSay(cid, words, param, channel) local k = string.explode(param, ",") if(k[1] ~= nil) then if(string.upper(k[1]) == 'INFO') then local score = {} local output = "Voce tem " .. getPlayerStorageValue(cid, SBW_SCORE) .. " pontos.\nVoce tem "..getPlayerStorageValue(cid, SBW_AMMO).."x municoes.\n------------------\nO maior matador:\n" for _, pid in ipairs(getPlayersOnline()) do if getPlayerStorageValue(pid, SBW_INEVENT) then table.insert(score, {getCreatureName(pid), getPlayerStorageValue(pid, SBW_SCORE)}) end end local lx = table.getn(score) if(lx > 3) then lx = 3 end table.sort(score, function(a, b) return a[2] > b[2] end) for k = 1,lx do output = output .. k..". "..score[k][1] .." [".. score[k][2] .."].\n" end doPlayerPopupFYI(cid, output) end if (string.upper(k[1]) == 'ATIRAR') then if(getPlayerStorageValue(cid, SBW_INEVENT) == 1) and not getTileInfo(getThingPos(cid)).protection then if getPlayerStorageValue(cid, SBW_EXAUSTHED) <= 1 then if(getPlayerStorageValue(cid, SBW_AMMO) > 0) then if SBW_STATUS == 'on' then if(SBW_AMMOINFI == false) then doPlayerSetStorageValue(cid, SBW_AMMO, getPlayerStorageValue(cid, SBW_AMMO)-1) end doPlayerSetStorageValue(cid, SBW_EXAUSTHED, 2) lineAnimation(getPlayerLookDirection(cid),getCreaturePosition(cid),12,cid,1,0,1,0,0,0,1,0) addEvent(doPlayerSetStorageValue, SBW_SHOOTEXAUSTHED, cid, SBW_EXAUSTHED, 1) if (getPlayerStorageValue(cid, SBW_AMMO) ~= 1) then doPlayerSendTextMessage(cid, 27, "Restam "..getPlayerStorageValue(cid, SBW_AMMO).."x bolas de neve.") else doPlayerSendTextMessage(cid, 27, "Usando sua ultima bola de neve, recarregue.") end end else doPlayerSendCancel(cid, "Voce esta sem bolas de neve, recarregue no centro do campo ou mate um inimigo.") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) end else doPlayerPopupFYI(cid, "Acalme-se voce deve esperar para atirar novamente.") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) return false end else doPlayerPopupFYI(cid, "Voce precisa estar dentro evento ou fora da pz.") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) end end end return true end function lineAnimation(lookDir,playerPos,effect,cid,fvar,fpos,ffound,fposV,fcheck,fvcid,floopCounter,fvpid, name) local var = fvar local pos = fpos local found = ffound local posV = fposV local check = fcheck local vcid = fvcid local loopCounter = floopCounter local vpid = fvpid local storage = SBW_EXAUSTHED if var < 2 then vcid = cid end pos = playerPos if not isInWallArray(convert(lookDir,pos)) then--isInWallArray({x=convert(lookDir,pos).x, y=convert(lookDir,pos).y,z=convert(lookDir,pos).z}) then --isInArray(t.onShoot.misc.walls_id, getThingfromPos({x=convert(lookDir,pos).x, y=convert(lookDir,pos).y,z=convert(lookDir,pos).z, stackpos=0}).itemid) then doSendDistanceShoot(pos, convert(lookDir,pos),effect) pos = convert(lookDir,pos) var=var+1 posV = convertV(lookDir,playerPos) for _, pid in ipairs(getPlayersOnline()) do if (getCreaturePosition(pid).x == pos.x and getCreaturePosition(pid).y == pos.y and getCreaturePosition(pid).z == pos.z) then --if loopCounter > 2 then vpid = pid --end if (vpid ~= vcid) then if var > 2 then if (getCreaturePosition(pid).x == posV.x and getCreaturePosition(pid).y == posV.y and getCreaturePosition(pid).z == posV.z) then killPlayer(pid,pos,getCreatureName(vcid)) if (lookDir == 0) or (lookDir == 2) then var = 6 else var = 8 end end end killPlayer(pid,pos,vcid) if (lookDir == 0) or (lookDir == 2) then var = 6 else var = 8 end end end loopCounter = loopCounter +1 end if (lookDir == 0) or (lookDir == 2) then if var ~= 6 then addEvent(lineAnimation, SBW_BALLSPEED, lookDir,pos,effect,nil,var,pos,found,posV,check,vcid,loopCounter,vpid) else var = 1 end else if var ~= 8 then addEvent(lineAnimation, SBW_BALLSPEED, lookDir,pos,effect,nil,var,pos,found,posV,check,vcid,loopCounter,vpid) else var = 1 end end else doSendMagicEffect(convert(lookDir,pos),2) var = 1 end end local ret = {} function convert(lookDir,pos) local positions = { [0] = {x = pos.x, y = pos.y-1, z = pos.z}, [1] = {x = pos.x+1, y = pos.y, z = pos.z}, [2] = {x = pos.x, y = pos.y+1, z = pos.z}, [3] = {x = pos.x-1, y = pos.y, z = pos.z} } ret = positions[lookDir] return ret end local ret = {} function convertV(lookDir,pos) local positions = { [0] = {x = pos.x, y = pos.y+1, z = pos.z}, [1] = {x = pos.x-1, y = pos.y, z = pos.z}, [2] = {x = pos.x, y = pos.y-1, z = pos.z}, [3] = {x = pos.x+1, y = pos.y, z = pos.z} } ret = positions[lookDir] return ret end function isInWallArray(pos) for k = 0, table.getn(SBW_WALLSID) do if getTileItemById(pos, SBW_WALLSID[k]).itemid == SBW_WALLSID[k] then --this doesn't even make sense but tried other ways and it gave errors, so meh 2lazy2search return true end end return false end function killPlayer(cid, pos, killer) local t_l = SBW_AREA[1] local b_r = SBW_AREA[2] local posti = {} local isPossibleToTeleportPlayer = false while (isPossibleToTeleportPlayer == FALSE) do posti = Position(math.random(t_l.x,b_r.x), math.random(t_l.y, b_r.y), 7) if isInWallArray(posti) == FALSE then isPossibleToTeleportPlayer = TRUE end end doTeleportThing(cid, posti) doSendMagicEffect(pos,2) doSendMagicEffect(posti,6) doSendAnimatedText(pos, ""..getCreatureName(killer).." ", 55) doPlayerSendTextMessage(cid, 27, "Voce morreu para "..getCreatureName(killer)..".") doPlayerSetStorageValue(killer, SBW_SCORE, getPlayerStorageValue(killer, SBW_SCORE)+SBW_POINTSKILL) doPlayerSendTextMessage(killer, 27, "You've killed "..getCreatureName(cid)..".") if SBW_LOSTSCORE then doPlayerSetStorageValue(cid, SBW_SCORE, getPlayerStorageValue(cid, SBW_SCORE)-1) end if SBW_RESETAMMO then doPlayerSetStorageValue(cid, SBW_AMMO, SBW_MINAMMO) end end Em data/globalevents abra o seu globalevents.xml e insira a seguinte linha: <globalevent name="StartSBW" time="19:00" event="script" value="events/snowballglobalevent.lua"/> Em data/globalevents/scripts crie um arquivo com o nome de snowballglobalevent.lua e insira o seguinte conteúdo: function onTime() function isInWallArray(pos) for k = 0, table.getn(SBW_WALLSID) do if (getTileItemById(pos, SBW_WALLSID[k]).itemid == SBW_WALLSID[k]) then return true end end return false end function endsnowball() local score = {} if not SBW_USEWAIT then doRemoveItem(getTileItemById(SBW_TP, 1387).uid) end for _, pid in ipairs(getPlayersOnline()) do if getPlayerStorageValue(pid, SBW_INEVENT) > 0 then table.insert(score, {getCreatureName(pid), getPlayerStorageValue(pid, SBW_SCORE)}) doPlayerSetStorageValue(pid, SBW_INEVENT, 0) doPlayerSetStorageValue(pid, SBW_SCORE, 0) doPlayerSetStorageValue(pid, SBW_AMMO, 0) doTeleportThing(pid, SBW_TPEND) end end table.sort(score, function(a, b) return a[2] > b[2] end) --local random_item = SBW_REWARDS[math.random(1, #SBW_REWARDS)] local hora = os.date("%X") local data = os.date("%x") if table.getn(score) > 0 then if SBW_ADDREWARD then for _, pid in ipairs(getPlayersOnline()) do if getCreatureName(pid) == score[1][1] then for op,ad in pairs(SBW_REWARDS) do doPlayerAddItem(pid, ad[1], ad[2]) end break end end end db.query("INSERT INTO `snowballwar` VALUES ('', ".. db.escapeString(score[1][1]) .. ",".. score[1][2] ..", ".. db.escapeString(data) ..", ".. db.escapeString(hora) ..");") db.query("UPDATE `players` SET `sbw_points`=`sbw_points`+".. score[1][2] .." WHERE `name` = " .. db.escapeString(score[1][1]) .. ";") doBroadcastMessage("[SNOWBALL EVENT] encerrou-se, parabens ao jogador "..score[1][1].." que venceu o SnowBall Event com "..score[1][2].." pontos.") end return true end local t_l = SBW_AREA[1] local b_r = SBW_AREA[2] function moveToEvent() for _, pid in ipairs(getPlayersOnline()) do if isInRange(getCreaturePosition(pid), SBW_WAITROOM[1], SBW_WAITROOM[2]) then local posti = {} local isPossibleToTeleportPlayer = false while (isPossibleToTeleportPlayer == FALSE) do posti = Position(math.random(t_l.x,b_r.x), math.random(t_l.y, b_r.y), 7) if (isInWallArray(posti) == FALSE) then isPossibleToTeleportPlayer = TRUE end end doTeleportThing(pid, posti) doPlayerSetStorageValue(pid, SBW_INEVENT, 1) doPlayerSetStorageValue(pid, SBW_AMMO, SBW_MINAMMO) doPlayerSetStorageValue(pid, SBW_SCORE, 0) doPlayerSendTextMessage(pid, 27, "[SNOWBALL WAR] Seja bem vindo, aqui estao os comandos que voce vai usar durante o evento\n!snowball atirar --Atirar uma bola de neve.\n!snowball info --Isso mostra seus pontos de jogos e a quantia de bolas de neve que voce tem. Tambem mostra o ranking de pontos do evento.\n Recarregue suas bolas de neve clicando em frente ao gerador no centro do campo.\nAltamente recomendado adicionar estes comandos a sua hotkeys.") end end doRemoveItem(getTileItemById(SBW_TP, 1387).uid) addEvent(endsnowball, SBW_DURATION*1000*60) doBroadcastMessage(SBW_MSGSTART) end local time = os.date("*t") local timeopen1 = math.ceil(SBW_TIMEWAIT / 4) local timeopen2 = math.ceil(SBW_TIMEWAIT / 2) if (SBW_STARTAUTO) and (isInArray(SBW_DAYS,time.wday)) then doBroadcastMessage(SBW_MSGWARNING) if SBW_USEWAIT then addEvent(doBroadcastMessage, timeopen1*1000*60, "[SNOWBALL WAR] - Resta(m) ".. timeopen2 .." minuto(s) para iniciar o evento!") if (timeopen2 ~= timeopen1) then addEvent(doBroadcastMessage, timeopen2*1000*60, "[SNOWBALL WAR] - Resta(m) ".. timeopen1 .." minuto(s) para iniciar o evento!") end addEvent(moveToEvent, SBW_TIMEWAIT*1000*60) doCreateTeleport(1387, SBW_TPGO, SBW_TP) else if SBW_TFS == "0.3" then doItemSetAttribute(doCreateItem(1387, SBW_TP), "aid", 2880) else doSetItemActionId(doCreateItem(1387, SBW_TP), 2880) end if(SBW_DURATION > 0) then addEvent(endsnowball, SBW_DURATION*1000*60) end end end return true end Em data/movements abra o seu movements.xml e insira a seguinte linha: <movevent type="StepIn" actionid ="2880" event="script" value="snowballmovement.lua"/> Em data/movements/scripts crie um arquivo com o nome de snowballglobalmovement.lua e insira o seguinte conteúdo: function onStepIn(cid, item, pos) doTeleportThing(cid, SBW_TPGO) doBroadcastMessage("[SNOWBALL WAR] O " ..getCreatureName(cid).. " player esta participando do evento snowball.", MESSAGE_STATUS_CONSOLE_ORANGE) doPlayerSetStorageValue(cid, SBW_INEVENT, 1) doPlayerSetStorageValue(cid, SBW_AMMO, SBW_MINAMMO) doPlayerSetStorageValue(cid, SBW_SCORE, 0) end Já estamos quase terminando! Agora em data/lib crie um arquivo com o nome de SBW.lua com o seguinte conteúdo: -- This script is part of Snow Ball War Event Tibiaking Absolute -- -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- // -- POSIÇÕES IMPORTANTES SBW_AREA = {{x = 1214, y = 1205, z = 7}, {x = 1251, y = 1242, z = 7}}-- AREA DO EVENTO | Canto superior esquerdo / inferior direito SBW_WAITROOM = {{x = 1229, y = 1220, z = 6}, {x = 1235, y = 1226, z = 6}} -- AREA DE ESPERA | Canto superior esquerdo / inferior direito SBW_TP = {x = 165, y = 45, z = 7} -- local onde teleport sera criado (entrada de jogadores) SBW_TPGO = {x = 1232, y = 1223, z = 6} -- local onde teleport vai levar (saida de jogadores) SBW_TPEND = {x = 155, y = 54, z = 7} -- local onde serao teleport ao final do evento SBW_GERADOR = {x = 1232, y = 1223, z = 7} -- local onde gerador vai ficar -- CONFIGURAÇÕES DO EVENTO SBW_DAYS = {1,2,3,4,5,6,7} -- dias de semana que vai abrir SBW_DURATION = 10 -- duração do evento em minutos SBW_POINTSKILL = 1 -- pontos de jogo por morte SBW_AMMOBUY = 20 -- quantia de munições compradas por cada ponto SBW_MINAMMO = 50 -- munição inicial dos jogadores SBW_TIMEWAIT = 3 -- tempo na sala de espera em minutos SBW_AMMOINFI = false SBW_LOSTSCORE = true SBW_RANDOMIZE = true SBW_RESETAMMO = true SBW_STARTAUTO = true SBW_USEWAIT = true --PREMIO DO EVENTO SBW_ADDREWARD = true SBW_REWARDS = { {6527,500}, {2345,1} } -- // Não mexa daqui para baixo SBW_TFS = "0.4" -- STORAGES SBW_EXAUSTHED = 2455 SBW_INEVENT = 2460 SBW_SCORE = 2465 SBW_AMMO = 2400 SBW_WALLSID = {5324,7003,7021,6712,7023,7002,6713,6714,6869,6822,6823,6824,6825,6826,6827,6828,6829,6830,6831,6832,6833,6707,6708,6709,6710,6711,2698,2697,7020,6719,6720,6721,6722,6723,6724,6725,6726,6727,6761,6762,6768,6769,4608,4609,4610,4611,4612,4613,4614,4615,4616,4617,4618,4619,4620,4621,4622,4623,4624,4625,4664,4665,4666,7008,7009,7010,7011,8239,7004,7005,7006,7007,6627,6628,6629,6630,6631,6632,6633,6634,6635,6636,6637,6638,7022} SBW_BALLSPEED = 150 SBW_SHOOTEXAUSTHED = 1000 SBW_SHOOTDIR = 0 SBW_STATUS = 'on' -- MENSAGENS SBW_MSGWARNING = "[SNOWBALL WAR] Abriu o teleport de ingresso para o evento, para participar se dirija ate o templo do servidor." SBW_MSGSTART = "[SNOWBALL WAR] O teleport foi removido e o evento foi iniciado, boa sorte a todos participantes." A frente das configuração solicitadas explica onde devem ser modificados. E por fim, vá até o seu banco de dados (phpmyadmin) e insira a seguinte query: CREATE TABLE IF NOT EXISTS `snowballwar` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `score` int(11) NOT NULL, `data` varchar(255) NOT NULL, `hora` varchar(255) NOT NULL, PRIMARY KEY (`id`), KEY `id` (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; Ainda no phpmyadmin execute: ALTER TABLE `players` ADD `sbw_points` int(11); Importe o arquivo SNOWBALL.otbm em seu mapa! Imagem do mapa: Download do mapa: https://www.sendspace.com/file/mae37z Scan do mapa: https://www.virustotal.com/pt/file/94a507c71ef4cc241e415f2a8290441f7fa77809d804e24be18e9581a85c4740/analysis/1479161634/ É importante lembrar que peguei o script de um autor e realizei as modificações o tornando público para a comunidade exclusiva do TIBIAKING. Espero que façam um ótimo proveito. See you later.1 ponto -
BAIAKNEW+SOURCE//BASE DO BAIAKNEW (8.60)
BAIAKNEW+SOURCE//BASE DO BAIAKNEW (8.60)
andreyls1 reagiu a thebasedgod por uma resposta no tópico
1 pontoOt baiak base do ot baiaknew, e outro ot + completo e parecido com baiaknew os servidores contem: PUSH FAST. » Cast System » Mapa Inovador » Fast Atk Moderado! » WAR SYSTEM COM ESCUDO » Cast System » Dodge System » Eventos Diarios » Blood Castle » Evento Bp DICE » Vocações Balanceadas! » Quests Inovadas » Varios sistemas unico. IMAGENS baiaknewBASE http://imgur.com/a/ATZYH IMAGENS BAIAKNEW http://imgur.com/a/txu4e DOWNLOAD LINK http://www.mediafire.com/download/5b4kzkt3e0z8bc6/BaiakNewBase.rar http://www.mediafire.com/download/p1d5f8wn7hz88hr/BaiakNew.rar SCAN LINK https://www.virustotal.com/ru/file/654bfc355cfc5ce5f5205fcb6fb1ceacd814f4f81b7755a76950f4b06e7a489d/analysis/1466358544/ https://www.virustotal.com/ru/file/ec2055c37546666c14b3d50011f1c5a93f8575990a6ee728c2f3eb294b343541/analysis/1466361053/1 ponto -
[creaturescript] Always Green Emblem shield
[creaturescript] Always Green Emblem shield
poko360 reagiu a thelifeofpbion por uma resposta no tópico
1 pontoBom a um tempo atras como de costume eu pedi para alguém me ajudar a montar um script onde os players que tiverem guild terem o emblema de guild (de quando começa a war) não to com tempo pra procurar a foto agora, mas é aquele verdinho que fica do lado do char, como ninguém sabia, ou não pode ajudar eu procurei sobre para tentar montar isso e consegui (pelo menos ate agora), vou postar para os ouros membros do meu tópico de ajuda testarem e talvez achar algum bug. obs: só para quem já tem os códigos na distro Finalidade do Script: É bem simples, apenas deixar o escudo verde ativado quando um player tiver uma guild, para identificar seus aliados, mesmo com a war entre guilds desativadas. Para adicionar o script também é bem simples, Basta ir em Data>creaturescript>scripts>login.lua e antes do ultimo return true end voce adiciona isso. Pronto, cada vez que o player logar, vai definir um inimigo (0). ou seja não vai ter inimigo mas sua guild vai ter o emblema verde... Eu consegui essa solução agora de manhã então eu não sei se pode ter bugs, porém pelo que eu pude testar, consegui de boa e também consegui entrar em war com outras guild, sair de war e etc. obs: Eu tava com um problema na minha talkactions de war, quando uma guild que recebia convite para entrar, aceitava mas depois não conseguia sair. só a guild que convidou podia cancelar a guerra entre guild... não sei se isso é normal mas consegui modificar, caso alguém tenha o mesmo problema eu posso passar a talkaction.1 ponto -
Free for use!
1 pontoFree For Use! Sprites grátis! Bom dia pessoal! Bem, primeiramente quero explicar o motivo de ter criado o tópico. Meu nick neste fórum é Nechros, mas sou mais conhecido como Black the Rabbit ou simplesmente coelho. Quem me conhece melhor, sabe que gosto de doar muitas das minhas sprites, mas infelizmente, elas ficam espalhadas pelas paginas dos fóruns e assim, torna difícil o acesso dos interessados. Imagino q existam alguns spriters que concordam comigo e é pensando nesses poucos que crio este novo tópico. Aqui serão postadas as sprites "Free for use" para o pessoal interessado, seja novos projetos, seja velhos. Enfim, chega de papo e vamos as regras básicas kk Regras: - Não será permitido chingamentos ou qualquer tipo de coisa aqui, o autor do tópico podera comentar sobre as sprites postadas. - Este tópico foi criado para postar sprites liberadas pelo autor das mesmas, caso alguém poste alguma sprite de outra pessoa sem sua permissão, o post será removido e quem postou será alertado. -As regras do fórum estão valendo neste tópico também. Abraços1 ponto
-
TopLevel Effect
TopLevel Effect
JEAN JR reagiu a Bruno Minervino por uma resposta no tópico
1 pontoFala galera, Um membro fez um pedido, e achei que deveria compartilhar com vocês, algo simples porém útil. Principalmente em OT's do estilo Baiak. O que o script faz ? Ele simplesmente manda um efeito para o Top Level caso ele estiver online. Instalação: Em data/creaturescripts/creaturescripts.xml adicione: <event type="login" name="TopEffect" event="script" value="topeffect.lua"/> <event type="advance" name="CheckTop" event="script" value="topeffect.lua"/> Agora crie um arquivo em data/creaturescripts/scripts com o nome topeffect.lua e adicione: --[[ Script by Bruno Minervino para o Tibia King Caso for postar, colocar os créditos ]] local config = { tempo = 10, --tempo em segundos mensagem = { texto = "[TOP]", --não use mais de 9 caracteres efeito = TEXTCOLOR_LIGHTBLUE --efeito para a função doSendAnimatedText }, efeito = 30, --efeito da função doSendMagicEffect globalstr = 5687 -- uma global storage qualquer q esteje vazia } --[[ Não mexa em nada abaixo ]] local topPlayer = getGlobalStorageValue(config.globalstr) > 0 and getGlobalStorageValue(config.globalstr) or 0 function onLogin(cid) local query = db.getResult("SELECT `id`, `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1") if (query:getID() ~= -1) then local pid = query:getDataString("id") local name = query:getDataString("name") if getPlayerName(cid) == name then if topPlayer ~= getPlayerID(cid) then topPlayer = getPlayerID(cid) end setGlobalStorageValue(config.globalstr, pid) TopEffect(cid) end end registerCreatureEvent(cid, "CheckTop") return true end function onAdvance(cid, skill, oldlevel, newlevel) if skill == 8 then local query = db.getResult("SELECT `id`, `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1") if (query:getID() ~= -1) then local level = tonumber(query:getDataString("level")) if level < newlevel and topPlayer ~= getPlayerID(cid) then doBroadcastMessage("O jogador " .. getPlayerName(cid) .. " tornou-se o novo Top Level. Parabens!", 22) topPlayer = getPlayerID(cid) doSaveServer() setGlobalStorageValue(config.globalstr, getPlayerID(cid)) TopEffect(cid) end end end return true end function TopEffect(cid) if not isPlayer(cid) then return true end if topPlayer == getPlayerID(cid) then doSendAnimatedText(getCreaturePosition(cid), config.mensagem.texto, config.mensagem.efeito) doSendMagicEffect(getCreaturePosition(cid), config.efeito) addEvent(TopEffect, config.tempo * 1000, cid) end end function getPlayerNameById(id) local query = db.getResult("SELECT `name` FROM `players` WHERE `id` = " .. db.escapeString(id)) if query:getID() ~= -1 then return query:getDataString("name") end return 0 end function getPlayerIdByName(name) local query = db.getResult("SELECT `id` FROM `players` WHERE `name` = " .. db.escapeString(name)) if query:getID() ~= -1 then return tonumber(query:getDataString("id")) end return 0 end function getPlayerID(cid) return getPlayerIdByName(getPlayerName(cid)) end Espero ajudar!1 ponto -
Evento War Castle
1 pontoOlá galera,vou disponibilizar o mapa para o evento War Castle feito pelo Absolute,espero que gostem ! Link para o tópico do script do evento : http://www.tibiaking.com/forum/topic/35731-castle-war-24h-conquiste-o-trono/ Imagens: Coordenada do mapa : {x = 1000, y = 1000, z = 7} Download : Link Scan : https://www.virustotal.com/pt/url/ab5a9f73db53a3cac3b1e624ccf1e7fe95caf378ef374a0fa260a896cba7f9e6/analysis/1403050891/1 ponto
-
TFS1.2 Ultimate AOL (Aol VIP)
1 pontoOlá pessoas do TibiaKing, A comunidade tibia king tem me ajudado por meses com conhecimentos para o meu server de tibia, então hoje ocorreu um problema lá no meu servidor e não havia nada atualizado para me suprir, o problema foi o seguinte: "Um player x lá era vip donatadaço" pegou red morreu e perdeu tudo! então para evitar problemas no pagseguro e na vida real eu decidi criar um AOL vip. e hoje vou ensinar a vocês como eu resolvi o problema: Eu apenas adicionei essas linhas no arquivo: "data/creaturescripts/scripts/others/droploot.lua" --AOL VIP local amulet = player:getSlotItem(CONST_SLOT_NECKLACE) if amulet and amulet.itemid == 24683 ) then local isPlayer = false if killer then if killer:isPlayer() then isPlayer = true else local master = killer:getMaster() if master and master:isPlayer() then isPlayer = true end end end Em "if amulet and amulet.itemid == 24683" é só mudar 24683 para o id do amuleto que você queira. bom dá pra ver que eu segui o exemplo do AOL e removi os requisitos para ele não funcionar. Espero que isso ajude alguém e desculpe o péssimo post pois esse aqui é meu primeiro conteúdo de agradecimento.1 ponto
-
removido
1 ponto
-
Stampor Hunt - Sul Thais
Stampor Hunt - Sul Thais
Tyrisfall reagiu a Beyond Sky por uma resposta no tópico
1 pontoHello Guys, hoje dou inicio ao meu trabalho tentando enriquecer e reaquecer a área de mapping do fórum, tanto com downloads quanto com artigos novos até mesmo pra fazer minha parte como um dos poucos mappers antigos que permanecem na comunidade. Agora sem mais delongas... Essa é uma hunt que fiz pra colocar no Sul de Thais junto ao upgrade da city que está em andamento, o mapa consiste em toda parte modificada do sul de thais começando pelo Whiteflower Temple descendo para CYC Sul a entrada totalmente reformulada, o térreo do local com mais montanhas e no subsolo trocado a cave de cyc por um campo de stampors. A vegetação retrata um local apropriado para a sobrevivência deles, uma vegetação rala com água e meio desgastada pela superpopulação na caverna. Tentei tornar a cave bem dinâmica primeiramente alterando um pouco o monstro (junto do mapa vem o arquivo XML do Stampor) e posicionando bem os respawns. Espero que gostem e logo mais postarei outros, pra galera que quiser tem um video no youtube apresentando a cave. Vídeo de apresentação do Mapa (Clica lá e da um like só pra fazer uma moral, se gostarem é claro). Fotos In-Game Links1 ponto -
[Survival]Sistema
[Survival]Sistema
R4z0r reagiu a Radamanthys Wov por uma resposta no tópico
1 pontoEstou com esse sistema de survival, gostaria que algume me ajudasse a colocar ela para 4 players poderem entrar, para ser mais especifico de 1 a 4.1 ponto -
[Special Skills] - Characters.php
Boa noite meus caros! Então, venho até aqui fazer um pedido que eu já fiz uma vez e que não fui atendido e que espero que dessa vez seja atendido. Então, é o seguinte: Eu quero que na página "Characters" logo ali em Special Skills apareça a Spell Vip que o player tem (Storage) talvez, eu não sei muito bem.. Um exemplo é o site: http://hellblazer.servegame.com Ps: Se não entendeu e deseja me ajudar, comente aí que darei mais detalhes, mas acho que vendo como funciona vocês entenderam. Ps2: Minha página characters.php só mando via PM pois é privado do meu projeto. Espero que me ajudem, porque da outra vez passou em branco e eu jamais fiz isso com alguém do TK. Abçs e obrigado pela atenção!1 ponto
-
Log de quem entrou e saiu apenas pra quem habilitar.
Log de quem entrou e saiu apenas pra quem habilitar.
SoyColombiaa reagiu a luangop por uma resposta no tópico
1 pontoUse MESSAGE_STATUS_CONSOLE_BLUE Deve funcionar.... quanto ao sistema amanhã posso tentar te ajudar, pois preciso ir dormir já que acordo muito cedo.1 ponto -
Install.php on line 4
Install.php on line 4
Samuel Cstr reagiu a Ackerzin por uma resposta no tópico
1 pontona pasta do seu ot faça um arquivo com o nome "aca" sem as aspas e coloque isso dentro https://pastebin.com/7TiYXhY41 ponto -
script change itens
script change itens
brianpsy15 reagiu a SoyColombiaa por uma resposta no tópico
1 ponto@brianpsy15, você precisa colocar ali em "doAddItem(cid, id,1)" no lugar do "id", o real id do item que voce quer que seja adicionado ao player.1 ponto -
script change itens
script change itens
brianpsy15 reagiu a SoyColombiaa por uma resposta no tópico
1 ponto@brianpsy15 Manda aí como tá o script da slayeruse.lua1 ponto -
script change itens
script change itens
brianpsy15 reagiu a SoyColombiaa por uma resposta no tópico
1 pontoTranquilo. Se não funcionar, acho que é porque eu expliquei meio confuso, mas ali em actions.xml, o id que você deve colocar é do item que você deve dar use.1 ponto -
script change itens
script change itens
brianpsy15 reagiu a SoyColombiaa por uma resposta no tópico
1 pontoNão entendi muito bem o que você quis fazer, mas tenta fazer o seguinte: Vá em data/actions/scripts e crie um arquivo com nome de sua preferência, por exemplo, slayeruse.lua Coloque o seguinte dentro deste arquivo: E em data/actions/actions.xml coloque isso: Daí, após colocar isso, dá um reload na actions, e testa dar um use, pra ver se foi. E não se esqueça de dar uma reputação se isso te ajudou XD1 ponto -
(Resolvido)Alteração em 2 scripts
(Resolvido)Alteração em 2 scripts
jNo reagiu a thelifeofpbion por uma resposta no tópico
1 pontoeu ia editar agorarinha, mano sério se agora não funcionar eu desisto mentira lottery Funcionando, ignorando adm.rar1 ponto -
Problema mysql new player level
Problema mysql new player level
Moises Ztylex reagiu a thelifeofpbion por uma resposta no tópico
1 pontose você usa mysql, creio que você tem que trocar o level dos samples existentes na database pelo phpmyadmin1 ponto -
(Resolvido)Alteração em 2 scripts
(Resolvido)Alteração em 2 scripts
jNo reagiu a thelifeofpbion por uma resposta no tópico
1 pontoPRIMEIRO SCRIPT: Segundo: Eu não sei se vai funcionar esse segundo script mas tenta.... caso não funcionar sinto muito... odeio mods.1 ponto -
(Resolvido)Alterar Velocidade do Player
Que eu saiba é nas source o-o Vá em player.h e procure: void updateBaseSpeed() { if (!hasFlag(PlayerFlag_SetMaxSpeed)) { baseSpeed = vocation->getBaseSpeed() + (2 * (level - 1)); } else { baseSpeed = PLAYER_MAX_SPEED; } } A fórmula é (2 * (level - 1) 2 * level do player - 1 = velocidade do player1 ponto
-
[Ajuda] Spell
[Ajuda] Spell
Radamanthys Wov reagiu a KotZletY por uma resposta no tópico
1 ponto@Thayguroficial seria um servidor derivado ? Quantas vocações ? Ou é um servidor de tibia ?1 ponto -
Sistema de Reset 100%
Sistema de Reset 100%
Radamanthys Wov reagiu a xWhiteWolf por uma resposta no tópico
1 pontopronto ahuauha1 ponto -
Sistema de Reset 100%
Sistema de Reset 100%
Radamanthys Wov reagiu a xWhiteWolf por uma resposta no tópico
1 pontotroca essa linha local resets = player:getResets() por local resets = getResets(uid) e deve estar resolvido :D1 ponto -
Sistema de Reset 100%
Sistema de Reset 100%
Radamanthys Wov reagiu a xWhiteWolf por uma resposta no tópico
1 pontoacho que agora vai1 ponto -
[AJUDA] Como abrir mapa PokeCyan no REMERES
Salve galera! Tô aqui tentando resolver não só o meu, mas tenho certeza também é a dor de cabeça DE MUITAS PESSOAS AQUI NESSE FÓRUM... Seguinte, primeiramente eu baixei esse server do link abaixo, junto com seu OT CLIENT. (Poke Cyan) http://www.tibiaking.com/forum/topic/34365-854-pokexcyan/ Depois que eu testei tudo certo e pensei em editar o mapa, ai que começou minha dor de cabeça! É impossível abrir esse mapa no RME com as SPR e DAT contidas no OT Client q eles disponibilizaram junto com o download do server em que deixei o link acima... Pois parece que as SPR e DAT estão estendidas, e era necessário fazer algumas coisas no RME para que eu conseguisse abrir o mapa e foi ai que eu comecei a procurar a solução dos meus problemas fuçando mais e mais e mais no fórum... DE TANTO procurar... Achei esse POST "tentando" resolver o problema do remeres no CYAN (segue o link abaixo): http://www.tibiaking.com/forum/topic/38665-remeres-map-editor-vers%C3%A3o-cliente-estendidaextended/ Eu segui atentamente TUDO que pedia no tópico e adivinha??? Eu fiz tudo certo!!! 1- instalei o rme 2.2 2- baixei o extented by senhor (que seria o certo para abrir o mapa do server do CYAN) 3- substitui tudo na pasta do rme de acordo com o que foi pedido 4- marquei como extended no preferences do RME Até ai TUDO CERTO, mas ai eu tento abrir o mapa do servidor do CYAN, o RME abre e pede a PASTA TIBIA 8.54, eu seleciono a pasta onde ficam as SPR e DAT do OTCLIENT e simplesmente, acontece esses três erros, e o RME para de funcionar... Alguém me ajuda??? NUNCA tive tanta dificuldade pra abrir um mapa!!! SOCORRO!!! Segue as fotos abaixo relatando os erros... ERRO 1. (quando eu clico para abrir o mapa do poke cyan ele pede pra selecionar a pasta da SPR e DAT) ERRO 2. (depois que eu seleciono a pasta com o SPR e DAT do OT Client) OBS: Sim, eu peguei o SPR e DAT do OT Client e coloquei em uma pasta vazia só com os dois arquivos, e deixei no meu desktop. ERRO 3. (depois que eu clico em ok da imagem acima, aparece esse erro, e o RME para de responder e depois fecha sozinho simplesmente) REP ++ PRA QUEM SOLUCIONAR!! AGRADEÇO DESDE JÁ.1 ponto
-
Como adicionar New Ticker?
1 pontocomo mudar a data da publicação ? de 1969 ?1 ponto
-
(Resolvido)Como Criar Area Vip
(Resolvido)Como Criar Area Vip
EdsonSilva reagiu a KotZletY por uma resposta no tópico
1 pontodata/movements/scripts e crie um arquivo em tipo lua chamado passe_vip.lua e adicione essa Script dentro do arquivo: Agora em data/movements e abra o arquivo chamado movements.xml e adicione essa Tag: <movevent type="StepIn" actionid="50008" event="script" value="passe_vip.lua"/> Editando o Script: Abra o RME, e o Action id dessa tag acima, esse Actionid você coloca no piso, então só players vip irão passar pelo piso, que não for vip não passa! Creditos: Dentro do Script.1 ponto -
(Resolvido)Como adicionar montarias?
(Resolvido)Como adicionar montarias?
HaragOT reagiu a DeCarvalho por uma resposta no tópico
1 pontovai nesse site http://datreader.x10.mx/dat_reader.htm escolhe a versão que você usa, ai vai em outfits e procura o toad.. <mount id="x" clientid="yyy" name="zzz" speed="20" premium="no" /> x = proxima id disponível yyy = id do outfit zzz = nome que vai aparecer no client Nota.: nem todos os outfits ficam bem como montaria, alguns outfits podem gerar debug na hora que tentar entrar no menu outfit, baste remover e abrir novamente.. Fui util.. da um rep ae1 ponto -
[TUTORIAL] Spriting, por onde começar? (completo)
[TUTORIAL] Spriting, por onde começar? (completo)
MadagaaMito reagiu a Thayam por uma resposta no tópico
1 pontoSaudações queridos amigos do TK! Hoje venho trazer um tutorial mais básico porém muito útil. Vejo que algumas pessoas tem vontade de começar a vida em sprites, porém, ficam meio perdidos a como começar, veem em alguns tópicos agente falar sobre Hue, Dithering, AA e pensam "WTF?!". Então venho aqui hoje tentar explicar um pouco melhor sobre alguns conceitos e programas utilizados para tal ação. Vamos lá!: Quero fazer sprites, por onde eu começo?!?! Pixel art é sobre os pixels – simples assim. Esses tipos compartilham um ponto comum: Ter certeza que o seu foco está nos pixels. Comece devagar – Quanto mais larga a imagem que você está tentando fazer, mais tempo e trabalho levará pra completá-la. Não faça isso, use um canvas size (largura x altura) pequeno. Um pixel art pode transmitir uma série de informações pelo seu tamanho, você ficará surpreso com o pouco espaço que você precisa se você controlar os pixels corretamente. Use uma paleta limitada - Se você não pode fazer um bom sprite com 4 cores, usar 40 não vai ajudar. Usar uma paleta pequena é especialmente bom para iniciantes porque te força a ter foco na posição dos pixels e da relação entre grupos de pixels. A paleta original de 4 cores do GameBoy é uma boa escolha para iniciantes, porque você só precisa se preocupar com o valor, e não tons ou saturação. Programas Existe uma gama de bons programas por aí para pixel art, muitos desses são gratuitos. Eu uso Grafx2 porque é gratis, mas GraphicsGale, Pro Motion, Photoshop, Pixen e MS Paint são todos boas escolhas. Alguns são mais amigáveis que outros, por isso que eu escolhi algo com atalhos de teclado como grafx2, o que me salvou de muitas viagens para a barra de ferramentas (e fez muito fácil o manuseio de paletas) Tipo de arquivo Um erro comum que os novos pixel artistas cometem é salvar suas artes como JPEG/JPG. Esse tipo de arquivo pode ser legal para outros tipos de imagem, ele causa compressão, o que destrói a qualidade de uma peça de pixel art. Nunca salve como JPG. Salve como PNG ou GIF. Seja cuidadoso assim mesmo, pois alguns programas (como MS Paint) não suportam propriamente o formato GIF, e vão arruinar sua imagem. Nessas instâncias, você vai precisar de um conversor de arquivo (Como o Giffy) se você quiser salvar sua imagem como GIF. Mas como eu começo a imagem? É completamente pessoal. Alguns artistas preferem criar o lineart primeiro, e depois vão adicionando cores: Outros artistas preferem a definição das formas principais com um pincel grosso, e então continuam refinando a imagem até que ela chegue a um nível certo nível: Ambos os métodos são legais, todos dependem de como você está confortável, ou as especificidades do projeto. O Linework é um bom método se você está traçando uma imagem digitalizada (como foi o caso do exemplo do monstro do mar acima). Se você está começando a imagem no seu programa, e não é um sprite pequeno, definir as formas com um pincel grosso pode ser mais útil. Ok, mas o que diabos significa AA, Hue (br?) e os outros termos que são usados? Ok, acomodem-se em suas cadeiras (ou sofás, para aqueles que gostam de utilizar o computador na sala) e vamos nessa: Termos que devemos, ou melhor, precisamos saber! Anti-aliasing (AA): Anti-aliasing é o método de fazer bordas acentuadas parecerem suaves. Você deve estar familiarizado com anti-aliasing, porque um monte de programas e ferramentas faz isso automaticamente. Quando estamos falando sobre pixel art, de qualquer maneira, anti-aliasing significa anti-aliasing MANUAL. Manual AA significa suavizar as áreas acentuadas por posicionamento manual de pixels de uma diferente cor para facilitar a transição. Aqui vai um exemplo: Acima você vê a mesma imagem sem AA na esquerda e com AA, na direita. Há várias armadilhas frequentemente encontradas ao aplicar anti-aliasing, que são discutidas na seção "Coisas para evitar”. Dithering: O Dithering consiste de diferentes padrões de pixels. É tipicamente usado para facilitar a transição entre duas cores, sem adição de uma nova cor à paleta. É também usado para criação de textura. Nos dias de monitores CRT, o dithering foi particularmente útil porque a tela borrava a área pontilhada e obscurecia o padrão. Agora que monitores LC nítidos é a norma, os padrões não são mais fáceis de esconder, o que significa que o dithering não é tão versátil como era antes. Mesmo assim, o dithering ainda é usado. A forma mais comum de dithering que você vê é o 50/50 pontilhado, conhecido como 50% de dithering ou o padrão pontilhado. Como mostrado no exemplo acima, você pode criar vários outros padrões para amortecer ainda mais entre uma cor e um padrão 50% pontilhado. Esses padrões são mais fáceis de detectar do que um 50% pontilhado, por isso tenha cuidado! O Dithering estilizado é outra técnica, e é caracterizada pela adição de pequenos formatos no padrão. O Dithering interlaçado permite que duas regiões pontilhadas se interlacem. É chamado de dithering interlaçado, pois as duas regiões pontilhadas se interlaçam nas bordas. Esse tipo de dithering permite a você misturar dois pontilhados para formar uma gradiente. O Dithering aleatório é uma versão menos comum do dithering, e não é geralmente recomendado, pois adiciona ruídos de pixel à imagem. Embora tenha algum uso em doses muito pequenas, o dithering aleatório é algo que muitas vezes você vai querer evitar. Tão útil como o dithering é, muitas vezes é mal utilizado por artistas inexperientes. O Dithering ruim será discutido mais adiante na seção “Coisas para evitar.” Grupos de pixels: O conjunto de pixels é feito a partir de pixels individuais. No entanto, um único pixel é na maioria das vezes quase inútil e sem sentido se não tocar em pixels da mesma cor. O pixel artista está preocupado com as formas que ocorrem quando pixels de cores similares tocam a si mesmos e convém uma forma opaca, plana. A maioria dos triunfos e derrotas possíveis no pixel art ocorrem naquele momento exato em que o artista faz um aglomerado de pixels. -Helm Nós falamos muito sobre pixels individuais, mais estes são raramente pixels independentes. Um pixel sozinho, isolado, é um pontinho numa tela – é um ruído. Mas pixels não são normalmente encontrados sozinhos, ao invés disso, eles são encontrados fazendo parte de grupos de pixels – grupos de pixels da mesma cor que juntos formam um campo de cor sólida. Enquanto o pixel isolado é nosso bloco básico de construção e a menor unidade, os grupos de pixels são a unidade a qual muitas de nossas decisões sobre posicionamento de pixels se basearão. E enquanto é importante perceber que pixels individuais não são independentes, também é importante perceber que grupos de pixels não são independentes. Como peças de um quebra-cabeça, as bordas de um grupo de pixels determinam o formato do grupo de pixels que ele faz fronteira. Aqui vai um exemplo de como interferir no formato de um grupo de pixels pode causar efeitos drásticos nos seus grupos vizinhos: Enquanto pixels solitários são vistos como ruídos, um pixel solitário de uma cor diferente do campo que toca, se usado como AA, pode ser visto como parte do grupo, e é, portanto, a solução dos problemas: Bom, vou finalizar o tutorial aqui, já ficou bem grande haha Espero que eu tenho ajudado vocês a enter um pouco mais sobre Sprites, e ter dado a alguns, um norte para começar Vamos juntos mobilizar esta seção que ta meio down ultimamente haha Até a próxima pessoal! Créditos: Pixelaria (Tutorial) Thayam (Trazê-lo ao TK) Way20 (por indica-lo quando comecei minha jornada)1 ponto -
[Pedido] Preciso de um Server+Client de Poketibia Com Mega evolução e pokes da 6ª geração
[Pedido] Preciso de um Server+Client de Poketibia Com Mega evolução e pokes da 6ª geração
nickyfull reagiu a Aniquiladornerd por uma resposta no tópico
1 pontose tivesse Rep- eu te daria pois estou pedindo um otserv não perguntando suas conclusões e como vou fazer um otserv XD REP-1 ponto -
[AJUDA] Editando Acc e Pass Sqlite e Mysqlite (Criptografia)
[AJUDA] Editando Acc e Pass Sqlite e Mysqlite (Criptografia)
rodrigobaldan reagiu a otteN por uma resposta no tópico
1 pontoVê a encription type '-'1 ponto -
Criando Spells para seu servidor!
Criando Spells para seu servidor!
brenoabramson reagiu a KibeMatheus por uma resposta no tópico
1 pontoCara, você poderia explicar como funciona as formulas? Qual número multiplica qual... Como calcular os danos... Dai sim ficaria como criar spells pro servidor, Mas a intenção foi boa parabêns ae Pois pelo que eu saiba tem numeros ai que multiplica ou divide o dano calculo.1 ponto