Throughout my 5 years of experience as a staff member on a TDM server, I have almost seen each and every aspect of running and developing a healthy and stable server and community. In those 5 years, I have worked my way up the ladder - starting from the 'Trial Moderator' position all the way up to the 'Server Manager' position. Properly managing a server doesn't have to be very difficult - as long as you know what you are doing, know what to do in the future and as long as you have a great team of staff members and a supportive community actively participating in your server's progress.
When I first joined the server I became staff on (roughly 5-6 years ago) the server was still in it's infancy and not far as developed as the server is today. The server had very little mapping and scripting, messages had minor grammar mistakes and typo's and the forum was hosted on one of those free forum websites. ''What a shitty server'' you would say, though, a good reasonable amount of people were actively playing on that server (average of 40-50/100).
How is this possible?
Obviously, times are different nowadays - so what I am about to say might not work a 100%.
1. Find a working concept. There weren't as many TDM servers back in the days. From my memory, there were only four significant TDM servers (my server included). Obviously, the people who are interested in a TDM concept, would play on either of the available servers. Find a working concept that very little people do - and that you can do better (to be discussed later on). Or, take a popular concept and innovate (also to be discussed later on).
2. Community and branding. Just because you have players on your server, does not mean you have a community. There is a difference between the people who join your server only once for 15-30 minutes and the ones who are still there after 2-3 years. Try to force your players in a very subtle way to sign up on your forum and get involved in the activities of your server. Obviously, there are a couple of reasons why people want to sign up on your forum: ban appeals, submitting suggestions, obtaining a server/clan tag and so on. In our case, we made people sign up on our forum if they wanted to wear the community tag or if they wanted to join a restricted team which is only accessible through applications. There are many more reasons to come up with to get people to sign up on your forum, be creative but be subtle about it.
Secondly, branding. Make sure to decide what kind of style you want your server to have, make sure everything matches with eachother. If you have a roleplay server for example, a forum theme with soldiers and tanks wouldn't be taken seriously by your potential playerbase. Make sure you have a logo and optionally a slogan. You want people to remember your name.
TLDR Find a working concept that is done by a few others or be innovative in an already succesful concept. Players are not the same as a community. Make sure people register on your forum and make them actively participate. Get a proper website (optional), forum, logo and slogan (optional).
Once you have the foundations of the server, it's time to build and innovate. It's very important to stay or get ahead of the competition by being better. For our TDM server it was not that difficult to come up with cool new features, side missions, game mechanics and better server mapping. Find something that other servers don't have, and implement it on your server. Or - steal a feature from another server and improve it. An example: we had a bomb planting mission where the terrorists had to plant a bomb in Area 51. The mission was pretty straight forward. Run and gun to the marker, type /plantbomb and defend it. Over the course of several years, we have improved the mission and added some new features to it. Right now, the terrorists have to open the blastdoors by either hacking a control panel (requires a certain character level) or by driving a truck full of explosives to the gate. Then, they have to make their way inside and have to breach yet another set of blastdoors before being able to plant four bombs by pressing and holding down the button.
Here is a shortlist of things you can improve.
1. Help, FAQ. Especially when you have a roleplay server, this is a must. Make sure you explain the core mechanics of the game as simple and short as possible. Give people the opportunity to get more in-depth information if they want, either or forum or in game.
2. Server features. As described before, find cool features to add on your server or take features from other servers and improve them.
3. Mapping. Especially when you have a roleplay server, but this also applies to other servers. If there is one thing that attracts people to a server - it is custom mapping. Get a good mapper to develop maps that work. A map should not lag, should not be buggy and has to make sense (unless you are a freeroam server). Especially in TDM servers it is important to make a map work. Make sure it fits the setting (no skyscrapers in the desert) and that people have a lot of places to interact with (for example, to get cover or to ambush opponents).
4. Community involvement. Find reasons or activities in order to get your community involved. In our case, we had 'Community Feedback' topics whenever major updates were released, faction/group tournaments and random events.
Don't be afraid to ask your community to let them suggest what features they want, and don't be afraid to expirement with certain suggestions. For a short period of time, we had a special 'Brainstormers' group who would think of new features and existing features to improve. Although the group did not achieve all the results we wanted, it was still useful. Every success comes with failure.
TLDR Improve your server by adding new features and by being innovative. Staying ahead of the competition is important. There are several things you can improve, see examples in the shortlist above.
While you are working on building and innovating, it is also important to give people a reason to stay on your server. As an example, for our TDM server we spent an entire summer working on special character classes with unlockable weapons, ammo and features. People absolutely loved it and they just had to be the first to unlock the highest tier in a character class.
Things you can do to make people stay on your server.
1. Loyalty system. Reward your players for being on your server. Especially roleplay servers reward their players by giving out paychecks every hour and by collecting tokens every hour which can be redeemed for in game items. (We did not implement this on our server)
2. Achievements. This works on every server. There are all sorts of achievements you can implement on your server. For example: Kill 1.000 enemies with a dildo, be the first to finish a race 10 times, reach 1000 playing hours etc.
3. Player progression. People should be rewarded for their activities on your server. Have upgradable classes, allow people to own more vehicles or whatever.
4. Special groups. Have special groups in your server that require people a certain amount of server experience and statistics. For roleplay servers, think of the police department. For TDM servers, think of elite military groups and so on.
5. Competitive gameplay. See 2 and 3. In addition, allow people to start their own groups for more involvement and healthy rivalry between groups. Make them fight for the number one spot and hand out features and special privileges to those who work hard.
Great, so you have the foundations of your server, you have built and innovated and you gave people a reason to stay on your server. The next step is to constantly reflect on your activities and learn from mistakes made by you, by your staff members and other communities.
A couple of mistakes made by us other other communities.
1. Staff and the community. Staff involvement with the community is very important and something which has to be managed properly. You don't want staff members who want their asses licked or who lick higher ranked asses 24/7 or who feel to good to answer player's question. My advice when you have such a staff member in your team, throw them out as soon as possible. In our case, our staff team used to be something similar to a group of friends. Everything was relaxed and informal. If a problem occured, there would be no hesitation in asking or helping. Though, the danger arises that staff members will no longer obey your orders if you treat them too much as a friend. Make sure your staff team knows the rules and make sure they are good at enforcing it.
If there is one thing I hate most and what would be the number one reason to never return to a server is when no staff is present or when they don't aswer your questions or just misbehave themselves. Sometimes I used to log in using an undercover account just to test the quality of your staff team.
And lastly, make sure that you aren't being some kind of dictator. I used to play on a small medium roleplay server where they used to ban people for expressing critisism on the server's vision. Unless you want a community full of 'dead' players, you should embrace critisism and feedback. Regularly ask the community for their opinion and keep them involved in your server's progress. Make sure your community is alive and not afraid of using their voice.
2. Refunding roleplay servers and script edits. Don't waste your time if you are a refunding roleplay server based on someone else's script. I am 99.9% sure that your server will die within a week.
3. Donations. Make sure that donators do not become some sort of god and that players who do not donate stand no chance against them. Preferably you should offer donation packages that unlock additional features (such as being able to own more vehicles). It is also possible to allow donators to carry additional weapons, unlock special classes - but be careful and make sure it is balanced. It is also very important to look at the price/power ratio. If the price of a donation package is far below the amount of power a player gets, chances are your playerbase will complain in great masses (we had to learn this the hard way when having holiday discounts).
4. Poor anticheat. Pretty self explainatory. Make sure it is a 100% waterproof. Checking for health hack for example, should not be automated but checked manually.
5. Selling staff positions. Have some self respect.
6. Backups. Make sure you have working backups. There is nothing as worse when you have to tell your community that their data will be rolled back to 4 months ago.
7. Be willing to invest in your server. Get a reliable host. Get a hosted tab listing. Although a website is not required, it is highly recommended you get one. Personally, before I join a server I always check their website/forum first. Experience learns that if the site looks bad, the server is bad as well (in most cases). Learn some basic HTML and edit a bootstrap template. And lastly, get a domain and not a free createaforum kind of site. Make sure that the forum itself is appealing to the eye with no bright colors or unorganized boards and topics. Keep it clean and organized.
8. Do not copy others. Unless you want a shitload of hate from other communities, do not completely copy the features of others. Have some respect for the work of others. There used to be a TDM server literally copying each and every feature on the server, from dialogs to mapping (luckily, textures could not be copied - rendering the maps useless).
9. Do not over complicate your gamemode. If your gamemode is too overwhelming or too confusing because of the huge amount of features without proper guidance, people will leave on the spot. Treat new players as newborn babies. They have to learn how the gamemode works by experiencing the features step by step. Very few people read the FAQ when they join.
There is probably a whole lot more to discuss but I can not think of as of now. I'm not saying that my server is all perfect and everyone should be like us, no. It is important to keep in mind that nothing lasts forever and everything will die down eventually. Our golden years were 2-3 years ago. I can remember that one summer when we first hit a 100 online players 4 years ago, and a 150 the year after. Lately I have been very busy with school and other real life activities causing me to spend less and less time on the server. I am barely involved, and so is the owner. One time he even said that he gave up on the server just because he also, lost interest. When I asked him why he would keep the server online, he replied ''I keep it online because people are still playing''. Which brings me to my last point: Every step and every decision you take, should be for the players and the community. Only if you truly care about your community, you will succeed.
TLDR If you are only planning to read all the TLDRs, you do not deserve players on your server. Be willing to work for it.