In order to run a fully fledged tf2pickup.org instance, you are going to set up and configure a couple of components. These compoents can be served by a docker-compose container stack in Docker. That lets server administrators set up the project quickly, without any need of deep understanding of how certain elements of the site work, such us MongoDB configuration. Site deployment through Docker not only saves a lot of time for having a good understanding of how setup works, but also lets administrators run it in a separated environment, meaning there is no need for having anything very specific installed in your host system (besides Docker and docker-compose and the reverse proxy server).
The reverse proxy server
This part of the setup is not currently delivered together with the tf2pickup.org container stack (however we plan to change it in the future). It lets users access the client lets them communicate with the backend, for instance when they log in to the site. This should be delivered together with SSL certificates, regardless if they are paid or free. We described all setup steps for both here.
This is the backend of the whole system. It is responsible for accessing the database, configuring game servers and much, much more. Read how to deploy and configure one here.
This is the frontend, the webpage itself. You can configure your own look'n'feel so that the service looks unique. It communicates with the server and presents the data to the user in a accessible, eye-catching and friendly way. Here you will find the documentation on how to prepare your own branding, how to build the client and how to deploy it.
The voice server
Currently, tf2pickup.org supports only Mumble, but there are plans to support Discord voice channels as well.
The game server
To launch a game, at least one game server is needed. In order to let the game server work properly with the server, it is expected to have specific extensions/plugins installed:
- SourceMod 1.11 (the latest stable version)
- Metamod:Source 1.11 (the latest stable version)
- tf2pickup.org connector plugin
- SteamWorks extension
- system2 Extension (tf2pickup.org connector dependency)
- demos.tf plugin
- DHooks 2 Extension
- tf2-comp-fixes plugin
- SrcTV+ Extension (optional)
- TF2Stadium SourceMod Plugin
- Updated Pause Plugin
- Supplemental Stats 2
- Medic Stats
- LogsTF (optional since v10, not recommended)
- Improved Match Timer
- RGL Server Resources Updater
- ETF2L.org configs
- RGL.gg configs
We provide a Docker image that has all the plugins and configuration. Here you can find some information how to set them up fast. If you want to use a hosted gameserver, you must install all of these plugins above and disable the following default SourceMod plugins:
The site deployment can be done in one of two ways:
- Bundled - Server, client, game and voice server(s) on one host.
- Divided - Server and client are both on one host, while game server(s) are on another. This does not exclude hosting game servers on multiple different hosts.