Weapons TFS 0.X Wand of Elements
-
Quem Está Navegando 0 membros estão online
Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
Por Deletera
Atenção! Os arquivos disponibilizados abaixo são da versão 12.64!
Para obter otserv 12.64+ atualizado com novas áreas e novos gráficos acesse o github oficial do projeto OTX: https://github.com/opentibiabr/otservbr-global
Servidor feito especialmente para jogadores que gostam do Tibia Oldstyle,
mas colocado na versao 12 com novas funcionalidades, mounts, outfits e itens.
Todos Outfits sao frees & Addons coletando itens
PVP clássico, old school times
Spells adaptadas a versao 8.60
Mais de 50 quests na Teleport Room
Tasks e Missions para explorar o mapa
Raids automáticas com novos bosses
Reward System desabilitado, loot tradicional (bem melhor assim, certo?)
Áreas custom e inovadoras como Hogwarts
Em resumo, o OT busca ser simples, resgatando a naturalidade do que era o baiak da versão 8.60 em 2009, mas com implementações 12x+
◄IMAGENS►
◄DATAPACK & DLLS►
» OTX Baiak Styller 12.64 MediaFire (Scan)
» OtservBR Dlls & Executável (Windows 64x)
(Antes de rodar o OT verifique de usar a mesma database e configurar o login no config.lua)
◄CLIENTS►
» Tibia Client 12.64 MediaFire (Scan)
(Para conectar ao cliente 12 (localhost), acesse usando 127.0.0.1_client.exe, localizado na pasta bin.)
◄WEB►
» [GesiorAcc] para Tibia 12.64 MediaFire (Scan)
Instale o XAMP para rodar com a data base e site disponíveis
(não se esquece de alterar o login e senha no config.lua, para o atual a senha do mysql está como "XIPA2")
» [Data base] acc/email e senha: god/god MediaFire (Scan)
O OT está configurado para aceitar acc no lugar de email (opcional) para usar as acc de testes é senha 123123
◄Créditos►
Waldir Teixeira (Saruman/Deletera) &
-
Por Johncore
Open Source MMORPG emulador de Tibia escrito em C++.
Servidor Oficial do Tibiaking!
Novidades!
- Protocolo 12.51
- Bestiary
- Charms
- Boosted Creature
- Quick Loot
- Supply Stash
- Event Schedule
- GLOBAL MAP FULL
- Quests com Quest Log 100%
- Anti Rollback 100%
- Source Optimizada
- Sistema Anti WPE 100%
- SUMMER UPDATE 2020 AND WINTER UPDATE 2020
- Bounac
- Wherehyenas
- Mirrored Nightmare
- Exercise Training 100%
- Monstros 100%
- Trainer Offline 100%
- Trainer Online 100%
- War System 100%
Imagens :
THAIS TEMPLE
Downloads
Servidor + Database:
Download
»» PROJETO OFFICIAL: GITHUB
»» Distro + Dlls 64x
otg-king_Distro_e_Dlls_Tibiaking.com.zip
OTG Gesior
GESIOR OFFICIAL CLIQUE AQUI
MAP EDITOR 12.51
- Remere's Map Editor 3.7.1 - Paletas atualizadas!
- Remere's Map Editor 3.7.0: MediaFire (scan)
- Items (.otb e .xml) do OTG King Otserv 12.51 https://github.com/Johncorex/otg-king/tree/master/data/items
Créditos :
The Forgotten Server
OTG contribuidores
OTX contribuidores
Otbr contribuidores
Johncore
Erick Nunes
Cjaker
Leu
Tibiaking
Marson Schneider
Erimyth
Nolis
Toninho
Renan Ulian
jzdj
Grupo Whatsapp Official OTG (duvidas, chat):
LINK
-
Por Johncore
OTG-Premium-Version - 10x e 12.40
Agradecemos primeiramente ao Tibiaking pela oportunidade nos concedida,
somos parceiros oficiais do Tibiaking.com melhor Forum Brasileiro!
Especificações :
- Maioria das Quests com Quest Log 100%
- Anti Rollback 100% com tutorial
- Source Optimizada (baixo consumo de CPU e memoria)
- Sem Bug de Clonar dinheiro (Npcs Refeitos)
- Sistema Anti WPE 100%
- SUMMER UPDATE 2020 AND WINTER UPDATE 2020
- New Falcons Bastion
- New Asuras
- Warzone 4,5,6 100%
- Exercise Training 100%
- Raids 100%
- Monstros 100%
- Trainer Offline 100%
- Trainer Online 100%
- Database Completa COMPATIVEL COM GESIOR MARCOMOA E OTG-GESIOR
- War System 100%
- Global Map FULL RL
OBS: GESIOR OFFICIAL CLIQUE AQUI
Imagens :
THAIS TEMPLE
FALCONS
NEW ASURAS
WZ 4,5,6
Downloads :
GESIOR OFFICIAL:
CLIQUE AQUI
SERVIDOR + DATABASE:
Download
PROJETO OFFICIAL: GITHUB
Grupo Whatsapp Official OTG (duvidas, chat):
LINK
Créditos :
The Forgotten Server
OTG contribuidores
OTX contribuidores
Otbr contribuidores
Johncore
Erick Nunes
Leu
Marcomoa
Marson Schneider
Leandro Baldissera
-
Por Jnetworks
Olá pessoal tudo bem? sou novo aqui no fórum, mais vou tentar ajudar um pouco com meu conhecimento
Hoje estarei trazendo para vocês um script que todos tem vontade de ter(eu acho) HUAHAUHAUH
quando você entra naquele baiak e digita !autoloot e ve aquele scriptzão de pega loot e fica com vontade de ter,
hoje estarei trazendo ele aqui pra vocês:
Primeiramente o sistema é contido em 3 arquivos(Talkactions,creaturescripts,login.lua)
Vamos começar pelo talkactions!
Em talkactions.xml adicione a seguinte tag:
<talkaction words="!autoloot" event="script" value="Auto Loot.lua"/> Agora vá na pasta talkactions/scripts e crie 1 arquivo chamado Auto Loot.lua e nele adicione o seguinte codigo:
function ExistItemByName(name) -- by vodka local items = io.open("data/items/items.xml", "r"):read("*all") local get = items:match('name="' .. name ..'"') if get == nil or get == "" then return false end return true end local function getPlayerList(cid) local tab = {} if getPlayerStorageValue(cid, 04420021) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420021)) end if getPlayerStorageValue(cid, 04420031) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420031)) end if getPlayerStorageValue(cid, 04420041) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420041)) end if getPlayerStorageValue(cid, 04420051) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420051)) end if #tab > 0 then return tab end return false end local function addToList(cid, name) local itemid = getItemIdByName(name) if getPlayerList(cid) and isInArray(getPlayerList(cid), itemid) then return false end if getPlayerStorageValue(cid, 04420021) == -1 then return doPlayerSetStorageValue(cid, 04420021, itemid) elseif getPlayerStorageValue(cid, 04420031) == -1 then return doPlayerSetStorageValue(cid, 04420031, itemid) elseif getPlayerStorageValue(cid, 04420041) == -1 then return doPlayerSetStorageValue(cid, 04420041, itemid) elseif getPlayerStorageValue(cid, 04420051) == -1 then return doPlayerSetStorageValue(cid, 04420051, itemid) end end local function removeFromList(cid, name) local itemid = getItemIdByName(name) if getPlayerStorageValue(cid, 04420021) == itemid then return doPlayerSetStorageValue(cid, 04420021, -1) elseif getPlayerStorageValue(cid, 04420031) == itemid then return doPlayerSetStorageValue(cid, 04420031, -1) elseif getPlayerStorageValue(cid, 04420041) == itemid then return doPlayerSetStorageValue(cid, 04420041, -1) elseif getPlayerStorageValue(cid, 04420051) == itemid then return doPlayerSetStorageValue(cid, 04420051, -1) end return false end function onSay(cid, words, param) if param == "" then local fi = getPlayerStorageValue(cid, 04420021) ~= -1 and getItemNameById(getPlayerStorageValue(cid, 04420021)) or "" local se = not vip.hasVip(cid) and "Não disponível para free account" or getPlayerStorageValue(cid, 04420031) ~= -1 and getItemNameById(getPlayerStorageValue(cid, 04420031)) or "" local th = not vip.hasVip(cid) and "Não disponível para free account" or getPlayerStorageValue(cid, 04420041) ~= -1 and getItemNameById(getPlayerStorageValue(cid, 04420041)) or "" local fo = not vip.hasVip(cid) and "Não disponível para free account" or getPlayerStorageValue(cid, 04420051) ~= -1 and getItemNameById(getPlayerStorageValue(cid, 04420051)) or "" local stt = getPlayerStorageValue(cid, 04421011) == 1 and "sim" or "não" local str = getPlayerStorageValue(cid, 04421001) == 1 and "sim" or "não" doPlayerPopupFYI(cid, "{Auto-Loot} ---Menu Auto Loot do jogador\n{Auto-Loot} ----------------\n{Auto-Loot} ---Coletar dinheiro: "..stt..". Para ligar/desligar: !autoloot gold \n{Auto-Loot} ---Coletar itens únicos: "..str..". Para ligar/desligar: !autoloot power\n{Auto-Loot} --Configuração dos slots:\n{Auto-Loot} ---Slot 1: "..fi.."\n{Auto-Loot} ---Slot 2: "..se.."\n{Auto-Loot} ---Slot 3: "..th.."\n{Auto-Loot} ---Slot 4: "..fo.."\n{Auto-Loot} ---Para adicionar um novo item aos slots: !autoloot add, <nome do item>\n{Auto-Loot} ---Para retirar um item dos slots: !autoloot remove, <nome do item>\n{Auto-Loot} ---Para limpar todos os slots utilize: !autoloot clear\n{Auto-Loot} ---Para informações de quanto você já fez utilizando a coleta de dinheiro, use: !autoloot goldinfo\n\nSe seu autoloot bugar use !autoloot desbug\n\n{Auto-Loot} ----------------") return true end local t = string.explode(param, ",") if t[1] == "power" then local check = getPlayerStorageValue(cid, 04421001) == -1 and "ligou" or "desligou" doPlayerSetStorageValue(cid, 04421001, getPlayerStorageValue(cid, 04421001) == -1 and 1 or -1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você "..check.." o auto loot.") elseif t[1] == "gold" then local check = getPlayerStorageValue(cid, 04421011) == -1 and "ligou" or "desligou" doPlayerSetStorageValue(cid, 04421011, getPlayerStorageValue(cid, 04421011) == -1 and 1 or -1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você "..check.." a coleta de dinheiro.") doPlayerSetStorageValue(cid, 04421021, 0) elseif t[1] == "goldinfo" then local str = getPlayerStorageValue(cid, 04421011) == -1 and "O sistema de coleta de dinheiro está desligado" or "O sistema já coletou "..getPlayerStorageZero(cid, 04421021).." gold coins" doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, str) elseif t[1] == "add" then if ExistItemByName(t[2]) then local item = getItemIdByName(t[2]) if isInArray({2160, 2148, 2152}, item) then return doPlayerSendCancel(cid, "Você não pode adicionar moedas no autoloot. Para coletar dinheiro use !autoloot gold") end if vip.hasVip(cid) then if getPlayerStorageValue(cid, 04420011) < 3 then if addToList(cid, t[2]) then doPlayerSetStorageValue(cid, 04420011, getPlayerStorageValue(cid, 04420011) + 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, t[2].." adicionado à sua lista do auto loot! Para ver sua lista diga !autoloot list") else doPlayerSendCancel(cid, t[2].." já está em sua lista!") end else doPlayerSendCancel(cid, "Sua lista já tem 4 itens! Você deve remover algum antes de adicionar outro.") end else if getPlayerStorageValue(cid, 04420011) == -1 then if addToList(cid, t[2]) then doPlayerSetStorageValue(cid, 04420011, getPlayerStorageValue(cid, 04420011) + 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, t[2].." adicionado à sua lista do auto loot! Para ver sua lista diga !autoloot") else doPlayerSendCancel(cid, t[2].." já está em sua lista!") end else doPlayerSendCancel(cid, "Você já tem um item adicionado no auto loot! Para adicionar outro, você deve remover o item atual.") end end else doPlayerSendCancel(cid, "Este item não existe!") end elseif t[1] == "remove" then if ExistItemByName(t[2]) then if removeFromList(cid, t[2]) then doPlayerSetStorageValue(cid, 04420011, getPlayerStorageValue(cid, 04420011) - 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, t[2].." removido da sua lista do auto loot!") else doPlayerSendCancel(cid, "Este item não está na sua lista!") end else doPlayerSendCancel(cid, "Este item não existe!") end elseif t[1] == "clear" then if getPlayerStorageValue(cid, 04420011) > -1 then doPlayerSetStorageValue(cid, 04420011, -1) doPlayerSetStorageValue(cid, 04420021, -1) doPlayerSetStorageValue(cid, 04420031, -1) doPlayerSetStorageValue(cid, 04420041, -1) doPlayerSetStorageValue(cid, 04420051, -1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Lista limpa!") else doPlayerSendCancel(cid, "Sua lista ja esta limpa!") end elseif t[1] == "desbug" or t[1] == "desbugar" then doPlayerSetStorageValue(cid, 04420011, -1) doPlayerSetStorageValue(cid, 04420021, -1) doPlayerSetStorageValue(cid, 04420031, -1) doPlayerSetStorageValue(cid, 04420041, -1) doPlayerSetStorageValue(cid, 04420051, -1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Desbugado!") elseif t[1] == "list" then local fi = getPlayerStorageValue(cid, 04420021) ~= -1 and ""..getItemNameById(getPlayerStorageValue(cid, 04420021)).."\n" or "" local se = getPlayerStorageValue(cid, 04420031) ~= -1 and ""..getItemNameById(getPlayerStorageValue(cid, 04420031)).."\n" or "" local th = getPlayerStorageValue(cid, 04420041) ~= -1 and ""..getItemNameById(getPlayerStorageValue(cid, 04420041)).."\n" or "" local fo = getPlayerStorageValue(cid, 04420051) ~= -1 and ""..getItemNameById(getPlayerStorageValue(cid, 04420051)).."\n" or "" doPlayerPopupFYI(cid, "O sistema auto loot está coletando:\n "..fi..""..se..""..th..""..fo) end return true end Lembrando esse script libera dois slots de autoloot pra free account e quatro slots para vip account, o sistema configurado nele é o vipSystemByMock caso use um script diferente basta alterar função vip.hasVip(cid)
Vamos continuar?
Próximo passo vamos adicionar o creaturescripts!
Na pasta creaturescripts, abra o creaturescripts.xml e adicione a seguinte tag:
<event type="kill" name="autoloot" event="script" value="Auto Loot.lua"/> Agora dentro da pasta creaturescripts vá ate a pasta scripts e crie um arquivo chamado Auto Loot.lua e adicione o seguinte codigo:
local aloot_boost = {[2406] = 36, [2537] = 4800, [2377] = 480, [2663] = 600, [2472] = 195000, [2398] = 36, [2475] = 7200, [2519] = 6500, [2497] = 10700, [2523] = 180000, [2494] = 325000, [2400] = 144000, [2491] = 6000, [2421] = 325000, [2646] = 260000, [2477] = 7200, [2413] = 84, [2656] = 18000, [2498] = 52000, [2647] = 600, [2534] = 32500, [7402] = 19500, [2466] = 26000, [2465] = 240, [2408] = 120000, [2518] = 1800, [2500] = 3000, [2376] = 30, [2470] = 91000, [2388] = 24, [2645] = 26000, [2434] = 2400, [2463] = 480, [2536] = 11700, [2387] = 240, [2396] = 4800, [2381] = 240, [2528] = 4800, [2409] = 1800, [2414] = 12000, [2427] = 9000, [2407] = 7200, [2458] = 42, [2383] = 960, [2392] = 3600, [2488] = 18000, [2525] = 120, [2423] = 240, [7382] = 13000, [2462] = 1300, [2520] = 39000, [2390] = 180000, [2417] = 72, [2436] = 1200, [5741] = 52000, [2378] = 120, [2487] = 24000, [2476] = 6500, [8891] = 36000, [2459] = 36, [2195] = 52000, [2391] = 7200, [2464] = 120, [8889] = 72000, [2432] = 13000, [2431] = 108000, [2492] = 52000, [2515] = 240, [2430] = 2400, [2393] = 13000, [7419] = 36000, [2522] = 130000, [2514] = 65000} local function getPlayerStorageZero(cid, storage) -- By Killua local sto = getPlayerStorageValue(cid, storage) if tonumber(sto) then return tonumber(sto) > tonumber(0) and tonumber(sto) or tonumber(0) end return tonumber(0) end local tabela = {} local function getPlayerList(cid) local tab = {} if getPlayerStorageValue(cid, 04420021) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420021)) end if getPlayerStorageValue(cid, 04420031) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420031)) end if getPlayerStorageValue(cid, 04420041) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420041)) end if getPlayerStorageValue(cid, 04420051) ~= -1 then table.insert(tab, getPlayerStorageValue(cid, 04420051)) end if #tab > 0 then return tab end return {} end local function boost(cid) return tonumber(getPlayerStorageValue(cid,722381)) >= os.time() end local function autoLoot(cid, pos) if not isPlayer(cid) then return end local check = false local str = "" local position = {} for i = 1, 255 do pos.stackpos = i if getThingFromPos(pos).uid and getThingFromPos(pos).uid > 0 and isContainer(getThingFromPos(pos).uid) then position = pos check = true break end end if check then local corpse = getContainerItemsInfo(getThingFromPos(position).uid) if corpse then for index, info in pairs(corpse) do if index < countTable(corpse) then if info.uid and info.itemid then if isContainer(info.uid) then local bag = getContainerItemsInfo(info.uid) for i = 1, countTable(bag) do if isInArray(getPlayerList(cid), bag[i].itemid) then if bag[i].quant > 1 then doRemoveItem(bag[i].uid, bag[i].quant) doPlayerAddItem(cid, bag[i].itemid, bag[i].quant) str = str.." "..bag[i].quant.." "..getItemNameById(bag[i].itemid).." +" else doRemoveItem(bag[i].uid) if boost(cid) then if aloot_boost[bag[i].itemid] then doPlayerSetBalance(cid,getPlayerBalance(cid) + aloot_boost[bag[i].itemid]) str = str.." 1 "..getItemNameById(bag[i].itemid).." ("..aloot_boost[bag[i].itemid].."gp no banco) +" else doPlayerAddItem(cid, bag[i].itemid, 1) str = str.." 1 "..getItemNameById(bag[i].itemid).." +" end else doPlayerAddItem(cid, bag[i].itemid, 1) str = str.." 1 "..getItemNameById(bag[i].itemid).." +" end end end end end end end if isInArray(getPlayerList(cid), info.itemid) then if info.quant > 1 then doRemoveItem(info.uid, info.quant) doPlayerAddItem(cid, info.itemid, info.quant) str = str.." "..info.quant.." "..getItemNameById(info.itemid).." +" else doRemoveItem(info.uid) if boost(cid) then if aloot_boost[info.itemid] then doPlayerSetBalance(cid,getPlayerBalance(cid) + aloot_boost[info.itemid]) str = str.." 1 "..getItemNameById(info.itemid).." ("..aloot_boost[info.itemid].."gps no banco) +" else doPlayerAddItem(cid, info.itemid, 1) str = str.." 1 "..getItemNameById(info.itemid).." +" end else doPlayerAddItem(cid, info.itemid, 1) str = str.." 1 "..getItemNameById(info.itemid).." +" end end end end end end setPlayerTableStorage(cid,822564,{[1] = str, [2] = 0}) end local function autoGold(cid, pos) if not isPlayer(cid) then return end local check = false local total = 0 local position = {} for i = 1, 255 do pos.stackpos = i if getThingFromPos(pos).uid and getThingFromPos(pos).uid > 0 and isContainer(getThingFromPos(pos).uid) then position = pos check = true break end end if check then local corpse = getContainerItemsInfo(getThingFromPos(position).uid) if corpse then for index, info in pairs(corpse) do if info.uid and info.itemid then if index < countTable(corpse) then if isContainer(info.uid) then local bag = getContainerItemsInfo(info.uid) for i = 1, countTable(bag) do if isInArray({2148, 2152, 2160}, bag[i].itemid) then local multiplie = 1 if bag[i].itemid == 2148 then multiplie = 1 elseif bag[i].itemid == 2152 then multiplie = 100 elseif bag[i].itemid == 2160 then multiplie = 10000 end doRemoveItem(bag[i].uid, bag[i].quant) doPlayerSetBalance(cid, getPlayerBalance(cid) + tonumber(bag[i].quant) * multiplie) total = total + bag[i].quant * multiplie doPlayerSetStorageValue(cid, 04421021, tonumber(getPlayerStorageZero(cid, 04421021)) + tonumber(info.quant) * tonumber(multiplie)) end end end end if isInArray({2148, 2152, 2160}, info.itemid) then local multiplie = 1 if info.itemid == 2148 then multiplie = 1 elseif info.itemid == 2152 then multiplie = 100 elseif info.itemid == 2160 then multiplie = 10000 end doRemoveItem(info.uid, info.quant) doPlayerSetBalance(cid, getPlayerBalance(cid) + info.quant * multiplie) doPlayerSetStorageValue(cid, 04421021, tonumber(getPlayerStorageZero(cid, 04421021)) + tonumber(info.quant) * tonumber(multiplie)) total = total + info.quant * multiplie end end end end end if total > 0 then total = total - (total * 0.2) total = math.ceil(total) doPlayerSetBalance(cid,getPlayerBalance(cid) + total) local tab = getPlayerTableStorage(cid,822564) tab[2] = total setPlayerTableStorage(cid,822564,tab) end end local function sendMsg(cid) if not isPlayer(cid) then return end local tab = getPlayerTableStorage(cid,822564) if countTable(tab) >= 1 then if tab[1] then if tab[2] and tab[2] > 0 then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "[Auto Loot System] Coletados: ".. tab[1] .." ".. tab[2] .." gold coins.") else if type(tab[1]) == "string" and string.len(tab[1]) > 1 then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "[Auto Loot System] Coletados: "..tab[1]) end end elseif not tab[1] then if tab[2] then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "[Auto Loot System] Coletados: "..tab[2].." gold coins.") end end end doPlayerSetStorageValue(cid,822564,-1) end function onKill(cid, target, lastHit) if isPlayer(cid) and isMonster(target) then if getPlayerStorageValue(cid, 04421001) == 1 and #getPlayerList(cid) > 0 then local pos = getCreaturePosition(target) addEvent(autoLoot, 500, cid, pos) end if getPlayerStorageValue(cid, 04421011) == 1 then local pos = getCreaturePosition(target) addEvent(autoGold, 540, cid, pos) end if getPlayerStorageValue(cid, 04421001) == 1 or getPlayerStorageValue(cid, 04421011) == 1 then addEvent(sendMsg, 560, cid) end end return true end
E por fim ainda dentro da pagina scripts procure o arquivo login.lua e registre a seguinte tag:
registerCreatureEvent(cid, "autoloot") registerCreatureEvent(cid, "Auto Loot")
Créditos: Killua - Vitor cardoso bertolucci
Obrigado a todos e até a próxima!
JNetworks.com.br
Jnetworks agradece a preferência!
Está querendo abrir 1 OTServer e não sabe onde hospedar?
Acesse: JNetworks.com.br
Instalamos seu OTServer apartir da contratação de 3GB de ram!
-
Por Under
ATENÇÃO, DESENVOLVEDORES DE OTSERV!
Uma nova era está chegando — e você vai fazer parte dela desde o começo!
Ferramentas de IA + Formação Completa
Estamos finalizando ferramentas exclusivas de inteligência artificial que vão revolucionar a forma como você cria e gerencia servidores de Tibia.
E pra abrir com estilo, chegou a primeira etapa da nossa formação completa:
Curso de Pixel Art para Tibia e Derivados
Instrutor: Brendon Nogard, fundador da Pixel Art School
Uma das maiores referências em arte para servidores de tibia no Brasil!
Quem é o Nogard? @Nogard
video-de-apresent.mp4
Criador das primeiras remakes gráficas da PXG
Mais de 10 anos de experiência com Pixel Art
Conduziu a evolução da perspectiva GBA para um visual moderno e imersivo
Influenciou uma geração inteira de criadores na comunidade OTServer no Brasil.
O que você vai aprender nesse curso?
Compre Aqui!
Perspectiva 45° para Tibia e derivados
Criação de itens: pokébolas, loots, mochilas, poções
Personagens animados com variações de cabelo
Criaturas como Wolf, Werewolf, Snake, Horse e Centauro
Cenários: paredes, cortinas, troféus
Texturas: folhas, rochas
Fundamentos de estilo, coerência e construção de sprites profissionais
Duração: 12 horas
VALOR : R$250,00
BÔNUS POR R$50,00
Também está disponível o Curso de Pixel Art Top Down, ideal pra quem quer começar do zero absoluto:
Crie personagens, inimigos, chefes
Monte todo o ambiente do seu jogo
Duração: 3 horas
Por que isso é importante pra você?
Esse é o primeiro passo pra criar um OTServer com:
Identidade visual única
Alto nível gráfico
Suporte de ferramentas de IA exclusivas
E um método claro, testado e acessível!
Nas próximas 4 semanas...
Vamos liberar novos cursos sobre:
Criação de mapas
Desenvolvimento de sistemas e scripts
IA aplicada ao design de jogo (desenvolvimento)
Balanceamento, mecânicas e muito mais!
Garanta sua vaga agora!
Comece hoje mesmo com o pé direito.
Compre Aqui!
-
-
Estatísticas dos Fóruns
96843
Tópicos519605
Posts
Posts Recomendados
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.