Como criar OtServer

Para criar um OTServ, primeiramente, peço a você que tenha um pouco de paciência e dedicação. Se concentre bastante ao ler o tutorial abaixo, não é nada complicado, mas procure extrair todas as informações que o mesmo oferece.


Primeiros passos

Obviamente, antes de tudo, você precisa de todos os arquivos necessários para rodar o servidor no seu computador e um registro no fórum. Para se registrar gratuitamente clique aqui (informe um e-mail real no campo, pois você precisará confirmar o registro). Depois que você criar o registro, clique aqui para entrar na seção "Download de OTServs", baixe o servidor da versão que mais lhe chamar a atenção (para ter certeza se ele é bom, examine as respostas dos outros membros e o próprio tópico) e descompacte ele (todos os servidores da seção vêm compactados em arquivos RAR/ZIP, clique aqui e baixe o programa para descompactá-los) no diretório Meus Documentos ou qualquer outro de fácil acesso.
Você verá vários arquivos e pastas, mas por enquanto não mexa nem exclua nada. Dê um duplo clique no arquivo config.lua que está localizado no diretório matriz, e faça-o ser executado com o notepad (bloco de notas).


Segundo passo
Configurando o config.lua

Este é o arquivo principal do servidor, pois é lá que você irá configurar a maioria dos itens para iniciá-lo corretamente. Normalmente, a variável da configuração é auto-explicativa, mas é tudo em inglês. Se você tem um bom conhecimento da língua, você entendará o que cada item configura, se não tem, não se preocupe, estarei mostrando abaixo um exemplo de config.lua comum, e explicando o que cada item faz:



Citação:
-------- config.lua --------
-- Arquivo de configuração para o OTServ --
----------------------------

-- Local do mapa (só mude se você possuir um mapa novo)
map = "data/world/test.otbm"

-- Nome do servidor
servername = "Yurots BETA 1.0"

-- Localização
location = "Brasil"

-- IP do servidor (Seu IP, clique aqui e saiba qual é seu IP)
ip = "localhost"

-- Porta do servidor (normalmente não precisa mexer, só se sua internet/firewall bloquear tal porta)
port = "7171"

-- URL do site do servidor
url = ""

-- Nome do dono do servidor
ownername = "Magus"

-- E-mail do dono do servidor
owneremail = "magus@otserv.com.br"

-- Tipo do mundo (escolha como será o método de batalhas do seu servidor)
-- Opções: pvp, no-pvp, pvp-enforced
worldtype = "pvp"

-- Tempo de espera para utilizar uma magia/runa e outra em milissegundos
exhausted = 1000

-- Tempo de espera para utilizar uma magia/runa não-agressiva e outra em milissegundos
exhaustedheal = 1000

-- Adicionar quantos milissegundos se o jogador já estiver cansado (exhausted) e tentar usar uma magia/runa? (1000 = 1 segundo)
exhaustedadd = 200

-- Quanto tempo o jogador tem que ficar longe de batalhas poder entrar em locais sagrados e sair do jogo (1000 = 1 segundo)
pzlocked = 5*1000

-- Período de alugel da casa (daily = diário, weekly = semanal, monthly = mensal)
-- Opções: daily, weekly, monthly
houserentperiod = "weekly"

-- motd (caixa de mensagem que pode aparecer antes de abrir a lista de personagens)
motd = "Bem vindo ao Yurots BETA 1.0, entre e divirta-se!"
motdnum = "1"

-- Mensagem do ínicio, que irá aparecer quando você entrar no jogo
loginmsg = "Ajude noso server reportando os bug * !report *"

-- Quantas tentativas de login inválidas até o servidor bloquear o IP da pessoa
-- coloque 0 para desabilitar
logintries = 5

-- Permitir clones? (Múltiplos logins do mesmo personagem)
-- Opções: 0 (não), 1 (sim)
allowclones = 0

-- Número máximo de jogadores permitidos no servidor (lembre-se que, quanto maior este número, maior será a quantidade de lag do servidor, dependendo da sua máquina)
maxplayers = "150"

-- Tipo de SQL (mexa aqui somente se seu servidor utilizar este tipo de banco de dados)
-- Opções: mysql, sqlite
sql_type = "mysql"

--- Configurações para MySQL (ignore se estiver usando SQLite/XML)
sql_host = "localhost"
sql_user = "root"
sql_pass = ""
sql_db = "otserv"

--- Configurações para SQLite (ignore se estiver usando MySQL/XML)
sqlite_db = "db.s3db"

-------------------------------------------------------------------------------------------------
---------------------------- Configurações básicas ----------------------------
-------------------------------------------------------------------------------------------------

-- Sim = yes, Não = no

-- Nome do mundo (mostrado ao lado dos personagens da lista, Ex.: Magus (Secura))
worldname = "Magnet"

-- Tempo de "server save" (ele não fecha o servidor como no tibia, é só um controle para previnir lags desnecessários)
autosave = 3

-- Sistema de cap ativado? (yes/no)
capsystem = "no"

-- anti-afk - Tempo máximo para um jogador ficar ocioso antes de ser derrubado pelo servidor (1 = 1min)
kicktime = 20

-- Quantos summons (utevo res) os jogadores podem ter
maxsummons = 3

-- Itens máximos permitidos para colocar no depot (dp)
maxdepotitems = 1000

-- Aprender magias automaticamente (no) ou comprá-las (yes)?
learnspells = "no"

-- Você quer que todos os jogadores possuam 'premmium account'? (yes/no)
freepremium = "no"

-- Remover munição (bolts/arrows) conforme usada (yes) ou deixá-las infinitas (no)?
removeammunation = "yes"

-- Remover cargas de runas (sd/hmm/gfb) conforme usada (yes) ou deixá-las infinitas (no)?
removerunecharges = "yes"

-- Habilitar hotkeys? (yes/no)
itemhotkeys = "yes"

-- Jogadores podem atirar runas em jogadores pela janela de batalha? (yes/no)
battlewindowplayers = "yes"

-- Usar "Account Manager"? (yes/no) (clique aqui e saiba o que é "Account Manager")
accountmanager = "yes"

-- Summons (utevo res) seguem seus mestres à qualquer lugar? (yes/no)
summonsfollow = "yes"

-- Permitir troca de outfits? (yes/no)
outfitchange = "yes"

-------------------------------------------------------------------------------------
----------------------------------- Multiplicadores -----------------------------------
-------------------------------------------------------------------------------------

-- Multiplicador de experiência (Ex.: Se deixar 30, os monstros darão 30 vezes mais experiência que o Tibia global; Rats darão 150exp e Demons darão 180000exp)
expmul = 30

-- Multiplicador de experiência para pvp-enforced
expmulpvp = 3

-- Multiplicador de loot dos monstros (Ex.: Se deixar 2, os monstros darão 2 vezes mais rápido o loot do que no Tibia global)
lootmul = 2

-- Multiplicador de skills (Ex.: Se deixar 80, os jogadores irão ter seus skills aumentados 80 vezes mais rápido que no Tibia global, diferenciando pelas suas vocações)
skillmul = 80

-- Mesma coisa de cima, mas relacionado à mana/magic level
manamul = 80

-- Preço de cada SQM de uma casa
houseprice = 500

-- Nível necessário para comprar uma casa
houselevel = 25

-- Proteção para aqueles que estão abaixo deste nível (no caso, nenhum jogador do nível 1 à 15 poderão atacar jogadores, tanto quanto ser atacados pelos mesmos).
protectionlimit = 15

-- Dano crítico e chance {chance, porcentagem a mais de dano}
-- Às vezes, seu jogador poderá dar um dano crítico, e a porcentagem será a soma de dano maior que ele dará.
criticaldamage = {"5", "50"}

---------------------------------------------------------------------------------------
-------------------------- Configuração: Skull System -------------------------
---------------------------------------------------------------------------------------

-- Tempo para perder uma caveira branca (white skull / 1 = 1 minuto)
whitetime = 1

-- Tempo para perder uma 'morte injustificada' (1 = 1 minuto)
fragtime = 1*50

-- Quantas 'mortes injustificadas' o jogador terá que ter feito para ser banido temporariamente? (1 = 1 morte)
banunjust = 7

-- Quantas 'mortes injustificadas' o jogador terá que ter feito para adquirir uma caveira vermelha? (red skull / 1 = 1 morte)
redunjust = 5

-- Quanto tempo o jogador ficará banido? (1 = 1 hora)
bantime = 24*1

--------------------------------------------------------------------------------------
------------------------------- Configuração: Acessos de GM --------------------------------
--------------------------------------------------------------------------------------

-- Acesso necessário para andar nas casas e poder abrir as portas das mesmas.
accesshouse = 3

-- Acesso necessário para entrar no servidor sem esperar na lista de espera e quando o servidor estiver fechado para jogadores.
accessenter = 1

-- Acesso necessário para ignorar danos, cansaço (exhaustion), limite de capacidade e ser ignorado pelos monstros.
accessprotect = 3

-- Acesso necessário para enviar mensagens globais e falar com cores diferentes em canais públicos do servidor.
accesstalk = 1

-- Acesso necessário para mover itens à distância sem precisar estar próximo a ele.
accessremote = 3

-- Acesso necessário para ver ID/Posição do item que você está olhando (dando look).
accesslook = 2



Citação:
--(EM CONSTRUÇÃO) The Forgotten Server Config

-- Account Manager
accountManager = "yes" --Ativar Account Manager? (yes/no)
newPlayerChooseVoc = "no" --Escolha de votação ativada? Se no, jogadores começaram como no-vocation
newPlayerSpawnPosX = 95 --Coordenada inicial X do novo jogador
newPlayerSpawnPosY = 117 --Coordenada inicial Y do novo jogador
newPlayerSpawnPosZ = 7 --Coordenada inicial Z do novo jogador
newPlayerTownId = 1 --"Townid" do novo jogador
newPlayerLevel = 1 --Nível inicial do novo jogador
newPlayerMagicLevel = 0 --ML inicial do novo jogador
generateAccountNumber = "yes" --Se yes, o account manager gerará uma conta aleatória, se no, o jogador escolherá sua conta

-- Banimentos
broadcastBanishments = "yes" --Anunciar banimentos para todos os jogadores? (yes/no)
banDays = 7 --Dias de ban
finalBanDays = 30 --
killsToBan = 5 --Mortes injustas para o banimento automático

-- Batalhas
worldType = "pvp" --Tipo de mundo (pvp, no-pvp, pvp-enforced)
hotkeyAimbotEnabled = "yes" --Sistema de hotkeys ativado? (yes/no)
protectionLevel = 1 --Nível máximo protegido de PK
killsToRedSkull = 3 --Número de mortes para virar red skull
pzLocked = 60000 --Tempo (milissegundos) para o battle sair
deathLosePercent = 10 --Percentual de experiência perdido ao morrer
criticalHitChance = 7 --Chance de desferir um golpe crítico em monstros ou outros jogadores
removeAmmoWhenUsingDistanceWeapon = "yes" --Munições finitas? (yes/no)
removeChargesFromRunes = "yes" --Runas finitas? (yes/no)
timeToDecreaseFrags = 24 * 60 * 60 * 1000 --Tempo para diminuir frags (em milissegundos)
whiteSkullTime = 15 * 60 * 1000 --Tempo para sumir uma White Skull (em milissegundos)
oldConditionAccuracy = "no" --
alternativeExhaust = 1000 --

-- Comandos
displayGamemastersWithOnlineCommand = "no" --Mostrar GMs online com o comando !online (yes/no)

-- Configurações de conexão
ip = "127.0.0.1" --IP real do servidor
port = 7171 --Porta do servidor
loginTries = 10 --Tentativas de login erradas para bloquear o usuário
retryTimeout = 5 * 1000 --
loginTimeout = 60 * 1000 --Quanto tempo um jogador pode ficar na lista de escolha de personagens até ela se fechar (em milissegundos)
maxPlayers = "1000" --Número máximo de jogadores online simultaneamente permitido
motd = "Welcome to the Forgotten Server!" --Motd do servidor
onePlayerOnlinePerAccount = "yes" --Vetar que jogadores possam usar a mesma conta com personagens diferentes simultaneamente? (yes/no)
allowClones = 0 --Quantidade de clones do mesmo personagem permitidos (0 para desativar)
serverName = "Forgotten" --Nome do servidor
loginMessage = "Welcome to the Forgotten Server!" --Mensagem de login
adminLogsEnabled = "no" --Gravar logs administrativos? (yes/no)
statusTimeout = 5 * 60 * 1000 --
replaceKickOnLogin = "yes" --Ao logar num personagem que já está online no servidor, kická-lo para o outro entrar? (yes/no)

-- Lista de mortes
deathListEnabled = "yes" --Salvar mortes dos personagens, para serem mostradas em um site por exemplo (yes/no)
maxDeathRecords = 5 --Número máximo de mortes salvas (ao alcançar 6 por exemplo, a primeira morte é removida dando espaço a última)

-- Guildas
ingameGuildSystem = "yes" --Sistema de guildas no jogo ativado? (yes/no)

-- Casas
housePriceEachSQM = 1000 --Preço de cada sqm de uma casa, em gold
houseRentPeriod = "never" --Alugel

-- Ócio
kickIdlePlayerAfterMinutes = 15 --Kickar jogador inativo depois de quantos minutos?

-- Uso de itens
timeBetweenActions = 200 --Tempo de "exhaust" entre o uso da opção "Us it" (por exemplo, "Use it" para acender tochas) (em milissegundos)
timeBetweenExActions = 1000 --

-- Mapa
mapName = "forgotten" --Nome do mapa, pasta world
mapAuthor = "Komic" --Autor do mapa
randomizeTiles = "yes" --Aleatorizar pisos? (yes/no)

-- Troca de mensagens
enableRuleViolationReports = "yes" --Ativar control+z (yes/no)
maxMessageBuffer = 4 --

-- MySQL
mysqlHost = "localhost" --Host que está localizado o banco de dados do servidor
mysqlUser = "root" --Usuário (login) que acessará o banco de dados
mysqlPass = "" --Senha do usuário
mysqlDatabase = "theforgottenserver" --Nome do banco de dados
mysqlPort = 3306 --Porta do servidor MySQL (padrão 3306)

-- Premium Account
freePremium = "no" --Premium account grátis? (yes/no)

-- PVP Server (configurações para servidores pvp-enforced, mas influenciam em servidores comuns)
displayOnOrOffAtCharlist = "no" --Mostra se o jogador está online ou offline na lista de personagens
allowChangeOutfit = "yes" --Troca de outifit permitida? (yes/no)
noDamageToSameLookfeet = "no" --Proibir atacar jogadores com a mesma aparência? (yes/no)
experienceByKillingPlayers = "no" --Ganhar experiência ao matar outros jogadores? (yes/no)

-- Rates
rateExp = 5 --Multiplicador de experiência (Ex.: Se deixar 30, os monstros darão 30 vezes mais experiência que o Tibia global; Rats darão 150exp e Demons darão 180000exp)
rateSkill = 3 --Multiplicador de skills (Ex.: Se deixar 80, os jogadores irão ter seus skills aumentados 80 vezes mais rápido que no Tibia global, diferenciando pelas suas vocações)
rateLoot = 2 --Multiplicador de loot dos monstros (Ex.: Se deixar 2, as chances do monstros dropar itens serão 2x maiores do que no Tibia global)
rateMagic = 3 -- Mesma coisa de cima, mas relacionado à mana/magic level
rateSpawn = 1 --Aumentando essa opção, irá aumentar a velocidade de "spawn" (nascimento) dos monstros

-- Real Server Save
-- nota: serverSaveHour significa o horário 03:00, não que irá ser salvo a cada 3 horas,
-- se você quer o sistema antigo utilize o autoSaveEachMinutes (abaixo). Este método de serversave pode ser instável,
--nós recomendamos o uso do otadmin se você quer serversaves reais.

serverSaveEnabled = "no" --Habilitar o sistema "real server save", explicado acima (yes/no)
serverSaveHour = 3 --Hora que o servidor irá executar o real server save
shutdownAtServerSave = "yes" --Fechar o servidor após o real server save
cleanMapAtServerSave = "yes" --Limpar o mapa após o real server save

-- Server saving
autoSaveEachMinutes = 15 --Server save normal, em minutos
saveGlobalStorage = "no" --Salvar GlobalStorage ao fechar o servidor? (procure se informar sobre os scripts que você utiliza, para mexer nesta opção) (yes/no)

-- Spawns
deSpawnRange = 2 --
deSpawnRadius = 50 --Distância (em SQM) do respawn atual de um monstro em que tal monstro não poderá ultrapassar (assim voltando ao lugar de origem)

-- SqLite
sqliteDatabase = "forgottenserver.s3db" --Arquivo banco de dados, somente se estiver utilizando sqlite

-- SQL
sqlType = "sqlite" --Tipo de SQL usado (MySQL, SQLite)

-- Inicialização
defaultPriority = "high" --Prioridade definida automaticamente após inicio do servidor

-- Status
ownerName = "" --Seu nome (dono do otserv)
ownerEmail = "@otland.net" --Seu e-mail
url = "http://otland.net/" --Site do otserv
location = "Europe" --Localização do otserv

Lembrando que 1000 ms (milissegundos) é 1 segundo.

Nota:
Se algum item existente no config.lua não estiver exposto aqui, não se preocupe, simplesmente não mexa nele, a menos que você entenda o que ele faz e queira mudar. Aqui foram expostos os principais, os que podem ser alterados se você desejar.
Vale ressaltar também que, todas as alterações no config.lua devem ser feitas dentro das aspas (""). Se você quiser usar aspas nas alterações, utilize-a em conjunto com uma barra invertida para a esquerda: \"
Citação:
location = "Brasil, \"País do futebol\""
Terceiro passo
Criando conta de GM

Agora vamos criar a conta do administrador do servidor, do senhor Gamemaster. Esta parte pode parecer mais complexa que o segundo passo, mas depois que você pega o jeito e entende o padrão da linguagem, fica bem fácil.

Antes de tudo, existem dois tipos de otservs, os Servidores SQL (que guardam todas as informações em um banco de dados SQL) e os Servidores XML (que guardam as informações em diversos arquivos XML), e dependendo de qual é seu servidor, a criação da conta de gamemaster será diferente.

Atualmente, os Servidores XML estão sendo abolidos e muito em breve existirá apenas Servidores SQL, essa discussão você pode encontrar nas áreas relacionadas no fórum.

Servidor XML
A maioria dos servidores xml vêm com uma conta de gamemaster pronta, mas ainda sim você terá que configurar o nome, uma nova conta e senha.

• Abra a pasta do seu servidor, vá até data > players. Ache qualquer arquivo que tenha nome de GM (God, GM...), renomeie-o para o nome que você quiser (ex: God Magus) e abra-o com o bloco de notas (clique com o botão direito no arquivo e selecione "Editar").
• Em name você insere o nome do arquivo (ex: name="God Magus") e em account você insere a conta que você deseja ser a conta do gamemaster (ex: account="214675"). IMPORTANTE!! Antes de mudar a account, anote a antiga pois você precisará mais adiante. Tenha certeza também que a variável access está com o valor 5 ou maior (ex: access="5"). As outras variáveis não são necessárias alterar.
Dica: se a visualização do arquivo estiver ruim no bloco de notas, tente deixá-la melhor ativando a "quebra automática de linha" em "Formatar".
• Agora volte para a pasta matriz, e entre em data > accounts. Procure um arquivo XML que o nome seja a account antiga que estava última arquivo que você acessou (por isso que foi pedido anotar a antiga account), renomeie-o para os números da sua nova account (ex: 214675) e abra-o com o bloco de notas (clique com o botão direito no arquivo e selecione "Editar").
•Em pass você insere a senha que desejar para sua account (ex: pass="magusehlindao", e em character name você coloca o nome do seu gamemaster (ex: character name="God Magus").

Salve todos os arquivos e está tudo pronto, sua conta de gamemaster está feita.

Servidor SQL
Temos vários tutoriais na seção de tutoriais ensinando a criar gamemaster em servidor sql, aqui vão alguns:

http://forums.otserv.com.br/f25/comf...-sqlite-59528/
http://forums.otserv.com.br/f25/cria...mente-sql-667/
http://forums.otserv.com.br/f25/cria...ver-sql-50494/

Dúvidas? Utilize a seção de suporte ou pergunte no próprio tópico.


Quarto e último passo

Após essas configurações, você já pode abrir seu servidor para testá-lo (Visualize o F.A.Q abaixo caso não saiba entrar no servidor). Porém, você ainda pode fazer várias alterações nele, como criar novos monstros, magias, runas, e até NPCs!
Para isso, tudo o que você tem de fazer é acessar as outras seções de nosso fórum e procurar tutoriais explicativos para os assuntos.

Clique aqui para acessar a área de tutoriais!

Nota: Em caso de falta de DLL na execução do servidor, visite o site DLL-Files (www.dll-files.com) e utilize a caixa de busca para encontrá-las e baixá-las. Depois, descompacte elas no diretório aonde está localizado o executável (otserv.exe).


F.A.Q

Como abrir meu servidor?
Após configurar corretamente o config.lua, dê um duplo clique no executável (OTServ.exe ou TheForgottenServer.exe; pode variar) e aguarde a abertura do servidor. Se no processo aparecer qualquer mensagem de erro, tire uma screenshot do erro e poste na seção de dúvidas, para obter ajuda. Se o servidor abrir sem erros, você já está pronto para testá-lo!


Como entrar no meu servidor?
Para entrar no seu servidor, você precisará do cliente de Tibia correlativo ao protocolo do seu OTServ (por ex, se baixou um servidor 8.4 precisará exatamente do Tibia 8.4). Todas as versões do Tibia estão disponíveis aqui.
Você também precisará de uma ferramenta comumente conhecida como "IP Changer", que tem a função de trocar o IP/Porta do cliente do Tibia para um em específico. Para baixá-lo clique aqui.

Baixados os programas necessários, execute os dois e coloque o IP/Porta do seu servidor no "IP Changer", e "troque o IP". Fazendo isso, você já pode acessar o seu servidor colocando o Account Name/Password na tela do Tibia.


Como saber meu IP?
Há várias maneiras para descobrir seu IP, vamos tentar duas delas.
Vá até o menu Iniciar > Configurações > Painel de controle e clique no item Conexões de rede. Dê um duplo clique na conexão local (a conexão ativa) e vá até a aba Suporte. Seu endereço de IP estará lá.
Outra maneira, ligeiramente mais fácil, é visitar o site WhatIsMyIp, copiar o IP e colar ele no arquivo de configuração do servidor.

Clique aqui para visitar o site WhatIsMyIp!


O que é "Account Manager"?
Account Manager é, em poucas palavras, um NPC que cria uma conta para você. Hoje em dia, é mais utilizado do que websites, devido a sua praticidade e também por exilar o uso de webservers para rodar os sites, tais que acarretam mais uso da memória do computador.
Praticamente todos os servidor atuais possuem um Account Manager imbutido e, também, uma opção para desabilitá-lo se você quiser. Fica a seu critério decidir se vai usá-lo ou não.


Não conseguem conectar?
Se os jogadores não estiverem conseguindo entrar no seu servidor, provavelmente é porque a porta inserida na variável "port" (padrão 7171) está bloqueada para acesso remoto.
Para desbloquea-la é simples.
Vá até o menu Iniciar > Configurações > Painel de controle e clique no item Firewall do windows.
Se você achar conveniente, desative-o por completo, e peça para seus amigos tentarem acessar novamente o servidor, porém, se quiser deixar seu computador com a proteção do programa, faça o seguinte:
Vá até a aba Exceções, e clique no botão Adicionar Porta.
No campo Nome digite Tibia (ou qualquer outro) e no campo Porta, 7171 (porta inserida no config.lua). Após isso nenhuma alteração é necessária, clique em Ok.
Recomendo também desativar qualquer anti-vírus ou firewall opcional, caso estejam previnindo acessos à porta. Tente novamente e veja os resultados.

Se você utiliza router, recomendo que visite nossa área "Tutoriais para Internet Compartilhada", clicando aqui.


Problemas com scripts?
Caso o seu servidor apresente qualquer tipo de "LUA error", é porque você adicionou/modificou algo que não é suportado pela linguagem LUA, ou mal uso do mesmo.
Para resolver o problema é simples: basta visualizar qual é a linha que está ocorrendo tais erros, e verificar se o script segue o padrão da linguagem.
Se você não tiver sucesso tentando consertar o script, visite nossa seção de suporte e peça a ajuda que necessitar, claro, seguindo as regras do fórum.

Clique aqui para ir até a seção de suporte!


Problemas com websites?
Geralmente todo tipo de erro relacionado com linguagens se baseia no ato de acessar a linha que o aplicativo indica, e verificar se está correto.
Na linguagem PHP, que é utilizada para a criação de websites de OTServ, não é diferente.
Normalmente, os websites vêm com um arquivo específico que possui todas as variáveis globais (config.php), que é aonde você deve configurar.
Para que os outros possam acessar seu website, você deve possuir um webserver instalado em sua máquina.

Para mais informações, acesse nossa área com tutoriais sobre websites clicando aqui.


Outros problemas?
Não hesite em utilizar a seção de suporte que o fórum possue, e espere algum membro disposto a ajudar, responder sua dúvida.

Bom galera esse foi o melhor que achei!
Tirei daqui http://forums.otserv.com.br/showthread.php?t=295

Nenhum comentário:

Postar um comentário