Ir para conteúdo

Stigal

Herói
  • Total de itens

    3402
  • Registro em

  • Última visita

  • Dias Ganhos

    36

Histórico de Reputação

  1. Thanks
    Stigal deu reputação a Benny em [PokeWonder] Contrata Programadores & Spriter   
    Utilize o botão de up no tópico ?

  2. Upvote
    Stigal deu reputação a LeoTK em [NTO NS] Source 0.3.6 8.54 OTX Windows/Linux   
    Fala galera bom eu vi que é difícil achar uma source 0.3.6 sem bugs etc... então resolvi disponibilizar a source do meu servidor 0.3.6 8.54 
     
    1- Magic Effects e ShotyEffect Extendido
    2- Magic Effect até 700+ / Shoty Effect até 150 se não me engano
    3- Sistema de Dupla Empunhadura
    4- Tem a função doplayeropenchannel para abrir os chats ao logar
    5- Todos os danos de elementos estão configurado para o magiceffect 131 que no meu client é vazio
    6- Auto Stacking ao jogar item que se junta por quantidade ele junta automaticamente
    7- No Blocking Respawn o monstro da respawn mesmo tendo jogadores perto e com magic effect (não lembro o número do magic effect)
    8- Novo Elemento Wind Adicionado
     
    Bom é isso galera não consigo lembrar todas as modificações de cabeça o intuito é trazer uma source boa para iniciar o projeto de vocês 

    SCAN
    Linux Compile
    Tem um arquivo.txt que tem os códigos para compilar no linux lá tem o nome da biblioteca e o código
     
    Alerta!!!
    Windows Compile
    Use a pasta Dev-Cpp/test esqueça do conteúdo da pasta dev-cpp e use o projeto criado na pasta test a diferença é o parâmetro usado para compilar a source
    Software para compilar no windows
    Stian's Repack Dev-Cpp 0.2, 64bit
     
    obs: Não vou dar suporte com erros ou algo do tipo estou dispondo a source pra quem já sabe o que fazer
    obs: Caso tiver erros ou problemas abra um tópico na área de Suporte
     
    BY : Brunds 
    [NTO_NS]_Source_0.3.6_8.54.rar
  3. Upvote
    Stigal recebeu reputação de gabrielzika em [Source/Download] Tibia Client Extended   
    Versão: 8.54 & 8.60 Recursos Estendidos: Arquivos do cliente estendido (excede o limite de sprite 65535) Arquivo .spr (permite usar transparência (atualmente só funciona em DX9 e OGL) Mostra porcentagem de saúde / mana no cliente Corrigido alguns problemas estranhos com timeGetTime (Windows 10 + Ryzen CPU) Manabar desenhado abaixo do jogador Excede o limite de 255 magic effects Excede o limite de 65535 max health display Excede o limite de 65535 max mana display Excede o limite de 255 skills display

    Source: SaiyansKing/Tibia-Extended-Client-Library
    Download: SaiyansKing/Tibia-Extended-Client-Library


    Créditos: OTLand (Madzix)
  4. Upvote
    Stigal recebeu reputação de GOD Vitor em [PokeWonder] Contrata Programadores & Spriter   
    .
  5. Upvote
    Stigal recebeu reputação de GameTwu em [PokeWonder] Contrata Programadores & Spriter   
    .
  6. Upvote
    Stigal recebeu reputação de Koritos em [PokeWonder] Contrata Programadores & Spriter   
    .
  7. Downvote
    Stigal deu reputação a Oloster Games em [DELETADA] PokemonXmega-PRO 2018/2019   
    TOPICO REMOVIDO PELO AUTOR
     
  8. Upvote
    Stigal deu reputação a xLeohige em [Encerrado] Como evoluir rápido na programação????   
    Se você quer desenvolver sistemas mais complexos você só vai conseguir isso fazendo... kkk
    Você precisa simplesmente pegar algo pra fazer não importando a dificuldade, e com isso você vai aprender conforme a necessidade. Google e Stackoverflow devem ser os seus melhores amigos.
  9. Upvote
    Stigal deu reputação a Lordfire em [Encerrado] Como evoluir rápido na programação????   
    O momento que eu mais evoluí em programação foi quando resolvi ser desenvolvedor do TFS, abri a lista de issues e fui tentando corrigir uma a uma. Levava tempo pra encontrar o erro no começo, hoje eu sei quase que de cabeça qualquer coisa do código.
     
    Se quer aprender a melhorar como *programador*, não só de OT, levar um toy project pode ser uma boa. Pega uma ideia mais complexa de um programa, e faz pra ti. Por exemplo, no meu computador o medidor de bateria fui eu que fiz.
  10. Upvote
    Stigal deu reputação a moskitinho em xTibia - Recruta!   
    Ai é bonito, ai é beleza! 
     
    #MakeEksGreatAgain #AngelinaForever #CadeOJV
  11. Upvote
    Stigal deu reputação a Sammy em One Piece Sprites   
    Opa pessoal tranquilo ? acabei por vasculhar um pendrive que tinha e acabei achando essa pasta com algumas sprites interessantes sobre One Piece, caso alguém esteja interessado vou estar disponibilizando as mesmas.
     
    Alguns Prints das sprites:
     
    Download: One Piece Sprites.rar
     
    Não esqueça do seu Rep++ =]
  12. Upvote
    Stigal deu reputação a Beeki em xTibia - Recruta!   
    Fico feliz em ver um o X-Dev de volta novamente, um projeto que já coordenei. Bela iniciativa, parabéns, estou a disposição no que precisarem.
  13. Upvote
    Stigal deu reputação a Tony Araujo em [Resolvido] ALGUÉM SABE QUAL E O CÓDIGO DE EDITAR O DANO DA MAGIA ??   
    O dano da magia você encontra em spells/scripts, lá existe uma umas funções que chamam formula e tem uma continha lá dentro, é só ir alterando ao seu gosto.
  14. Upvote
    Stigal recebeu reputação de cubomix em [Resolvido] Base igual a pxg atual   
    PokeZWorld não conseguiu "façanha" alguma, o administrador apenas fez o que todo administrador deve fazer, desenvolver, criar, programar.
     
    Todos os servidores de Pokemon disponíveis no fórum estão no setor de "Downloads > Alternative".
    Link para acesso: http://www.xtibia.com/forum/forum/768-alternative-tibia-servers/
     
    A única coisa que cai do céu é chuva, recomendo seguir o exemplo do dono do PokeZWorld, começar a fazer... e parar de esperar coisas caindo do céu.
     
    Boa sorte com o seu projeto, tópico fechado.
  15. Upvote
    Stigal deu reputação a PoRaI em Name Displacement   
    Como tinha dito em outro tópico, estou aqui postando, até pq eu acabei que fiz pra usar em um servidor meu também, rs. De qualquer forma, esse é um código para reposicionar o nome quando uma criatura está com X outfit de forma fácil pelo arquivo OTML. É necessário editar as sources do otclient e compila-lo. 
     
    No arquivo thingtype.cpp, adicione abaixo de:
    if(node2->tag() == "opacity") m_opacity = node2->value<float>(); isso:
    else if(node2->tag() == "name-displacement") m_name_displacement = node2->value<Point>(); No arquivo thingtype.h, adicione acima de:
    float getOpacity() { return m_opacity; } adicione isso:
    Point getNameDisplacement() { return m_name_displacement; } acima de:
    float m_opacity; adicione isso:
    Point m_name_displacement; No arquivo creatures.cpp, troque isso:
    // calculate main rects Rect backgroundRect = Rect(point.x-(13.5), point.y, 27, 4); backgroundRect.bind(parentRect); Size nameSize = m_nameCache.getTextSize(); Rect textRect = Rect(point.x - nameSize.width() / 2.0, point.y-12, nameSize); textRect.bind(parentRect); por isso:
        // calculate main rects     const ThingTypePtr& thingType = getThingType();     Rect backgroundRect = Rect(point.x - (13.5) + thingType->getNameDisplacement().x, point.y + thingType->getNameDisplacement().y, 27, 4);     backgroundRect.bind(parentRect);     Size nameSize = m_nameCache.getTextSize();     Rect textRect = Rect(point.x - (nameSize.width() / 2.0) + thingType->getNameDisplacement().x, point.y - 12 + thingType->getNameDisplacement().y, nameSize);     textRect.bind(parentRect);  

    Pronto. Para configurar, basta editar o arquivo .otml do seu otclient, exemplo:
    creatures   10     name-displacement: 2 -12   11     name-displacement: 5 10   12     name-displacement: -4 3 No caso, alterei a outfit 10 para um displacement no eixo X + 2 e no eixo Y - 12, a outfit 11 para um displacement no eixo X + 5 e no eixo Y + 10 e a outfit 12 para um displacement no eixo X - 4 e no eixo Y + 3. O código foi testado e está funcionando perfeitamente.
  16. Upvote
    Stigal deu reputação a Meguminyan em [Resolvido] [AJUDA]Respaw npc por tile   
    olha, enquanto você não acha o script ideal você pode usar este aqui
    Em movements xml adicione essa tag
     
    <movevent type="StepIn" actionid="19384" event="script" value="npcrandom.lua"/> agora em creature events > scripts copie um .lua e renomeie para npcrandom.lua, apague tudo que tem dentro e cole isto
    function onStepIn(cid, item, position, fromPosition) local positio = {x=1034, y=1039, z=7} local positio2 = {x=1036, y=1039, z=7} local positio3 = {x=1038, y=1039, z=7} local positio4 = {x=1040, y=1039, z=7} local positio5 = {x=1034, y=1039, z=7} local positio6 = {x=1036, y=1039, z=7} local positio7 = {x=1038, y=1039, z=7} local positio8 = {x=1040, y=1039, z=7} local positio9 = {x=1034, y=1039, z=7} local positio10 = {x=1036, y=1039, z=7} local chance = math.random(1,10) if chance == 1 then doTeleportThing(cid, positio) elseif chance == 2 then doTeleportThing(cid, positio2) elseif chance == 3 then doTeleportThing(cid, positio3) elseif chance == 4 then doTeleportThing(cid, positio4) elseif chance == 5 then doTeleportThing(cid, positio5) elseif chance == 6 then doTeleportThing(cid, positio6) elseif chance == 7 then doTeleportThing(cid, positio7) elseif chance == 8 then doTeleportThing(cid, positio8) elseif chance == 9 then doTeleportThing(cid, positio9) elseif chance == 10 then doTeleportThing(cid, positio10) end return true end Agora crie um teleport em 1 lugar onde os players não tem acesso com o adction id 19384 no seu mapa e faça o npc desejado spawnar em cima dele (lembre de não deixar espaço aberto ao lado do teleport se não o npc ira spawnar no espaço do lado do teleport

    então ao iniciar o server o npc sera jogado em 1 dessas 10  localizações editaveis.

    para adicionar mais lugares é só ir adicionando os positiosX, mudar a quantidade de lugars no  Math.random e adicionar mais elseif chance = X
  17. Upvote
    Stigal deu reputação a Marshmello em [Resolvido] [PEDIDO] ITEM X TRANSFERE PREMIUM POINTS   
    actions/script
    local pontos = 1 function onUse(cid, item, frompos, topos) doPlayerSendTextMessage(cid, 22,"voce ganhou "..pontos.." de pontos ") doRemoveItem(item.uid,1) doPlayerAddVipPoints(cid,pontos) return true end Depois vai em function.lua (lib)
     
    function getPlayerVipPoints(cid) local Info = db.getResult("SELECT premium_points FROM accounts WHERE id = " .. getPlayerAccountId(cid) .. "") if Info:getID() ~= LUA_ERROR then local Points= Info:getDataInt("premium_points") Info:free() return Points end return LUA_ERROR end function doPlayerAddVipPoints(cid, points) local dif = getPlayerVipPoints(cid) + points if dif >= 0 then db.executeQuery("UPDATE accounts SET premium_points = premium_points + " .. points .. " WHERE id = " .. getPlayerAccountId(cid) .. ";") return TRUE end return FALSE end function doPlayerRemoveVipPoints(cid, points) local dif = getPlayerVipPoints(cid) - points if dif >= 0 then db.executeQuery("UPDATE accounts SET premium_points = premium_points - " .. points .. " WHERE id = " .. getPlayerAccountId(cid) .. ";") return TRUE end return FALSE end  
    AJUDEI REP+
  18. Upvote
    Stigal deu reputação a Marshmello em [Resolvido] ITEM APOS USA-LO DA DEBUG   
    @Emanueldk
     
    local config = { voca = 376, --- numero da vocação out = 376, --- Id da outfit } function onUse(cid,item, frompos) doPlayerSetVocation(cid,config.voca) doCreatureChangeOutfit(cid,{lookType = config.out}) doRemoveItem(item.uid,1) doPlayerSendTextMessage(cid,22, "parabens voce trocou sua vocation") return true end  
  19. Upvote
    Stigal deu reputação a PostadorHunter em [Resolvido] [DÚVIDA]Como usar o for nessa situação ?   
    na tabela ta positionToCheck e no for tu colocou areasToCheck
    tu errou ali na hora de colocar o valor na função em local monster
    o valor de fromx seria _.fromx(se botar como parametro só _ tbm funciona)
     
  20. Upvote
    Stigal deu reputação a Meguminyan em [Resolvido] Item que faz aprender magia   
    Tenta esse
    em actions/scripts crie um .lua chamando Scroll Magia    ( exemplo: scroll exura)
     
    function onUse(cid, item) local magia = "nome da magia" if getPlayerLearnedInstantSpell(cid, magia) then doPlayerSendTextMessage(cid,25,"Você já aprendeu a magia deste scroll") elseif doPlayerLearnInstantSpell(cid, magia) then local pos = getCreaturePosition(cid) doSendMagicEffect(pos, 12) -- efeito magico ao usar o scroll doRemoveItem(item.uid, 1) -- vai consumir o scroll, remova isso se vc n quer que o scroll suma doPlayerSendTextMessage(cid,19,"Você aprendeu a magia "..magia..".") end end  agora em actions.xml você adiciona a tag e bote o id do item que ao você usar ganhara o spell
     
    <action itemid="ID DO ITEM" script="scroll magia.lua"/>  
  21. Upvote
    Stigal deu reputação a Marshmello em [Resolvido] Erro urgente eventos   
    @DavyziinC
    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 doPlayerAddItem(pid, random_item, 1) 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 WAR] Foi encerrado, parabens ao jogador "..score[1][1].." que venceu o SnowBall 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 function onThink(interval, lastExecution) local texts = {["GERADOR"] = {SBW_GERADOR, 55, TEXTCOLOR_ORANGE}} for text, param in pairs(texts) do doSendAnimatedText(param[1], text, param[3],getPlayerPosition(cid),math.random(1,255)) doSendMagicEffect(param[1], param[2]) end return TRUE end Dar uma testada ae e ver oque dar
  22. Upvote
    Stigal deu reputação a Pokeultion em [Resolvido] Daily Teleport   
    Vê se funciona assim:
     
  23. Upvote
    Stigal deu reputação a lSainty em [Resolvido] Erro no goback.lua   
    Tenta comentar essa linha:

    addEvent(doSetRandomGender, 5, cid)
    Ficando assim:

    --addEvent(doSetRandomGender, 5, cid)
    E vê se o erro some ou não, para saber se é essa função que está causando o erro.
  24. Upvote
    Stigal deu reputação a nociam em [Resolvido] ajuda spell   
    altere as posições ja tento fazer algo:
    pos.x = pos.x-1
    pos.y = pos.y-1
     
    y = - vai pra cima
    y = + vai pra baixo
    x = - vai pra <<<<
    x = + vai pra >>>>
     
  25. Upvote
    Stigal deu reputação a awfaier em [Source/Download] Tibia Client Extended   
    foi feito para old client. 
    Voce tem que compilar sua Tibia.dat e Tibia.spr em extendido. 
    Depois você joga a ddrall.dll e o config.ini na pasta que esta o client.
  • Quem Está Navegando   0 membros estão online

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