A representation of a server for a given game. More...
#include <server.h>
Public Types | |
enum | Response { RESPONSE_GOOD, RESPONSE_TIMEOUT, RESPONSE_WAIT, RESPONSE_BAD, RESPONSE_BANNED, RESPONSE_NO_RESPONSE_YET, RESPONSE_PENDING, RESPONSE_REPLY } |
Type of response that is extracted by parsing the packet that came from the Server. More... | |
Signals | |
void | begunRefreshing (ServerPtr server) |
Emitted when refresh process begins for the current server. | |
void | updated (ServerPtr server, int response) |
Emitted when a refresh has been completed. | |
Public Member Functions | |
Server (const QHostAddress &address, unsigned short port) | |
Spawn server with given address and port. | |
const QStringList & | additionalWebSites () const |
Additional website URLs provided by this server. | |
void | addPlayer (const Player &player) |
Add new Player to this server's PlayersList. | |
const QHostAddress & | address () const |
Address of this server. | |
QString | addressWithPort () const |
Returns "address:port" string. | |
QStringList | allWadNames () const |
IWAD + PWADs. | |
QStringList | allWebSites () const |
Get both webSite() and additionalWebSites(). | |
bool | anyWadnameContains (const QString &text, Qt::CaseSensitivity cs=Qt::CaseInsensitive) const |
True if name of any WAD of this server contains given text. | |
void | clearPlayersList () |
Removes all players from PlayersList. | |
virtual ExeFile * | clientExe () |
Client executable retriever. | |
QString | customDetails () |
[Virtual] Allows a plugin to provide custom server details. | |
const QList< DMFlagsSection > & | dmFlags () const |
dmflags used by this server. | |
const QString & | email () const |
Email address provided by this server. | |
QString | engineName () const |
Returns name of the engine for this server, for example: "Skulltag". | |
const GameMode & | gameMode () const |
GameMode that is currently running on this server. | |
virtual GameClientRunner * | gameRunner () |
Creates an instance of GameClientRunner's derivative class. | |
const QString & | gameVersion () const |
Version of the server program (1.0, 0.98-beta, and so on). | |
virtual bool | hasRcon () const |
Does this server support remote console connection? | |
QString | hostName (bool forceAddress=false) const |
A string that is either the "ipaddress:port" or "hostname:port". | |
const QPixmap & | icon () const |
Icon for this server. | |
bool | isCustom () const |
Is this a custom server defined by the user? | |
bool | isEmpty () const |
Are there any players on this server? | |
bool | isFull () const |
Is this server full? | |
bool | isKnown () const |
Is information for this server available? | |
bool | isLan () const |
Does this server come from LAN. | |
bool | isLocked () const |
"Connect" passworded or not. | |
bool | isLockedAnywhere () const |
True if any "isLocked()" returns true. | |
bool | isLockedInGame () const |
"Join" passworded or not. | |
bool | isRandomMapRotation () const |
Is random maplist rotation enabled? | |
bool | isRefreshing () const |
Is the server being refreshed at the current moment? | |
bool | isSecure () const |
Secure as in 'secure for players', not 'passworded'. | |
bool | isSpecial () const |
Special servers are custom servers or LAN servers. | |
bool | isTestingServer () const |
Does this server run a testing version of the game? | |
const QString & | iwad () const |
IWAD used by this server. | |
Response | lastResponse () const |
Last response status deduced by parsing of the server response packet. | |
void | lookupHost () |
Prompts the server to reverse resolve its address to a hostname. | |
const QString & | map () const |
Name of the current level. | |
const QStringList & | mapList () const |
List of all levels that are in map rotation on this server. | |
unsigned short | maxClients () const |
Amount of connection slots for this server, as reported by the server. | |
unsigned short | maxPlayers () const |
Amount of play slots for this server. | |
virtual QList< GameCVar > | modifiers () const |
What kind of game modifiers are enabled on this server? | |
const QString & | motd () const |
Message of the Day. | |
const QString & | name () const |
Server's name. | |
int | numFreeClientSlots () const |
Amount of free connection slots. | |
int | numFreeJoinSlots () const |
Amount of free play slots. | |
int | numFreeSpectatorSlots () const |
Amount of free spectator slots. | |
int | numTotalSlots () const |
Actual number of free connection slots deduced from maxPlayers() and maxClients(). | |
int | numWads () const |
Number of PWADs loaded on this server. | |
unsigned int | ping () const |
Ping from local host to this server. | |
const Player & | player (int index) const |
Player at given index of PlayersList. | |
const PlayersList & | players () const |
List of players that are on this server currently. | |
virtual EnginePlugin * | plugin () const =0 |
unsigned short | port () const |
Network port on which this server is hosted. | |
virtual RConProtocol * | rcon () |
Spawns RConProtocol instance. | |
Response | readRefreshQueryResponse (const QByteArray &data) |
Entry point for Refresher that pushes response packet for parsing. | |
void | refreshStarts () |
Called when server begins refreshing routine. | |
void | refreshStops (Response response) |
Called when server finishes refreshing routine. | |
unsigned int | score (int team=0) const |
Total score of a given team, by default team 0 is used. | |
unsigned int | scoreLimit () const |
Current score limit. | |
const QList< int > & | scores () const |
Scores for all teams. | |
QWeakPointer< Server > | self () const |
Reference to this server made available ONLY after the server is fully created. | |
bool | sendRefreshQuery (QUdpSocket *socket) |
Method called by the refreshing thread; sends the challenge query through refresher's socket. | |
void | setAdditionalWebSites (const QStringList &list) |
Set additional web site URLs parsed from the response packet. | |
void | setCustom (bool custom) |
Set whether this server is custom, should be called by Doomseeker only. | |
void | setEmail (const QString &mail) |
Set email parsed from the response packet. | |
void | setGameMode (const GameMode &gameMode) |
Set game mode parsed from the response packet. | |
void | setLan (bool b) |
void | setMap (const QString &name) |
Set current level parsed from the response packet. | |
void | setMapList (const QStringList &mapList) |
Set map rotation list parsed from the response packet. | |
void | setMaxClients (unsigned short i) |
Set amount of slots for client parsed from the response packet. | |
void | setMaxPlayers (unsigned short i) |
Set amount of slots for players parsed from the response packet. | |
void | setMotd (const QString &message) |
Set Message of the Day parsed from the response packet. | |
void | setName (const QString &name) |
Set server's name parsed from the response packet. | |
void | setPort (unsigned short i) |
Set network port, should be called by Doomseeker only. | |
void | setRandomMapRotation (bool b) |
Set random map rotation status parsed from the response packet. | |
void | setSelf (const QWeakPointer< Server > &self) |
Set "self" reference, should by called by Doomseeker only. | |
void | setSkill (unsigned char newSkill) |
Set skill level parsed from the response packet. | |
void | setWebSite (const QString &site) |
Set web site URL parsed from the response packet. | |
unsigned char | skill () const |
Game skill level, starting from zero. | |
virtual QRgb | teamColor (int team) const |
Color of team under given index. | |
virtual QString | teamName (int team) const |
Name of team under given index. | |
unsigned short | timeLeft () const |
Amount of time until the round is over, expressed in minutes. | |
unsigned short | timeLimit () const |
Round time limit, expressed in minutes. | |
qint64 | timeMsSinceLastRefresh () const |
Milliseconds elapsed since last refresh. | |
virtual TooltipGenerator * | tooltipGenerator () const |
Creates an instance of TooltipGenerator. | |
const PWad & | wad (int index) const |
PWAD under given index on the PWADs list. | |
virtual PathFinder | wadPathFinder () |
Instantiate and return PathFinder configured to search for WADs for this server. | |
const QList< PWad > & | wads () const |
List of all PWADs loaded on this server. | |
const QString & | webSite () const |
Website URL provided by this server. | |
Protected Member Functions | |
void | addWad (const PWad &wad) |
Add PWAD to the list of this server's PWADs. | |
void | clearWads () |
Clear PWADs list. | |
QByteArray | createSendRequest () |
[Pure Virtual] Prepares challenge data. | |
QString | customDetails_default () |
Response | readRequest (const QByteArray &data) |
[Pure Virtual] Reads response packet. | |
QList< int > & | scoresMutable () |
Mutable reference to the scores list, available for contents modification. | |
void | setDmFlags (const QList< DMFlagsSection > &dmFlags) |
Set dmFlags(). | |
void | setGameVersion (const QString &version) |
Set gameVersion(). | |
void | setIwad (const QString &iwad) |
Set iwad(). | |
void | setLocked (bool locked) |
Set isLocked(). | |
void | setLockedInGame (bool locked) |
Set isLockedInGame(). | |
void | setPing (unsigned int currentPing) |
Set ping(). | |
void | setPingIsSet (bool b) |
Plugins should set this to true to prevent default ping calculation. | |
void | setScoreLimit (unsigned int scoreLimit) |
Set scoreLimit(). | |
void | setSecure (bool bSecureServer) |
Set isSecure(). | |
void | setTestingServer (bool b) |
void | setTimeLeft (unsigned short timeLeft) |
Set timeLeft(). | |
void | setTimeLimit (unsigned short timeLimit) |
Set timeLimit(). | |
Friends | |
class | ServerPointer |
A representation of a server for a given game.
This is a multipurpose class that represents a game server in general. Server data is stored here, as well as interfaces for following operations are present:
Doomseeker is designed in a way that ownership of Server instances are relegated to QSharedPointer objects. These objects allow Doomseeker to push the Server to various asynchronous operations and not worry that the server object will be deleted before it stops being needed. This way we avoid references to dangling pointers, but there's also a price. Any class that requires a QSharedPointer<Server> will lead to undefined behavior (crash) if plain Server* pointer is passed. Instead, Server provides a self() method that returns a reference that is safe to be casted to QSharedPointer. This method should also be used instead of 'this' pointer. The drawback is that self() is not available until the object is fully constructed, thus its use in constructor is prohibited.
ServerPtr is basically Doomseeker's alias for QSharedPointer<Server>.
enum Server::Response |
Type of response that is extracted by parsing the packet that came from the Server.
Response is returned from readRequest() which needs to be customized by each plugin.
Enumerator | |
---|---|
RESPONSE_GOOD |
Response was parsed properly and Server information is available. |
RESPONSE_TIMEOUT |
Server didn't respond at all. |
RESPONSE_WAIT |
Server responded with "wait", may happen when we refresh too quickly. |
RESPONSE_BAD |
Response from the server was erroneous. Such servers are marked as invalid by Doomseeker. |
RESPONSE_BANNED |
Player is banned from that server. |
RESPONSE_NO_RESPONSE_YET |
"Dummy" response for servers that weren't refreshed yet. |
RESPONSE_PENDING |
Waiting for additional packets. Some games might return challenge result in more than one packet. This response marks that we're awaiting more packets. |
RESPONSE_REPLY |
Doomseeker needs to send some more challenge data to the server. When this is returned, createSendRequest() will be called again. It's up to the plugin to know whether any modification to the generated request needs to be applied. |
Server::Server | ( | const QHostAddress & | address, |
unsigned short | port | ||
) |
Spawn server with given address and port.
Definition at line 133 of file server.cpp.
const QStringList & Server::additionalWebSites | ( | ) | const |
Additional website URLs provided by this server.
Definition at line 815 of file server.cpp.
void Server::addPlayer | ( | const Player & | player | ) |
Add new Player to this server's PlayersList.
Plugins can use this method to add new Player to the list when parsing the server response packet.
const QHostAddress & Server::address | ( | ) | const |
Address of this server.
Definition at line 192 of file server.cpp.
QString Server::addressWithPort | ( | ) | const |
Returns "address:port" string.
Definition at line 197 of file server.cpp.
|
protected |
Add PWAD to the list of this server's PWADs.
Definition at line 187 of file server.cpp.
QStringList Server::allWadNames | ( | ) | const |
IWAD + PWADs.
Definition at line 202 of file server.cpp.
QStringList Server::allWebSites | ( | ) | const |
Get both webSite() and additionalWebSites().
Definition at line 820 of file server.cpp.
bool Server::anyWadnameContains | ( | const QString & | text, |
Qt::CaseSensitivity | cs = Qt::CaseInsensitive |
||
) | const |
True if name of any WAD of this server contains given text.
Definition at line 216 of file server.cpp.
|
signal |
Emitted when refresh process begins for the current server.
server | Pointer to 'this'. |
void Server::clearPlayersList | ( | ) |
Removes all players from PlayersList.
Definition at line 245 of file server.cpp.
|
protected |
Clear PWADs list.
Definition at line 250 of file server.cpp.
|
virtual |
Client executable retriever.
Can return different types of instances depending on the information provided by the server. Ownership of the ExeFile object is returned to the caller.
Definition at line 255 of file server.cpp.
|
protected |
[Pure Virtual] Prepares challenge data.
QString Server::customDetails | ( | ) |
[Virtual] Allows a plugin to provide custom server details.
const QList< DMFlagsSection > & Server::dmFlags | ( | ) | const |
dmflags used by this server.
Definition at line 271 of file server.cpp.
const QString & Server::email | ( | ) | const |
Email address provided by this server.
Definition at line 276 of file server.cpp.
QString Server::engineName | ( | ) | const |
Returns name of the engine for this server, for example: "Skulltag".
This returns name defined by the parent plugin itself, or "Undefined" string if there is no parent plugin.
Definition at line 281 of file server.cpp.
const GameMode & Server::gameMode | ( | ) | const |
GameMode that is currently running on this server.
Definition at line 293 of file server.cpp.
|
virtual |
Creates an instance of GameClientRunner's derivative class.
Gets a pointer to a new instance of GameClientRunner's descendant (defined by a plugin). Created instance should be deleted manually by the programmer (ownership is returned to the caller).
Definition at line 298 of file server.cpp.
const QString & Server::gameVersion | ( | ) | const |
Version of the server program (1.0, 0.98-beta, and so on).
Definition at line 303 of file server.cpp.
|
inlinevirtual |
QString Server::hostName | ( | bool | forceAddress = false | ) | const |
A string that is either the "ipaddress:port" or "hostname:port".
'hostname' is returned depending on if the hostname information has been retrieved, if reverse lookups are enabled, and on the forceAddress parameter.
forceAddress | Force method to return 'ipaddress' even if 'hostname' is available. |
Definition at line 308 of file server.cpp.
const QPixmap & Server::icon | ( | ) | const |
Icon for this server.
Definition at line 318 of file server.cpp.
bool Server::isCustom | ( | ) | const |
Is this a custom server defined by the user?
Custom servers can be defined from the configuration box.
Definition at line 323 of file server.cpp.
bool Server::isEmpty | ( | ) | const |
Are there any players on this server?
Definition at line 328 of file server.cpp.
bool Server::isFull | ( | ) | const |
Is this server full?
Definition at line 333 of file server.cpp.
bool Server::isKnown | ( | ) | const |
Is information for this server available?
This is set to true when parsing of the response packet finishes successfully.
Definition at line 338 of file server.cpp.
bool Server::isLan | ( | ) | const |
Does this server come from LAN.
Definition at line 827 of file server.cpp.
bool Server::isLocked | ( | ) | const |
"Connect" passworded or not.
Definition at line 348 of file server.cpp.
bool Server::isLockedAnywhere | ( | ) | const |
True if any "isLocked()" returns true.
Definition at line 343 of file server.cpp.
bool Server::isLockedInGame | ( | ) | const |
"Join" passworded or not.
Definition at line 353 of file server.cpp.
bool Server::isRandomMapRotation | ( | ) | const |
Is random maplist rotation enabled?
Definition at line 358 of file server.cpp.
bool Server::isRefreshing | ( | ) | const |
Is the server being refreshed at the current moment?
Definition at line 363 of file server.cpp.
bool Server::isSecure | ( | ) | const |
Secure as in 'secure for players', not 'passworded'.
When this flag is enabled Doomseeker will draw a shield next to the engine icon on server list. What is actually means depends on the game. For example, it may mean that this server uses the global ban list provided by the master server.
Definition at line 368 of file server.cpp.
bool Server::isSpecial | ( | ) | const |
Special servers are custom servers or LAN servers.
Definition at line 373 of file server.cpp.
bool Server::isTestingServer | ( | ) | const |
Does this server run a testing version of the game?
Definition at line 378 of file server.cpp.
const QString & Server::iwad | ( | ) | const |
IWAD used by this server.
Definition at line 383 of file server.cpp.
Server::Response Server::lastResponse | ( | ) | const |
Last response status deduced by parsing of the server response packet.
Definition at line 388 of file server.cpp.
void Server::lookupHost | ( | ) |
Prompts the server to reverse resolve its address to a hostname.
The lookup will be performed asynchronously. When lookup is finished then updated() signal will be emitted.
Definition at line 393 of file server.cpp.
const QString & Server::map | ( | ) | const |
Name of the current level.
Definition at line 404 of file server.cpp.
const QStringList & Server::mapList | ( | ) | const |
List of all levels that are in map rotation on this server.
Definition at line 399 of file server.cpp.
unsigned short Server::maxClients | ( | ) | const |
Amount of connection slots for this server, as reported by the server.
Definition at line 409 of file server.cpp.
unsigned short Server::maxPlayers | ( | ) | const |
Amount of play slots for this server.
Definition at line 414 of file server.cpp.
|
virtual |
What kind of game modifiers are enabled on this server?
Definition at line 419 of file server.cpp.
const QString & Server::motd | ( | ) | const |
Message of the Day.
Definition at line 424 of file server.cpp.
const QString & Server::name | ( | ) | const |
Server's name.
Definition at line 429 of file server.cpp.
int Server::numFreeClientSlots | ( | ) | const |
Amount of free connection slots.
Definition at line 434 of file server.cpp.
int Server::numFreeJoinSlots | ( | ) | const |
Amount of free play slots.
Definition at line 440 of file server.cpp.
int Server::numFreeSpectatorSlots | ( | ) | const |
Amount of free spectator slots.
Usually numFreeClientSlots() - numFreeJoinSlots().
Definition at line 446 of file server.cpp.
|
inline |
Actual number of free connection slots deduced from maxPlayers() and maxClients().
|
inline |
unsigned int Server::ping | ( | ) | const |
Ping from local host to this server.
Definition at line 452 of file server.cpp.
const Player & Server::player | ( | int | index | ) | const |
Player at given index of PlayersList.
Definition at line 457 of file server.cpp.
const PlayersList & Server::players | ( | ) | const |
List of players that are on this server currently.
Definition at line 462 of file server.cpp.
|
pure virtual |
This is supposed to return the plugin this Server belongs to. New instances of EnginePlugin shouldn't be created here. Instead each plugin should keep a global instance of EnginePlugin (singleton?) and a pointer to this instance should be returned.
unsigned short Server::port | ( | ) | const |
Network port on which this server is hosted.
Definition at line 467 of file server.cpp.
|
inlinevirtual |
Spawns RConProtocol instance.
Ownership of the new object is returned to the caller.
Server::Response Server::readRefreshQueryResponse | ( | const QByteArray & | data | ) |
Entry point for Refresher that pushes response packet for parsing.
Definition at line 472 of file server.cpp.
|
protected |
[Pure Virtual] Reads response packet.
void Server::refreshStarts | ( | ) |
Called when server begins refreshing routine.
Definition at line 484 of file server.cpp.
void Server::refreshStops | ( | Response | response | ) |
Called when server finishes refreshing routine.
Definition at line 496 of file server.cpp.
unsigned int Server::score | ( | int | team = 0 | ) | const |
Total score of a given team, by default team 0 is used.
Definition at line 511 of file server.cpp.
unsigned int Server::scoreLimit | ( | ) | const |
Current score limit.
This might mean something different depending on current game mode.
Definition at line 516 of file server.cpp.
const QList< int > & Server::scores | ( | ) | const |
Scores for all teams.
Definition at line 521 of file server.cpp.
|
protected |
Mutable reference to the scores list, available for contents modification.
Definition at line 526 of file server.cpp.
QWeakPointer< Server > Server::self | ( | ) | const |
Reference to this server made available ONLY after the server is fully created.
This needs to be used instead of "this" pointer when Server needs to be passed to a QSharedPointer. Result is undefined when this method is called in the constructor.
Definition at line 531 of file server.cpp.
bool Server::sendRefreshQuery | ( | QUdpSocket * | socket | ) |
Method called by the refreshing thread; sends the challenge query through refresher's socket.
Definition at line 536 of file server.cpp.
void Server::setAdditionalWebSites | ( | const QStringList & | list | ) |
Set additional web site URLs parsed from the response packet.
Definition at line 722 of file server.cpp.
void Server::setCustom | ( | bool | custom | ) |
Set whether this server is custom, should be called by Doomseeker only.
Definition at line 560 of file server.cpp.
|
protected |
Set dmFlags().
Definition at line 565 of file server.cpp.
void Server::setEmail | ( | const QString & | ) |
Set email parsed from the response packet.
Definition at line 570 of file server.cpp.
void Server::setGameMode | ( | const GameMode & | gameMode | ) |
Set game mode parsed from the response packet.
Definition at line 575 of file server.cpp.
|
protected |
Set gameVersion().
Definition at line 580 of file server.cpp.
|
protected |
Set iwad().
Definition at line 592 of file server.cpp.
|
protected |
Set isLocked().
Definition at line 597 of file server.cpp.
|
protected |
Set isLockedInGame().
Definition at line 602 of file server.cpp.
void Server::setMap | ( | const QString & | name | ) |
Set current level parsed from the response packet.
Definition at line 612 of file server.cpp.
void Server::setMapList | ( | const QStringList & | mapList | ) |
Set map rotation list parsed from the response packet.
Definition at line 607 of file server.cpp.
void Server::setMaxClients | ( | unsigned short | i | ) |
Set amount of slots for client parsed from the response packet.
Definition at line 617 of file server.cpp.
void Server::setMaxPlayers | ( | unsigned short | i | ) |
Set amount of slots for players parsed from the response packet.
Definition at line 622 of file server.cpp.
void Server::setMotd | ( | const QString & | message | ) |
Set Message of the Day parsed from the response packet.
Definition at line 627 of file server.cpp.
void Server::setName | ( | const QString & | name | ) |
Set server's name parsed from the response packet.
Definition at line 632 of file server.cpp.
|
protected |
Set ping().
If this value is meant to be used instead of automatic ping calculation then remember to also set setPingIsSet() to true.
Definition at line 639 of file server.cpp.
|
protected |
Plugins should set this to true to prevent default ping calculation.
This is useful if plugin has its own way of determining ping.
Definition at line 644 of file server.cpp.
void Server::setPort | ( | unsigned short | i | ) |
Set network port, should be called by Doomseeker only.
Definition at line 649 of file server.cpp.
void Server::setRandomMapRotation | ( | bool | b | ) |
Set random map rotation status parsed from the response packet.
Definition at line 654 of file server.cpp.
|
protected |
Set scoreLimit().
Definition at line 677 of file server.cpp.
|
protected |
Set isSecure().
Definition at line 682 of file server.cpp.
void Server::setSelf | ( | const QWeakPointer< Server > & | self | ) |
Set "self" reference, should by called by Doomseeker only.
Definition at line 687 of file server.cpp.
void Server::setSkill | ( | unsigned char | newSkill | ) |
Set skill level parsed from the response packet.
Definition at line 707 of file server.cpp.
|
protected |
Set timeLeft().
Definition at line 697 of file server.cpp.
|
protected |
Set timeLimit().
Definition at line 702 of file server.cpp.
void Server::setWebSite | ( | const QString & | site | ) |
Set web site URL parsed from the response packet.
Definition at line 717 of file server.cpp.
unsigned char Server::skill | ( | ) | const |
Game skill level, starting from zero.
0 - I'm too young to die, ... 4 - Nightmare!.
Definition at line 776 of file server.cpp.
|
virtual |
Color of team under given index.
For example: team 0 is red, team 1 is blue.
Definition at line 727 of file server.cpp.
|
virtual |
Name of team under given index.
For example: team 0 is "attacking", team 1 is "defending".
Definition at line 744 of file server.cpp.
unsigned short Server::timeLeft | ( | ) | const |
Amount of time until the round is over, expressed in minutes.
Definition at line 749 of file server.cpp.
unsigned short Server::timeLimit | ( | ) | const |
Round time limit, expressed in minutes.
Definition at line 754 of file server.cpp.
qint64 Server::timeMsSinceLastRefresh | ( | ) | const |
Milliseconds elapsed since last refresh.
Underlying code uses QElapsedTimer to provide unified results that ignore events like daylight savings time change or user manipulating with system clock.
Definition at line 759 of file server.cpp.
|
virtual |
Creates an instance of TooltipGenerator.
This can be replaced by a plugin to use a custom tooltip generator. Ownership of TooltipGenerator object is returned to the caller.
Definition at line 771 of file server.cpp.
|
signal |
Emitted when a refresh has been completed.
Be sure to check the response to see if anything has actually changed.
server | Pointer to 'this'. |
const PWad & Server::wad | ( | int | index | ) | const |
PWAD under given index on the PWADs list.
Definition at line 781 of file server.cpp.
|
virtual |
Instantiate and return PathFinder configured to search for WADs for this server.
It's expected that this method will return a PathFinder that is configured to the best possible extent. If any error is encountered, it shouldn't result in returning an invalid PathFinder.
Default implementation creates PathFinder with paths configured by the user in configuration box, and with priority search directories set to wherever client and offline executables reside, if such executables are available.
Depending on the underlying OS, extra paths may also be added by Doomseeker after the user configured directories.
Additional paths appended on Linux:
/usr/local/share/games/doom/
/usr/share/games/doom/
Definition at line 786 of file server.cpp.
const QList< PWad > & Server::wads | ( | ) | const |
List of all PWADs loaded on this server.
Definition at line 805 of file server.cpp.
const QString & Server::webSite | ( | ) | const |
Website URL provided by this server.
Definition at line 810 of file server.cpp.