-
Total de itens
648 -
Registro em
-
Última visita
-
Dias Ganhos
5
Histórico de Reputação
-
larissaots recebeu reputação de gabriel28 em RME unsuported client version
Tenta resolver baixando e usando o ComboFix. Seu RME é o mais recente?
-
larissaots recebeu reputação de Germanotta em Erro na compilação T F S
Tenta deletar o MinGW e qualquer arquivo dev e baixa esse: http://www.4shared.com/archive/jxytO4M5ba/Stians_Repack_Dev-Cpp_02_64bit.htm
Se aparecer algo, clica em yes.
-
larissaots recebeu reputação de Adolfohrq em [8.6] Tibia-Battle - Roshamuul, All Outfits, All Mounts
Só de ter mounts nessa versão, já deixa todos os outros servidores como inferiores. Parabéns pelo projeto!
Não tenho dúvidas de que daqui um tempo terá bastantes players.
-
larissaots recebeu reputação de damiaotorres em Monitorando todos os trades do servidor (Trade log)
Créditos à Anonimo e Animal Park.
Objetivo
O script consiste em criar um log .txt em data/logs/trades mostrando quais itens foram passados entre os jogadores dentro do seu servidor
Tutorial
Em data/creaturescripts/scripts/ crie um arquivo .lua chamado: checktrades.lua e dentro coloque:
local servers = {[0] = 'server1', [1] = 'server2', [2] = 'server3'} local function getType(item) return (item.type > 0) and item.type or 1 end Log = {} Log.__index = Log function Log.create() local t = {} setmetatable(t, Log) t.file = servers[getConfigValue("worldId")] .. "/" .. os.date("%B-%d-%Y", os.time()) .. ".txt" t.str, t.cstr, t.con = '', '', 0 return t end function Log:write() local f = io.open("data/logs/trades/" .. self.file, "a+") if not f then return false end f:write(self.str) f:close() end function Log:containerString() self.cstr = '' for i = 1, self.con do self.cstr = self.cstr .. '-> ' end end function Log:addContainer() self.con = self.con + 1 self:containerString() end function Log:closeContainer() self.con = self.con - 1 self:containerString() end function Log:setLine(txt) self.str = self.str .. self.cstr .. txt .. '\n' end function Log:kill() self.file, self.cstr, self.str, self.con = "", "", "", -1 end function onTradeAccept(cid, target, item, targetItem) local this = Log.create() local name, tname = getCreatureName(cid), getCreatureName(target) this:setLine("Trade between " .. name .. " and " .. tname .. " || [" .. os.date("%d/%m/%Y %H:%M:%S") .. "]") local function logging(cid, item) this:setLine(getCreatureName(cid) .. " traded:") local function scanContainer(cid, uid) for k = (getContainerSize(uid) - 1), 0, -1 do local tmp = getContainerItem(uid, k) this:setLine(getItemNameById(tmp.itemid) .. " x " .. getType(tmp) .. " || itemid: " .. tmp.itemid) if isContainer(tmp.uid) then this:addContainer() scanContainer(cid, tmp.uid) this:closeContainer() end end end this:setLine(getItemNameById(item.itemid) .. " x " .. getType(item) .. " || itemid: " .. item.itemid) if isContainer(item.uid) then this:addContainer() scanContainer(cid, item.uid) this:closeContainer() end end logging(cid, item) logging(target, targetItem) this:setLine("END OF THIS TRADE --------------\n") this:write() this:kill() return true end Em data/creaturescripts adicione no creaturescripts.xml a seguinte linha:
<event type="trade" name="tradeCheck" event="script" value="checktrades.lua"/> Em data/creaturescripts/scripts/ abra o arquivo login.lua e adicione:
registerCreatureEvent(cid, "tradeCheck") Pronto, agora você poderá monitorar os trades em seu servidor!
-
larissaots deu reputação a moskitinho em Dromedary Mount
Fala manola,
Muito bom o tutorial e reconheço o esforço em trazer tanto conteúdo pro Eks, está de parabéns.
Porém deixo a pergunta, se acha necessário, já que temos os "wikis" da vida como meio desse gênero de conteúdo. Volto a dizer que acho uma ótima iniciativa, porém se trouxesse de uma forma mais "informal". Um artigo... Algo de diferente sabe?! Que fale mais da história, são apenas exemplos.
É apenas uma crítica construtiva.
-
larissaots recebeu reputação de moskitinho em Dromedary Mount
Dromedary Mount
Requisitos para obter o mount
Fist on a Stick
Como obter o Fist on a Stick
Você terá que ir até Ankrahmun e depois na Tumba de Horestis (onde está circulado em vermelho na imagem a seguir):
Você terá que enfrentar um dos seguintes monstros para obter o item;
Sandstone Scorpion Tomb Servant É díficil conseguir esse item. Se você conseguir não só o item, mas o mount também, jogue na mega-sena.
Localização Dromedary
Para encontrar um Dromedary, basta vagar pelo norte de Ankrahmun ou oeste de Darashia que você achará.
Obtendo o mount
Você só conseguirá o mount se você tiver o item necessário. Caso tenha, vá até um Dromedary e sem matá-lo, use o item nele.
-
larissaots recebeu reputação de Lucasmml em Dromedary Mount
Dromedary Mount
Requisitos para obter o mount
Fist on a Stick
Como obter o Fist on a Stick
Você terá que ir até Ankrahmun e depois na Tumba de Horestis (onde está circulado em vermelho na imagem a seguir):
Você terá que enfrentar um dos seguintes monstros para obter o item;
Sandstone Scorpion Tomb Servant É díficil conseguir esse item. Se você conseguir não só o item, mas o mount também, jogue na mega-sena.
Localização Dromedary
Para encontrar um Dromedary, basta vagar pelo norte de Ankrahmun ou oeste de Darashia que você achará.
Obtendo o mount
Você só conseguirá o mount se você tiver o item necessário. Caso tenha, vá até um Dromedary e sem matá-lo, use o item nele.
-
larissaots recebeu reputação de Administrador em Dromedary Mount
Dromedary Mount
Requisitos para obter o mount
Fist on a Stick
Como obter o Fist on a Stick
Você terá que ir até Ankrahmun e depois na Tumba de Horestis (onde está circulado em vermelho na imagem a seguir):
Você terá que enfrentar um dos seguintes monstros para obter o item;
Sandstone Scorpion Tomb Servant É díficil conseguir esse item. Se você conseguir não só o item, mas o mount também, jogue na mega-sena.
Localização Dromedary
Para encontrar um Dromedary, basta vagar pelo norte de Ankrahmun ou oeste de Darashia que você achará.
Obtendo o mount
Você só conseguirá o mount se você tiver o item necessário. Caso tenha, vá até um Dromedary e sem matá-lo, use o item nele.
-
larissaots recebeu reputação de Caktchup em Harmony Map
Categoria: Mapa.
Versão: 8.60
Créditos: OldSchool'er
Anexos: Download
Screenshot;
-
larissaots recebeu reputação de Caktchup em VipLand + TP Room
Categoria: Mapa.
Versão: 8.60
Créditos: MaSqny
Anexos: cityy-masqny.rar
Screenshot;
-
larissaots recebeu reputação de JonatasLucasf em Pirate Outfit Full
Pirate Outfit Quest
Requisitos para ter o outfit
Ser premium account. Ter todos os itens necessários. Level: 20+ (depende)
Criaturas que serão enfrentadas (também enfrentará os bosses dos pirates)
Roupa
É necessário ter completado a Meriana Quest e ter acesso à ilha de Nargor. Se você tiver completado a Meriana Quest, vá até o NPC Raymond em Meriana: Nesta imagem indica onde você deve ir.
Logo após, fale o seguinte para ele:
hi, mission, pirate outfit, bye. Pronto, você conseguiu uma parte do outfit!
Sabre
Requisitos
100x Eye Patchs
100x Eye Legs
100x Hooks
Informação
Ambos os itens necessários para ter o outfit podem ser dropados pelos próprios pirates, mas é "díficil" cair os itens.
Obtendo o outfit
Em Meriana novamente, converse com o NPC Duncan (), ele localiza-se nessa parte da ilha:
Tenha consciência de que você tem os itens necessários.
Para iniciar a task, fale:
hi, tasks, yes, bye. Caso já tenha os itens, fale:
hi, addon, task, yes, yes, bye. Logo após, fale:
hi, eyes patches, yes, peg legs, yes, hooks, yes, bye. Agora procure pelo NPC Morgan (), ele fica ao lado esquerdo de onde o NPC Duncan fica. Fale:
hi, firebird, bye Pronto, você obteu o sabre!
Chapéu
Requisitos
Ron the Ripper's Sabre. Deadeye Devious' Eye Patch. The Lethal Lissy's Shirt. Brutus Bloodbeard's Hat. Informação
Nesse momento você terá que procurar pela NPC Ariella (), ela localiza-se nessa parte de Meriana:
Após encontra-la, inicie a task falando:
hi, task, yes, bye. Caso já tenha os itens necessários, fale:
hi, addon, task, yes, bye Caso você NÃO tenha os itens informados, você deverá matar os seguintes monstros para obter os itens:
Lethal Lissy
Ron The Ripper
Deadeye Devious
Brutus Bloodbeard
-
-
larissaots recebeu reputação de AnneMotta em SimOne MapEditor 0.581 - (7.6 - 8.6)
Quem lembra do famoso SimOne? Há muitos anos atrás esse map editor era uma febre entre os donos de servidores.
Procurei o conteúdo pelo fórum e acabei não encontrando, então, estarei disponibilizando pra vocês!
Download: http://www.mediafire.com/download/mh3k7bcv8u1yb80/SimOne+MapEditor.rar
Senha: xTibia.com
Já coloquei o Tibia 8.60 na pasta do MapEditor.
-
larissaots recebeu reputação de Administrador em SimOne MapEditor 0.581 - (7.6 - 8.6)
Quem lembra do famoso SimOne? Há muitos anos atrás esse map editor era uma febre entre os donos de servidores.
Procurei o conteúdo pelo fórum e acabei não encontrando, então, estarei disponibilizando pra vocês!
Download: http://www.mediafire.com/download/mh3k7bcv8u1yb80/SimOne+MapEditor.rar
Senha: xTibia.com
Já coloquei o Tibia 8.60 na pasta do MapEditor.
-
larissaots recebeu reputação de Administrador em [Pedido] Link de Item Editor 8.60
http://www.xtibia.com/forum/topic/234733-item-editor-v035-80-1077/ -
-
-
larissaots deu reputação a Administrador em [TFS 1.2] Conditions: Resist, Absorv, Reflect, Deflect
Resist: reduz o dano por x% Absorb: reduz o dano por x%, cura x% Reflect: Recebe todo o dano e da x% para o atacante Deflect: Reduz o dano por x% e da x% para o atacante creaturescript.lua local res = { {101, COMBAT_FIREDAMAGE}, {102, COMBAT_EARTHDAMAGE}, {103, COMBAT_ENERGYDAMAGE}, {104, COMBAT_ICEDAMAGE}, {105, COMBAT_HOLYDAMAGE}, {106, COMBAT_DEATHDAMAGE}, {107, COMBAT_PHYSICALDAMAGE}, {108, COMBAT_PHYSICALDAMAGE}, {109, COMBAT_FIREDAMAGE},{110, COMBAT_EARTHDAMAGE}, {111, COMBAT_ENERGYDAMAGE}, {112, COMBAT_ICEDAMAGE}, {113, COMBAT_HOLYDAMAGE}, {114, COMBAT_DEATHDAMAGE}, {115, COMBAT_PHYSICALDAMAGE}, {116, COMBAT_PHYSICALDAMAGE}, {117, COMBAT_FIREDAMAGE}, {118, COMBAT_EARTHDAMAGE}, {119, COMBAT_ENERGYDAMAGE}, {120, COMBAT_ICEDAMAGE}, {121, COMBAT_HOLYDAMAGE}, {122, COMBAT_DEATHDAMAGE}, {123, COMBAT_PHYSICALDAMAGE}, {124, COMBAT_PHYSICALDAMAGE}, {125, COMBAT_FIREDAMAGE}, {126, COMBAT_EARTHDAMAGE}, {127, COMBAT_ENERGYDAMAGE}, {128, COMBAT_ICEDAMAGE}, {129, COMBAT_HOLYDAMAGE}, {130, COMBAT_DEATHDAMAGE}, {131, COMBAT_PHYSICALDAMAGE}, {132, COMBAT_PHYSICALDAMAGE}, } local refs = { [COMBAT_PHYSICALDAMAGE] = CONST_ME_DRAWBLOOD, [COMBAT_ENERGYDAMAGE] = CONST_ME_ENERGYAREA, [COMBAT_EARTHDAMAGE] = CONST_ME_POISONAREA, [COMBAT_FIREDAMAGE] = CONST_ME_FIREAREA, [COMBAT_ICEDAMAGE] = CONST_ME_ICEAREA, [COMBAT_HOLYDAMAGE] = CONST_ME_HOLYAREA, [COMBAT_DEATHDAMAGE] = CONST_ME_MORTAREA } function onHealthChange(creature, attacker, primaryDamage, primaryType, secondaryDamage, secondaryType, origin) if creature:isPlayer() then if primaryType == COMBAT_HEALING then return primaryDamage, primaryType, secondaryDamage, secondaryType end if creature:getCondition(CONDITION_ATTRIBUTES, CONDITIONID_COMBAT, 11) then if primaryType == COMBAT_DROWNDAMAGE then primaryDamage = 0 end if secondaryType == COMBAT_DROWNDAMAGE then secondaryDamage = 0 end end for i = 1, 8 do -- resist if creature:getCondition(CONDITION_ATTRIBUTES, CONDITIONID_COMBAT, res[i][1]) then if primaryType == res[i][2] or i == 8 then primaryDamage = (primaryDamage - (primaryDamage * (creature:getStorageValue(5) / 100))) end if secondaryType == res[i][2] or i == 8 then secondaryDamage = (secondaryDamage - (secondaryDamage * (creature:getStorageValue(5) / 100))) end end end for i = 9, 16 do -- reflect if creature:getCondition(CONDITION_ATTRIBUTES, CONDITIONID_COMBAT, res[i][1]) then if not attacker then return primaryDamage, primaryType, secondaryDamage, secondaryType end if primaryType == res[i][2] or i == 16 then local a = math.floor(primaryDamage * (creature:getStorageValue(5) / 100)) if attacker:isMonster() then local m = MonsterType(attacker:getName()) local e = m:getElementList() local f = m:getCombatImmunities() if type(f) == "number" then if f == primaryType then a = 0 end else for i, j in pairs(f) do if i == primaryType then a = 0 end end end if type(e) == "number" then if e == primaryType then if e > 0 then a = (a - (a * (e / 100))) else a = (a + (a * ((e * -1) / 100))) end end else for i, j in pairs(e) do if i == primaryType then if j > 0 then a = (a - (a * (j / 100))) else a = (a + (a * ((j * -1) / 100))) end end end end end doTargetCombatHealth(creature, attacker, primaryType, a, a, refs[primaryType]) end end end for i = 17, 24 do -- deflect if creature:getCondition(CONDITION_ATTRIBUTES, CONDITIONID_COMBAT, res[i][1]) then if not attacker then return primaryDamage, primaryType, secondaryDamage, secondaryType end if primaryType == res[i][2] or i == 24 then local a = math.floor(primaryDamage * (creature:getStorageValue(5) / 100)) if attacker:isMonster() then local m = MonsterType(attacker:getName()) local e = m:getElementList() local f = m:getCombatImmunities() if type(f) == "number" then if f == primaryType then a = 0 end else for i, j in pairs(f) do if i == primaryType then a = 0 end end end if type(e) == "number" then if e == primaryType then if e > 0 then a = (a - (a * (e / 100))) else a = (a + (a * ((e * -1) / 100))) end end else for i, j in pairs(e) do if i == primaryType then if j > 0 then a = (a - (a * (j / 100))) else a = (a + (a * ((j * -1) / 100))) end end end end end doTargetCombatHealth(creature, attacker, primaryType, a, a, refs[primaryType]) primaryDamage = (primaryDamage - (primaryDamage * (creature:getStorageValue(5) / 100))) secondaryDamage = (secondaryDamage - (secondaryDamage * (creature:getStorageValue(5) / 100))) end end end for i = 25, 32 do if creature:getCondition(CONDITION_ATTRIBUTES, CONDITIONID_COMBAT, res[i][1]) then if primaryType == res[i][2] or i == 32 then local a = math.floor(primaryDamage * (creature:getStorageValue(5) / 100)) creature:addHealth(a) primaryDamage = (primaryDamage - (primaryDamage * (creature:getStorageValue(5) / 100))) secondaryDamage = (secondaryDamage - (secondaryDamage * (creature:getStorageValue(5) / 100))) end end end end if primaryDamage == 0 and secondaryDamage == 0 and creature:isPlayer() then creature:getPosition():sendMagicEffect(CONST_ME_POFF) end return primaryDamage, primaryType, secondaryDamage, secondaryType end Exemplo
local t = 60 * 1000 local v = 10 local resist = Condition(CONDITION_ATTRIBUTES) resist:setParameter(CONDITION_PARAM_BUFF_SPELL, 1) resist:setParameter(CONDITION_PARAM_SUBID, 108) resist:setParameter(CONDITION_PARAM_TICKS, t) player:addCondition(resist) player:setStorageValue(5, v) Créditos: RazorBlade
-
larissaots recebeu reputação de Administrador em Nature Island
Categoria: Mapa.
Versão: 8.60
Créditos: Oldschool'er
Anexos: Download
Screenshot;
-
larissaots recebeu reputação de Administrador em Teleport Room
Categoria: Mapa.
Versão: 8.60
Créditos: iSanto
Anexos: Download
Screenshot;
-
larissaots recebeu reputação de JonatasLucasf em Ab'Dendriel NOVA APARÊNCIA + Draconia
Categoria: Mapa.
Versão: 10.10
Créditos: zkum
Anexos: Download
Screenshot;
-
larissaots recebeu reputação de Administrador em Rat Sewer
Categoria: Mapa.
Versão: 8.60
Créditos: Oldschool'er
Anexos: Download
Screenshot;
-
larissaots recebeu reputação de Administrador em InsanityOT Nature House
Categoria: Mapa.
Versão: 8.60
Créditos: Oldschool'er
Anexos: Download
Screenshot;
-
larissaots recebeu reputação de Bruno em RPG City: Valkaria and Prima.
Tamanho: 1,6 MB.
Categoria: Mapa.
Versão: 10.31
Créditos: Slec
Anexos: Download
Screenshot;
-
larissaots recebeu reputação de Bruno em Poi seals
Tamanho: 60 KB.
Categoria: Mapa.
Versão: 10.31
Créditos: Slec
Anexos: Download
Screenshot;
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.