Líderes
-
Diego Rulez
MembroPontos191Total de itens -
luanluciano93
HéroiPontos5981Total de itens -
-
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 02/18/22 em todas áreas
-
Instalando Site e Compilando Source (Ubuntu 20.04)
Instalando Site e Compilando Source (Ubuntu 20.04)
GumayBrache reagiu a Diego Rulez por uma resposta no tópico
1 pontoNesse tutorial vou explicar como instalar tudo que é necessário para rodar qualquer site. Também ensino como compilar as sources OTX2 e TFS-1.3. Utilizarei a versão mais atual do Ubuntu, a versão 20.04. Iniciando Ao executar os comandos, algumas vezes será perguntado se você deseja continuar. Por padrão sempre aperte a tecla Y e em seguida a tecla ENTER do teclado, se houver algum ponto em que você precisara agir diferente eu irei indicar o que e onde fazer. sudo apt update sudo apt upgrade sudo apt install zip sudo apt install nano Instalando e Configurando NGINX sudo apt install nginx sudo nano /etc/nginx/sites-available/default Nesse arquivo deve ser adicionado a chamada index.php e deve ser removido o sinal # em algumas linhas. Vou deixar em vermelho as modificações que deverão ser feitas no arquivo. Após terminar a edição aperte CTRL+X, aperte Y, aperte ENTER (tudo isso para salvar o arquivo). server { listen 80 default_server; listen [::]:80 default_server; root /var/www/html; # Add index.php to the list if you are using PHP index index.php index.html index.htm index.nginx-debian.html; server_name example.com www.example.com; # pass PHP scripts to FastCGI server # location ~ \.php$ { include snippets/fastcgi-php.conf; # # # With php-fpm (or other unix sockets): fastcgi_pass unix:/var/run/php/php7.1-fpm.sock; # # With php-cgi (or other tcp sockets): # fastcgi_pass 127.0.0.1:9000; } } E agora, vamos reiniciar o serviço para que entre em vigor todas as alterações. sudo systemctl restart nginx.service Para testar se ocorreu tudo certo com a instalação, insira o IP do seu VPS no navegador. Se obtiver uma tela de Boas Vindas como na imagem abaixo. Só vá para o próximo passo se estiver tudo certo até aqui. Instalando MariaDB sudo apt install mariadb-server Instalando PHP sudo apt-get install php-fpm Instalando phpMyAdmin Ao executar esse comando, vai aparecer uma tela indicando para você selecionar o apache2 ou lighttpd, porém não selecione nenhuma opção, apenas aperte TAB e depois ENTER. Na próxima tela terá duas opções YES ou NO, aperte a tecla TAB para marcar a opção NO e depois aperte ENTER para prosseguir. sudo apt-get install phpmyadmin Após isso, execute o comando a seguir e em sequencia entre no site http://ipNumericoDoSeuServer/phpmyadmin sudo ln -s /usr/share/phpmyadmin /var/www/html Será nescessário criar um acesso, pois qualquer outra senha que você tenha definido anteriormente provavelmente não irá funcionar. Não esqueça de substituir as informações em evidencia pelas suas. sudo mysql -u root CREATE USER 'DIGITE UM LOGIN'@'localhost' IDENTIFIED BY 'DIGITE UMA SENHA'; GRANT ALL PRIVILEGES ON *.* TO 'DIGITE NOVAMENTE SEU LOGIN'@'localhost'; FLUSH PRIVILEGES; Após isso, acesse: 0.0.0.0/phpmyadmin. Onde você vai trocar o 0.0.0.0 pelo IP do seu VPS. Lembra da senha que você escolheu na instalação do MariaDB? É aqui que você vai usa-la. O usuário é root e a senha é que você escolheu. Depois clique em Banco de Dados e em seguida digite um nome para o banco de dados e clique em criar. Agora clique em importar, selecione a database e clique em executar. Transfira os arquivos do seu site para o diretório /var/www/html. Preste muita atenção nessa parte, pois os arquivos do site já devem estar dentro da pasta html, não pode ficar algo como /var/www/html/site. Após isso, abra o arquivo config.php do website que você deseja utilizar e coloque as informações sobre o banco de dados: nome, root, senha. Compilando a Source TFS 1.3 Entre no repositório do forgottenserver clique aqui Faça o download para seu PC e extraia o arquivo. Renomeie a pasta extraída para otserv e abra o famoso arquivo config.lua. Configure essa parte de acordo com seus dados, também adicione a última linha. ip = "digita o ip do VPS" -- MySQL mysqlHost = "127.0.0.1" mysqlUser = "root" mysqlPass = "digite a senha que você escolheu na instalação do Maria DB" mysqlDatabase = "digite o nome da database que você escolheu quando criou a database" mysqlPort = 3306 mysqlSock = "" passwordType = "sha1" Salve o arquivo e depois zipe a paste com a compactação .zip e envie para o diretório /home em seu VPS. Após isso, só executar em sequencia os comandos a seguir que estará compilado. apt-get install git cmake build-essential liblua5.2-dev libgmp3-dev libmariadb-dev-compat libboost-filesystem-dev libboost-system-dev libboost-iostreams-dev libpugixml-dev libcrypto++-dev cd /home unzip otserv.zip cd otserv mkdir build && cd build cmake .. make -j 2 mv tfs.. && cd .. Para abrir o fechar o servidor respectivamente, você vai usar: ./tfs killall -9 tfs Compilando a Source OTX 2 Entre no repositório do OTX2 clique aqui Faça o download para seu PC e extraia o arquivo. Renomeie a pasta extraída para otserv e abra o famoso arquivo config.lua. Configure essa parte de acordo com seus dados, também adicione a última linha. ip = "digita o ip do VPS" -- MySQL mysqlHost = "127.0.0.1" mysqlUser = "root" mysqlPass = "digite a senha que você escolheu na instalação do Maria DB" mysqlDatabase = "digite o nome da database que você escolheu quando criou a database" mysqlPort = 3306 mysqlSock = "" encryptionType = "sha1" Salve o arquivo e depois zipe a paste com a compactação .zip e envie para o diretório /home em seu VPS. Após isso, só executar em sequencia os comandos a seguir que estará compilado. apt-get install subversion autoconf build-essential pkg-config libboost-dev libgmp3-dev libxml2-dev liblua5.1-0-dev libmariadbclient-dev-compat ccache libboost-filesystem-dev libboost-regex-dev libboost-system-dev libboost-thread-dev screen libssl-dev libboost-iostreams-dev cd /home/ unzip otserv.zip cd otserv && cd sources sh ./autogen.sh && ./configure --enable-server-diag --enable-mysql --enable-root-permission && make -j mv theotxserver .. && cd .. Para abrir o fechar o servidor respectivamente, você vai usar: ./theotxserver killall -9 theotxserver1 ponto -
[TFS 1.5 - 8.60] STYLLER OT - 2023
[TFS 1.5 - 8.60] STYLLER OT - 2023
SkidMaster reagiu a luanluciano93 por uma resposta no tópico
1 pontoPara colocar online para outros jogadores, qualquer servidor funciona melhor em linux.1 ponto -
Alterar XYZ pra onde vai o teleport do pokemon.
Alterar XYZ pra onde vai o teleport do pokemon.
AlissonMath reagiu a JulianoZN por uma resposta no tópico
1 ponto1 ponto -
Recoloriri corpo do Hypno para shiny Hypno
1 ponto
-
[TFS 1.5 - 8.60] STYLLER OT - 2023
[TFS 1.5 - 8.60] STYLLER OT - 2023
SkidMaster reagiu a luanluciano93 por uma resposta no tópico
1 pontoFunciona com qualquer tutorial de como colocar um servidor tfs 1.x + online1 ponto -
Google Cloud Plataform
Google Cloud Plataform
thepops reagiu a Diego Rulez por uma resposta no tópico
1 pontoIntrodução O que eu quero falar aqui não é a parte técnica de segurança, desempenho e outros pontos. Quero falar sobre o dia a dia de alguém que pretende ser um administrador e que acabou de começar um projeto. Mesmo que você seja leigo e tenha dificuldades com a "tela preta" do Linux onde você digita os comandos, ainda assim vale a pena optar pelo Linux logo de primeira pelos seguintes motivos: Quando você for inaugurar seu servidor você vai querer que ele tenha uma boa estabilidade e não fique travando ou sendo derrubado e você vai conseguir isso apenas utilizando Linux, então pra que aprender a montar tudo no Windows se depois, de qualquer forma, você vai ter que aprender Linux? Todo conhecimento é válido, mas você estaria atrasando seu lado fazendo isso. Visual Studio, complementos, bibliotecas. Antes de compilar sua source para Windows você vai precisar fazer o download, instalar e preparar o seu ambiente de trabalho e isso vai te custar muito tempo visto que são programas pesados, que demoram para serem baixados e instalados e que precisam de configurações muito especificas para compilar sem erros. Se você pode fazer isso tudo em 5 minutos e sem erros no Linux, porque insistir no Windows? Google Cloud Platform Ativando os créditos Criando o VPS Liberando as Portas Criando um acesso Enviar arquivos para o VPS A parte de compilação da source, instalar o site e abrir o server ficará para o próximo tópico, visto que, é possível aplicar em qualquer VPS e não somente do Google. Se deseja instalar um site e fazer a compilação da source clique aqui Se você tiver qualquer dúvida em relação a esse tutorial não fique acuado em perguntar, irei responder todas as dúvidas no tópico. Não respondo PM, porém também estou no Discord do TibiaKing e posso ajuda-los por lá.1 ponto -
(Resolvido)Death Look Frags
(Resolvido)Death Look Frags
Leandro Vidal Martins reagiu a jNo por uma resposta no tópico
1 pontoPerfeito mestre Vod, desculpa ai, mas você podia acrescer mais uma informação no codigo acima? No caso, essa parte do meu codigo que mostra os critical e dogdge no look function getPlayerFrags(cid) local time = os.time() local times = {today = (time - 86400), week = (time - (7 * 86400))} local contents, result = {day = {}, week = {}, month = {}}, db.getResult("SELECT `pd`.`date`, `pd`.`level`, `p`.`name` FROM `player_killers` pk LEFT JOIN `killers` k ON `pk`.`kill_id` = `k`.`id` LEFT JOIN `player_deaths` pd ON `k`.`death_id` = `pd`.`id` LEFT JOIN `players` p ON `pd`.`player_id` = `p`.`id` WHERE `pk`.`player_id` = " .. getPlayerGUID(cid) .. " AND `k`.`unjustified` = 1 AND `pd`.`date` >= " .. (time - (30 * 86400)) .. " ORDER BY `pd`.`date` DESC") if(result:getID() ~= -1) then repeat local content = {date = result:getDataInt("date")} if(content.date > times.today) then table.insert(contents.day, content) elseif(content.date > times.week) then table.insert(contents.week, content) else table.insert(contents.month, content) end until not result:next() result:free() end local size = { day = table.maxn(contents.day), week = table.maxn(contents.week), month = table.maxn(contents.month) } return size.day + size.week + size.month end function onLogin(cid) registerCreatureEvent(cid, "fraglook") return true end function onLook(cid, thing, position, lookDistance) if isPlayer(thing.uid) and thing.uid ~= cid then doPlayerSetSpecialDescription(thing.uid,' [Frags: '..getPlayerFrags(thing.uid)..'], [Critical: '..math.max(0,(tonumber(getCreatureStorage(thing.uid,48903)) or 0))..'], [Dodge: '..math.max(0,(tonumber(getCreatureStorage(thing.uid,48902)) or 0))..']') return true elseif thing.uid == cid then doPlayerSetSpecialDescription(cid,' [Frags: '..getPlayerFrags(cid)..'], [Critical: '..math.max(0,(tonumber(getCreatureStorage(cid,48903)) or 0))..'], [Dodge: '..math.max(0,(tonumber(getCreatureStorage(cid,48902)) or 0))..']') local string = 'You see yourself.' if getPlayerFlagValue(cid, PLAYERFLAG_SHOWGROUPINSTEADOFVOCATION) then string = string..' You are '.. getPlayerGroupName(cid) ..'.' elseif getPlayerVocation(cid) ~= 0 then string = string..' You are '.. getPlayerVocationName(cid) ..'.' else string = string..' You have no vocation.' end string = string..getPlayerSpecialDescription(cid)..'' if getPlayerNameByGUID(getPlayerPartner(cid), false, false) ~= nil then string = string..' You are '.. (getPlayerSex(cid) == 0 and 'wife' or 'husband') ..' of '.. getPlayerNameByGUID(getPlayerPartner(cid)) ..'.' end if getPlayerGuildId(cid) > 0 then string = string..' You are ' .. (getPlayerGuildRank(cid) == '' and 'a member' or getPlayerGuildRank(cid)) ..' of the '.. getPlayerGuildName(cid) string = getPlayerGuildNick(cid) ~= '' and string..' ('.. getPlayerGuildNick(cid) ..').' or string..'.' end if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEECREATUREDETAILS) then string = string..'\nHealth: ['.. getCreatureHealth(cid) ..' / '.. getCreatureMaxHealth(cid) ..'], Mana: ['.. getCreatureMana(cid) ..' / '.. getCreatureMaxMana(cid) ..'].' string = string..'\nIP: '.. doConvertIntegerToIp(getPlayerIp(cid)) ..'.' end if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEEPOSITION) then string = string..'\nPosition: [X:'.. position.x..'] [Y:'.. position.y..'] [Z:'.. position.z..'].' end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string) return false end return true end1 ponto -
Shiny Pokemon "nome"
Shiny Pokemon "nome"
DarkRed reagiu a caio silva 99 por uma resposta no tópico
1 pontovai em lib/level system.lua aperta crtl+f e procura por: if string.find(tostring(nick), "Shiny") then vai ter: if string.find(tostring(nick), "Shiny") then nick = tostring(nick):match("Shiny (.*)") end Só excluir.1 ponto