Os Melhores
Conteúdo popular
Mostrando conteúdo com a maior reputação em 05/07/23 in todas as áreas
-
Permita que os players deixe a lojinha online mesmo depois de fazer logout LojinhaOffline.zip Como instalar: Apenas subistitua e dê permissão Testado apenas na versão 1512 pontos
-
1 ponto
-
Olá a todos, estou buscando trazer tutoriais de coisas mais complexas, para que desenvolvedores que estão começando a pouco tempo, possa crescer ainda mais seu conhecimento. Vim trazer algo que poucos tem conhecimento e também tiveram curiosidade de saber, sobre mapas e sobre fixação de mapas. Quando eu construi o New History em 2018, eu customizei ele ao máximo e com isso eu aprendi bastante a trabalhar com mapas e me foi despertado muita curiosidade sobre. Hoje trabalhando com as novas versões, eu tive que adicionar na minha build mais de 25 mapas e vim ensinar vocês como adicionar novos mapas no servidor da forma correta (gs.conf). Lembrando, que todo o sistema de exportação e downgrade não precisa ser ensinado, pois há uma ferramenta perfeita para esse trabalho do Steve Langley (Skype: narrowengineer), o AngelicaMapEditor. Só deixando um adendo, a ferramenta não gera npcgen.data, path.sev e arquivos de configuração dos mapas (Sem esses, os mapas não ligam), então recomendo antes de tudo, clonar um existente (Limpo) e adicionar os novos arquivos exportados. Agora vamos para o que interessa! Vou usar como exemplo o mapa:a101 (is101). Você precisará abrir o arquivo instance.txt (element/configs.pck/instance.txt) e gs.conf (PWServer/gamed/gs.conf) Estando com os dois abertos, você irá pesquisar no instance.txt: "a101" Estará mais ou menos assim: ////////////////////////////////////////////////////////////// "北陆-蜃渊雪国遗址" { 91 "a101" // path "loading/a101" // loading background 2,2 // row, column 0 "r0_0-c1_1-l0.cfg" {} 0 } ////////////////////////////////////////////////////////////// Somente disso que precisaremos. Informações que iremos precisar para o servidor: 91 = ID do mapa (tag) “a101” = nome do mapa 2,2 = Row / Colum Sempre bom lembrar que esses valores podem alterar dependendo de qual mapa você irá utilizar, então não se apegue a isso. Agora vamos para o gs.conf Ensinamento básico, se você reparar: São 2 tipos de mapas: world_servers e instance_servers. O que você precisa definir primeiro é isso, se será um mapa aberto (world_servers), ou se será uma dungeon ( quando desmonta o grupo todo mundo é expulso e ela reseta) instance_servers. Bem, escolhendo isso, você irá definir como vamos solicitar esse mapa depois do último mapa definido em world_servers ou instance_servers, ficando assim: world_servers = gs01;/*imagine vários mapas definidos*/;is101; Então você percebeu que vamos chamar nosso mapa de is101, mas você pode colocar qualquer nome (nessa etapa e nas demais definições), exemplos: zd411, ab587, z57… Como você é inteligente e já percebeu, eu defini meu mapa como um mapa aberto, ou seja, um world_server. Agora você vai terminar de configurar seu mapa, no final do arquivo gs.conf. Estarei explicando logo após o código. ;----------------------------------------------------------------------------------------------------- [World_is101] ;-------- Se o seu mapa é um world_servers World_Nome, caso contrário Instance_Nome ----- index = 126 tag = 91 base_path = a101/ limit = allow-root; grid = {80,80,25,-1000.0,-1000.0} base_region = {-1024.0,-1024.0} , {1024,1024.0} local_region = {-1024.0,-1024.0} , {1024,1024.0} cid = 0,2,13 [Terrain_is101] ;-------- Mude o Nome ----- szMapPath = map nAreaWidth = 512 nAreaHeight = 512 nNumAreas = 4 ;----- Normalmente é uma soma de Cols + Rows (Salvo exceções) nNumCols = 2 ;----- Numero de Columns no instance.txt nNumRows = 2 ;----- Numero de Rows no instance.txt vGridSize = 2.0f vHeightMin = 0.0f vHeightMax = 800.0f [MsgReceiverTCP_is101] ;-------- Mude o Nome ----- type = tcp listen_addr = INSTANCE101:12009 ;-------- Caso seja localhost, declare, mas lembre sempre de alterar a porta por exemplo 12010,12011.. ----- so_sndbuf = 16384 so_rcvbuf = 16384 tcp_nodelay = 1 listen_backlog = 10 [MsgReceiverUNIX_is101] ;-------- Mude o Nome ----- type = unix listen_addr = /tmp/gssock_is101 ;-------- Mude o Nome ----- so_sndbuf = 16384 so_rcvbuf = 16384 listen_backlog = 10 ;----------------------------------------------------------------------------------------------------- Bem, essa é a configuração do mapa a101. Tudo dependerá do tamanho do row e da column que pegamos na instance.txt Primeiro de tudo, você terá que adicionar um Index, lembrando, esse valor não pode ser igual outro mapa existente (dará conflito e os dois serão desligados), então use um valor depois do último mapa configurado, lembre-se também, que esse valor não pode passar de 128 (na 1.5.5), caso contrário, os monstros e npcs afundam no mapa. ( Usei 126). você terá que adicionar o id (Tag) para o ID do mapa no instance.txt, se o ID tiver errado (diferente do client), você toma disconnect ao tentar acessar o mapa. ( Usei 91). base_path é o caminho onde está o seu mapa, nesse caso, você altera apenas o nome ( Usei a101/ ). limit são variáveis de liberações do mapa, segue os exemplos em um fórum externo: [Conteúdo Oculto] Grid ( Como definir o valor ): O valor de Grid dependerá do seu Row / Column. Exemplos: Se o mapa for 2 / 2: 80,80,25,-1000,-1000 Se o mapa for 3 / 3 120,120,25,-1500,-1500 Se o mapa for 4 / 4: 160,160,25,-2000.-2000 Os exemplos acima são bem explicativos, caso não entendeu, basicamente: Você vai multiplicar o valor de grid x 25, ele dará o resultado total, ou seja: 80 x 25 = 2000. 2000 / 2 = 1000, então nesse caso: -1000, -1000. 120 x 25 = 3000. 3000 / 2 = 1500, então nesse caso: -1500, -1500. Assim por diante. base_region e local_region, você consegue esse valor através do AngelicaMapEditor. Os demais valores importantes de serem configurados eu deixei comentário no exemplo acima. Em caso de dúvidas fique à vontade em perguntar.1 ponto
-
1 ponto
-
Como Instalar no ubuntu Verificação dos seguintes programas instalado na maquina. Comando: apt-get install openjdk-6-jre (Java essencial para o CPW) Comando: apt-get install apache2 (http pasta www) Comando: apt-get install mysql-server (Database) Após efetuar o download, jogue-o na pasta (cd /var/www) do seu Virtual Box ou Dedicado. Ao colocá-lo, (caso você não tenha) baixe o pacote de extrair .rar, utilizando o seguinte comando.: apt-get install unrar e para extrai-lo unrar x patcher.rar Quando você terminar de extrair, será criado uma pasta com nome de CPW, beleza! Até ai está tudo bem. Vamos fazer algo, que em muitos tutoriais não é dito, sobre a permissão de visualização. Que sempre deixam ela com 0777 ou 0755 e assim, você vai ser hackiado facilmente. Você irá da os comandos à seguir em seu terminal (puTTy) Obs: Certifique-se que você está no diretório (cd /var/www/CPW) Após isso: chmod -R 0700 config chmod -R 0755 files chmod -R 0755 lib chmod -R 0755 log chmod -R 0755 pw-cpw.jar chmod -R 0755 README chmod -R 0755 cpw Beleza! Agora vamos instalar ele. Acredito que você, já muito inteligente terá o phpmyadmin instalado em sua máquina. Caso não tenha, baixe-o. apt-get install phpmymadmin Logue-se no phpmyadmin e crie um novo banco de dados com nome de "files" não é necessário ser esse nome, poderá ser qualquer um à seu gosto. Volte ao terminal SSH (puTTy) e digite ./cpw install Quando você dér esse comando ele irá pedir as configurações do seu MYSQL(Database) é fácil, e você, claro, já sabe oque é. =] 1° - IP deixe localhost 2° - Usuário MYSQL e geralmente o padrão é "root" 3° - A senha do MYSQL. 4° - Database, é o nome que você criou, igual eu disse ali encima. "Logue-se no phpmyadmin e crie um banco de dados com nome de "files" digite o nome que você pôs. Agora, entre no WinSCP e vá até a pasta cd /var/www/CPW/files/CPW você irá vêr 3 diretórios (element/patcher e launcher) crie um novo diretório com nome de "info" e dentro dele crie um arquivo com nome de "pid" e dentro dele digite 101. Beleza. Volte ao putty e digite ./cpw initial Esse comando irá criar a Chave 0 Agora iremos lá na pasta de configuração cd/var/www/CPW/config/patcher.conf Você irá vêr um linha assim.: "remove-files=true" altere "true" para "false" e dê um ctrl s para salvá-lo. Agora, vamos até o nosso client! Vá na pasta config/element/version.sw e deixe assim: 1 0 Salve e volte para a nossa pasta raíz. Vá até a pasta /patcher/server e no arquivo pid deixe pid=101 E salve-o. Agora é umas das partes importantes (updateserver.txt) que irá fazer conexão com o CPW e fazer o download dos arquivos que você ponha para atualizar. E ficará assim: "tutorial" "[Conteúdo Oculto]" O nome poderá ser qualquer um. "pw-patch, patch, cpw" Beleza, vá até a pasta (patcher) e jogue o executável patcher.exe para a pasta cd /var/www/CPW E depois o comando ./cpw x patcher.exe Esse comando irá fazer com que somente esse patcher funcione o CPW. Agora, pegue o patcher.exe do WinSCP e jogue-o na pasta "patcher" do client mesclando o antigo. Como criar uma atualização? Fácil! Você irá vêr 3 pastas (element/patcher e launcher) suponhamos que você queria atualizar o seu elements.data Fácil, vá até a pasta cd /var/www/CPW/files/new/element/ Dentro da pasta element crie um pasta com nome de "data" lá, você coloca os seus arquivos .data. No caso, elements.data Volte no terminal e digite (esteja no diretório padrão) cd /var/www/CPW e digite ./cpw revision Esse comando irá criar uma nova chave contendo o nosso novo elements.data E você irá fazer isso sempre que for atualizar! Detalhe, muito importante! Você que tem problemas com as letras cinesas que ficam "????.ecm/.gfx" na hora de atualizar. É muito fácil resolver! dpkg-reconfigure locales Maaaaaaaaaaaaaaas, tem um porém. Muitos administradores usam "Ubuntu" e não "Debian" que ao invés de atualizar ele gera erros e no debian é só você marcar a opção referente a UTF-8 Já no ubuntu é diferente, você tem que usar o editor vim ou nano para deixá-lo 100% Vá na pasta do CPW digite (locale) você irá vê algo assim LANG=pt_BR LANGUAGE=pt_BR: LC_CTYPE="pt_BR" LC_NUMERIC="pt_BR" LC_TIME="pt_BR" LC_COLLATE="pt_BR" LC_MONETARY="pt_BR" LC_MESSAGES="pt_BR" LC_PAPER="pt_BR" LC_NAME="pt_BR" LC_ADDRESS="pt_BR" LC_TELEPHONE="pt_BR" LC_MEASUREMENT="pt_BR" LC_IDENTIFICATION="pt_BR" LC_ALL= Então, "pt_BR" nunca que irá lê os arquivos interfaces, models etc. digite cd E depois sudo nano /etc/default/locale com esse comando você estará abrindo o editor de texto do linux. Ele vai mostrar a mesma coisa LC CTYPE="pt_BR" blábláblá. Apague TUDO! E cole o seguinte: LANG=en_US.UTF-8 LANGUAGE= LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL= Após colar isso, dê "CTRL O enter CTRL X" e depois sudo dpkg-reconfigure locales e dê reboot em seu Host! Beleza, agora, na hora de passar as atualizações para o CPW terá de ser em (.7z) Instale os pacote de 7z apt-get install p7zip p7zip-full p7zip-rar lzma lzma-dev e para descompactar 7z x nome_d.7z CPW-www.zip1 ponto