Ir para conteúdo

Gutorb

Campones
  • Total de itens

    24
  • Registro em

  • Última visita

Histórico de Reputação

  1. Upvote
    Gutorb deu reputação a Madarada em Galeria Madarada   
    Obrigado pela edição
     
    Olá pessoal, eu voltei .
     
    Estarei postando conteúdo regularmente aqui no fórum, e também estarei trazendo informações sobre o novo game que estou desenvolvendo.
    Tentarei trazer alguns packs completos para contribuir com desenvolvedores.
     
    Star Wars Droids
      
     
    Esgotos
     
      
     
    Tundra Wolf
     

     
    Pessoal, comentem e se possível deixar um gostei, é a única forma de eu ter um feedback.
     
    Deixem ideias também, que tipo de sprites gostariam de ver? 

     
     
     
     
     
     
  2. Upvote
    Gutorb deu reputação a Peonso em OpenTibia Sprite Pack   
    OpenTibia Sprite Pack é um projeto pra viabilizar a concretização de servers de OpenTibia sem infringimento de leis de copyright e propriedade intelectual. Os sprites são distribuídos nos termos da licença Creative Commons Attribution 4.0 International.
     
    Sem pressão nenhuma pra participação, também não vou jogar a ladainha de que é uma oportunidade pros senhores mostrarem o trabalho de vocês, a oportunidade é pra contribuir com a comunidade de OpenTibia, assim como tem gente da programação que colabora com os projetos abertos.
     
    É ventilado há anos que o último passo para se desligar totalmente do conteúdo legalmente de direito da CipSoft é a disponibilização de gráficos. Já temos diversos servidores (atualmente o TFS da série 1.x o mais popular), e o OTClient, minha intenção é administrar a criação do pacote de gráficos para viabilizar esse salto. O pack inicial já está disponível com uma série de gráficos disponibilizados pelos próprios autores em diversas comunidades, o próximo passo é montar uma spritesheet única e então os arquivos para o cliente e servidor, respectivamente de extensão dat, spr, otb e xml.
     
    Orientações básicas para as contribuições:
    - Todos os sprites devem ter o autor identificado.
    - Todos os sprites são de livre uso.
    - Todos os sprites devem ser adequados a utilização em OTServ, no que diz respeito a tamanho e perspectiva (32x32 e 64x64 pixels; perspectiva 45°)
    - Todos os sprites devem ser conteúdo original, nenhuma alteração de cores, edição ou utilização de propriedade intelectual alheia como Pokémon/Animes e etc.
     
    Lista de autores: https://github.com/peonso/opentibia_sprite_pack/blob/master/AUTHORS.md
     
    Tópico central na OTLand: https://otland.net/threads/opentibia-sprite-pack.254815/
     
    GitHub: https://github.com/peonso/opentibia_sprite_pack
  3. Upvote
    Gutorb deu reputação a Frenvius em OpenTibia Sprite Pack   
    fica ai uma contribuição minha, por hora, em breve distribuo mais, se eu achar algo, perdi meu HD 
     

     
  4. Thanks
    Gutorb deu reputação a Ritsunakato em doaçao paredes   
    bom dia amigos x-tibianos hoje estou doando umas paredes que eu fiz obs. paredes, portas e janelas tirei da pokexgames porque achei mais atraentes fiz pra cidade de Viridian
    aquele visual nunca muda a e resolvi mudar ela bom n testei ainda as paredes se tiver q ter correçao de sprite me avise bom ta ae 
     
    pra vcs!
     
     
  5. Upvote
    Gutorb deu reputação a BrenoNeto em ShowOFF Random   
  6. Upvote
    Gutorb deu reputação a rohfagundes em Raridade em items   
    Ola, eu estou fazendo um sistema de raridade baseado no diablo 3
    gostaria de saber o q vcs acham


     
    lembrando q este item é apenas para teste
    ainda vou mudar algumas coisas

  7. Upvote
    Gutorb recebeu reputação de Nogard em Nogard Graphic Gallery   
    Sensacional!
    A coloração tá perfeita. E o que dizer dos personagens do dragon ball, então?
    Quais programas tu usas?
    Meus parabéns.
     
  8. Upvote
    Gutorb deu reputação a Nogard em Nogard Graphic Gallery   
    E aí pessoal, beleza? 
     
    Este tópico servirá como minha galeria gráfica (não apenas sprites), vou atualizando. Confere aí! (:
     
     
     


















     
     
     
     
     
  9. Upvote
    Gutorb recebeu reputação de duuh toni em Show off. Pokémon. Primeiras sprites.   
    Saudações!
     
    Estas são minhas primeiras sprites, sintam-se livres para criticar pois será deveras construtivo.
     
    Meu objetivo era desenhar e sombrear os pokémons ao estilo tibia, razão pela qual suas dimensões não são tão fieis ao anime.
     
    Seguem as sprites feitas no paint:
     

  10. Upvote
    Gutorb deu reputação a Bruno em Adquirir storage temporariamente por meio de talkaction.   
    Talkaction:
    local config = { storage = 99488, -- STORAGE PARA CONTROLAR TEMPO cost = 1000000, -- Preço para comprar o acesso tempo = 24 -- Tempo em horas para durar a compra } function onSay(cid, words, param) if getPlayerStorageValue(cid, config.storage) < os.time() then if doPlayerRemoveMoney(cid, config.cost) then setPlayerStorageValue(cid, config.storage, os.time() + (config.tempo * 60 * 60)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce comprou " .. config.tempo .. " horas de acesso.") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_GIFT_WRAPS) return true else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce precisa de " .. config.cost .. " gold coins para comprar este acesso.") return false end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce so pode comprar este acesso a cada " .. config.tempo .. " horas.") end return false end Porta:
    local storage = 99488 -- STORAGE PARA CONTROLAR TEMPO function onUse(cid, item, topos) if getPlayerStorageValue(cid, storage) < os.time() then doTeleportThing(cid, topos, true) return true end return doPlayerSendCancel(cid, "Voce precisa comprar acesso para entrar nessa area.") end
  11. Upvote
    Gutorb recebeu reputação de Administrador em Removendo Bug do Rock Soil   
    Boa, Daniel.
     
    Realmente esse bug é muito chato e testa nossa paciência.
     
    Um abraço.
  12. Upvote
    Gutorb deu reputação a Nolis em Remere's Map Editor - Criando e Modificando Extensões   
    Remere's Map Editor - Criando e Modificando Extensões


    Olá, fiz este tutorial a um tempo atrás e agora o reformulei, espero que encontrem o que procuram e entendam o conteúdo, estarei atualizando para deixá-lo mais completo conforme o tempo, quaisquer dúvidas estarei atendendo no tópico.
    O tópico atenderá a quem precisar modificar alguma extensão de auto-border ou organização no Remere's Map Editor, este, seguira a ordem proposta no sumário:Borders.xml Grounds.xml Walls.xml INTRODUÇÃO
    Auto-border é uma ferramenta do RME utilizada para adicionar itens de um modo que formem seu padrão ou ligação, em outras palavras, o auto-border faz algumas partes do mapa para você (em outros pontos de vista, o mapa todo); você pode utilizar esta ferramenta de duas maneiras:
    Apenas usando-a: Seu mapa ficará quadrado/simples/desorganizado; Usando como Base: Esta é uma ação de muitos mappers que, mesmo não gostando do auto-border, utilizam para achar o pack do item selecionado, ao invés de procurar este manualmente. Outros, produzem bases ou marcações no mapa para depois completar utilizando suas habilidades. INICIANDO
    Antes de tudo, faça um backup do seu map editor, caso você não saiba, basta copiar a pasta que você vai modificar. Durante este tutorial, estarei utilizando a versão 8.60.



    Começarei com borders.xml por ser fácil de entender, porém trabalhoso. Borders.xml é o arquivo que fará a ferramenta Auto-Border adicionar, automaticamente, bordas no ground que você utilizar através desta ferramenta. É importante ressaltar, que as configurações contidas neste arquivo possuirão um ID que fará uma ligação com o arquivo grounds.xml; dessa forma, nunca esqueça de configurar corretamente o ID que você terá que adicionar em grounds.xml.


    Estrutura e Funções Borders.xml possui uma estrutura simples de entender, inicia com:
    <materials>E finaliza com:
    </materials>Entre essas duas linhas, que são a primeira e a útilma, as configurações de cada borda são organizadas como:
    <border id="A"> -- B -- <borderitem edge="C" item="D"/> </border>Além destas, o arquivo pode conter outras funções que são fundamentais para a organização base do RME, entretanto, está contido a estrutura base para uma funcionalidade simples; abaixo você pode similar as referências e entender esta estrutura:
    A - Esta função registra a borda fazendo uma ligação com um ground (em grounds.xml), este id você cria, mas deve garantir que não esteja repetido, pois se houver duas bordas com o mesmo ID ou dois grounds com o mesmo id, a ferramenta entrará em colapso e este item não funcionará como auto-border. Você saberá se cometeu um erro na hora de abrir o editor ou utilizar o item;
    B - Aqui você pode adicionar um nome à borda, para poder localizá-la mais facilmente, isto é opcional e você deve tomar cuidado para que o texto esteja neste padrão: -- Nome --
    C - A parte mais complicada e importante é a posição dos itens que comportaram o funcionamento deste específico auto-border, em C, você deve especificar a posição da borda conforme o padrão abaixo, sempre siga esta ordem, mantendo um padrão nas suas extensões, que ficará mais fácil de criar/modificar:






    C - Em C, você adiciona o id das bordas conforme a configuração de posição mostrada acima;
    Ao adicionar as bordas de grass (os ids) conforme a posição da "Rosa dos Ventos", o script fica assim:

    <borderitem edge="n" item="4542"/> <borderitem edge="e" item="4543"/> <borderitem edge="s" item="4544"/> <borderitem edge="w" item="4545"/> <borderitem edge="cnw" item="4546"/> <borderitem edge="cne" item="4547"/> <borderitem edge="csw" item="4548"/> <borderitem edge="cse" item="4549"/> <borderitem edge="dnw" item="4550"/> <borderitem edge="dne" item="4551"/> <borderitem edge="dsw" item="4552"/> <borderitem edge="dse" item="4553"/> Um script de uma borda completo deve estar como o modelo abaixo (apenas a estrutura, os ids e nome podem ser diferentes):
    <materials> </border>... <border id="2" group="1"> -- grass border -- <borderitem edge="n" item="4542"/> <borderitem edge="e" item="4543"/> <borderitem edge="s" item="4544"/> <borderitem edge="w" item="4545"/> <borderitem edge="cnw" item="4546"/> <borderitem edge="cne" item="4547"/> <borderitem edge="csw" item="4548"/> <borderitem edge="cse" item="4549"/> <borderitem edge="dnw" item="4550"/> <borderitem edge="dne" item="4551"/> <borderitem edge="dsw" item="4552"/> <borderitem edge="dse" item="4553"/> </border> <border id="3"... </materials>
    Grounds.xml é o arquivo responsável pelos tiles que são adicionados com bordas automáticas no RME, neste, você adicionará funções que determinam os tiles e suas respectivas repetições/variações, assim como o id da borda criada. É uma parte fácil de lidar, porém há funções que você deve decorar para saber como esta ferramenta funcionará no RME.


    Estrutura e Funções Veja abaixo a estrutura principal de grounds.xml:
    <materials>
    <materials> <brush name="A" type="ground" server_lookid="B" z-order="C"> <item id="D" chance="E"/> <border align="outer" id="F"/> <border align="inner" to="none" id="G"/> </brush> </materials>Para entender a estrutura, siga em ordem as referências e associe com o que já foi dito anteriormente:
    A - Aqui você deve escrever, em minúsculo, o nome do seu ground; este nome será colocado em tilesets.xml para que o editor saiba que a ferramenta existe e onde colocá-la;
    B - Em B, deve ser posto o id do tile, este, aparecerá na paleta para identificar a ferramenta;
    C - Z-order é a função que diz se o as bordas do seu tile ficarão por cima/por baixo de outros tiles, se a dúvida for: Por que esta função se encontra em ground.xml e não em borders.xml, leia:
    Ao colocar um ground em cima do outro, este que já estava será removido; o script do ground adicionado deve identificar o que acontecerá com suas bordas, veja as imagens para entender:


    Perceba que o ground de terra fica abaixo do ground Lawn, que é a grama escura; respectivamente, o ground de grass fica acima do ground Lawn. Isso acontece por que ambos os três possuem um z-order diferente, conforme as imagens:

    z-order="2800">
    z-order="1000">
    z-order="5100">

    D - Nesta parte, você coloca o id do seu ground, pode colocar vários grounds, um em baixo do outro (repetindo a função) que a ferramenta fará eles saírem de ordem aleatória no mapa, conforme a prioridade decidida, confira:

    <item id="4526" chance="2500"/> <item id="4527" chance="10"/> <item id="4528" chance="25"/> <item id="4529" chance="25"/> <item id="4530" chance="25"/> <item id="4531" chance="25"/> <item id="4532" chance="25"/> <item id="4533" chance="25"/> <item id="4534" chance="15"/> <item id="4535" chance="25"/> <item id="4536" chance="25"/> <item id="4537" chance="25"/> <item id="4538" chance="20"/> <item id="4539" chance="20"/> <item id="4540" chance="20"/> <item id="4541" chance="20"/> E - Como o próprio nome já diz, esta é a função que determina a prioridade do ground, no script acima, perceba que cada ground tem um chance id igual ou diferente, o objetivo disso é fazer os grounds saírem com a mesma proporção, ou um ground aparecer mais vezes que outros grounds.
    F - Outer, que em português significa Exterior, é a borda que contornará um ground por fora, basta adicionar o id da borda que você quer que faça parte do ground, ele ficará assim:

    G - Inner, que em português significa Interior, é a borda que contornará um ground por dentro, esta função é muito utilizada para grounds adicionados em montanhas, pois geralmente a borda faz ligação com a parte de baixo que é a montanha:


    Após finalizar estas funções, se fez certo, você já terá o seu ground funcionando corretamente, abaixo darei um exemplo desse script completo:

    <brush name="grass" type="ground" server_lookid="4526" z-order="3500"> <item id="4526" chance="2500"/> <item id="4527" chance="10"/> <item id="4528" chance="25"/> <item id="4529" chance="25"/> <item id="4530" chance="25"/> <item id="4531" chance="25"/> <item id="4532" chance="25"/> <item id="4533" chance="25"/> <item id="4534" chance="15"/> <item id="4535" chance="25"/> <item id="4536" chance="25"/> <item id="4537" chance="25"/> <item id="4538" chance="20"/> <item id="4539" chance="20"/> <item id="4540" chance="20"/> <item id="4541" chance="20"/> <item id="470" chance="0"/> <border align="outer" id="2"/> <border align="inner" to="none" id="1"/> </brush>
    Walls.xml é o arquivo que cria suas ferramentas de walls, não é complicado, assim como o grounds.xml, você deve entender as funções; depois que criar, só precisa adicionar o nome em tileset.xml e usar.
    Estrutura e Funções A estrutura de Walls.xml é composta por:
    <materials> <brush name="A" type="wall" server_lookid="B"> <wall type="C"> </wall> <wall type="D"> </wall> <wall type="E"> </wall> <wall type="F"> </wall> </brush> Eu separei o script acima para entender melhor sua estrutura, veja os passos abaixo depois as funções completas:
    A - Como nos outros scripts, aqui vai o nome, em minúsculo, que identificará o script em tilesets.xml;
    B - Em B, deve ser posto o id do tile, este, aparecerá na paleta para identificar a ferramenta;
    C - Wall type se refere aos diferentes tipos da walls, existem 4 no padrão tibiano, a primeira da ordem é a <wall type="horizontal">, como mostra a figura:

    D - Aqui encontra-se o segundo tipo de wall, a <wall type="vertical">, como mostra a figura:

    E - A terceira wall é a <wall type="corner">, como mostra a figura:

    F- A quarta e última é a <wall type="pole">, como mostra a figura:

    <wall type="horizontal"> <item id="A" chance="500"/> <door id="B" type="normal" open="false"/> <door id="B" type="normal" open="true"/> <door id="B" type="locked" open="false"/> <door id="B" type="locked" open="true"/> <door id="B" type="quest" open="false"/> <door id="B" type="quest" open="true"/> <door id="B" type="magic" open="false"/> <door id="B" type="magic" open="true"/> <door id="B" type="hatch_window" open="false"/> <door id="B" type="hatch_window" open="true"/> <door id="B" type="window"/> </wall> <wall type="vertical"> <item id="A" chance="500"/> <door id="B" type="normal" open="false"/> <door id="B" type="normal" open="true"/> <door id="B" type="locked" open="false"/> <door id="B" type="locked" open="true"/> <door id="B" type="quest" open="false"/> <door id="B" type="quest" open="true"/> <door id="B" type="magic" open="false"/> <door id="B" type="magic" open="true"/> <door id="B" type="hatch_window" open="false"/> <door id="B" type="hatch_window" open="true"/> <door id="B" type="window"/> </wall> <wall type="corner"> <item id="A" chance="1000"/> </wall> <wall type="pole"> <item id="A" chance="1000"/> </wall> A - Em A, vai o id da wall conforme a configuração "Horizontal, Vertical, Corner ou Pole". São respectivamente:

    B - Em B, é configurado o id da wall para as configurações mostradas a baixo, lembre-se que a mesma configuração vale para os tipos de walls "Horizontal, Vertical, Corner ou Pole", siga os exemplos:



    Normal:

    <door id="B" type="normal" open="false"/> <door id="B" type="normal" open="true"/> False: A função com false vai o ID da porta normal fechada.

    True: A função com true vai o ID da porta normal Aberta.


    Locked:

    <door id="B" type="locked" open="false"/> <door id="B" type="locked" open="true"/> False: A função com false vai o ID da porta trancada fechada.

    True: A função com true vai o ID da porta trancada Aberta.


    Magic:

    <door id="B" type="magic" open="false"/> <door id="B" type="magic" open="true"/> False: A função com false vai o ID da porta mágica fechada.

    True: A função com true vai o ID da porta magica Aberta.


    Quest:

    <door id="B" type="quest" open="false"/> <door id="B" type="quest" open="true"/> False: A função com false vai o ID da porta de quest fechada.

    True: A função com true vai o ID da porta de quest Aberta.


    Janelas

    <door id="B" type="hatch_window" open="false"/>

    <door id="B" type="hatch_window" open="true"/>

    <door id="B" type="window"/>

    Quaisquer dúvidas, estou a disposição!




  13. Upvote
    Gutorb recebeu reputação de Superior em [Arquivado]PuO - Portas e Janelas   
    Bá, ElderDark, que talento, ein! O nível de detalhes dos sprites tá altíssimo. Quanto tempo levaste na produção?!
     
    Minha sugestão é acrescentar jardineiras de janela (aquelas que ficam logo abaixo das janelas, suspensas). Acho que combinaria com o estilo pokémon e daria cor às tuas cidades. Para isso, podes aproveitar as sprites de flores do próprio Tibia.
     
    Tô de olho no teu projeto do PuO, parece muito promissor.
     
    Abraço!
  14. Upvote
    Gutorb recebeu reputação de Superion em [Projeto] Pokemon Online   
    Gostei da ideia, mrdarkiness.
     
    O que me mantém longe dos servidores de Pokémon atualmente é o fato de os monstros estarem em um ângulo diferente do mundo que os rodeia (coisa de virginiano), defeito este que não macula teu servidor. Só por isso já tens pontos comigo.
     
    Confesso, porém, que o que me atrai é o estilo Tibia, e não o estilo GBA.
     
    Ficarei de olho no desenvolvimento do projeto. Desejo sucesso.
     
    Abraço.
  15. Upvote
    Gutorb recebeu reputação de mrdarkiness em [Projeto] Pokemon Online   
    Gostei da ideia, mrdarkiness.
     
    O que me mantém longe dos servidores de Pokémon atualmente é o fato de os monstros estarem em um ângulo diferente do mundo que os rodeia (coisa de virginiano), defeito este que não macula teu servidor. Só por isso já tens pontos comigo.
     
    Confesso, porém, que o que me atrai é o estilo Tibia, e não o estilo GBA.
     
    Ficarei de olho no desenvolvimento do projeto. Desejo sucesso.
     
    Abraço.
  16. Upvote
    Gutorb recebeu reputação de Lucasmml em Show off. Pokémon. Primeiras sprites.   
    Saudações!
     
    Estas são minhas primeiras sprites, sintam-se livres para criticar pois será deveras construtivo.
     
    Meu objetivo era desenhar e sombrear os pokémons ao estilo tibia, razão pela qual suas dimensões não são tão fieis ao anime.
     
    Seguem as sprites feitas no paint:
     

  17. Upvote
    Gutorb deu reputação a Administrador em [Show Off] Daniel   
  18. Upvote
    Gutorb deu reputação a Bruno em Vanaheim global open source   
    m método diferente de agir. Escolhas diferentes, um projeto surpreendente, e o melhor é open source. Sim, você pode ter acesso a este servidor que estou desenvolvendo em parceria com a Serversoft para você.

    Um servidor com uma mega estrutura para suportar seus jogadores online sem nenhum problema como: debug, bug de clonagem, instabilidade entre diversos outros dos servidores free's disponíveis para download nessa vasta internet tibiana.

    Uma inovação no ramo de OTservers, distribuindo não só a datapack como as sourcers e os sistemas, absolutamente tudo que você procura. Basta baixar, compilar... Mas eu não sei compilar. Não há problema nisso, o OTPanel da Serversoft faz tudo isso para você. Basta clicar num botão de "play" e ver a mágica acontecer.

    O projeto Vanaheim, foi criado com o intuito de ser inteiramente grátis para toda a comunidade. Um servidor no qual a diversão é o fator principal, um projeto com viabilidade absoluta por todos os tibianos.

    O projeto conta com uma área exclusiva no GitHub para que todos possam acompanhar a evolução do mesmo, dia a dia, diversas atualizações estarão disponíveis a todos. Desde uma action até uma modificação na source vocês terão acesso.

    O servidor conta com um mapa Global Full, quando eu digo full, quero dizer que está 99.99% do mapa completo, sem bugs entre outros.
    Um servidor que você escolhe a rate experience/skill que desejar, ele vai se adaptar! Você pode escolher se quer ou não que as quests tenham as missões originais 100%!
     

    GITHUB  
    Para acompanhar e baixar o servidor atualizado, segue o link do nosso projeto no GitHub:

     

    DOWNLOADS  
     
    Servidor
    Mapa
    Yasir
    Scan
     

    CRÉDITOS
    TFS Team
    Orts Project
     
  19. Upvote
    Gutorb deu reputação a grilado13 em Criar um servidor em MySQL com site (Windows)   
    Introdução
    I - Baixar os arquivos necessários
    II - Configurando seu banco de dados
    III - Editando seu servidor
    IV - Configurando um website
    V - Erros comuns

    I - Baixar os arquivos necessários
    Primeiramente, você terá; que baixar o software onde você colocará seu website e seu banco de dados.
    Recomendados: WAMP - XAMPP - VertrigoServ

    Segundo, agora você; terá que baixar o servidor (OTServ). Podemos encontrar uma variedade enorme aqui mesmo: LINK ( http://www.xtibia.com/forum/forum/596-downloads-de-otserv/ )

    Agora, baixe o website (se for gesior, baixe de acordo com a versão do seu servidor):
    Recomendados: Modern AAC - gesior AAC - Znote AAC
    (todos podem ser encontrador aqui mesmo no XTibia - http://www.xtibia.com/forum/forum/581-downloads-de-websites/ )



    II - Configurando seu banco de dados
    Agora iremos começar a configurar seu banco de dados.
    Caso use WAMP

    Caso use XAMPP

    Caso use VertrigoServ


    Criando um banco de dados (PhpMyAdmin)



    Pronto, você já tem seu banco de dados configurado.

    III - Editando seu servidor
    Para ele funcionar, a única coisa que você precisa é modificar seu banco de dados
    Caso queira utilizar IP Fixo, veja esse tutorial ~~> http://www.xtibia.com/forum/topic/232510-usando-ip-fixo-no-ip/

    Vá até a pasta de seu OtServ e abra seu "config.lua" com o Bloco de notas.



    Agora seu servidor já está pronto para ficar Online

    IV - Criando um website

    Primeiramente:
    WAMP - Você irá colocar seu site na pasta c:\wamp\www
    XAMPP - Você irá colocar seu site na pasta c:\xampp\htdocs
    VertrigoServ - Você irá colocar seu site na pasta c:\vertrigo\www (ou caso esteja na pasta de instalação padrão C:\Program Files (x86)\VertrigoServ\www )

    A respeito do ModernAAC

    ModernAAC - Modo 1 (Sem Instalador)


    ModernAAC - Modo 2 (Com Instalador)


    gesior AAC (com instalador)


    Znote AAC




    PS: Caso alguma informação esteja incorreta, por favor, me envie uma MP para corrigir a mesma.
    Changelog:
     
     
  20. Upvote
    Gutorb deu reputação a Mudrock em OTserver tudo que você precisar saber!   
    AVISO* CASO QUERIA ACHAR RAPIDO UMA PARTE ESPECIFICA,
    UTILIZE CTRL+F PARA A PROCURA RAPIDA

    para isso Criei um pequeno Sumário


    Olá galera.

    SUMARIO

    Introdução......................................................................................................................................1.0
    Entendendo sua internet.................................................................................................................1
    Distribuição dos IPS...............................................................................................................................1.1.2
    meu IP / IP's..........................................................................................................1.1.3
    Porque meu Servidor nao fica ONLINE ................................................................1.1.4.
    Criando IP FIXO ........................................................................................................... 1.1.5.
    Bugs.......................................................................................... 2.0
    Entendendo o config.lua ..................................................................... 2.2.1


    Introdução Estou criando este pequeno tutorial por alguns motivos.
    Um deles é que a maioria dos que já estão por ai tem muitos termos técnicos que dá até medo de ler, o problema é que como há muito copiar-colar pela net, o pessoal nem ao menos se dá o luxo de verificar se o que se está escrevendo é certo ou não.
    Outro bom motivo é que na maioria o autor para no meio do post, manda você fazer uns malabarismos pulando tantas partes e parece que nem ele mesmo sabe o que esta fazendo.
    Vou tentar resolver alguns desses problemas com esse único tópico.
     


    1. Entendendo sua Internet  

     
     
    Antes de começar, precisamos entender o mais importante sobre colocar um servidor online.
    A nossa internet.
    Muitos acham que acessar o Facebook é ter todo conhecimento que se precisa sobre a internet para ter um servidor online ou mesmo ter algum outro recurso interessante, mas na verdade estão totalmente enganados.
    Para ter recursos mais específicos pela internet é preciso conhecimentos técnicos que vai além do conhecimento leigo que muitos têm, e um deles é o bom entendimento da comunicação e funcionamento de redes de computadores.
     

    1.1.2. Distribuição dos IP's  

     
     
    Como a maioria dos tutoriais que vejo por ai me arrepiam com esse assunto, vou começar por ele.
    Sabemos que quando nos conectamos na internet pode haver dois tipos de distribuição de IPs
    O fixo (estático, IP que não muda nunca) e o dinâmico(IP que muda toda hora que você desconecta e se conecta novamente).
    Isso acontece por que não existem endereços IP suficiente para todos dentro da internet então se fosse distribuído IP fixo para cada pessoa, os que viriam a acessar a rede mais para frente não poderiam ter o acesso já que todos os IPs estariam em uso e em uma rede de computador não pode haver dois IPs iguais (Na verdade se todas as pessoas tentarem se conectar ao mesmo tempo não haverá endereço IP suficiente para serem distribuídos, eles vem tentar resolver isso com o iPV6). Por esse motivo que se distribui IP dinâmico para se acessar a internet.
    Toda vez que acontecer uma desconexão somente por uma grande coincidência se obterá o mesmo endereço IP que tinha anteriormente.
    Como toda a rede de computador é baseada em pontos com endereços imutáveis também há a distribuição dos IPS fixos (estáticos), esse caso é muito importante, imagine só você ter que ir a um banco pagar uma conta e toda hora ele estiver com um endereço diferente, como saberíamos aonde ir?
    Nesse caso, pontos específicos da internet possuem um endereço FIXO para que os programas saibam procurar por recursos, por um exemplo, quando você digita um endereço no navegador, www.seila.com, como você acha que o navegador encontra o site ?
    Funciona mais ou menos assim.
    Ele tem no código dele o IP de um servidor que contem o inicio de toda a amarração de onde se encontram os sites da internet, então o navegador vai até esse endereço IP e pergunta "olha, estou procurando site seila.com" como encontro ele?
    Nesse momento esse servidor passa o endereço IP que também é fixo do próximo servidor que vai passando os endereços de outros servidores e vai te redirecionando até encontrar o site que você procura, imagine se por algum equivoco esse endereço IP mudar?
    A INTERNET PARA!!!!

    1.1.3. meu IP / IP's  

     
     
    ou logo ao ponto!
    O que quero mostrar aqui é o seguinte, ou você tem um IP FIXO que é caro, ou você tem um dinâmico que é o normal.
    Não existe esse negocio de
    "COMO CRIAR UM SERVIDOR OT COM IP FIXO"!!!!!
    Isso é BESTEIRA, se o seu IP é dinâmico e você não esta pagando um fixo então ele é DINÂMICO, não tem macumba nesse mundo que faça um IP dinâmico virar fixo sem desembolsar uns R$200 por mês!
    O Nome correto para essa baboseira que se vê por ai pode ser um monte de coisas uma delas é.
    “COMO CRIAR UM OT COM URL FIXA PARA REDIRECIONAR PARA O SEU SERVIDOR!”
    Pois é isso que acontece, o cara quando digita meuserver.seilaoque.com:7171 o que vai acontecer é o seguinte,
    Você com certeza se inscreveu em um desses sites de redirecionamento e instalou o programa que eles pedem para ser instalado, ai toda X que o seu IP mudar esse programa vai se conectar no site e atualizar a URL que você escolheu para ser redirecionada ao seu IP , quando alguém tentar conectar no servidor OT em meuserver.seilaoque.com:7171 o site vai enviar uma mensagem a para o cliente falando, cara acessa esse IP aqui (o IP que estiver na base do site) que você consegue a conexão, e então o cliente acessa o SEU IP QUE É DINÂMICO.

     
    1.1.4. Porque meu Servidor nao fica ONLINE ?  
    Apos toda essa explicação aula dá para tentar explicar por que o OT não fica ON.
    Primeiramente, acho que todos os modens que vem das operadoras de internet estão em modo ROTEADOR (ROUTER).
    Sabendo se isso, vamos pensar um pouco no processo.
    Primeiro Carregamos nosso OT certo?
    Após toda a carga, abrimos o cliente e usamos o ipchanger nele (fazemos isso pois como expliquei no inicio, programas precisam saber o endereço IP Fixo dos locais para se conectar, e ele nada mais muda um IP fixo dentro do cliente para o IP do servidor que você vai se conectar) trocado o IP que geralmente colocamos 127.0.0.1 (Não importa o IP da sua rede, esse IP sempre indica o IP da maquina atual por padrão do protocolo TCP/IP), clicamos em Login e vemos nosso boneco logado no servidor correto?
    Ai, o que pensamos em fazer?
    Corremos no meuip.com e copiamos o nosso IP que aparece lá, distribuímos para todos os nossos amigos ficamos todos naquela ansiedade, e quando todos clicam em Logar no server vem aquela decepção.
    MAS QQ HOUVE??
    QQ Houve é que você distribuiu O IP DO SEU MODEM MAS O SEU OT ESTÁ RODANDO NO IP DA SUA REDE INTERNA!!!!!!!!!!!
    O modem não esta esperando nenhuma comunicação na porta 7171, entendeu?
    Mesmo você acessando do seu PC qualquer que seja o endereço pela NET e você ver as conexões acontecendo, todas essas conexões aconteceram PQ o outro lado estava esperando uma conexao, você ligar um servidor no seu PC não vai falar para o MODEM, Ow idiota, to com um servidor ligado aqui, quando alguém chamar ai na porta 7171 é para você vir até esse PC.
    Para que isso aconteça, precisa-se falar para o MODEM o que você que.
    -Jumento, se alguém bater ai procurando a porta 7171, por favor, redirecione para o IP blablabla porta blabla.
    Como fazer isso.
    Bem, ai você precisa fazer sua correria, cada modem tem um nome ou opção e para isso o melhor é pegar o modelo dele e puxar o manual.
    Geralmente na opção NAT, ou na opção Virtual Server, Port Forward alguma coisa assim.
    O que se precisa fazer é sempre criar uma configuração nova e escolher um nome para essa configuração depois configurar os parâmetros.
    Eu geralmente coloco OT ou quando rodo varias instancias de OT coloco OT7171 OT8181, ou sei lá o que, você escolhe o que quiser.
    Após isso, ele vai pedir as portas iniciais e finais, aqui você também precisa colocar de acordo com o seu OT, e IP o ip da maquina que está o OT dentro da sua rede, se o seu OT estiver em 192.168.0.14 coloca 192.168.0.14, MAS NUNCA COLOQUE 127.0.0.1 pq nesse caso seria o IP do próprio MODEM.
    Tendo entendido tudo isso procure o manual do seu MODEM leia umas 500Xs estude cada item dele atenciosamente ENTENDA TUDO DELE, vire um mestre de configurações de seu modem ai você já estará apto a fazer qualquer um se conectar no seu OT e até mesmo
    teleportar pessoas.
     

    1.1.5. Criando IP FIXO  

     
     
    Como disse, isso pode ter um monte de nomes (menos o que está logo à cima).
    COMO CRIAR UM OT COM URL FIXA PARA REDIRECIONAR PARA O SEU SERVIDOR!
    COMO CRIAR UM REDIRECIONAMENTO FIXO PARA SEU OT!
    EU NÂO VOU FALAR MAIS JUMENTISSE!!
    COMO TER UM ENDEREÇO ETERNO PARA SEU OT!!
    QQ COISA JESUIS!!!!

    Essa parte é baba.
    Primeiramente precisa procurar na internet por "dynamic dns free" ou alguma coisa assim.
    Alguns que eu geralmente usava são os: dyndns, o no-ip e o cjb.net
    Encontrando um de seu gosto, é só ver se ele tem algum programa que monitora a mudança de IP, se cadastre, crie um domínio gratuito, baixar e instalar o programa rode-o em sua máquina e configure colocando sua senha e login, ele vai ficar atualizando o seu IP no servidor dos caras de tempo em tempo e já era.
     

     
    2. BUGS!!!  

     
     
     
    Acabamos de escolher uma distribuição, baixamos os arquivos e quando rodamos a primeira X, vem uma mensagem blablabla erro blablaba.
    Vontade de jogar tudo na parede é a menor nessas horas.
    Vamos entender por que deu esses erros.
    Quando se desenvolve um programa, geralmente a linguagem de programação que se usa não possui todos os recursos já disponíveis de antemão que precisamos para o programa ficar completo, ela pode até dar toda a capacidade que se precise más nem sempre já está disponível, ai precisamos escrever mais e mais códigos, geralmente algumas pessoas se dão o trabalho de não criar programas, mas sim bibliotecas com funções já prontas dentro delas, o que acontece é que se você sabe que a função que se quer usar existe em uma biblioteca pronta, geralmente se usa essa biblioteca, e quando outras pessoas vão rodar o programa e no computador está faltando a biblioteca, o Windows avisa acusando o erro, outro problema que se acontece é o seguinte, a mesma linguagem de programação que usamos para desenvolver um programa possui tantas funções internas que se o compilador fosse colocar tudo dentro do nosso programa ele ia ficar com uns 200 Megas só o executável, então essas funções também vem dentro de bibliotecas, por esse motivo quando se cria um programa geralmente ele usa os recursos de algo que chamamos de “RUNTIME Library” que nada mais é que um montão de arquivos DLL’s que ficam na pasta System do Windows.
    No mesmo caso se dentro do computador que você vai rodar o OT não contiver o RUNTIME da linguagem de programação que ele foi feito o Windows vai reclamar.
    Os erros mais comuns que se acontece na hora de rodar um OT são os seguintes

    BlaBlaBla luaxxx.dll -> Nesse caso o Windows está avisando que quem fez o OT usou a biblioteca Lua, e que ele não está encontrando-a, o mais apropriado a se fazer nesse caso é entrar no site do criador do Lua e baixar a versão que se pede

    BlaBlaBlla MSVCP blablabla.dll -> Esse erro depende muito, pode ser outro nome ali, geralmente isso está relacionado a falta do RUNTIME do Visual C++ onde MS significa Microsoft, VCP significa Visual C Plus(eu acho que é isso) e o resto é a versão, por exemplo se no blablabla estiver 120 é a versão 12.0 ai é sou buscar no google como “RUNTIME Library VC 12” ou melhor ainda “Download Visual C++ Redistributable 12”, lembre se, seja experto e baixe somente se aparecer o Link da Microsoft.
    O grande problema do erro a cima é que se o OT tiver sido compilado com um C++ de outra empresa, o erro será outro ai você vai ter que ficar esperto nisso.
    Com essa primeira parte dos bugs corrigidos podemos ir para a segunda parte de Bugs.
    Geralmente nos OT existem duas tipos de bugs, os que o Windows avisa que nesse caso geralmente acontece por falta de arquivos e bibliotecas e esses erros conseguimos identificar pois aparecem janelinhas de erro do próprio Windows e os erros internos do próprio OT que nesse caso a maioria dos erros estão relacionados a configuração que o servidor precise para carregar e geralmente são mostrados no console do OT, essas configurações são diversas e as mais comuns estão relacionadas ao carregamento do MAPA e a conexão com a base de dados.
    Entendam que LÊR é primordial para tudo, se aparecer uma mensagem e você tiver paciência de entender essa mensagem com certeza vai resolver o problema.

    MySQL blablabla-> Esse é um tipo de erro que com certeza vai te frustrar muito, e serão dezenas e dezenas de milhares de vezes então se quer ser um SUPREMO EXCELENTE ADM de OT dominar o conhecimento da base de dados que ele utiliza é primordial.
    Mas o que é esse tal de MySQL, para entender isso você precisa entender o seguinte Seu OT terá varias contas de usuários e vários itens para esses usuários, e você terá que deixar isso guardado em algum lugar para que eles possam ter acesso aos itens sempre que quiserem, guardar tudo isso de uma forma segura e pratica teria que ser desenvolvido mais código da parte dos desenvolvedores dos OT, para economizar tempo eles optaram por utilizar sistemas já prontos de bancos de dados e uma das opções se chama MySQL entenda então que o MySQL é o cara que vai tomar conta de todos os dados que o seu OT precisa guardar para ser lembrado mais tarde, dês de os itens dos usuários do seu servidor até mesmo a senha e login deles.
    Sabendo isso vamos aos erros.

    MySQL blablabla Cant Connect blablabla -> Esse problema acontece por que o MySQl é um programa a parte e para que o OT possa se conectar com os dados no MySQL é preciso instalar ele na máquina sua instalação e uso foge de nosso escopo.

    MySQL blablabla Access denied blablabla -> O fato de o MySQL estar instalado na máquina não significa que o OT conseguirá se conectar a ele, isso acontece pelo motivo que o MySQL também é um servidor, mas nesse caso um servidor de base de dados, e como empresas o utilizam para manter dados de clientes e mesmo outros tipos de dados que são restritos a apenas uma parte de pessoas os Servidores de Dados precisam dar confiança e segurança, uma delas é negar acessos não autorizados, toda instalação que se faz do MySQL é gerado o usuário Administrador, por padrão esse usuário tem o nome de root, e sempre é pedido uma senha para esse usuário, com essa conta de usuário vc é capaz de criar outros usuários e também novas tabelas para o MySQL, então precisamos configurar o OT para ele se conectar com o servidor de dados, uma coisa legal do OT é que ele tem um arquivo de configuração chamado config.lua e é de extrema responsabilidade do ADM dominar toda a configuração desse arquivo.
    Vamos utilizar esse arquivo para configurar a conexão com o servidor de dados.

    Abrindo o config.lua em um editor de sua preferencia vc precisa encontrar os seguintes itens:
    “mysqlHost” ,”mysqlUser”,”mysqlPass”,”mysqlDatabase”,”mysqlPort”.

    “mysqlHost” : Corresponde ao IP ou url de onde se encontra hospedado o servidor MySQL, se for na mesma maquina onde se encontra o OT basta colocar 127.0.0.1.
    ”mysqlUser”: Corresponde ao nome de usuário MySQL que vai ser utilizado para o OT se conectar ao MySQL, geralmente o pessoal usa o usuário root, mas bons administradores de Servidores de Dados cria um novo usuário com acesso a apenas a base que o OT vai se conectar.
    ”mysqlPass”: Esse item é a senha do usuário que se vai conectar ao MySQL
    ”mysqlDatabase”: Base de dados ou “Schema” que o seu OT utiliza para acessar as tabelas.
    ”mysqlPort” : Na hora que se instala o OT pede-se uma porta de acesso, essa porta geralmente é 3306

    Normalmente o seu config.lua na parte de acesso a servidor MySQL deve ficar assim
    mysqlHost = "127.0.0.1"
    mysqlUser = "root"
    mysqlPass = "senha"
    mysqlDatabase = "otServer"<-no meu caso é esse mas vc pode colocar aqui de acordo com onde suas tabelas vão estar no servidor MySQL.
    mysqlPort = 3306
    mysqlSock = ""

    MySQL blablabla Unknow database -> Lembra dessa configuração mysqlDatabase = “otServer” então no config.lua vc está falando para o seu OT que a base de dados que vai usar para guardas as tabelas e dados do sevidor é “otServer” e se esse erro está acontecendo é pelo motivo de que vc não criou ainda essa tabela no MySQL.
    Vamos cria-la, acesso o prompt do Windows (digitando cmd em procurar ou Prompt de Comando em Acessórios) e digite
    mysql –uUsuarioAdministradorDoMysql –pSenhadoUsuario[ENTER](isso vai fazer vc acessar o console do Mysql e fique ligado nos espaços). Você vai ver que o prmpt vai ficar “mysql>”.
    Digite o seguinte comando:
    CREATE DATABASE `otserver` /*!40100 DEFAULT CHARACTER SET utf8 */;[ENTER]

    Terá que aparecer algo mais ou menos assim:
    Query OK, 1 row affected (0.00 sec).

    The database you have specified in config.lua is empty->Apesar de esse erro não estar especificando o MySQL o erro ainda está acontecendo por causa dele.
    Mesmo tendo se criado a base de dados ainda é preciso criar as tabelas, note que mais para frente ao erro está “please import the schema.sql to your database”.
    Geralmente a distro que vc pega tem um arquivo chamado schema.sql e nela está contido todo o script SQL para se criar as tabelas.
    Para ficar mais fácil crie na raiz de sua unidade C: um diretório temporário e coloque o arquivo schema.sql nesse diretório no meu caso criei o diretório otMysql.
    Acesse novamente o prompt do Windows e digite cd\diretorio que vc criou e colocou o arquivo schema.sql, no meu caso cd\otMysql[ENTER] acesse novamente o console do mysql.
    Quando estiver no console do mysql digite o seguinte, use nomeDasuaTabela, no meu caso
    use otserver[ENTER], note que esse comando vai fazer vc mudar da base de dados seja lá qual vc esteja para a base de dados onde vamos criar as tabelas para o nosso OT, se aparecer Database changed, o comando foi aceito com sucesso.
    Para ter certeza de que vc esteja na base de dados certa digite o comando status[ENTER]
    Na lista que aparecer procure pelo item Current database: se for o nome da tabela do seu OT está certo.
    Agora vamos executar os scripts SQL que está no arquivo.
    Digite \. schema.sql(ou o nome do seu arquivo que contém os scripts para criação das tabelas ) note que” \.” é o comando e o resto é o nome do arquivo(de atenção ao espaço digitado entre \. E o nome do arquivo).
    Vão aparecer várias linhas iguais a essa:
    Query OK, 0 rows affected (0.02 sec),
    aguarde até que todas as tabelas tenham sido criadas.
    Esses são os erros mais comuns que temos quando geralmente estamos criando um servidor do zero.


    2.2.1 Entendendo o config.lua Ip-> Aqui vamos colocar o IP de seu servidor se vc for rodar o servidor apenas para uma rede interna então coloque aqui o ip da máquina, se ele for 192.168.0.3 então coloque
    ip = "192.168.0.3", se vc for rodar ele para que seja acessado de pessoas externamente, aqui precisa colocar o seu IP público(IP DO SEU MODEM) mas se vc estive usando redirecionamento de url tipo blablabla.meuserver.com então vc precisa colocar sua url aqui e ai ficaria
    ip=” blablabla.meuserver.com”

    loginProtocolPort e statusProtocolPort-> precisam ser a mesma porta, por padrão essas portas são 7171 e é a porta que vc fornece para os seus amigos junto com o ip, não se esqueça de liberar a porta no modem.

    gameProtocolPort-> também é um numero de uma porta, por padrão o pessoal usa 7172 pode ser qualquer uma e também não se esqueça de liberar no modem.

    mapName -> Aqui você específica o nome do arquivo do mapa do seu OT e o mapa precisa estar dentro do sub diretório world no diretório data, no meu caso mapName = "Xedegux".
     
    Créditos : Mudrock
  21. Upvote
    Gutorb recebeu reputação de Filho do Beeny em Show off. Pokémon. Primeiras sprites.   
    Saudações!
     
    Estas são minhas primeiras sprites, sintam-se livres para criticar pois será deveras construtivo.
     
    Meu objetivo era desenhar e sombrear os pokémons ao estilo tibia, razão pela qual suas dimensões não são tão fieis ao anime.
     
    Seguem as sprites feitas no paint:
     

  22. Upvote
    Gutorb recebeu reputação de Wend ll em Show off. Pokémon. Primeiras sprites.   
    Saudações!
     
    Estas são minhas primeiras sprites, sintam-se livres para criticar pois será deveras construtivo.
     
    Meu objetivo era desenhar e sombrear os pokémons ao estilo tibia, razão pela qual suas dimensões não são tão fieis ao anime.
     
    Seguem as sprites feitas no paint:
     

  23. Upvote
    Gutorb recebeu reputação de Uddy em Show off. Pokémon. Primeiras sprites.   
    Saudações!
     
    Estas são minhas primeiras sprites, sintam-se livres para criticar pois será deveras construtivo.
     
    Meu objetivo era desenhar e sombrear os pokémons ao estilo tibia, razão pela qual suas dimensões não são tão fieis ao anime.
     
    Seguem as sprites feitas no paint:
     

  24. Upvote
    Gutorb deu reputação a SamueLGuedes em [Encerrado] Dúvida ao renomear o Client e ao abri-lo no RME.   
    E o seguinte, voce pode mudar os arquivos, ".exe .spr .dat" para qualquer nome, e so na hora de abrir o RME, que o nome do Dat eo Spr tem que estar Tibia. o que eu faço e o seguinte, eu tiro uma copia dos dois arquivos, e deixo um com o nome que eu quero, e o outro eu deixo Tibia, assim não tem erro na hora de logar no Servidor, nem na hora de Abrir o RME.
     
    e sobre o Client, todos os clientes, sao especificados para abrir tal SPR e DAT, no caso do Tibia. o client so abrira se o nome estiver Tibia.Dat, Tibia.spr e Tibia.pic, para pokemon no caso do PDA, e POK.dat POK.spr e POK.pic. pelo oque eu entendi, voce quer mudar os nomes do SPR e DAT sem que de erro na hora de abrir o client, então fas o seguinte, existe uma maneira fácil e simples de mudar isso. vá nesse site: http://vapus.net/customclient
     
    nesse site, voce cria seu proprio cliente, aqui esta um tutorial: Client Próprio:
    Creditos: DinoAdmin
     
    pelo o que eu entendi foi isso que você pediu. espero ter ajudado =D. abrçs
  • Quem Está Navegando   0 membros estão online

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