Notice: Any messages purporting to come from this site telling you that your password has expired, or that you need to verify your details, confirm your email, resolve issues, making threats, or asking for money, are
spam. We do not email users with any such messages. If you have lost your password you can obtain a new one by using the
password reset link.
Due to spam on this forum, all posts now need moderator approval.
Entire forum
➜ SMAUG
➜ SMAUG coding
➜ Player accounts at login?
Player accounts at login?
|
It is now over 60 days since the last post. This thread is closed.
Refresh page
Pages: 1 2
Posted by
| Aqueus
USA (47 posts) Bio
|
Date
| Thu 22 Mar 2007 07:30 AM (UTC) |
Message
| Forgive me if this doesn't sound familiar... but I've seen on several MUDs a character account setup, where players log in to an account, instead of a character, then from there they can quickly check who's on, pick any of their characters to log into them, etc. Does anyone know where I could find a snippet, or instructions on how to include this feature into my codebase? | Top |
|
Posted by
| David Haley
USA (3,881 posts) Bio
|
Date
| Reply #1 on Thu 22 Mar 2007 09:00 AM (UTC) |
Message
| I don't have a snippet lying around, but I would strongly recommend against an account system, speaking from experience. Unless you give players a very good reason to have accounts, it's just a bother for everybody involved. If you're trying to use this as some kind of security feature, think hard about how you're going to enforce it -- what prevents somebody from creating several accounts?
Basically, an account system is trouble to implement, gets in the way, and has unclear goals. I'd think hard about what exactly you're trying to do before going down this route. |
David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone
http://david.the-haleys.org | Top |
|
Posted by
| Samson
USA (683 posts) Bio
|
Date
| Reply #2 on Thu 22 Mar 2007 01:26 PM (UTC) |
Message
| I second David's assessment of account systems. They may seem like a good idea, and might even seem to be more secure than plain old pfiles, but there's nothing to prevent someone from creating multiple accounts.
About the only good thing I can see is that an account helps people keep track of their characters. But that benefit isn't enough to outweigh the cost of writing the code, implementing it, and then testing it to be sure you aren't going to break the game.
If you're still interested, FEAR has an account system built in and since it's a derivative of smaug it should work. | Top |
|
Posted by
| Aqueus
USA (47 posts) Bio
|
Date
| Reply #3 on Fri 23 Mar 2007 02:35 AM (UTC) |
Message
| Well, I had originally thought that the rules would simply be "You are only allowed to have one account" and that I would simply track people's IP when creating new accounts. I also generally liked the account idea.
Could you list some cons to the system? I mean I only particularly want to pursue it if I can find a simple method of implementing it. And it also organizes player's characters, as one person said.
Also, I wanted to add incentives. Things players could buy by spending Bless (our form of QP), for example, players could get a 2% bonus to the experience they gain when using characters on their account, or another incentive would be that characters created on this account get a starting boost, putting them slightly ahead of other people when starting. And another one that I have in mind is to expand the number of characters that players can create on an account (The original number is 8, expanding to 12.)
So I'm not *just* adding it for the sake of adding it, but you have instilled some doubt in me with the double-teamed dislike of the system.
Moreover I wanted to add more tracking to players, for the purposes of keeping repeat offenders in line. Players have no correlation to one another, even if they are alts for the same person. If a character does wrong, they can hop IP's and jump on an alt. If people are restricted to one account per IP then they'll need to put more effort into evading punishments. This also allows us to punish entire accounts if the deed justifies the damage. Players could lose a digit off of each character's PL (DBS-style) for their account if they do something particularly nasty, like botting. If one character gets silenced or helled then the player may peaceably switch characters. But if they commit a second offense, within a certain time frame, then all of their characters will suffer the fate of their original character. Three times over. Bans will affect whole accounts. Players found to be in possession of multiple accounts (sharing accounts is legal, but one person must legitimately make claim to ownership of the account, without going over the one-account limit) will face a 'stern talking-to'. Depending on the standing of the player then several things could happen. One expected punishment is that players with multiple accounts will see one account - the one with the least amount of experience, items, etc. - will be kept. The others will be discarded.
Ok, that's my thesis on Accounts. Please rebut, I'm very curious what kind of hell you guys could have gone through to cause such immediate and disdainful reactions. | Top |
|
Posted by
| David Haley
USA (3,881 posts) Bio
|
Date
| Reply #4 on Fri 23 Mar 2007 03:58 AM (UTC) |
Message
|
Quote: that I would simply track people's IP when creating new accounts. That works great until...
- two people share the same IP, e.g. they are being a NAT firewall (a fairly common occurrence when people share a home connection)
- somebody's IP address changes every time they connect to the Internet
- somebody uses the same ISP as somebody else and when they connect get an IP that you think belongs to someone else
- somebody uses a very simple proxy mechanism to change their IP address
You're not solving a problem, you're just making it a wee little bit harder for people to cheat. And to boot you're making life very difficult for different people who very legitimately share an IP address.
Quote: a starting boost, putting them slightly ahead of other people when starting. OK, fine; I can create an account, make some dummy characters to get the starting boost, and then create my real character.
Quote: And another one that I have in mind is to expand the number of characters that players can create on an account (The original number is 8, expanding to 12.) Why do you have a limit for a for-free MUD? That will greatly discourage people. If I'm paying for my account that's one thing, but if it's free, I don't expect to be limited in how many characters I can create and keep around. If you have formulas for incentives based on the number of characters in an account, just limit the number for the purpose of calculation to 8 or 12.
Quote: Moreover I wanted to add more tracking to players, for the purposes of keeping repeat offenders in line. And now you've given people a major disincentive to not use your account system, if they think it's for you to track and monitor them.
Quote: If a character does wrong, they can hop IP's and jump on an alt. If people are restricted to one account per IP then they'll need to put more effort into evading punishments. See, this is one of the biggest flaws; you are trying to solve a problem by using a mechanism that you know doesn't work! Characters can already hop IPs. Why not just hop IPs and create a new account?
Quote: Players found to be in possession of multiple accounts How exactly do you plan on detecting that, much less proving it?
Here are the main points:
- You are trying to solve a problem using the very mechanism that created that problem to begin with. (IP tracking, which doesn't work)
- On a for-pay MUD, the incentive to not have several accounts is to pay less $$. An incentive system on a free MUD has major potential to be abused, as I described above.
- You give people a reason to not want accounts by using them to track people.
- You turn off people from your game by forcing them to go through a complicated "registration" process.
Of course, there are some upsides to accounts. For the "casual cheaters" it's easier to keep them in line (but those aren't the people you want to track anyhow). Some people like to see all their characters in a single place, so they don't forget about one. An account is a nice way of creating a single presence and associating all your characters to the same person, for, e.g., scoring purposes.
Accounts aren't necessarily bad. But before you put them in, you have to know exactly why you are doing it. If you think it's going to solve cheating by tracking by IP address, you should think again. |
David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone
http://david.the-haleys.org | Top |
|
Posted by
| Nick Gammon
Australia (23,133 posts) Bio
Forum Administrator |
Date
| Reply #5 on Fri 23 Mar 2007 04:54 AM (UTC) |
Message
| Here's another interesting problem. I know from personal experience that when you give people codes (registration codes in my case), they lose or forget them.
Also, they change email addresses, or even their names (eg. by marriage).
So you potentially have an email in your inbox a year down the track along these lines:
"I've got 20 characters on your MUD. My PC crashed and I lost my account name/password. Also, I've changed email addresses recently, and the old one doesn't work any more. Oh, and I gave a fictictious name when I registered, I can't remember what it was. Can you give me my password please?"
Don't laugh, this happens.
How do you treat an email like this? An obvious attempt at fraud? Genuine? It *might* be genuine. If it is and you do nothing, you have potentially annoyed one of your best players. If you give the password out, you potentially allow someone to steal stuff from one of your best players.
At least with single characters/passwords, hopefully all that a player might forget is a single password.
I agree with everything David said, however it is possible that a nuisance character would have a fixed IP address. So (even without a registration system), monitoring IP addresses could potentially be helpful.
Whilst it is true someone may be behind a NAT router, or have dynamically assigned addresses, the fact that a new player makes a character, which has the same, or very similar, IP address to a nuisance player, that at least might "flag" them to be a potential problem.
By the same token, if you have 2 players on, with different play styles, but from the same IP address, they may well be different people.
I don't think you could automate it, but tracking IP addresses could help admins "keep an eye on" players quietly, especially if there have been disputes.
This is where you don't really need the registration system - a problem player, with a fixed IP address, effectively already has an "account", namely the IP address. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Nick Gammon
Australia (23,133 posts) Bio
Forum Administrator |
Date
| Reply #6 on Fri 23 Mar 2007 04:56 AM (UTC) |
Message
| Here's another problem with tracking IP addresses. Say you have a brother and sister (one is "good" and the other "bad"). They both use the same PC, but at different times. Even if it has a fixed IP address, the IP address doesn't tell you which one is playing - you don't know who is sitting at the keyboard. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| David Haley
USA (3,881 posts) Bio
|
Date
| Reply #7 on Fri 23 Mar 2007 05:31 AM (UTC) |
Message
| Nick's points are good and I particularly like the one about using IPs for tracking. The tracking you can do based on IPs is pretty much exactly the tracking you are suggesting to do via accounts. But you will do the account tracking based on IPs, so you might as well just use the IPs...
Quote: Here's another problem with tracking IP addresses. Say you have a brother and sister (one is "good" and the other "bad"). They both use the same PC, but at different times. I used to play with my brother, both of us at home behind a shared connection. So we both had the same IP address. Furthermore, our characters were always together, and never spoke to each other in-game. We were accused on more than one occasion of cheating (multi-playing was and is illegal on Darkstone). To prove we were separate people, we would engage in conversation with the immortal, both of us "speaking" too quickly for it to be one person typing at both keyboards. (It's a good thing we were fast typists...) |
David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone
http://david.the-haleys.org | Top |
|
Posted by
| Aqueus
USA (47 posts) Bio
|
Date
| Reply #8 on Fri 23 Mar 2007 06:05 AM (UTC) |
Message
| Well, you make excellent points, but please, you make it sound like you're trying to talk the communism out of me. I'm only suggesting it because I thought it was a good idea - and a simple one to implement.
To respond to Nick:
I'd have the person verify something about the account. If they hadn't been playing long enough to forget everything about their character(s) then they don't particularly deserve them.
To respond to Dave: (Mind if I call you Dave?)
The account system isn't primarily to expose cheaters, it's just another incentive, but not for players, for me. I realize after the brutal speculation that following around people via their IP's is a guerilla war at best.
Also: The incentives are bought, in a way not unlike QP. If you spend enough time to get Bless (Our equivalent) then you spent serious effort on that character. If you earned the incentives, then fine, you can use them how you see fit.
The head-start was just an incentive I came up with when thinking about how much I dislike making alts for the early levels. In the beginning everyone is almost exactly the same as everyone else. Kick is used just like Magic Missile, etc. So making it easier, or skipping the very earliest portions of character development would give players the incentive to make new characters and thoroughly enjoy the game.
And having not put much thought into whether a character limit was a good idea or a bad one, how about access to different race/classes? Restricted to that account, of course, and these race/classes wouldn't be more powerful, per se, just a different flavor.
Basically I'm trying to make players want to forge a singular identity. Where I've seen it successful it greatly lowers the amount of 'nuisance players' that pop up. If a player is constantly hopping from one account to the next, then they can't reap the benefits of an enhanced account.
By the way, Nick: Do you have a section of the forums called "SMAUG theory"? This would be a good opening thread. ;) | Top |
|
Posted by
| Nick Gammon
Australia (23,133 posts) Bio
Forum Administrator |
Date
| Reply #9 on Fri 23 Mar 2007 06:21 AM (UTC) |
Message
| You are right, such a thing could well have positive aspects. For example, if you had lots of alts, an account could be a way of listing them all, otherwise you might forget them.
We were simply trying to alert you to some potential pitfalls, as long as you are aware of them, you can work around them. :)
Quote:
Do you have a section of the forums called "SMAUG theory"?
Good idea. I have started a new forum thread called MUD Design Concepts. To start the ball rolling, I have moved one of the more design-oriented threads into it.
The intention is that this forum topic would be used for design ideas, rather than pure coding or implementation details.
http://www.gammon.com.au/forum/bbshowpost.php?bbtopic_id=116
|
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| David Haley
USA (3,881 posts) Bio
|
Date
| Reply #10 on Fri 23 Mar 2007 06:37 AM (UTC) |
Message
|
Quote: (Mind if I call you Dave?) No problem. :)
As Nick said, it wasn't my intention to chew you out or anything. An account system was implemented on our MUD not too long before I started coding for it, and I have the impression that it was done without really putting much thought into it. While there were some upsides, there were some serious downsides, the biggest of which was probably losing (new and old) players who were turned off by having to tie their account to an email address. (That was the other thing: a new account password is sent via email, so giving an invalid or being unwilling to give an address meant no character in the game.)
If you want to go ahead with the account system that is fine, just be sure you know what you're getting into. I wouldn't do it just because it sounds cool and is easy to do. Like Nick pointed out, if you're aware of issues beforehand, at least you can think about them. |
David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone
http://david.the-haleys.org | Top |
|
Posted by
| Aqueus
USA (47 posts) Bio
|
Date
| Reply #11 on Fri 23 Mar 2007 08:35 PM (UTC) |
Message
| You've both made excellent points, and I definitely will keep them in mind as I've moved to a point to considering, instead of blindly implementing the account idea. Problem is, even if I decide to go through with it, I have no clue where to start.
Also, does anyone have any ideas on how else to establish an account system? I hadn't particularly realized that people would need an e-mail address to send verification to... I kinda thought it was handled like 'normal' player authing, where someone attempts to create an account and it's put into a queue where imms can decide to auth the account or not. | Top |
|
Posted by
| David Haley
USA (3,881 posts) Bio
|
Date
| Reply #12 on Fri 23 Mar 2007 08:53 PM (UTC) |
Message
| You don't need an email address; you can handle it just like normal playing authing. I'm not sure why they decided to tie it to an email address. In retrospect it was a bad idea, but it probably seemed like a good way at the time to keep track of who was who.
Oh, and conceivably it could be useful for sending out email to all players, or to notify a player that a character on the account is going to expire. But none of that ever happened.
I'm positive there are account snippets out there somewhere. But the basic idea isn't that hard -- it's the details that are annoying... :-)
You will need to create a structure that can hold a list of player names along with, say, some account flags. (You might want to distinguish admin accounts, for example, allowing them to log on several characters at once or something.) Then, you need to move the password checking into the account files instead of characters. Once you have that, you edit the login process to match passwords against an account name instead of a character name.
The detail problems come in the sense that you'll have to mess around with everything involving character login. That includes dropping dead connections, checking for reconnects, quitting the account in addition to the characters, and so forth. It's not terribly hard per se, it's just that you have to cover all the cases. |
David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone
http://david.the-haleys.org | Top |
|
Posted by
| Aqueus
USA (47 posts) Bio
|
Date
| Reply #13 on Fri 23 Mar 2007 10:25 PM (UTC) |
Message
| I see. Well, I'll give it my best shot, you've definitely given me some help on where to start. Thanks. =) | Top |
|
Posted by
| Conner
USA (381 posts) Bio
|
Date
| Reply #14 on Sat 24 Mar 2007 01:41 AM (UTC) |
Message
| You know, another reason they might've tied it to email would be to automate lost password recovery. |
-=Conner=-
--
Come test your mettle in the Land of Legends at telnet://tcdbbs.zapto.org:4000
or, for a little family oriented medieval fun, come join us at The Castle's Dungeon BBS at telnet://tcdbbs.zapto.org
or, if you just want information about either, check our web page at http://tcdbbs.zapto.org | Top |
|
The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).
To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.
54,313 views.
This is page 1, subject is 2 pages long: 1 2
It is now over 60 days since the last post. This thread is closed.
Refresh page
top