Ir para conteúdo

Arisen Trapzer

Campones
  • Total de itens

    20
  • Registro em

  • Última visita

  • Dias Ganhos

    2

Histórico de Reputação

  1. Upvote
    Arisen Trapzer deu reputação a Lordbaxx em Pokemon Imperium - Por Lordbaxx | Completo   
    Muita gente acompanhou, rolou alguns testes mas eu realmente perdi o tesão, passei anos e anos mexendo nesse servidor, ia e voltava, abandonava e tentava novamente, mas nunca abri mão pois achava que uma hora iria voltar a mexer com isso novamente. Acabei que estou trabalhando em área de desenvolvimento mas relacionado a jogos 3D e pixel Art, abandonei de vez a área de otServ tibiano, então aqui fica minha contribuição, pois sei que muitos ainda curtem.
     
    Servidor completamente estável, vou deixar um changelog que inclusive está junto das pastas do servidor. Foram feitos muitos testes, tem sistemas incompletos e alguns já em perfeito funcionamento... O mapa é inteiro exclusivo feito detalhe por detalhe do 0 mas lógico sem fugir do universo Pokémon.
     
    Servidor com muito conteúdo, e já jogável.
     
    Ah e não se preocupem, não tem código pra derrubar o servidor ou armadilhas como certos “nomes” da comunidades já fizeram quando postaram um server que diziam ser “contribuição”. Abrç!
     
    Os créditos estarão no fim.
     
    Perfil no facebook - Caso queiram ver mais fotos que talvez não tenha abaixo.
     
    Changelog:
     
     
    Imagens: (Contém imagens desde o inicio até etapas mais avançadas, e não tenho certeza se o cliente que disponibilizei é o mesmo das imagens, mas enfim.)
     
     
    Download: Tudo incluso no Arquivo, cliente, source, versões antigas e atual, compiladores, tudo.

    Pokemon Imperium.rar.full
     
     
    Créditos: Lordbaxx, Alexandre Lorenzon *mapa, Guilherme *thumbs e ideias.
     
  2. Thanks
    Arisen Trapzer deu reputação a GamerGoiano em TFS 1.3 8.60 by Nekiro (Tela Extendida)   
    Download: https://www.mediafire.com/file/8phk1r3z9i9ye61/tfs+1.3+8.60+by+nekiro.rar/file
    Scan: https://www.virustotal.com/gui/file/3513f18d45c9109f62fa6d1b4de9c21c2297d920fb09947972cd3a190919749c/detection
    Conteúdo: Otclient Com Sources, TFS com Sources, Site Znote, Tudo Configurado.
     
    Como usar:
    Basta baixar, extrair, criar um banco de dados no xampp mais atualizado com o nome: Tibia e importar os 2 banco de dados que estão na pasta do TFS
    Copiar a pasta htdocs e colocar em C:\Xampp substituir a pasta Htdocs que tem lá.
    Abrir o Servidor e Abrir o cliente e jogar. (Crie a conta no site)
     
    Descrição:
    Esse é o TFS 1.3 que o Nekiro passou pra 8.60, eu apenas extendi a tela pra ficar melhor.
    Deixei TFS em x64 bits pq eu compilei pelo vcpkg, se quiser pode compilar vc mesmo em x86.

    Alterações:
    1. Tela Extendida (Aumentei a tela pra 20)
    2. Adicionado X Y Z no Minimap
    3. Removi os Painéis como Padrão
    4. Atalho pra aumentar e diminuir zoom CTRL + e CTRL -


  3. Thanks
    Arisen Trapzer deu reputação a Stigal em Remere's Map Editor 3.2 + Modificação 2.0   
    REQUISITOS:1. 
    RME 3.2 (Github) 2. Oficial TFS .otb  (Github)
    3. RME Modification Files (Scan)
     
    COMO INSTALAR:1. Baixe o .rar que contém os arquivos mod.
    2. Copie todos os arquivos do .rar no seguinte diretório: "Remere's Map Editor > data > client"
    3. Substitua os arquivos .xml atuais.
     
    SOBRE: # A maioria dos tiles de chão, paredes e montanhas que estão faltando precisam ser adicionadas pra terrain. (autoborder)
    # A maioria dos RAW foram reorganizada e ordenadas
    # Grande porção da pallete de itens foi reorganizada e ordenada
     
    *O MOD é feito em 10.98 porém é compatível com qualquer cliente adicionado ao RME 3.2.
    *A pallete terrain vai ter alguns tiles pretos em clients com versão menor que 10.98 mas o RME ainda sim vai funcionar.
     
    FOTOS:  
    CRÉDITOS:RokojoM (RAW, wall autoborder, mountain autoborder, ground randomization...)
    Limos (Majority of item palette, ground autoborder.)
  4. Upvote
    Arisen Trapzer deu reputação a Administrador em Rochas e Pedras   
    Vale lembrar que este é um tutorial universal, então não estará categoricamente feito para nossos 45 graus, mas a noção que se ganha é ótima, e após isso é simples utilizar os conceitos para nossos requisitos.

    Bom, sem mais delongas, vamos lá!:

    Rochas e Pedras

    Introdução
    Rochas e texturas de pedra são uma das coisas mais difíceis de se desenhar, mas a existência de rochas em jogos são praticamente inevitáveis. Rochas estarão em todo lugar, no passado, no presente, no futuro - mesmo no espaço temos meteoros e asteroides. Tenho notado que um monte de jogos tendem a tomar o caminho mais fácil e simplesmente usar o airbrush para uma textura rochosa, ou desenhar um círculo com um preenchimento em gradiente para uma rocha. Claro, eles são práticos, mas eles não estão nem perto de estarem esteticamente atraente. Mas, com um pouco mais de trabalho, e (espero) que com este tutorial, você vai ser capaz de ter uma melhor capacidade de desenhar pedras e tal, e, finalmente, parar de usar aqueles gradientes horríveis haha.

    Relevo (Embossing)
    Bom, o primeiro passo é sabermos olhar como a iluminação afetará nosso relevo e curvas, veja esta imagem:

    Esta primeira imagem mostra como trabalha com iluminação em uma colisão com uma superfície. Na parte superior esquerda é a fonte de luz (Noroeste, assim como no Tibia), e na parte superior direita é a visão do jogador. Podemos ver que os destaques na colisão estão mais próximos da fonte de luz, e a área sombreada, onde a fonte de luz não atinge fica mais próxima de onde os jogadores veem. Isto significa basicamente que se você fosse desenhar isso, a luz seria mais perto do topo da tela e o sombreamento seria mais perto do fundo, que ficaria assim:



    Simples não?

    Agora imagine que temos uma cavidade dentro deste terreno:
    A iluminação de uma superfície recortada seria diferente. Seria algo parecido com isto:

    A partir disto, podemos ver que a área realçada é agora mais próximo do jogador, e a área sombra está mais perto da fonte de luz. E, se isso vier a ser tirado, a área sombreada seria mais perto da parte superior da tela, e a área iluminada seria mais perto do fundo. Isso se parece com isso:




    Praticamente tudo o que eu fiz para este piso foi inverter a área com sombra e luz, o que o torna mais parecido com um buraco no chão.

    Pensando em Rochas

    Ok, mas como isso se relaciona com texturas de rochas e pedras? Bem, uma textura rochosa é constituída por milhares de recuos e solavancos sobre uma superfície. É por isso que o airbrush funciona bem com este tipo de textura - com isso você pode colocar aleatoriamente em pontos escuros e claros e fazer a ilusão de minúsculas saliências e reentrâncias.
    Mas por estes recuos e colisões serem tão pequeno, não haverá um monte de contrastes com destaques e áreas sombreadas, esta é razão pela qual o número de cores deve definitivamente ser limitada quando o airbrush é usado. Eu vi as pessoas usarem 5 ou mais cores quando usam o airbrush em um solo rochoso. Este é um grande erro, porque muitas cores e contrastes fazem o ladrilho parecer extremamente brega e falso. Eu tenho uma tendência a usar apenas 2 cores e talvez às vezes três, mas não mais! A textura da rocha simples para mim ficaria assim:

    É simples, e ele cumpre seu papel. Além disso, ele se parece muito mais do que usar um monte de diferentes tonalidades.

    Rachando a superfície
    Texturas de pedra não são apenas travessões e solavancos, também são compostas de rachaduras. Mas não seria suficiente desenhar somente uma linha preta na textura e assim chamá-la de rachadura certo? Uma vez que uma rachadura é feita sobre uma superfície, as mudanças no efeito de iluminação na superfície também mudam! Desenhar uma linha preta mais parece uma mancha, mas se você adicionar a iluminação ao racho, se parecerá muito mais com uma rachadura.

    Começando com essa textura de pedra original, eu simplesmente desenhei uma linha preta que indica onde eu quero que a rachadura seja.


    Em seguida, eu usei uma sombra e a destaquei logo abaixo da linha preta. Eu fiz isso porque, essencialmente, uma rachadura é um longo travessão em uma superfície, desse modo a iluminação iria aparecer embaixo da área sombreada.


    Então, usei um tom mais escuro e protegido em uma pequena área acima da linha preta


    Por fim, acrescentei algumas máscaras extras de cor nas áreas destacadas e sombreadas para parecer um pouco menos suave e mais rígida. No total, eu só usei 5 cores.

    Pisos, tijolos e paralelepípedos
    O método acima é a base de todo o resto do tutorial. Você pode usar o mesmo método para fazer pedras, paredes de tijolos, e qualquer superfície que tenha uma estrutura semelhante.
    Assim, o próximo exemplo será uma parede de tijolos.

    Em vez de começar com a textura de pedra real, eu gosto de traçar exatamente o que o meu padrão será. Como mencionei antes, esta é uma parede de tijolos. E eu também quero ter certeza de que se eu coloque várias paredes de tijolos juntas no meu mapa, pareça coeso e que não fiquem fora do lugar.




    Em seguida,Escolho a direção que estará a sombra e destaco-a abaixo as linhas escuras e também alguns ao longo do do tijolo.


    Em seguida, eu aleatoriamente clareio a área sombreada, acrescentando tons extras de cores, de novo, para tornar essas áreas menos suaves e mais rígida.


    Por último, eu faço o mesmo com as superfícies maiores. Claro, você pode pular esta etapa caso você queria seus tijolos de aparência perfeitamente lisa.
    E, como sempre, quando você terminar de desenhar, una os desenhos para ter certeza de que eles se conectem bem, não ficando desproporcional no jogo.


    Tijolos são fáceis de fazer. Você pode combiná-los um pouco e fazer as pedras irregulares e torná-las um pouco mais interessantes.








    Bem legal né?

    Rochas e uma parede de rocha
    Texturas de rochas são grandes e tudo mais, mas são as rochas que são vistas com mais frequência em ambientes naturais no jogo. Por mais que seu jogo seja futurista, e que utilize metal como seu principal material, ainda com certeza veremos rochas espalhadas pelo mundo, então seu mapa não pode ser diferente não é mesmo?.
    Então, o que vamos fazer a seguir é uma rocha:

    Eu começo com a cor principal da rocha. É um meio-tom, por isso vou acrescentar tons mais brilhantes e tons mais escuros à ela. Com isso, eu somente desenhei a rocha de uma forma simples. Ela pode ser de qualquer formato, sendo que os detalhes a farão agradáveis aos nossos olhos.


    Eu, então, usei um tom mais escuro e sombreei a parte inferior da pedra. Para essa parte, não darei nenhum conselhos, basta seguir as técnicas básicas de sombreamento.


    Agora usei outra tonalidade mais escura e apenas sombreei a parte inferior da rocha. Isto a faz destacar-se e criar um contraste legal ali.


    Aqui eu adicionei alguns detalhes no meio da rocha. Veja que não adicionei nenhuma cor de destaque no topo, pois a rocha é curva no topo, então deve ser mais escura.

    E depois de adicionar as cores do seu gosto, você pode deixá-la assim mesmo. Do jeito que está desenhada já faz com que a pedra esteja mais suave, deixando as áreas de sombras mais limpas para dar este efeito de suavidade.


    Mas se você quiser fazer a rocha parecer um pouco mais áspera, simplesmente posicione aleatoriamente um tom um pouco mais escuro em sua imagem.

    Claro, é uma rocha bem simples, mais com isso teremos uma boa noção de como faze-las e consequentemente como aperfeiçoa-las.

    Ok, agora que já sabemos como fazer uma rocha, vamos empilhá-las e formar uma parede de rochas.
    Do jeito que olhamos a parede, as paredes em uma caverna são simplesmente um monte de pedras empilhadas uma sobre a outra, ou mesmo apenas uma grande rocha. Mas, no entanto, se você olhar para algumas das minhas mais recentes cavernas,elas são rochas essencialmente em cima de rochas em cima de mais rochas:

    Para fazer com que minhas paredes pareçam um pouco menos monótonas, eu tenho mais de um peça para a parede. Este em particular são de duas peças. Fazendo paredes das cavernas maiores fará sua caverna parecer mais maciça. Mas é claro que, em termos de um equilíbrio da função e estética, duas peças serão suficientes.

    Então, eu começo com a minha cor de base. E com outra cor que se destaca completamente, eu basicamente tracei onde meus detalhes estarão. Você poderia ter as mesmas rochas empilhadas uma em cima da outra, mas neste exemplo, eu tinha os feito menor em sua parte inferior e fazer uma leve mistura com a parede em sua parte superior. E, mais uma vez, eu apenas os juntei para ver se se encaixam como uma peça de quebra-cabeça.



    Eu percebi que a sombra que eu comecei é muito brilhante, e como tenho a intenção de fazer uma caverna escura,obviamente, usarei tons mais escuros. Se você está apontando para o realismo, use tons mais escuros a menos que haja uma boa fonte de iluminação.
    Então, eu irei trabalhar de baixo para cima, dando inicio pelo meu tom mais escuro -o preto -. Eu só tracei minha linha na parte inferior, pois será onde ficará mais escuro. Você não tem que abusar muito, fará com que pareça pegajoso. Você pode ajustá-lo mais tarde, se você sentir que você exagerou. Mas basta colocar o suficiente para que ele se destaque do solo.
    Eu também joguei um pouco de preto na metade superior da peça. Isso faz parecer que o muro está rachado e desgastado, semelhante ao de rachaduras no chão que eu fiz no início deste artigo.


    Usando a próxima sombra, eu continuo trabalhando em refazer o contorno azul que eu tinha feito antes. Aproveito também esta oportunidade para usar a mesma cor para as sombras das rochas na parte inferior da parede.


    A próxima sombra acima é basicamente a cor que utilizei como base, então eu eu vou para o próximo tom após ela.
    A partir da metade inferior da parede, eu apenas destaquei as rochas, certificando-se que eu tenho somente uma tonalidade mais escura ao redor e nada mais escura. Não há qualquer técnica real para isso, eu fiz desse jeito sem nem pensar nisso.
    E caso você não tenha notado, eu estou tentando torná-lo mais escuro na parte inferior e ir tornando-se gradualmente mais brilhante no topo. Não há qualquer razão por trás disso, nem faz qualquer sentido lógico. Mas o fato de que na maioria das cavernas em jogos, você pode ver a parede apesar de não ter qualquer fonte de luz, então eu não acho que realmente importa. É apenas para olhares.
    OBS: Se a parede de rochas for do lado externo de cavernas, então devemos nos atentar muito ao posicionamento de cores e sentido da iluminação.
    Então, por causa disso, eu percebi que a metade superior da parede ficou muito escura, então basta eu alterar a cor que eu utilizei de base para uma cor mais brilhante.


    E com a sombra que acabei de alterar na metade superior, eu termino de fazer o contorno, me certificando de adicionar o excesso em torno das cores mais escuras para realizar o sombreamento.


    E, finalmente, eu vou para a próxima sombra acima (o que seria agora a sombra mais brilhante) e basta destacar a metade de cima das rochas. Mais uma vez, não há realmente qualquer processo de pensamento por trás disso.

    Com essa última sombra adicionada, nossa parede de pedras está terminada. Então agora eu vou juntar mais de uma dela para me certificar de que elas se encaixam perfeitamente, isso é muito importante, pois elas podem não se encaixar, o que vai causar um efeito visual muito feio no jogo. E sem contar a cor rosa, eu utilizei apenas 5 cores e criei uma parede simples, porém bonita.



    superwalrusland (Tutorial)
    Thayam (Tradução e compartilhamento no fórum)
  5. Upvote
    Arisen Trapzer deu reputação a Luiz Vitor em [8.0] Colocando Quests No Quest Log   
    Para colocar quests no quest log é bem simples: basta saber como fazer quests e às vezes NPCs.
    Para começar você precisa ter um OT compatível e que tenha o quests.xml, por enquanto só testei e aprovei o DevLand 0.8.9
    Abrindo o quests.xml terá algo assim:
     
     
    quest name="Quest" --- aqui você bota o título da quest, que aparecerá logo que abrir o quest log
     
    startstorageid="1234" --- aqui é o famoso storage que é colocado nas quests, esse startstorage é o número que faz essa quest aparecer no log, é esse aqui: setPlayerStorageValue(cid,1234,1)
     
    startstoragevalue="1" --- aqui é o valor de início da quest, isso + o startstorageid que faz aparecer no quest log, é esse aqui: setPlayerStorageValue(cid,1234,1)
     
    mission name="First Mission" --- esses mission names são os nomes das missões que ocorrem dentro da quest, por exemplo a postman e a Explorer têm várias missões
     
    storageid="1234" --- aqui é o storage que iniciará a missão, a primeira missão é sempre o mesmo storage do startstorageid
     
    startvalue="1" --- aqui é o value do storage que iniciará essa missão
     
    endvalue="3" --- o mesmo de cima, mas só que é quando termina
     
    missionstate id="1" description="Go to someone location." --- aqui é o value daquele storage q vc colocou no inicio da missão + a descrição q aparecerá oq vc deve fazer na quest, isso aparece quando você clica na missão, numa tarja cinza clara na parte inferior. você que decide quando vai mudar a descrição, apenas mudando o value no storage
     
     
    agora que vc sabe pôr as quests no quest log, que encha a quest log toda , qualquer coisa q não entenda poste aqui mesmo, mais uma coisa... você pode pôr quantas quests quiser lembrando q deve copiar a primeira entre o </quest> e o </quests> apenas editando storage etc
     
    flws
     
     
    Obs: não vou parar para colocar as palavras corretamente, no futuro eu edito
  6. Thanks
    Arisen Trapzer deu reputação a GamerGoiano em [TUTORIAL] Criando site com Znote AAC para TFS 1.2   
    O Tutorial foi feito por mim, qualquer dúvida pode postar nos comentários.
     
    1. Instale o Xampp atual e instale
    https://www.apachefriends.org/pt_br/index.html
    2. Va em C:\xampp e abra o xampp-control.exe
    3. Inicie o Apache e o MySQL

    4. Baixe o Znote AAC (É o mais fácil de usar)
    https://github.com/Znote/ZnoteAAC
     
    5. Va até C:\xampp\htdocs e apague tudo que está la dentro
    6. Extraia o site Znote AAC que voce baixou, copia todo o conteúdo e cola dentro da pasta htdocs.
    Ficando assim:

     
    7.  Acesse http://127.0.0.1/phpmyadmin e clique em Novo
     
    8. Escreva o nome do banco de dados, eu escolhi Tibia e no lado direito escolha Agrupamento (Collation) e clique em Criar.
     
    9. Clique no banco de dados que voce criou no menu esquerdo (Tibia) e clique em Importar.
     
    10. Clique em escolher arquivo e selecione o arquivo de banco de dados no seu computador
     
    11. Escolha o arquivo schema.sql que está na pasta tfs 1.2 do servidor do link e clique em Executar (ta no final da página o botão)
    https://www.xtibia.com/forum/topic/250614-tfs-12-1098-sources-otclient-com-tela-maior/
    12. Acesse http://127.0.0.1/ e copie tudo do quadrado 
    Basta clicar no quadrado e dar CTRL A e CTRL C
     
    13. Volte no phpmyadmin, clique no banco de dados que criamos (Tibia) e clique no botão SQL
     
    14. Cole o conteúdo que voce copiou e clique em executar e espere carregar
     
    15. Va em C:\xampp\htdocs e abra o arquivo config.php 
    "Recomendo abrir com o notepad ++ pra ficar mais didático para principiantes"
    16. Faça essas mudanças:
    Troque a linha 21 e 22 pro titulo e descrição do site.
    Linha 23
    $config['site_url'] = "http://demo.znote.eu";
    Troque http://demo.znote.eu por http://127.0.0.1
    Linha 26
    $config['server_path'] = '';
    Coloque dentro de aspas o diretório do seu servidor, por exemplo:
    'C:\Users\Braz\Desktop\tfs 1.2 + otclient\tfs 1.2
    Linhas 33     
    $config['sqlUser'] = 'tfs13';
    Troca tfs13 por root
    Linha 36
    $config['sqlPassword'] = 'tfs13';
    Apague tfs13
    Linha 39
    $config['sqlDatabase'] = 'tfs13';
    Troque tfs13 por Tibia (É o banco de dados que criamos)
    17. O site ja está funcionando, agora va na pasta do servidor e abra o config.lua e deixe igual está embaixo e salve.
     
    18. Pronto! Agora seu site vai usar o banco de dados para criar contas e seu servidor está preparado para reconhecer as contas e personagens criados.

     
  7. Upvote
    Arisen Trapzer recebeu reputação de rolpoes em Removendo Client Version do OTClient   
    Olá jovens, não sei se já existe algum tutorial sobre o assunto aqui no Ékz, mas hoje resolvi fazer esse pequeno tutorial no qual estarei ensinado como remover aquele pequeno quadradinho que costuma ficar no canto inferior direito do OT Client, segue abaixo uma imagem mostrando de qual quadradinho estou falando.

    Para remover é até que uma coisa que considerei simples depois que descobri, sem mais enrolação vamos começar o tutorial.
     
    Vá na pasta do seu OT Client, em seguida vá em modules>client_background, e abra o background.lua
     
    e remova as seguintes linhas
     
    clientVersionLabel = background:getChildById('clientVersionLabel') clientVersionLabel:setText(g_app.getName() .. ' ' .. g_app.getVersion() .. '\n' .. 'Rev ' .. g_app.getBuildRevision() .. ' ('.. g_app.getBuildCommit() .. ')\n' .. 'Built on ' .. g_app.getBuildDate()) if not g_game.isOnline() then addEvent(function() g_effects.fadeIn(clientVersionLabel, 1500) end) end Antes
     
     
     
    Depois
     
    Espero ter ajudado   Abraços. OBS: Se ajudei REP+


  8. Upvote
    Arisen Trapzer recebeu reputação de ruan vioto em Removendo Client Version do OTClient   
    Olá jovens, não sei se já existe algum tutorial sobre o assunto aqui no Ékz, mas hoje resolvi fazer esse pequeno tutorial no qual estarei ensinado como remover aquele pequeno quadradinho que costuma ficar no canto inferior direito do OT Client, segue abaixo uma imagem mostrando de qual quadradinho estou falando.

    Para remover é até que uma coisa que considerei simples depois que descobri, sem mais enrolação vamos começar o tutorial.
     
    Vá na pasta do seu OT Client, em seguida vá em modules>client_background, e abra o background.lua
     
    e remova as seguintes linhas
     
    clientVersionLabel = background:getChildById('clientVersionLabel') clientVersionLabel:setText(g_app.getName() .. ' ' .. g_app.getVersion() .. '\n' .. 'Rev ' .. g_app.getBuildRevision() .. ' ('.. g_app.getBuildCommit() .. ')\n' .. 'Built on ' .. g_app.getBuildDate()) if not g_game.isOnline() then addEvent(function() g_effects.fadeIn(clientVersionLabel, 1500) end) end Antes
     
     
     
    Depois
     
    Espero ter ajudado   Abraços. OBS: Se ajudei REP+


  9. Upvote
    Arisen Trapzer deu reputação a Tungs em SOURCE 2.6 DXP e PDA   
    Olá Membros do Xtibia. eu Kevick, estava visualizando alguns conteúdos do fórum e percebi que estava bastante parado. Muito de vocês que são ot-admins usam uma base bem famosa que seria a DarkXPoke (dxp). como todos já sabem nosso querido membro @KyoGron disponibilizou uma source adaptada para essa base mas não continuou resolvendo os problemas que foram encontrados. Resolvi continuar com a ideia dele e resolvi pequenas coisas na source como o StepDuration do creature.cpp que estava bugando o andar do player impossibilitando ter uma jogabilidade fluida mas em fim vamos parar de enrolação e vamos para o download! PS: quais quer "Sistemas" que necessitarem ser colocado na source comente que eu atualizarei.
     
    DOWNLOAD V2.5:

     
     
    DOWNLOAD V2.6:
     
     
     
     
    LOG DE ATUALIZAÇÃO:

     
     
    UTILITÁRIOS:
     
     
     
    SCAN:
     
    VIRUSTOTAL
     
     
     
    NÃO SE ESQUEÇA DE DEIXAR UM REP+ NO POST.
     
     
     
  10. Thanks
    Arisen Trapzer deu reputação a Tungs em [OPEN-SOURCE] Pokemon Absalon   
    Olá treinadores (as) tudo bem com vocês? Hoje venho trazer o meu servidor em que estive mexendo a alguns meses... por motivos pessoais estou desistindo e passando a diante para quem quiser continuar! Façam bom proveito!
     
    Sistemas:
      
    Prints: 
     
    Download SERVER, CLIENTE E SOURCE
    OBS: NÃO ACOMPANHA MAPA. PODE PEGAR O DA DXP ORIGINAL OU DE ALGUMA BASE DERIVADA:
     
    OBS: meu intuito aqui é trazer um conteudo para vocês estudarem como sistemas em lua e etc... façam bom proveito
  11. Upvote
    Arisen Trapzer deu reputação a roga em Tirando seu servidor do padrão   
    Tirando seu servidor do padrão
     
    Prepare-se pois esse tutorial super mega foda vai te ensinar fazer seu servidor sair de ser "só mais um".
     
    1. Editando as configurações, para isso vá na pasta do seu OT e clique para editar o arquivo "config.lua".
    Nele aperte CTRL+F e procure por:
    motd Você encontrara escrito "motd = Mensagem" No lugar dessa "Mensagem" terá algo sobre o ot, uma coisa aleatória dependendo de onde você baixou o servidor então, apague e substitua por alguma mensagem como por exemplo:
    Bem-vindo(a) ao Super OT Mega World. Agora com sistema de Donate, monstros editados, xp alta e tals Não igual, bem, nós estamos tentando fugir do padrão não é?
     
    2. Faça o seu estilo! Se você não tem, baixe um editor de mapa, não vou fazer um tutorial de como baixar pois tem milhares por ai, o link é esse:
    http://remeresmapeditor.com/marklar.php
    E você precisa baixar o client nesse mesmo site, baixe o client da versão do ot e use quando ele pedir pra localizar e tals.
     
    Mais pera ai tio! Eu baixei pronto não quero editar mapa sou preguiçoso!
    Você não terá que editar! Apenas escolha modelos de chão(ground), parede(wall) e outros enfeites que você gosta e substitua ou adicione no mapa!
    Nota: Se você não sabe mexer ou usar o editor de mapa veja: https://www.google.com.br/search?q=escreve+no+google+sozinho&oq=escreve+no+google+sozinho&aqs=chrome.0.57j0l2j62l3.4404j0&sourceid=chrome&ie=UTF-8#bav=on.2,or.r_qf.&fp=839c68690067f3da&q=primeiros+passos+em+remeres+map
     
    3. ​Script evoluídos! O que torna um OT bom são os pequenos detalhes, eu por exemplo quando eu entro em um baiak comum e vejo que nem o templo a pessoa teve o trabalho de editar, eu simplesmente saio. Uma forma de evoluir o OT é evoluindo os scripts, por exemplo, busque scripts para os treinadores(tem um que é uma porta, se você usa e tem alguém dentro, ela não faz nada, quando você usa sem ninguém ela teleporta você para dentro).
    Para teleportes, fiz um tutorial recentemente de "Teleportes Animados" tem muitos desses por ai é só procurar, assim você pode tirar as placas do caminho do jogador. Entre muitos outros scripts.
     
    4. O host de seu ot! Para um OT sério, é preciso pagar algo, tem muitos hosts de servidores VPS e SEMI-DEDICADOS por ai, não é dificil de mexer.
    Mais pera ai tio De novo! Eu tenho que pagar agora? Que roubalheira é essa
    O passo 5 esclarece tudo!
     
    5. O sustento do OT! Uma das formas de ganhar dinheiro para seu OT é fazendo uma área DONATE para isso procure um script para áreas VIP.
     
    6. Account Manager Personalizado! Edite seu Account Manager, e o lugar que ele nasce! Por exemplo, coloque em uma floresta com um lago, ou em um lugar distante com vórtices, faça do jeito que quiser. Para isso abra a database do mysql do OT e edite a posição do char Account Manager.
     
    REP +
  12. Upvote
    Arisen Trapzer deu reputação a Leshrot em SPRITES AINCRAD ONLINE 2014 - FREE FOR USE   
    E aí galera, 

    Vim aqui postar as sprites do AO Freepatch 2014.
    Curtam a página do projeto que patrocina essas sprites, Aincrad Online 

    Essas sprites estão bem antigas e foram refeitas há algum tempo. Ainda tem algumas que não são do AO mas foram feitas para o COBA, então resolvi liberar junto no pacote 
    A maioria foi feita em 3 dias em conjunto com o meu grande amigo Mikas!
     
    Bom proveito!! ^^
     
     
  13. Thanks
    Arisen Trapzer deu reputação a Benny em Object Builder   
    O que é object builder?
    Object Builder é um editor que cria/edita os gráficos do seu cliente. Você pode editar ou adicionar novos itens, outfits, efeitos ou misseis (shoot) no seu cliente.
    Algumas funções:
    É mais rápido na hora de carregar/compilar seus projetos Importe ou exporte seus itens;outfits;efeitos;misseis como um sprite sheet. Suporte pra sprites transparentes Você pode cortar as imagens importadas. Versões aceitas:
    7.10 - 10.56 Downloads
    Windows [source] Mac OS X Ubuntu [precisa do wine;winetricks;wininet] Imagens
     
     
    Créditos
    EdMignari
  14. Thanks
    Arisen Trapzer deu reputação a Danilonilo em [Tutorial] Paredes   
    Essa será minha 3ª aula, e minha primeira de nível intermediário
    Eu usarei o programa Paint.NET para dar a aula, e recomendo vocês também usarem ele
    Download do Paint.NET
    A Parede em Si
    A parede, no Tibia, tem que possuir normalmente 64x32 de área (Largura x Altura)
    Fazendo uma parede normal
    Primeiro crie uma nova imagem de 64x32 (CTRL+N)

    Então comece fazendo uma linha diagonal na ponta de baixo da imagem até aonde chegar

    Complete em cima até chegar o máximo á esquerda

    Da ponta de cima até onde chegar, faça outra linha diagonal

    Termine a parte de baixo

    Se quiser pode destacar o meio

    Colorindo
    Primeiramente comece pelo verde, ponha a cor base e os detalhes

    As linhas vermelhas e azuis são das mesmas cores que o lado verde, então complete que nem estou fazendo:
    Primeiro pinte os detalhes

    Depois pinte as partes assim:
    A parte vermelha de cima ficará mais clara que as outras, que são a mesma cor base

    Percebeu que aonde estava a linha vermelha, está mais claro? Porque não tenta pegar as imagens e dar um zoom?
    Atenção, no meio da aula, eu me distraí e esqueci de mostrar uma coisa, quando você fizer os detalhes, faça de uma forma que uma linha azul se ligue com a outra
    Ex:

     
    Fazendo as bordas
    Pra começar, faça linhas para cima em baixo e na ponta, a largura você que decide, se for uma borda grande, será mais largura, se for pequena, menos.
    Então complete com uma linha diagonal ligando as pontas, é importantíssimo que elas tenham a mesma largura, se for uma parede reta.

    Depois, façam uma borda plana em cima (lembram da minha primeira aula, quando disse sobre as coisas planas sempre serem retas e estendidas?)

    Colora e deixe as linhas roxas com as mesmas cores, igual citei agora pouco
    A parte de cima ficará mais clara, pois é onde bate o sol

    Fazendo o suplemento de baixo
    Primeiramente, pegue a ferramenta varinha mágica , e lá em cima, clique na Lâmpada , que ficará assim.
    Nós clicamos na lâmpada, pois o globo, quando for clicar com a varinha mágica, selecionará as cores iguais de todo o desenho, e não só as ligadas, também funciona com o Preenchimento, ou "Balde de Tinta", que pintará as mesmas cores em todo o desenho.
    Segurando CTRL, clique nas cores da parede, até que fique totalmente preenchida, então copie (CTRL+C)
    Depois disso, Gire a imagem 90º (CTRL+H) e a inverta na horizontal (Imagem>Inverter Horizontalmente)
    Assim, nós mudamos o lado da parede de frente para o lado
    Após isso, cole a imagem que tínhamos copiado, e ficará assim

    Faça as devidas edições
    Fazendo o suplemento de cima
    Com a imagem que criamos, selecione de uma cor forte a parte que está juntando as paredes

    Então remova o que tiver fora da linha vermelha, recomendo colocarem o Preenchimento/Balde de Tinta e mudar a tolerância para 60% +-, fazendo assim que preencha as diferentes tonalidades de cinza, faça os devidos tests, se não der muito certo, desfaça o erro com um CTRL+Z
    Pinte igual as outras etapas

    Pronto, terminamos a parede e seus complementos!
    Quer ver como ficou?
    Não ficou lá essas coisas, pois eu me esqueci de dar aquela ligadura de detalhes, e eu não sombreei nem texturei a parede, mas isso fica pra aula de texturas, não é?!
    Tcharam

    Créditos: Danilonilo8
  15. Thanks
    Arisen Trapzer deu reputação a Administrador em Árvores e Arbustos   
    ÁRVORES E ARBUSTOS



    Passo 1: Desenhe o outline em galhos, sem folhas!
    Passo 2: Adicione pequenos grupos de folhas nos galhos usando um tom escuro de verde.
    Passo 3: Adicione folhas por cima das que acabou de adicionar utilizando um tom mais claro de verde (de preferencia faça este segundo grupo de folhas um pouco mais espalhado sobre o primeiro, de modo que se consiga ver que existe um grupo de folhas por baixo - que teoricamente está sombreado pelo grupo de cima, por isso tem menos luz).
    Passo 4: Adicione mais um grupo de folhas seguindo a mesma metodologia do passo anterior. Deixe espaços para que o observador perceba que existem outras camadas de folhas por baixo (não importa que uma folha cubra a outra que você fez anteriormente, o importante é que percebam os pontos sombreados pelas folhas mais altas da árvore)

    Exemplo:



    É muito interessante observar como crescem as folhas na árvore, assim fica mais fácil fazê-la:






    Quando falamos de arbustos e grupos de folhas a ideia é sempre pensar na sobreposição de folhas. Logo, em meio a duas folhas que recebem muita luz, pode existir uma que recebe menos luz, ou uma que recebe MUITO MENOS luz...pois está a níveis muito abaixo. Veja o exemplo:



    Algumas árvores possuem copas, ou seja, a regra da iluminação começa de novo:





    Créditos:
    André
    Etchbeuer
  16. Thanks
    Arisen Trapzer deu reputação a Administrador em Spriting, por onde começar?   
    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:



    Créditos:
    Pixelaria (Tutorial)
    Thayam
  17. Upvote
    Arisen Trapzer recebeu reputação de weeds70 em Pedido de uma base de poketibia base shinys e megas ou base shinys com level system   
    Olá amigo, existem vários servidores de poketibia open source ou não, que contém os sistemas que você citou, basta procurar aqui e baixar o que mais lhe agradar. Deixarei abaixo alguns tópicos que podem ser úteis.
     
    [Open Source] Poke gold by Jair Kevick
    Pokemon GabrielTxu 3.2 Final Version by Gabrieltxu
    Lista de servidores derivados by Stigal
     
     
    Espero ter ajudado, abraços e boa sorte.
  18. Thanks
    Arisen Trapzer deu reputação a Deadpool em [OTClient] Lock Button | MiniWindow   
    Então, voltei hoje praticamente a mexer com otserv. Formatei o pc e perdi todas as minhas coisas.. Dai, baixei um servidor ai, e to voltando a estudar no otcliente. Então, vou postar uma pequena feature, o botão de bloquear a miniwindow na tela, segue a imagem a baixo:
    (é algo besta, porem é util. Eu baixei o WOP, pois estou usando pra um projeto, e como eu fiz isso dae, resolvi postar huehe)

     
    Bem, essa feature funciona da seguinte forma: Se você colocar a window em qualquer lugar da tela, a window vai ficar lá imóvel, e mesmo que você feche ou desloge, a window vai ficar lá, a menos que você aperte no botão de novo(como na imagem), podendo mover novamente pra onde quiser.
     
    Arquivos: 
    em data/modules/corelib/ui jogue isto dentro, subistitua se mandar
    feature.rar
     
    em data/styles jogue isto dentro, subistitua se mandar
    30-miniwindow.rar
     
    feature.rar
    30-miniwindow.rar
  19. Thanks
    Arisen Trapzer deu reputação a Refe em Item Editor v0.4.2 + Tradução xTibia.com   
    Hoje eu vim trazer para vocês a última versão do Item Editor.
    Oque há de novo na última versão?
    Oque essa versão suporta?
     
    + Créditos:
      - Mignari Desenvolvimento
     
    + Contribuidores: 
      - Refe Tradução
      -  Daniel (Ícone da aplicação)
     
    Downloads Originais (v 0.4.0.2 sem Tradução:)
    Source
    Binários
     
    Downloads Traduzidos:
    Item Editor - PTBR.zip
    A tradução não está completa, pretendo terminar essa semana.
     
     
    Mini Explicações sobre os Atributos
     
     
     

  20. Thanks
    Arisen Trapzer deu reputação a Vmspk em [9.60] Azeroth RPG   
    Azeroth Server



    Updated 28/01/2013: v2.0



    by Vmspk


     

    Este servidor foi disponibilizado para você gratuitamente, nunca retire os créditos


     



     
     
    Versões Anteriores:
     
    v1.0 [8.70]: http://www.xtibia.co...server-updated/
    v1.1 [8.60]: http://www.xtibia.co...oth-rpg-reborn/
     
     
     
     
     

     
    Versão: 9.60
    Distro: TFS 0.4
    Mapa Base: Yourots Edited e Mix Yourots
     
     

    Features:
     
     
    > 7 Cidades:
     
    Azeroth
    Avalon
    Zatur
    Liberty Bay
    Gloria
    Sand Trap
    Tiquanda
     
    > Mapa RPG bem detalhado para Ots Low e Mid rate.
    > Inúmeras invasões automáticas, Low e High lvl (ou iniciadas pelo comando /raid "nome").
    > NPCs de Travel/Boat diferentes para cada cidade.
    > Mais de 100 quests (além das principais) espalhadas pelo mapa.
    > Quests especiais com NPCs
    > Arena PvP sem perda de items.
    > Sistema de Guerras pelo Castelo [entre guilds] (mais detalhes abaixo)
    > Sistema de Refinamento e Slot (mais detalhes abaixo).
    > Sistema de Mineração (mais detalhes abaixo)
    > Scripts e sistemas aprimorados para o servidor
    > Distro SEM erro algum
    > Equipamentos 9.60 funcionando corretamente
    > Novas Hunts
    > Raids de bosses 9.60
    > Montarias por quest
     

    > Principais Quests:
     
    Annihilator
    Blue Legs
    Pits of Inferno
    MMS
    The Inquisition
    The Death
    FireWalker Boots
    Demon Helmet
    Draken
    Hell Conquer
    Prismatic Armory
    Deepling Abismal
     

     
    > 27 Raids Automáticas e configuradas:
     
     
     
     

     
    > Sistema de Guerras pelo Castelo [Honor Castle, a oeste de Azeroth]
     
    Evento automático. Quando a guerra é anunciada as guilds podem batalhar pelo controle do castelo, dando use no monumento do último andar e permanecendo assim até a guerra acabar. O último jogador a ter o controle do castelo antes do tempo acabar será o vencedor, e sua guild se tornará dona do castelo. Todos os membros da Guild ganharão uma recompensa e poderão acessar o mapa do subsolo. Os membros de outras Guilds serão teleportados para o templo e não poderão acessar o castelo.
     
    O sistema envia mensagens a todos antes de o evento começar, quando começar, quando o dono do castelo muda, antes de se finalizar e ao finalizar, relatando o conquistador do castelo e a guild vencedora.
     
     

     
     
     
     
     
     
     
     
     
     
     

    Imagens:


     



     

     
     
    Raids
     
     
     
     
    Honor Castle War
     
     
     
     
    Upgrade & Slot System
     
     
     
     

    > Histórico:
     
     
    V 0.2
     
     
     
    V 0.3
     
     
     
    V 0.4
     
     
     
    V 1.0
     
     
    V 1.1
     
     
     
     
    V 2.0
     
     
     
     
     

     
    Não há teleports diretos para hunts ou quests.
    Não há items ou monstros editados(além dos trainers).
    Não há sistema VIP, VIP 2, VIP 3, VIP 345456364.
    Não há raids com monstros excessivamente fortes nas cidades iniciais.
     
     
     
    Créditos:
    < Unknow YourOts Edited >< Mix Yourots Team >< Crystal Server Team >< Tryller >< Mock >< TFS Team >< TonyHanks >< Centera World >< SmoOker >< Mappers Xtibia e OtservBr >< Vmspk >
     
    (Este servidor foi disponibilizado para você gratuitamente, nunca retire os créditos)
     
     

     
     
    DOWNLOADS
     
     
    > Opcionais
     


    Utilitários - Source


    *Utilitários inclui: SQLite Studio + Otland Ipchanger


     
     
    > Servidor
     
     
     
     
     
     
     
     
     
     
     
     



    Azeroth Server v2.0





    [MEDIAFIRE]


     
     

    Para entrar no servidor sem usar a internet, ponha no ipchanger localhost



    Se você estiver usando sqlite, vá até o config.lua e mude ingameGuildManagement = false para ingameGuildManagement = true


     
     
    > Scan
     
     
     
     
     
     

     
     
     
     
     
     
     
     
     
     
     

    Acc do GOD: vmspk/222222


     

    Comandos: !war para executar a guerra pelo castelo manualmente, !reset para interromper o funcionamento da war e !castle para limpar todos os dados, ou seja, o castelo volta a ser terra de ninguém.



    !info para saber mais sobre as novidades do Azeroth Server. Editável na pasta do Ot, em Notícias. Comando !bless e !rank disponíveis.



    Para saber os IDs das pedras e outras coisas vá ao Histórico, na versão 1.0.


     
     
    Se acha que ter um OtServ é só baixar, abrir e largar lá, ou ainda editar chars e equipamentos para você mesmo jogar e fazer o que quiser, garanto-lhe que não vai durar 2 dias. Conheça o mapa, crie eventos, interaja com os jogadores, faça torneios Pvp, marque datas para a Honor Castle, faça updates no mapa, crie monstros, hunts e quests, dê suporte e, o mais importante, mantenha o HELP aberto, sempre.
     
     
    Contato: vmspk@hotmail.com
     
     
     
    Os arquivos dos ots 9.60 estavam muito errados e incompletos, ou melhor, podres. Não duvido que a maioria desses 9.60 postados aqui ou nos outros fóruns estejam infestados de bugs e coisas que não funcionam. Loots errados, monstros copiados, escadas sem registros, novos equipamentos sem movements (propriedades não faziam efeito), bordas de mapas 9.60 fora do lugar, scripts simples como os de Locked Doors em conflito com a lib, etc, etc. Tive um trampo do cão pra arrumar tudo isso. Do meu suor eu digo a vocês, dou-lhes o melhor servidor 9.60 (pelo menos por enquanto)
     
     
     
    Conheça também o 4Fun Server 9.1
     
     
     
     
     
     
     
     
     
     
     
     
     



  21. Upvote
    Arisen Trapzer recebeu reputação de GM Kinagon em Removendo Client Version do OTClient   
    Olá jovens, não sei se já existe algum tutorial sobre o assunto aqui no Ékz, mas hoje resolvi fazer esse pequeno tutorial no qual estarei ensinado como remover aquele pequeno quadradinho que costuma ficar no canto inferior direito do OT Client, segue abaixo uma imagem mostrando de qual quadradinho estou falando.

    Para remover é até que uma coisa que considerei simples depois que descobri, sem mais enrolação vamos começar o tutorial.
     
    Vá na pasta do seu OT Client, em seguida vá em modules>client_background, e abra o background.lua
     
    e remova as seguintes linhas
     
    clientVersionLabel = background:getChildById('clientVersionLabel') clientVersionLabel:setText(g_app.getName() .. ' ' .. g_app.getVersion() .. '\n' .. 'Rev ' .. g_app.getBuildRevision() .. ' ('.. g_app.getBuildCommit() .. ')\n' .. 'Built on ' .. g_app.getBuildDate()) if not g_game.isOnline() then addEvent(function() g_effects.fadeIn(clientVersionLabel, 1500) end) end Antes
     
     
     
    Depois
     
    Espero ter ajudado   Abraços. OBS: Se ajudei REP+


  22. Upvote
    Arisen Trapzer recebeu reputação de Huntedl17 em Removendo Client Version do OTClient   
    Olá jovens, não sei se já existe algum tutorial sobre o assunto aqui no Ékz, mas hoje resolvi fazer esse pequeno tutorial no qual estarei ensinado como remover aquele pequeno quadradinho que costuma ficar no canto inferior direito do OT Client, segue abaixo uma imagem mostrando de qual quadradinho estou falando.

    Para remover é até que uma coisa que considerei simples depois que descobri, sem mais enrolação vamos começar o tutorial.
     
    Vá na pasta do seu OT Client, em seguida vá em modules>client_background, e abra o background.lua
     
    e remova as seguintes linhas
     
    clientVersionLabel = background:getChildById('clientVersionLabel') clientVersionLabel:setText(g_app.getName() .. ' ' .. g_app.getVersion() .. '\n' .. 'Rev ' .. g_app.getBuildRevision() .. ' ('.. g_app.getBuildCommit() .. ')\n' .. 'Built on ' .. g_app.getBuildDate()) if not g_game.isOnline() then addEvent(function() g_effects.fadeIn(clientVersionLabel, 1500) end) end Antes
     
     
     
    Depois
     
    Espero ter ajudado   Abraços. OBS: Se ajudei REP+


  23. Upvote
    Arisen Trapzer recebeu reputação de Mudrock em Removendo Client Version do OTClient   
    Olá jovens, não sei se já existe algum tutorial sobre o assunto aqui no Ékz, mas hoje resolvi fazer esse pequeno tutorial no qual estarei ensinado como remover aquele pequeno quadradinho que costuma ficar no canto inferior direito do OT Client, segue abaixo uma imagem mostrando de qual quadradinho estou falando.

    Para remover é até que uma coisa que considerei simples depois que descobri, sem mais enrolação vamos começar o tutorial.
     
    Vá na pasta do seu OT Client, em seguida vá em modules>client_background, e abra o background.lua
     
    e remova as seguintes linhas
     
    clientVersionLabel = background:getChildById('clientVersionLabel') clientVersionLabel:setText(g_app.getName() .. ' ' .. g_app.getVersion() .. '\n' .. 'Rev ' .. g_app.getBuildRevision() .. ' ('.. g_app.getBuildCommit() .. ')\n' .. 'Built on ' .. g_app.getBuildDate()) if not g_game.isOnline() then addEvent(function() g_effects.fadeIn(clientVersionLabel, 1500) end) end Antes
     
     
     
    Depois
     
    Espero ter ajudado   Abraços. OBS: Se ajudei REP+


  24. Upvote
    Arisen Trapzer deu reputação a Oneshot em Forge System   
    ADVANCED FORGE SYSTEM



    O SISTEMA DE CRIAÇÃO DE ITENS PARA SEU SERVIDOR


     

     
    Creio que muitos já conhecem o sistema de forja criado por mim, acontece que o código já estava um pouco obsoleto, então resolvi reescrever ele do 0.
     
    Simplesmente consiste em um sistema de criação de itens avançado que ressuscita um pouco do RPG perdido nos servidores de hoje em dia. O jogador poderá criar itens através de forja, agindo como um verdadeiro ferreiro medieval. Adiciona itens em cima de uma bigorna previamente colocada no mapa e com um martelo cria um item totalmente novo.
     
    CARACTERÍSTICAS DA VERSÃO FINAL:
     
    - Configuração intuitiva e fácil de compreender;
    - Mini-tutorial auxiliando criação de novas receitas;
    - Receitas podem conter até 250 itens diferentes com suas respectivas quantidades;
    - Sistema inteligente que identifica uma receita em qualquer ordem;
    - Código totalmente orientado a objetos;
    - Possibilidade de configurar diferentes requerimentos, diferentes skills, magic level e level
     

     
    Há dois modos de instalar o Advanced Forge System, o primeiro é seguir os passos deste tópico e o segundo e baixar pasta data/ anexada no tópico com os arquivos em seus respectivos diretórios, precisando apenas o registro das chaves nos arquivos XML.
     
    Escolha o modo que mais convém a você.
     

     
     
    Crie um arquivo em data/lib chamado forgesystem.lua e cole o conteúdo abaixo:
     

    --[[ ADVANCED FORGE SYSTEM FINAL Criado por Oneshot É proibido a venda ou a cópia sem os devidos créditos desse script. ]]-- RecipeHandler = { itemtype = 0, items = {}, level = 1, maglevel = 0, skills = {[0] = 0, [1] = 0, [2] = 0, [3] = 0, [4] = 0, [5] = 0, [6] = 0} } Forge = { type = nil, position = nil, magicEffect = CONST_ME_MAGIC_GREEN, messages = { class = MESSAGE_STATUS_DEFAULT, success = "You have successfully forged a %s.", needskill = "You don't have enough %s to create a %s.", needlevel = "You need level %s to create a %s.", needmaglevel = "You need magic level %s to create a %s." } } function RecipeHandler:new(itemtype, items, level, maglevel, skills) local obj = { itemtype = (itemtype or 0), items = (items or {}), level = (level or 1), maglevel = (maglevel or 0), skills = (skills or {[0] = 0, [1] = 0, [2] = 0, [3] = 0, [4] = 0, [5] = 0, [6] = 0}) } table.insert(Recipes, obj) return setmetatable(obj, {__index = self}) end function RecipeHandler:setItem(itemtype) self.itemtype = (itemtype or 0) end function RecipeHandler:setRecipe(...) self.items = {...} end function RecipeHandler:setRecipeItem(itemid, amount) table.insert(self.items, {itemid, amount}) end function RecipeHandler:setSkill(skillid, value) self.skills[skillid] = value end function RecipeHandler:setLevel(value) self.level = value end function RecipeHandler:setMagLevel(value) self.maglevel = value end function RecipeHandler:check(position) local match = false for n, item in ipairs(self.items) do local thing = getTileItemById(position, item[1]) if thing.uid > 0 and math.max(1, thing.type) >= item[2] then if n == #self.items then match = true end else break end end return match end function RecipeHandler:get(position) if self:check(position) == true then return setmetatable({type = self, position = position}, {__index = Forge}) end return false end function Forge:create(cid) if self.type.itemid == 0 then print("[FORGE SYSTEM - ERROR] ATTEMPT TO CREATE A RECIPE ITEMID 0") return end local status = true if(cid) then if getPlayerLevel(cid) < self.type.level then doPlayerSendTextMessage(cid, self.messages.class, self.messages.needlevel:format(self.type.level, getItemNameById(self.type.itemtype))) return end if getPlayerMagLevel(cid) < self.type.maglevel then doPlayerSendTextMessage(cid, self.messages.class, self.messages.needmaglevel:format(self.type.maglevel, getItemNameById(self.type.itemtype))) return end for skillid, value in pairs(self.type.skills) do if getPlayerSkillLevel(cid, skillid) < value then status = false doPlayerSendTextMessage(cid, self.messages.class, self.messages.needskill:format(SKILL_NAMES[skillid], getItemNameById(self.type.itemtype))) break end end end if status == true then for _, item in ipairs(self.type.items) do local thing = getTileItemById(self.position, item[1]) doRemoveItem(thing.uid, item[2]) end doSendMagicEffect(self.position, self.magicEffect) doPlayerSendTextMessage(cid, self.messages.class, self.messages.success:format(getItemNameById(self.type.itemtype))) doCreateItem(self.type.itemtype, self.position) end end dofile(getDataDir() .."/lib/recipes.lua")
     
    Crie um arquivo em data/lib chamado recipes.lua e adicione o conteúdo abaixo:
     

    ---------------------------------------- -----** TUTORIAL DE CONFIGURAÇÃO **----- ---------------------------------------- --[[ O 'ADVANCED FORGE SYSTEM' é muito fácil e intuitivo de configurar, você só precisa chamar a função RecipeHandler:new(...), sendo que você já configurar os atributos da receita nela ou usar outras funções para isso. Por exemplo, quero criar uma Magic Sword que precise de 100 Gold Nuggets. RecipeHandler:new(2400, {{2157, 100}}) Ou então Magic_Sword = RecipeHandler:new() Magic_Sword:setItem(2400) Magic_Sword:setRecipe({2157, 100}) Funções do Sistema: RecipeHandler:new(itemtype, items, level, maglevel, skills) --> Cria uma nova instância de forja. RecipeHandler:setItem(itemtype) --> Atribui um certo itemid como resultado da receita. RecipeHandler:setRecipe(recipe) --> Atribui uma receita. RecipeHandler:setRecipeItem(itemid, amount) --> Adiciona um itemid e sua quantidade a receita. RecipeHandler:setSkill(skillid, value) --> Atribui um valor necessário de uma certa skill para poder criar a receita. RecipeHandler:setLevel(value) --> Atribui o level necessário para criar uma receita. RecipeHandler:setMagLevel(value) --> Atribui o magic level necessário para criar uma receita. ]]-- --[[ Este é um exemplo de receita usando algumas funções. É uma Magic Sword (ITEMID: 2400) que precisa de 100 Gold Nuggets (ITEMID: 2157), além disso, o personagem que tentar forjar, precisa ter Level 100 e Sword Fighting 50. ]]-- Recipes = {} magicsword = RecipeHandler:new() magicsword:setItem(2400) magicsword:setRecipeItem(2157, 100) magicsword:setLevel(100) magicsword:setSkill(2, 50)
     
    Agora em data/actions/scripts, crie um arquivo chamado iron_hammer.lua e adicione o conteúdo abaixo:
     

    function onUse(cid, item, fromPosition, itemEx, toPosition) local recipe = nil for _, v in ipairs(Recipes) do recipe = v:get(toPosition) if(recipe ~= false) then break end end if(recipe) then recipe:create(cid) else doPlayerSendCancel(cid, "This is not a valid recipe.") end return true end
     
    E por fim em actions.xml, adicione a seguinte linha:
     

    <action itemid="4846" event="script" value="iron_hammer.lua"/>
     
    OPCIONAL - TALKACTION
     
    A talkaction abaixo mostra ao jogadoras receitas configuradas no servidor que ele pode fazer.
     
    Em data/talkactions/scripts, crie um arquivo chamado recipes.lua e adicione o conteúdo abaixo:
     

    function onSay(cid, words, param, channel) local ret = {} local msg = " ADVANCED FORGE SYSTEM\n" for _, recipe in ipairs(Recipes) do local skills = true for skillid, value in pairs(recipe.skills) do if getPlayerSkillLevel(cid, skillid) < value then skills = false break end end if skills == true then if getPlayerLevel(cid) >= recipe.level and getPlayerMagLevel(cid) >= recipe.maglevel then table.insert(ret, {recipe, true}) else table.insert(ret, {recipe, false}) end else table.insert(ret, {recipe, false}) end end for _, recipe in ipairs(ret) do msg = msg .."\nRecipe for ".. getItemNameById(recipe[1].itemtype) ..":\n\n" if recipe[2] == true then for _, item in ipairs(recipe[1].items) do msg = msg .."* ".. getItemNameById(item[1]) .." [".. math.min(item[2], math.max(0, getPlayerItemCount(cid, item[1]))) .."/".. item[2] .."]\n" end else msg = msg .."[LOCKED]\n" end end doShowTextDialog(cid, 2555, msg) return true end
     
    Em data/talkactions/talkactions.xml, adicione a linha:
     

    <talkaction words="/recipes" event="script" value="recipes.lua"/>
     

     
    Siga as instruções para configuração de novas receitas.
     
    Em breve vídeo de funcionamento
    Advanced Forge System.rar
  25. Upvote
    Arisen Trapzer deu reputação a MuriloCavalcantti em ShowOff Arisen Trapzer   
    Me amarrei, show de bola.
  • Quem Está Navegando   0 membros estão online

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