I read somewhere that you were thinking about making the server list where players can run their own server, but the problem was handling updates.
I have a few suggestions on this, and a general writeup on how I'd like to see hosting in general:
Server Governence/CreationIn order to host a server, an individual must submit a Proof of Concept to you, or to some governing server authority. This authority could very well be the rpgwo.com website itself, and have RPGWO.com accounts vote on it.
RPGWO.COM should have a central store for user accounts. The client would connect to this database for users, and depend on the local server for ranks/roles. This would be -extremely- simple to do. More on logistics below.
They must be able to answer these questions without sounding like a 12-year old.
1. Who is your staff? What makes them qualified to run this server?
2. Who is hosting this server?
3. How is it being paid for?
4. What are the specs on the server?
5. What is the expected uptime?
6. What company is hosting the server
7. What is the theme of your server?
8. What sets this server apart from other servers? Why would I want to play it?
9. How do you envision this server being able to retain players, or bring in more players?
As mentioned in another post, the ability to code against the servers is pretty dire. INI manipulation isn't enough for servers to -really- diversify. Sure, you can get different game modes, but at its core it's still going to be the exact same game, dressed up in a different costume. This isn't necessarily a bad thing, and was really successful in RPGWO for a long ass time.
Some additional thoughts on serversSince you're pushing the burden of hosting off on other people not affiliated with Mickey Kudlo, INC, they'd need the ability to monetize their server. In years past, this came in the form of "perks" that they paid for. The downside to this is simply that you no longer reap the benefit of perks for money.
I have no easy solution to that problem. You could try to make admins pay YOU for a license, but that's really unfair given that the chances of actually turning profit from a server is pretty damn nil. I don't see you wanting to become a hosting company, either, so them paying you for the physical server is probably also not an option..
You could probably charge to have it "officially listed" but I don't know how the community will respond to that, either.
Server Logistics
Server Logistics: Administration and AuthenticationAs mentioned above, you should validate ALL client login requests through RPGWO.com
Since YOU'D be adding servers to the server list after an approval process, create a cross table that would have this layout:
ServerRoles
ID | PlayerID | ServerID | Role
Roles would be:
Member (They have a character there)
Moderator
Admin @
SuperAdmin @@
UltraAdmin @@@
Essentially, if the server is allowing new accounts, if they don't exist in that table, add them.
Whenever you add a new server, you'd simply tie their RPGWO account to that UltraAdmin table.
You'd create the ability for UAs, within the client while logged into their server, to /addUserToRole <rolename> <username>. You'd have to validate on both ends that this request to the server is valid. That's not tough to do. Obviously it'd take the ServerID from the server they're logged into for the request. Again, you'd need to ensure they're not able to edit that, as they could grant themselves administration rights to other servers.
Server Logistics: Files and Updates Because these servers would require you to add them manually to the list (or have a community manager do it, whatever), you can REQUIRE them to provide a dedicated server with a location for the files.
On the file server that holds the updates, they'd have a file titled something like: version.txt
Upon connection to that server, you'd pull the update URL. You'd check the versions.txt file for a revision number. If the version number doesn't match the one that's sitting locally, you'd run an update. You wouldn't have to code the server updates, ever, because it'd be the responsibility of the server admin. In order to run a local content update, the server admin would have to change this version #. That's it.
Since YOU can specify the way files and updates are handled, you'd create a method to essentially check the server version downloaded on the computer (xml/plain text would be fine, but not secure). If the version doesn't match the one listed on the server, then you'd
But Daegan.. How the hell would I update my game?!Game updates for non-centrally hosted servers tend to break them. That's not a good thing! BUT you could easily release beta versions of updates to server admins. Server admins could then test these clients with a dev copy of their server to ensure it won't break it before a RC is cut.
Also, assuming servers have that nifty API I talked about, the only way you'd "break" a server is if you changed the API. With this philosophy, all updates coming down shouldn't affect the 3rd party servers..
As mentioned above, you could also release the new client/server versions to Server Hosts a few weeks in advance, so that they could patch their content ahead of time. If they don't patch it, they're not doing their due diligence as hosts.
Additional ThoughtsI'd argue that the community can run a server better than you, Rhaorth (lolol), Jon, and UT combined. This is a simple fact. You're a software developer, not a sociologist. RPGWO, historically, has been pretty awful at giving the community what it wants, or even being in touch with it. I recall times on Liberty where simply disagreeing with an @@@ would get you permabanned. @@s were ran top-down from the @@@s, and not allowed to host events or do anything fun, by order of UT. Free speech and community (read: Daegan & Friends trolling, looking back) were policed out of the official RPGWOForums board, and that sort of policing is what lead the RPGWOForums.com domain to be created in the first place, and a sub-community was born here. It eventually died. Doing that in a tiny game like RPGWO is, what I believe, what killed it.
I'm not trying to call you out, as most of this was Rha/UT's fault, but you can't put assholes in charge of something critical that involves people skill. *it does not work*. However, using the ideas outlined above I feel that you could easily address this by letting the community be itself.
After browsing these boards after a several year hiatus, it's clear to me that you're trying to bridge the gap between you and the community, and I applaud that. The bottom line is that the community needs to be able to host their own servers and cater to itself. Whether that comes via updates, custom servers, or some form of autonomy (letting the community decide on what servers will go up), that's ultimately up to you, but I feel like this is a good model on how to handle this.
Essentially, you'd ultimately be creating an engine for players to create their own sandbox world, and host it out for others via your central source..
I'm willing to take questions for things I didn't think about/address.