Ir para conteúdo

1579091

Marquês
  • Total de itens

    1088
  • Registro em

  • Última visita

  • Dias Ganhos

    1

Posts postados por 1579091

  1. Ola, instalei o seguinte sistema de War of Emperor:

    https://tibiaking.com/forums/topic/17185-evento-war-of-emperium-woe-completo/

     

    Estou tendo alguns problemas no log quando os geradores morrem:

    Spoiler

    > Broadcasted message: "one of Pre-Empes have been broken...".

    [17:17:02.671] [Error - CreatureScript Interface]
    [17:17:02.671] domodlib('Loot_func')
    [17:17:02.671] function onDeath(cid, corpse, deathList)
    [17:17:02.671] local killer,pos = deathList[1],getCreaturePosition(cid)
    [17:17:02.671] addEvent(corpseRetireItems,1,killer,pos)
    [17:17:02.671] return true
    [17:17:02.671] end:onDeath
    [17:17:02.671] Description:
    [17:17:02.671] (luaGetThingPosition) Thing not found

    [17:17:02.734] [Error - CreatureScript Interface]
    [17:17:02.734] In a timer event called from:
    [17:17:02.734] domodlib('Loot_func')
    [17:17:02.734] function onDeath(cid, corpse, deathList)
    [17:17:02.734] local killer,pos = deathList[1],getCreaturePosition(cid)
    [17:17:02.734] addEvent(corpseRetireItems,1,killer,pos)
    [17:17:02.734] return true
    [17:17:02.734] end:onDeath
    [17:17:02.734] Description:
    [17:17:02.734] [string "info = {..."]:145: attempt to index local 'pos' (a boolean value)
    [17:17:02.734] stack traceback:
    [17:17:02.734]  [string "info = {..."]:145: in function <[string "info = {..."]:142>
    > Broadcasted message: "Both Pre-Empes have been broken, portals opened.".

    [17:17:18.875] [Error - CreatureScript Interface]
    [17:17:18.875] domodlib('Loot_func')
    [17:17:18.875] function onDeath(cid, corpse, deathList)
    [17:17:18.875] local killer,pos = deathList[1],getCreaturePosition(cid)
    [17:17:18.875] addEvent(corpseRetireItems,1,killer,pos)
    [17:17:18.875] return true
    [17:17:18.875] end:onDeath
    [17:17:18.875] Description:
    [17:17:18.875] (luaGetThingPosition) Thing not found

    [17:17:18.937] [Error - CreatureScript Interface]
    [17:17:18.937] In a timer event called from:
    [17:17:18.937] domodlib('Loot_func')
    [17:17:18.937] function onDeath(cid, corpse, deathList)
    [17:17:18.937] local killer,pos = deathList[1],getCreaturePosition(cid)
    [17:17:18.937] addEvent(corpseRetireItems,1,killer,pos)
    [17:17:18.937] return true
    [17:17:18.937] end:onDeath
    [17:17:18.937] Description:
    [17:17:18.937] [string "info = {..."]:145: attempt to index local 'pos' (a boolean value)
    [17:17:18.937] stack traceback:
    [17:17:18.937]  [string "info = {..."]:145: in function <[string "info = {..."]:142>

     

    _woe.lua:

    Spoiler

    dofile("./var.woe")

    local config = woe_config

    fileStore = true

    infoFile = 'tmp.woe'
    infoLua = {}

    Woe = {}
    Woe.__index = Woe

    function Woe.setup()
        db.executeQuery("DROP TABLE IF EXISTS `woe`;")
        db.executeQuery("CREATE TABLE `woe` (`id` INT( 11 ) NOT NULL AUTO_INCREMENT ,`started` INT( 11 ) NOT NULL ,`guild` INT( 11 ) NOT NULL ,`breaker` INT( 11 ) NOT NULL ,`time` INT( 11 ) NOT NULL ,PRIMARY KEY ( `id` ) ,UNIQUE (`id`)) ENGINE = MYISAM")
        doBroadcastMessage("DB Added [...]", config.bcType)
        if fileStore then
            local newFile = io.open(infoFile, "w")
            for _, i in ipairs({'started', 'guild', 'breaker', 'time'}) do
                newFile:write(i .. ' = 0 ;end;\n')
            end
            newFile:close()
        else
            db.executeQuery("DROP TABLE IF EXISTS `tmpwoe`;")
            db.executeQuery("CREATE TABLE `tmpwoe` (`started` INT( 11 ) NOT NULL ,`guild` INT( 11 ) NOT NULL ,`breaker` INT( 111 ) NOT NULL ,`time` INT( 1 ) NOT NULL) ENGINE = MYISAM ;")
            db.executeQuery("ALTER TABLE `tmpwoe` ADD `indexer` INT NOT NULL ")
            db.executeQuery("INSERT INTO `tmpwoe` (`started` ,`guild` ,`breaker` ,`time`, `indexer`)VALUES ('0', '0', '0', '0', '1');")
        end
    end

    function Woe.getInfo()
        if fileStore then
            local open = io.open(infoFile, "r")
            if open then
                for i in io.lines(infoFile) do 
                    for v, k in ipairs({'started', 'guild', 'breaker', 'time'}) do
                        if (i:find(k)) then
                            n = i:match(k .. '.*')
                            infoLua[v] = tonumber(n:sub(n:find('=') + 2, n:find(';end;') - 2))
                        end
                    end
                end
                open:close()
            end
        else
            for v, k in ipairs({'started', 'guild', 'breaker', 'time'}) do
                local tmp = db.getResult("SELECT " .. k .. " FROM `tmpwoe` WHERE `indexer` = '1';")
                infoLua[v] = tmp:getDataInt(k)
                tmp:free()
            end
        end
    end

    function Woe.updateInfo(tab)
        if fileStore then
            local open = io.open(infoFile, "w")
            if open then
                for k, i in ipairs({'started', 'guild', 'breaker', 'time'}) do
                    open:write(i .. ' = ' .. tab[k] .. ' ;end;\n')
                end
                open:close()
            end
        else
            for v, k in ipairs({'started', 'guild', 'breaker', 'time'}) do
                db.executeQuery("UPDATE `tmpwoe` SET " .. k .. " =  " .. tab[v] .. " WHERE `indexer` = 1;")
            end
        end
    end

    function Woe.save()
        Woe.getInfo()
        db.executeQuery("INSERT INTO `woe` (`started`, `guild`, `breaker`, `time`) VALUES (" .. infoLua[1] .. ", " .. infoLua[2] .. ", " .. infoLua[3] .. ", " .. infoLua[4] .. ");")
    end

    function Woe.getGuildName(id)
        local res = db.getResult("SELECT `name` FROM `guilds` WHERE `id` = " .. id .. ";")
        if (res:getID() ~= -1) then
            ret = res:getDataString('name')
            res:free()
        end
        return ret
    end

    function Woe.breakerName()
        Woe.getInfo()
        return infoLua[3] ~= 0 and getPlayerNameByGUID(infoLua[3]) or 'None'
    end

    function Woe.guildName()
        Woe.getInfo()
        return infoLua[2] ~= 0 and Woe.getGuildName(infoLua[2]) or 'Nones'
    end

    function Woe.startTime()
        Woe.getInfo()
        return os.date("%d %B %Y %X ", infoLua[1])
    end

    function Woe.breakTime()
        Woe.getInfo()
        return os.date("%d %B %Y %X ", infoLua[4])
    end

    function Woe.timeToEnd()
        Woe.getInfo()
        local myTable = {}
        for k, i in ipairs({"%M", "%S"}) do
            myTable[k] = os.date(i, os.difftime(os.time(), infoLua[1]))
        end
        return {mins = ((config.timeToEnd - 1) - myTable[1]), secs = (60 - myTable[2])}
    end

    function Woe.moveBack(cid, fromPosition, text)
        doTeleportThing(cid, fromPosition, TRUE)
        doPlayerSendCancel(cid, text)
    end

    function Woe.getGuildMembers(id)
        local members = {}
        for _, i in ipairs(getPlayersOnline()) do
            if id == getPlayerGuildId(i) then
                table.insert(members, i)
            end
        end
        return members
    end

    function Woe.deco(text)
        for _, i in ipairs(Castle.decoraciones) do
            doItemSetAttribute(i, "description", text)
        end
    end

    function Woe.removePortals()
        for _, i in ipairs(Castle.PrePortalsPos) do
            if (getThingFromPos(i).itemid > 0) then
                doRemoveItem(getThingFromPos(i).uid)
            end
        end
    end

    function Woe.removePre()
        for _, i in ipairs(Castle.PreEmpes) do
            if (isCreature(getThingFromPos(i).uid) == true) then
                doRemoveCreature(getThingFromPos(i).uid)
            end
        end
    end

    function Woe.checkPre()
        local Count = 0
        for _, i in ipairs(Castle.PreEmpes) do
            if (isCreature(getThingFromPos(i).uid) == false) then
                Count = Count + 1
            end
        end
        return (Count == #Castle.PreEmpes)
    end

    function Woe.isTime()
        return (getGlobalStorageValue(stor.WoeTime) == 1)
    end

    function Woe.isStarted()
        return (getGlobalStorageValue(stor.Started) == 1)
    end

    function Woe.isRegistered(cid)
        return (getPlayerStorageValue(cid, stor.register) == 1)
    end

    function Woe.isInCastle(cid)
        local myPos = getCreaturePosition(cid)
        if (myPos.x >= Castle.salas.a.fromx and myPos.x <= Castle.salas.a.tox) then
            if (myPos.y >= Castle.salas.a.fromy and myPos.y <= Castle.salas.a.toy) then
                if isInArray({Castle.salas.a.z, Castle.salas.b.z, Castle.salas.c.z}, myPos.z) then
                    return true
                end
            end
        end
        return false
    end

    function Woe.expulsar(guild, fromx, tox, fromy, toy, z, outpos)
        for _x = fromx, tox do
            for _y = fromy, toy do
                local player = getThingFromPos({x = _x, y = _y, z = z, stackpos = 253}).uid
                if (isPlayer(player) == true) then
                    if (getPlayerGuildId(player) ~= guild) then
                        doTeleportThing(player, outpos, false)
                    end
                end
            end
        end
    end

    -- extras

    function doSetItemActionId(uid, action)
        doItemSetAttribute(uid, "aid", action)
    end

    function exhaust(cid, storevalue, exhausttime)
    -- Exhaustion function by Alreth, v1.1 2006-06-24 01:31
    -- Returns 1 if not exhausted and 0 if exhausted
        newExhaust = os.time()
        oldExhaust = getPlayerStorageValue(cid, storevalue)
        if (oldExhaust == nil or oldExhaust < 0) then
            oldExhaust = 0
        end
        if (exhausttime == nil or exhausttime < 0) then
            exhausttime = 1
        end
        diffTime = os.difftime(newExhaust, oldExhaust)
        if (diffTime >= exhausttime or diffTime < 0) then
            setPlayerStorageValue(cid, storevalue, newExhaust) 
            return 1
        else
            return 0
        end
    end

    --new
    guard_pos = 
        {
            {x = 55, y = 31, z = 5},
            {x = 55, y = 30, z = 5},
            {x = 55, y = 29, z = 5},
            {x = 55, y = 28, z = 5},
            {x = 55, y = 27, z = 5},
            {x = 55, y = 26, z = 5},
            {x = 55, y = 25, z = 5}
        }
        
    function Woe.check()
        for storage = 24504, 24511 do
            local pid = getGlobalStorageValue(storage)
            if isCreature(pid) then
                return false
            end
        end
        return true
    end

    function Woe.summon()
        for k, i in ipairs(guard_pos) do
            local pid = doSummonCreature("guard", i)
            setGlobalStorageValue(24503 + k, pid)
        end
    end

    function Woe.remove()
        for storage = 24504, 24511 do
            local pid = getGlobalStorageValue(storage)
            if isCreature(pid) then
                doRemoveCreature(pid)
            end
        end
    end

     

    Alguem sabe dizer o que é?

    Qualquer coisa posto parte do script aqui.

    (The Forgotten Server, version 0.4_DEV (rev 3777))

  2. Salve galera!! A muito tempo que não entro nisso aqui.. mas vamos lá!!

    Desde que frequento isso aqui, eu comecei a mexer em um ot baiak 8.6... Mexia mexia, e nada de abrir... Dei outra cara pro servidor, que ainda acredito que esteja sujeito a mudanças.

    Agora que entrei nas férias deu vontade de mexer de novo nele, e porque não abrir? 

     

    Anexei as imagens dele aqui em baixo (não sei mexer mais nesse fórum kkk)..

     

    - Mas no geral, o ot possui cerca de 60 teleportes no templo, misturando hunts de autoria minha e de outros otservs, ou mapa global, etc...

    * GIF do templo:

     

    Spoiler

    09538a1e2747bc36243ca4cf628091d5.gif

     

     

    - Coloquei a POI, Anihi, INQ e Wrath of emperor com o mapa igual ao do global.. pra dar mais emoção!!!

    - A cidade está totalmente reformulada, por mim mesmo... 

    - yalahar (VIP), com teleports e talz...

     

    Hmm.. que mais...

    Bom contem ainda poucos bugs, nada que impeça de abrir.. 

     

    Pra isso preciso que alguem se interesse em administrar o servidor comigo.. (de preferencia que já tenha alguma experiencia)

    A ideia é se divertir um pouco, e quem sabe se der certo investir!!

     

    Ahh! se eu tiver na área errada daqui do fórum me move, não apaga pfv!

     

    No geral é isso, se  eu lembrar de algo mais vou acrescentando aqui!! é noix!

     

    Cidade:

    Cidade.png

     

    Cidade (quase completa)

    Cidade2.png

     

    Hunt de Cyc

    Hunt1.png

     

    Lyzards de Farmine completo

    Hunt2 - Lizards.png

     

    (1º andar do templo)

    Templo 1.png

     

    (2º andar do templo)

    Templo2.png

     

     

    Yalahar Completa (Area VIP)

    Yalahar (VIP).png

    Cidade.thumb.png.ad778959a1c83c0cd85f4d61a81a597b.png

    Cidade2.thumb.png.2f3e0b84d00cb2b506763630a076cc0c.png

    Hunt1.thumb.png.cfa44146b131f068082758eba99d6c0f.png

    5849c68b727f7_Hunt2-Lizards.thumb.png.ac43e609a35439bcb70f4bdf3c492920.png

    5849c6930cf92_Templo1.thumb.png.4f4c3836dd103f03512ca125bc01f304.png

    Templo2.thumb.png.b0107680358744258cb5f9548156f5dd.png

    5849c6a983335_Yalahar(VIP).thumb.png.8e76a565129dcd99161510d377689bf0.png

  3. Ola amigos, estou querendo abrir um otserv..

    Já tentei de todas as maneiras, olhei os tutoriais daqui e nada.. Não consigo colocar o servidor online (Consigo apenas com o ip 127.0.0.1)

    Tentei abri as portas do firewall do windows e ao que tudo indica deu certo... Mas ainda assim não é possivel se conectar, então pensei vamos pro hoteador..

    O meu modem é um da net aqui

    Modelo: C6500 DOC SIS 3.0

     

     

    E lá acabo ficando um pouco confuso pra liberar as portas não sei como fazer exatamente, qual ip inserir..

    Se é IPV4, ou o IP do meuip.com, etc..

     

    image.png

     

    Se alguem puder solucionar meu problema ficaria muito grato!!

  4. 1-) Calcule o DeltaH da reação (em Kcal/mol). Utilize a tabela:

    CH4(g) = -17,9 Kcal/mol

    H2O(g) = -57,9 Kcl/mol

    CO(g) = -26,4 Kcal/mol

     

    > CH4(g) + H2O(g) --> CO(g)+ H2(g) <

     

     

    2-) De acordo com os dados

    C(graf)+ 2H2(g) --> CH4(g) DeltaH = -8 Kcal/mol de CH4

    C(g)+ 2H(g) --> CH4(g) DeltaH = -190 Kcal/mol de CH4

     

     

    Qual é o calor em Kcal envolvido na vaporização de 120 g de Cgraf? (massa molar do C = 12g/mol)

  5. Po muito obrigado já ta bem legal!!

    Se liga, tem como estar pronto ainda hoje de noite?!

    Se tiver como melhorar :D

    E pode ser do tamanho que você quiser!


    Acho que ficaria mais legal se aumentasse um poco a letra em baixo!


    Caso mais alguém se disponibilize pra fazer também a vontade, se possível colocar a data no flyer tbm 01/03!


    E se puder colocar uma guitarra de fundo também fazer um negocio bem bacana!!

  6. Eaee pessoal tudo bem, estou aqui a pedido de um amigo que ele precisa de um flyer da banda dele que vai tocar!! Ele pediu para que eu fizesse, mas acaba que não me lembro muito bem mexer no photoshop...

    E enquanto re-aprendo, precisava que alguem vizesse um flyer pra ele:

     

     

    Deve conter estas imagens (no caso uma ou outra, ou se der fazer 2 flyers) :

     

     

     

    zkbs.jpg
    qjp0.jpg

     

     

    Exemplos de flyers já criados:

     

     

    1743741_425156210949702_994594909_n.jpg

     

     

     

     

    1614628_426719057460084_100721885_o.jpg

     

     

     

     

    905302_426729010792422_79465990_o.jpg

     

     

     

     

    1904070_436100549855268_267416556_n.jpg

     

     

     

     

    1899719_436103203188336_1893815583_o.jpg

     

     

     

    deve conter as seguintes informações:

     

    Show de 5º Aniversário M.A.Paz

    A partir das 18 horas
    Rua Progresso - Praça Florindo Galhardo - Curuça- Santo André SP
    (travessa rua Lituânia,1098)
    Bom quem puder vou agradecer muito!! É isso aí valeu!!
  7. Beto, só toma cuidado pra deixar um espaçamento um pouquinho maior entre um riuzinho de pantano e outro, pois nesse caso, a borda que você usa não é andavel, e daí os player vão ter q dar uns diagonal loco... (e em rook n eh legal da diagonal)

  8.  

    Texto grande pra caramba e q pode ser considerado inútil, leia por sua conta e risco.

     

     

    Já que tu é um perdido vou te dar (ui) um caminho pra seguir. Eu aplicava essa técnica pra elevar o nível das minhas sprites, porém ela também se aplica aos mapas. Mas já aviso logo, muita gente a acha uma forma de aprendizado politicamente incorreta, então se vc é um moralista de MERDA nem leia oq eu coloquei dentro do Quote. Se mesmo assim quiser melhorar a sua forma de mapear, fique atento ao que vou dizer, seu paspalhão.

     

    Antes de tudo procure entender essa premissa:

    -Que tipo de área vc ta fazendoe q vc vai fazer mapas pra Tibia, um jogo que usa a perspectiva de 45 graus, ou seja, teu trabalho é conseguir criar da forma mais fidedigna possível a área na perspectiva do Tibia. é a unica porra que um mapper faz, isso quer dizer que se vc não conseguir criar algo de acordo como é realmente ou fantasiosamente vc vai ta fazendo algo feio. Lembra da sua grama aquática?

     

    Entendido isso, faça o seguinte.

    -Pegue imagens de mapas dos grandes mappers, estude-as e tente fazer igual... exatamente, copie-os (ripping), e logo após copiar, compare teu mapa com os deles.

    -Depois de fazer muito isso, busque imagens reais, áreas reais como castelos, casas, blablabla e faça a mesma coisa.

    -Depois faça a mesma coisa com áreas fictícias.

     

    Pronto, vc aprendeu a mapear bem copando os outros, agora já tem uma boa base de como criar todo tipo de mapa, não estará mais jogado ao "Deus dará".

     

    Resumindo é isso.

     

     

    Agora sobre os comentários dos confrades

     

    Ninguém aqui disse nada sobre copiar mapas de ninguém (exceto eu, acima), eles perceberam que você não esta sendo capaz de entender seus erros por simples palavras, então quando dizem pra vc se basear em outros mapas estão simplesmente "desenhando" pra você, senão vomitando pra você, a forma correta de corrigir teu erro.

     

    Tu é um bom mapper, mas não é o melhor, já comentei isso em algum lugar e se n me engano disse q pra um mapper ser completo precisa de algumas coisas:Ouvir críticas e procurar melhorar. Tu não é completo... Vital é melhor e mais experiente que você -- na teoria e na prática, então se ele diz pra vc olhar outro mapa pra entender como aquela merda funciona, olha e entenda, caralho!

     

    Enfim...

    Siga o conselho do ET bilu, lembra?

    Força e honra...

     

     

     

    Tá,vamos ao que me interessou: seu tempo para fazer este texto,que me deu um certo caminho.

     

    Vital900, nunca quis ser ignorante e muito menos, passar a impressão que sou um cara fechado,muito pelo contrário não quis passar esta imagem.Só que eu creio que certas coisas,não me dão significados...

     

    Quanto ao Vital ser um mapper mais experiente que eu '--...

     

     

    semttuloher.png

    Se você acha... tudo bem rsrs.

     

     

     

     

    bom não é questão de experiência, ele só é um cara com a cabeça diferente simples assim.Eu faço mapas,esta é minha função,se eu achar que eu fiz um bom trabalho,está feito, só lamentações.Não quero afastar ninguém do meu projeto,muito pelo contrário eu quero fãns,quero pessoas que me incentivem a continuar,vocês me deram dicas para melhorar minhas áreas,eu arrumei elas de acordo com oque vocês disseram,mas uma coisa é certa: Eu não me baseio em outros mappers, posso ser fãs de alguns como: Peroxide,Chau(Auch), Neon, Beto06.Estes são os que sou fã.

     

    Eu realmente não compreendo a filosofia ( se é que isso é uma filosofia...) de vocês.Eu simplesmente sou um mapper esta é minha função,continuarei mapeando,tirando fotos,até o lançamento do projeto.

     

    Novamente agradeço.

     

    Atenciosamente,

    Heitor Bitencourt.

     

     

    Negativado e alertado por zombar, ironizar.. O trabalho de um outro mapper, no caso eu.

    Obs: olha a data da imagem antes de mais nada.

    Obs2: Caso vá reclamar [MP] não tolerarei flood.

     

    Quer mandar mais um alerta?Fico nervoso irmão? É assim que tu conversa !? AIOUSEOSIU Tá certo (y)

     

    Ta certo??

    Num era tu que queria se unir com o elysium... rsrs boa sorte aí no projeto :)

  9. curti a nature, mas espero que não seja toda cheia de árvores como a maior parte dos mapas próprios são; sem jogabilidade..

    seria legal mostrar um minimap ^^

     

    Relaxa, não será cheio de árvores,vai ter grande parte livre para andar/pk etc.. dentro da floresta é claro, igual ao global.E quanto ao minimap, ainda não estamos prontos para um Minimap, mas logo sim.

     

    Cara, se vocês não estão prontos para um minimap, certamente o map está pequeno...

    Este suporta mesmo 50 pessoas?

  10. Heitor, tenho uma dúvida... me perdoe caso esteja fazendo-a no local errado.

    É só você e o Felipe de mapper... o Felipe entrou agora (e até agra ele num posto nada no show off)

    Até onde eu sei o mapa é 100% custom (me corriga se eu estiver errado)

    E como você disse falta cerca de 1 mes para lançar o servidor.

    1 dúvida, o mapa já está grande o suficiente para o lancamento? e outra, vc fez o mapa todo sozinho?

  11. Bom, na imagem encontrei alguns bugs, e outras coisas que não gostei:

     

     

     

    bugsp.png

     

     

     

     

    ... Bugs ...

    * As bordinhas do telhado tanto ali do lado da porta como uma que está em cima da parede

    * Jungle em cima do telhado <> Ficou muito estranho + ruin .. recomendo tirar

     

    .. Coisaas que não achei legal ...

    * Os tufinhos de grama em cima do telhado.

    * Em um telhado, você pois coisas de mais, nos outros (da esquerda) você não pois quase nada....

    * A madeira ali isolada no telhado também não ficou legal.

     

    De resto acho que ficou visualmente agradável.

    Só acho que deveria ser melhorado o formato das casas, ambas não enfatizaram tanto na aparência, e ainda estão muito parecidas.

    Ah! e as ruas estão aparentemente vagas, acho que por estarem largas de mais... Creio que nisso também deveria haver melhoras.

     

    É isso. Caso não tenha entendido alguma parte do que falei, diga pra que eu possa estar exemplificando.

    Valeu!!

  12. Valeo as dicas dumal, mas se liga se eu tirar a montanha 1 (a que ta circulada no meio da escada, vai apareçer os troncos, que fazem o efeito da escada, daí vai ficar muito estranho...

    Não sei o que por ali no lugar daí puis essa rocha,

    quando ao circulo vermelho 2, (um poquinho mais abaixo) ja arrumei ;D

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...