Base DRS PVP

Servidor PVP competitivo em QBCore, em português: arenas FFA, duelos, TDM, Dominação, Bombsite, ranked, medalhas e gangues, tudo pelo menu F7.

v2.1.0 QBCore drs_pvp

Servidor PVP competitivo em QBCore, em português e pronto a abrir: mundo aberto com zonas seguras, loja de armas, hospital, oficina, airdrops e King of the Hill, arenas FFA, duelos 1v1, Team Deathmatch, Dominação, Bombsite, treino de pontaria, ranked com divisões, medalhas, gangues com guerras e classificações — tudo pelo menu F7. Traz a base de dados pronta a importar, ficheiros .bat para abrir o servidor e um verificador (drs_core) que diz na consola o que está bem e o que falta.

Na primeira vez, abrir o servidor demora cerca de 15 a 20 minutos.

#Requisitos

SistemaWindows 10/11 (64 bits)
JogoGTA V e FiveM instalados (para entrares no servidor)
Base de dadosMySQL ou MariaDB (a forma mais fácil é o XAMPP)
Conta Cfx.reEm portal.cfx.re, para a chave grátis do servidor

Nota

O FXServer (o programa do servidor) não vem no ficheiro: é descarregado do site oficial da Cfx.re pelo 1 - DESCARREGAR FXSERVER.bat.

#Instalação

#1. Descarregar o FXServer

Dá duplo-clique em 1 - DESCARREGAR FXSERVER.bat. Descarrega a versão recomendada do servidor para a pasta artifacts. Repete sempre que quiseres atualizar o FXServer.

#2. Importar a base de dados

  1. Liga o MySQL/MariaDB (no XAMPP: botão Start no MySQL).
  2. Abre o HeidiSQL ou o phpMyAdmin (http://localhost/phpmyadmin).
  3. Importa o ficheiro sql/Base DRS PVP.sql:
    • HeidiSQL: Ficheiro → Executar ficheiro SQL
    • phpMyAdmin: separador Importar → escolher o ficheiro → Executar
  4. Fica criada a base de dados basedrs_pvp com as 35 tabelas.

Se não usares o XAMPP normal (ou se o teu MySQL tiver password), ajusta a ligação no server-data/server.cfg:

server.cfg
set mysql_connection_string "mysql://root@localhost/basedrs_pvp?charset=utf8mb4"

#3. Chave do servidor (Cfx.re)

  1. Entra em portal.cfx.re → Servers → Registration Keys.
  2. Cria uma chave (IP: o teu IP público, ou em branco para testes).
  3. Abre server-data/server.cfg com o Bloco de Notas e troca COLOCA_AQUI_A_TUA_CHAVE pela tua chave, entre aspas. Troca também a password do rcon:
server.cfg
sv_licenseKey "a_tua_chave"
rcon_password "uma_password_tua"

#4. Abrir o servidor

Com txAdmin (recomendado: painel web, reinícios automáticos, logs e bans):

  1. Dá duplo-clique em 2 - ABRIR TXADMIN.bat.
  2. Abre-se o browser em http://localhost:40120. Entra com a tua conta Cfx.re e cria a password do painel.
  3. Escolhe Existing Server Data e cola o caminho da pasta server-data (aparece escrito na janela preta).
  4. Escolhe o server.cfg dessa pasta e carrega em Save & Start.

Sem txAdmin (só a consola): dá duplo-clique em 3 - INICIAR SEM TXADMIN.bat. Para desligar, escreve quit na janela.

#5. Entrar no servidor

Abre o FiveM, carrega em F8 e escreve:

txt
connect localhost

Crias a personagem e apareces no lobby (Legion Square, zona segura). Carrega em F7 para abrir o menu PVP.

#6. Dar-te admin

  1. Com o servidor ligado e tu dentro, escreve status na consola do servidor. Aparece a tua linha com os identificadores (license:… e fivem:…).
  2. No fim do server.cfg, tira o # da linha abaixo e põe o teu identificador:
server.cfg
add_principal identifier.fivem:1234567 qbcore.god
  1. Reinicia o servidor. Passas a ter o /admin e os comandos de staff.

#7. Acertar os pontos das arenas

Os pontos de nascimento e as zonas dos modos vêm com coordenadas aproximadas (o jogo assenta-os no chão). Para ficarem perfeitos, vai ao sítio em jogo (como dono) e grava-os:

ComandoO que grava
/pvpspawn <arena>Um ponto de nascimento da arena FFA (repete para vários)
/pvpspawn <arena> limparApaga os pontos dessa arena
/pvpponto duel <mapa> a · bPosição de cada jogador no duelo
/pvpponto tdm <mapa> red · blueBase de cada equipa no TDM
/pvpponto domination <mapa> red · blue · A · B · CBases e zonas da Dominação
/pvpponto bombsite <mapa> attack · defend · A · BBases e locais das bombas

Os pontos ficam em resources/[drs]/drs_pvp/data/ e valem logo, sem reiniciar.

#Os modos

ModoComo funciona
FFAArenas abertas: entras e sais quando quiseres, cada uma com as suas armas. Dinheiro, XP e séries por kill.
Duelo 1v1Fila ranked (junta-te com alguém do teu nível) ou desafio direto a um jogador. Rondas até 3.
Team DeathmatchDuas equipas equilibradas pelo nível, primeira a 30 kills.
DominaçãoTrês zonas (A, B, C): fica numa zona sem inimigos para a capturar; cada zona dá pontos por segundo. Primeira equipa a 300.
BombsiteRanked: loja no início da ronda, plantar e desarmar a bomba, troca de lado a meio. Primeira equipa a 7 rondas.
TreinoAlvos parados, em movimento ou de reflexos, numa dimensão só tua, com recorde.

Cada partida corre numa dimensão própria, por isso a mesma arena pode ter várias partidas ao mesmo tempo.

#Ranked, medalhas e gangues

  • Ranked: duelos e bombsite mexem nos teus pontos. Divisões: Bronze, Prata, Ouro, Platina, Diamante e Mestre.
  • Medalhas: 19 medalhas (primeiro sangue, multi-kills, séries, ACE, clutch, MVP…), cada uma com XP.
  • Gangues: cria a tua gangue (nome, tag e cor), convida amigos, dá cargos e desafia outras gangues para guerras de Dominação. A tag aparece no killfeed e as guerras têm o seu próprio rating.

#Mundo aberto

Fora das arenas e das partidas, o mapa todo é PVP livre:

Zonas segurasDuas: Pier de Los Santos (onde apareces) e Paleto Bay, marcadas no mapa. Sem dano nem disparos; ao sair tens 5 segundos de aviso e proteção.
Loja de armasMenu F7 → Loja (ou E no armeiro): pistolas, SMG, espingardas, snipers, caçadeiras, munições e coletes. Só se compra numa zona segura; os itens vão para o inventário.
HospitalPillbox, Paleto e Sandy Shores: E no balcão para um tratamento completo. Quando morres no mundo aberto, renasces no hospital mais perto.
Oficina5 oficinas (LS Customs): E dentro do carro para reparar e lavar.
Revistar corposQuem morre fica no chão alguns segundos: mantém E junto ao corpo para abrir o inventário dele e ficar com o que quiseres.
KillsContam para as estatísticas, dão dinheiro e XP e aparecem no killfeed de toda a gente.

#Eventos

De 15 em 15 minutos (com pelo menos 2 jogadores no mundo aberto) há um evento, anunciado a todos e marcado no mapa:

  • Airdrop: aparece a zona onde a caixa vai cair; 2 minutos depois cai e o primeiro a manter E junto a ela fica com armas, munições e dinheiro.
  • King of the Hill: uma colina marcada no mapa; durante 5 minutos, quem ficar mais tempo lá dentro ganha (prémios para o 1.º, 2.º e 3.º).

A staff pode lançar um evento com /pvpevento airdrop, /pvpevento koth ou cancelar com /pvpevento parar.

#Cayo Perico

A ilha está carregada para toda a gente (aparece no mapa), com uma arena FFA, um mapa de Dominação e sítios de eventos.

#Gangues do servidor

Além das gangues que os jogadores criam no menu, o núcleo tem 12 gangues para a staff atribuir com /setgang: Ballas, Vagos, Families, Varrios Los Aztecas, The Lost MC, Angels of Death MC, Marabunta, Triads, Yakuza, Cartel, Bratva e Cosa Nostra.

#Confirmar que está tudo bem

Uns segundos depois de o servidor arrancar, o drs_core mostra na consola o resumo da base: versão, scripts a correr, base de dados e jogadores. Se alguma coisa estiver mal, aparece logo por baixo com a explicação de como resolver.

Comando (consola do servidor, sem /)O que faz
drsinfoMostra o resumo outra vez
drscheckVolta a verificar a base e diz o que falta e como resolver
drsscriptsLista todos os scripts da base e se estão a correr

#Jogar com amigos

Abre a porta 30120 (TCP e UDP) no router para o IP do teu PC e permite o FXServer na firewall do Windows. Os amigos ligam-se com:

txt
connect O_TEU_IP_PUBLICO:30120

#Personalizar

  • Nome, descrição, número de jogadores e logótipo: server-data/server.cfg e myLogo.png (96×96).
  • Modos, arenas, armas, recompensas, ranked e gangues: resources/[drs]/drs_pvp/config.lua e config_modes.lua.
  • Zonas seguras, loja, hospitais, oficinas e eventos: resources/[drs]/drs_pvp/config_freeroam.lua.
  • Stand de automóveis (140 carros e motas): resources/[drs]/drs-vehicleshop/config.lua.
  • Itens, empregos e veículos: resources/[drs]/drs-core/shared/.
  • Língua: setr qb_locale "pt".

#Teclas

TeclaAção
F7Menu PVP: arenas, duelos, gangues, treino, classificações e perfil
MTelemóvel
TabInventário
Z · 1–5Espaços rápidos
IMenu do HUD
HomeLista de jogadores
F9Rádio
AltFalar no rádio · olho de interação · derrubar alguém a correr
F11Alcance da voz
BCinto de segurança · apontar · loja do bombsite
EPortas · no bombsite, manter para plantar ou desarmar
L · GTrancar o veículo · motor
X · Y · CtrlMãos no ar · cruise control · agachar

A lista completa de teclas e comandos está no ficheiro COMANDOS.txt.

#O que vem na base

PastaConteúdo
[drs]O sistema PVP (drs_pvp), o drs_core e os scripts da base: núcleo, inventário, telemóvel, HUD, menu de admin, stand, garagens, chaves, portas, armas, roupa, multicharacter, assaltos a bancos, rádio, menus e mais
[arenas]Os mapas das arenas (Arena Fight e plataformas no céu)
[compat]3 pontes (qb-core, qb-inventory, qb-target)
outras pastasoxmysql, ox_lib, PolyZone, pma-voice, chat, logs, combustível, fila de entrada, mapas e interiores

A lista completa, com o que faz cada script, está no ficheiro CONTEÚDO.txt.

#Scripts QBCore do mercado

A base é compatível com os nomes QBCore standard (exports['qb-core'], qb-menu, dependências como qb-phone…), e a pasta [compat] faz a ponte para qb-core, qb-inventory e qb-target. Por isso podes instalar qualquer script QBCore do mercado sem mexer em nada.

Atenção

Não apagues a pasta [compat]: os scripts do mercado deixam de encontrar o qb-core, o inventário e o olho.

#Resolução de problemas

ProblemaSolução
Server license key authentication failedA chave da Cfx.re está errada ou o IP não corresponde. Cria outra em portal.cfx.re (passo 3).
oxmysql: … ECONNREFUSED ou Access deniedO MySQL não está ligado ou a ligação no server.cfg está errada (passo 2).
Unknown table ou … doesn't existO SQL não foi importado (passo 2).
Fico preso no ecrã de carregamentoVê a consola do servidor: o primeiro erro a vermelho diz qual é o script.
Não consigo comprar armasSó se compra dentro de uma zona segura (Pier ou Paleto Bay).
Nasço no sítio errado de uma arenaGrava os pontos certos com /pvpspawn e /pvpponto (passo 7).
Não sei o que está malEscreve drscheck na consola do servidor: diz o que falta e como resolver.

Se nada disto resolver, abre um ticket no painel com o resultado do drscheck.

#Licenças e créditos

A Base DRS PVP junta, organiza, configura e traduz para português scripts de código aberto, e acrescenta o sistema PVP da DRS; os direitos de cada script são dos seus autores e cada pasta mantém o seu LICENSE original.

  • QBCore Framework (github.com/qbcore-fivem): base dos scripts das pastas [drs] e [compat], na maioria em GPL-3.0.
  • oxmysql e ox_lib (Overextended, LGPL-3.0), pma-voice (AvarianKnight), menuv (ThymonA, GPL-3.0), PolyZone (mkafrin, MIT), bob74_ipl (Bob74, MIT), LegacyFuel (InZidiuZ, GPL-3.0), ctb-pvsp (CTB_AFK, MIT) e os recursos base da Cfx.re.
  • O drs_core e o drs_pvp são código próprio da DRS (não são GPL): não podem ser copiados nem distribuídos fora da base comprada.

Os detalhes estão no ficheiro LICENÇAS.txt.