Initial PropHunt server setup

- Complete bare metal installer with SteamCMD, MetaMod, SourceMod, ULX
- Docker installer with one-liner support
- Server configuration files (server.cfg, autoexec.cfg, mount.cfg)
- Update script for easy maintenance
- Backup script for server data
- Workshop collection documentation
- SourceMod admin configuration template
This commit is contained in:
Vish
2026-01-19 06:41:02 +00:00
parent 889fbaaf4c
commit ce7fc9f39c
17 changed files with 1839 additions and 2 deletions

147
README.md
View File

@@ -1,3 +1,146 @@
# gmod-prophunt-server
# 🎮 Garry's Mod PropHunt Server
Garry's Mod PropHunt Server Setup - Complete with MetaMod, SourceMod, plugins, Docker & bare metal installers
A complete, production-ready PropHunt server setup with automated installation, updates, and Docker support.
## 🚀 Quick Start
### One-Liner Docker Install
```bash
curl -fsSL https://git.vish.gg/Vish/gmod-prophunt-server/raw/branch/main/install-docker.sh | bash
```
### Bare Metal Install
```bash
curl -fsSL https://git.vish.gg/Vish/gmod-prophunt-server/raw/branch/main/install.sh | bash
```
## 📦 What's Included
- **Garry's Mod Server** (via SteamCMD)
- **MetaMod:Source** - Latest stable version
- **SourceMod** - Latest stable version
- **PropHunt Gamemode** - Pre-configured
- **Essential Plugins**:
- ULX Admin Mod
- ULib
- PropHunt Enhanced
- Anti-Cheat basics
- Workshop Collection Downloader
## 📁 Directory Structure
```
gmod-prophunt-server/
├── cfg/ # Server configuration files
│ ├── server.cfg # Main server config
│ ├── autoexec.cfg # Auto-execute commands
│ └── mount.cfg # Content mounting
├── scripts/ # Management scripts
│ ├── install.sh # Full installation
│ ├── update.sh # Update server & addons
│ ├── start.sh # Start server
│ └── backup.sh # Backup script
├── docker/ # Docker files
│ ├── Dockerfile # Container definition
│ └── docker-compose.yml # Compose setup
├── sourcemod/ # SourceMod configuration
├── workshop/ # Workshop collection config
└── metamod/ # MetaMod configuration
```
## ⚙️ Configuration
### Server Settings
Edit `cfg/server.cfg` to customize:
- Server name
- RCON password
- Max players
- Map rotation
- Workshop collection ID
### Workshop Collection
The default workshop collection includes essential PropHunt content. To use your own:
1. Create a collection on Steam Workshop
2. Update `WORKSHOP_COLLECTION_ID` in `cfg/server.cfg`
3. Run `./scripts/update.sh`
## 🔧 Management Commands
```bash
# Start server
./scripts/start.sh
# Update everything (server, addons, plugins)
./scripts/update.sh
# Backup server data
./scripts/backup.sh
# View logs
tail -f /home/gmod/serverfiles/garrysmod/logs/console.log
```
## 🐳 Docker Management
```bash
# Start with Docker Compose
docker-compose up -d
# View logs
docker-compose logs -f
# Stop
docker-compose down
# Update
docker-compose pull && docker-compose up -d
```
## 🔒 Default Ports
| Port | Protocol | Purpose |
|------|----------|---------|
| 27015 | UDP/TCP | Game server |
| 27005 | UDP | Client port |
| 27020 | UDP | SourceTV |
## 📝 Environment Variables
| Variable | Default | Description |
|----------|---------|-------------|
| `SRCDS_TOKEN` | - | Steam Game Server Token (required) |
| `SERVER_NAME` | PropHunt Server | Server name |
| `RCON_PASSWORD` | changeme | RCON password |
| `MAX_PLAYERS` | 24 | Maximum players |
| `MAP` | ph_office | Starting map |
| `WORKSHOP_COLLECTION` | - | Workshop collection ID |
## 🔑 Getting a Server Token
1. Go to https://steamcommunity.com/dev/managegameservers
2. Create a new game server account for App ID `4000` (Garry's Mod)
3. Copy the token and set it as `SRCDS_TOKEN`
## 🛠️ Troubleshooting
### Server won't start
- Check that `SRCDS_TOKEN` is set
- Verify ports 27015-27020 are open
- Check logs in `garrysmod/logs/`
### Workshop content not downloading
- Verify collection is public
- Check `WORKSHOP_COLLECTION` is set correctly
- Ensure server has internet access
### Players can't connect
- Ensure firewall allows UDP/TCP 27015
- Verify server is properly registered with Steam
## 📜 License
MIT License - Free to use and modify.
## 🤝 Contributing
Pull requests welcome! Please read the contribution guidelines first.