ZDaemon

ZDaemon is a modified Doom source port based on ZDoom for both Windows and Linux/Unix (server only at this time), purposely-built for playing multiplayer games over the Internet. Formerly open source, the port has been changed to closed source due to cheating incidents and security issues. The current official version is 1.08.08c (2011-07-16) and the current beta version is. ZSL, or ZDaemon Server Launcher, is currently at version 2.0.0.0 beta 26.



ZDaemon
ZDaemon itself is based on ZDoom 1.23, which was one of the last major versions of ZDoom before moving to its current 2.xx codebase. It features some of the features available from ZDoom such as the majority of line types, sloped lines, and deep water, but it lacks some of the more advanced functions of later versions of ZDoom, such as an uncapped framerate, advanced ACS scripting support, DECORATE, flat and texture mixing, and other similar features.

However, ZDaemon itself features an enhanced network code suitable for client/server games, stats and experience collection, teamplay support, and a Capture the Flag mode. In version 1.07.01, unlagging capabilities were added.

ZLauncher
ZLauncher is a specialized launcher made specifically for ZDaemon. It provides an official list of currently available servers for people to play on. It also features a buddy list, GETWAD (automatic wad downloading), a quick link to ZSL (the server launcher) from the menu, a WAD file setup utility, demo recording, playback utilities, a built in chat lobby (based on IRC), and embedded forum access. It is maintained by team member Kilgore.

ZSL
ZSL, or ZDaemon Server Launcher is a program for windows to invoke the ZDaemon server program with a specific configuration generated from GUI options, making the running of servers easier for general players. Created and maintained by team member Doom2pro, development is centred around the 2.x branch, which is a complete rewrite, fixing security vulnerabilities, the appearance of the launcher, and new features such as uPnP support. It also doesn't support multiple server creation through any version of windows vista and windows seven.

Other utilities
GetWAD

This is a modular utility created by team member Kilgore that looks on various repositories for user created mods (wad, pk3 files, for example) which it then downloads and extracts to the user's specified directory automatically.

ZDaemon Relay Chat

This is a modular IRC client created by team member Kilgore which was designed for use with the ZDaemon IRC chat server. It can still act as a general purpose IRC client. When used within ZLauncher, it automatically joins ZDaemon's IRC server, enabling users to chat other players who are logged in to ZDaemon. zrc.exe is a standalone version of the client which can also be used to access ZDaemon's IRC server, however the user must provide their master server account password on the connect line as the IRC server's password in order to connect.

Earlier versions
Initially ZDaemon was based on Sergey Makovkin (Fly)'s client/server modification of ZDoom 1.22, csDoom, inheriting its open source license (the GNU GPL). However, since Nightfang wanted to improve the network code, the core networking code was rewritten (for version 1.0). This rewite, which eliminated the QuakeWorld code that was under the GNU GPL, allowed later versions to be released under the Doom Source License, and allowed the developers to keep code inherited from ZDoom without conflict.

Cheating
For the most part the ZDaemon team has managed to keep cheating relatively under control through closing the source, security updates, and surveillance (for instance, demo recordings are often demanded during competitive tournaments to combat ZDHook, a combination package containing several cheating mechanisms, including an aimbot, a primitive wallhack, and the use of modified WADs). ZDaemon contains also some kind of cheating detection system which detects third party cheat applications, like ZDHook.

The cheating policy is a point of contention within the ZDaemon community, as public accusations of cheating (whether legitimate or not) are frowned upon as unnecessary public disturbance, with Raider once declaring it as a form of harassment. This has led to conflicts in the community, including many by long-standing members who feel there are a small number of cheaters who evade the ZDaemon's cheat detection system, which they feel is either ignorant of the matter or simply turning a blind eye. The administrators maintain that they ban only when given clear evidence by their cheat detection system and stand by their policy, although their critics argue that this is done under color of authority.

Source code controversy
In the ZDaemon 1.07 era, having forgone the nominal GNU GPL by explicitly adopting the DSL which they told to be fully compatible with the then-current state of the source code, the development team stopped releasing the source code due to numerous exploits and cheating incidents. This action caused a couple of free software friendly people to distance themselves from the ZDaemon community, criticizing the move as a form of security through obscurity which makes development of some cheats more difficult but does not address the causes. The move also makes development of alternate ZDaemon clients and servers impossible and is uncommon in the Doom community where most source ports have their source code publicly available. Skulltag, another closed-source multiplayer-oriented source port, has faced the same criticism for the same reason, which is why they released older source code recently. ZDaemon has also its old 1.06 code base released. Odamex, the last multiplayer-oriented port, is free software under the GPL, though their player base isn't huge.

The developers have agreed that anyone wanting to develop a new feature or bugfix may do so using the older ZDaemon 1.06 codebase and submit it to the core development team for inclusion.

Bans
The ZDaemon master server will only advertise servers that enforce a ban list controlled by the ZDaemon staff. Servers that do not enforce this ban list are not shown to users. The effective result of this is that the ZDaemon staff have the ability to ban anyone they choose from all ZDaemon servers advertised on the master. No ban list (or other) restrictions apply to servers not advertised on the master. While this allows the removal of cheaters, the mechanism used can occasionally block innocent players as well due to matching dynamic IP ranges. Even when this kind of system has its cons, it's still very common banning method and other ports, like ZDaemon's main competitor, Skulltag, are using same system.

Relatedly, ban appeals, especially those of bystanders caught in the range bans of others, often end up as over-dramatized forum posts. For this reason, it is usually requested that such appeals be relegated to a private dialog with a member of the staff.

GetWAD controversy
Doom source ports require a Doom IWAD file which contains the graphics, levels and other media that are used in the game. These IWAD files are still copyrighted. This means that although source ports can be freely downloaded, users must still buy a copy of Doom in order to play. The GetWAD system included in ZDaemon allows any WAD files to be automatically located and downloaded, including IWAD files. There are no restrictions placed on this. Although this practice is not officially condoned by the ZDaemon staff, people think they encourage software piracy through failing to prevent automatic downloading of the Doom IWAD files.

Trojan
ZDaemon staff member Doom2pro released a trojan program purporting to be a ZDaemon cheat. This trojan was relased in a global cheat developing forum to trick regular cheaters to download it. When run, the program would inform Doom2pro and delete ZDaemon folder from the user's computer. Although Doom2pro acted independently of the rest of the ZDaemon staff, ZDaemon has nonetheless been criticised for his methods.

Linux
Following the moving of the forums to a different server, Linux machines are now able to access the forums. This was not possible for a portion of Linux users beforehand. There are native versions of zserv for Linux, plus an unofficial server launcher, with a native Linux client being planned for version 1.10. Until the arrival of a native client, users may play using emulation software such as WINE, Cedega or CrossOver. Playing using this software is allowed.

Windows 7
ZDaemon will run on Windows 7. Some users reported seeing a messed up color pallette however, which was fixed by the release of a new client.

The ZDaemon community
The ZDaemon community itself, while not part of the ZDaemon program in a strict sense, plays a huge role in experience of playing ZDaemon online. It features many methods of discussion, many ways to 'get involved', and the ZDaemon team themselves would host many things that normally would get relegated to other outside organizations or websites.

The community's discussion and gaming services include:


 * The ZDaemon Forums.
 * ZDaemon Chat / #zdplayers on ZDirc.
 * #zdaemon on irc.freenode.net.
 * ZDaemon Tournaments.
 * ZDReview.

Clan activity

 * Main article: Clans

The ZDaemon team
Raider

Project Leader

Doom2pro

Development

Danni

Development

Kilgore

Development and Support

Lyfe

Development

Phenex2

Development and Support

Former staffers
These people are no longer involved with ZDaemon and many of them are now actually banned. This section exists purely for historical reasons.

NightFang

Founder and Developer of ZDaemon

Retired.

Slayer

Website hoster, master server hoster and doom2.org administrator

Retired.

KNorton

Founder of #zdaemon

The IRC channel #zdaemon on freenode was originally unrelated to ZDaemon itself, instead being simply a chat room by and for players of the game. When KNorton disappeared for a brief period of time, Raider petitioned a global administrator to grant him ownership of the channel—freenode's policy supported projects adopting their own channels. When KNorton returned from his absence, he discovered his former position taken, and did not attempt to re-enter the community.

Ralphis

''Community moderator and beta tester. Also responsible for the name ZDaemon.''

One of the original ZDaemon team members, Ralphis was responsible for the name "ZDaemon". The ZDaemon team has claimed that Ralphis was removed for being too oppressive to the community. Ralphis claims otherwise however, claiming that he left due to ideological differences relating to the project. Ralphis was permanently banned from ZDaemon in the fall of 2006 after contacting id Software over ZDaemon's GETWAD utility and its illegal function of downloading various IWADs. Kilgore took this personally and has stated that if Ralphis is ever unbanned, he will resign from the ZDaemon team.

deathz0r

Beta tester and Forum Moderator

Deathz0r was banned because ZDaemon staff member noticed him as channel operator in an IRC channel whose users supported a DDoS attacks against the ZDaemon master server in late 2005, which were caused by channel's founder, CodeImp.

Russell

Channel operator and Forum Moderator

Banned for defending himself against an individual in the community who was considered higher than him by the project leader.

Da_maniaC

ZDaemon administration mail and tech support, Beta tester and forum moderator/channel operator

List of games that ZDaemon is compatible with

 * Doom and Doom shareware
 * Doom II
 * The Ultimate Doom
 * FreeDoom

Heretic and Hexen are only partially supported by the ZDaemon engine because it is based on the old ZDoom base code, version 1.23. In particular, Heretic is known to display a number of bugs yet many of them have been addressed since the release of version 1.08.08.

Game adaptations
The voices used for announcements of most CTF/Deathmatch/Team Deathmatch games were taken from Quake III Arena and Unreal Tournament. They were compiled together by the creator of the WADs zvox.wad and zvox2.wad, and are subject to change with time. There are also some custom soundpacks which are made and maintained by individual authors and are subject to change at any time according to the author.