ID:133239
![]() Jan 13 2009, 11:17 pm
|
|
Every time me and my brother who are using two different computers but have the same IP(using the same router) try to play a game which has a "Multi-Key" checker(checks to see if two players of the same IP are in the game at once) simultaneously, the game takes one of us as a multi-key offender and boots them from the game. I don't blame the programmer for this, he had good intentions in mind but in my opinion DM would benefit from a client-based ID variable, similar to the number code that's used at the end of Guest keys that's unique to every computer. This way, people using different computers with the same ID can play the game together, being the cause much fun. And we all know everybody likes fun!
|
This would be a nice idea, but I foresee one problem: one could still use a VM or some other hack to get multiple internal IPs. An internal network is usually even easier to control than an external one.
|
Android Data wrote:
This would be a nice idea, but I foresee one problem: one could still use a VM or some other hack to get multiple internal IPs. An internal network is usually even easier to control than an external one. I'm thinking more of a completely custom ID; created by BYOND upon install. Based on say, the size of your hard drive, how much ram you have, and your computer manufacturer/model. And maybe various other system specs that would be detectable. The biggest problem with this is that you'd have to create something that would always be 100% unique. EDIT: I wonder if it would be possible for BYOND to access the windows product key. |
Metamorphman wrote:
Every time me and my brother who are using two different computers but have the same IP(using the same router) try to play a game which has a "Multi-Key" checker(checks to see if two players of the same IP are in the game at once) simultaneously, the game takes one of us as a multi-key offender and boots them from the game. I don't blame the programmer for this, he had good intentions in mind but in my opinion DM would benefit from a client-based ID variable, similar to the number code that's used at the end of Guest keys that's unique to every computer. This way, people using different computers with the same ID can play the game together, being the cause much fun. And we all know everybody likes fun! Well, BYOND has to know certain information to send packets to the right PC in his network. What may be a better solution is a procedure that checks to see if two users of the game are on the same PC. I couldn't tell you though, I don't know how ports work. I do know that this is a good application for the MAC address. |
Falacy wrote:
The idea for using mac addresses was already shot down though. As a side note, just because it was shot down doesn't mean you can't still do it. This is one of those features best implemented using a .dll or an .so. |
Audeuro wrote:
This is one of those features best implemented using a .dll or an .so. Mac addresses can be obtained by servers w/o the client having to send it? |
I thought that's how the number after the offline Guest key was generated? If BYOND can have a function that would acquire that number from a client, that seems like it would work.
|
Android Data wrote:
Mac addresses can be obtained by servers w/o the client having to send it? True enough, but the MAC address is stored in packet headers. If one packet could be intercepted with the source of the packet identified, a MAC address could be obtained and stored. |
I dug this up from a graveyard... it may be helpful.
client |
Metamorphman wrote:
Pretty neat, that snippet has a really wide usage. Except it won't work, at least not on Vista with IE7. It asks the user for permission to execute the query, which is nice and all, but I can just select "no" to avoid you grabbing anything you can identify me with. |
Android Data wrote:
I can just select "no" to avoid you grabbing anything you can identify me with. True. And the server can react on users who reject to be identified by politely asking them again, with a little (kind) emphasis on the choice to either be identified and play, or to be kicked. Though I would much prefer a hard-wired solution for the problem as well, I doubt that there is going to be one. This problem has been around for a long, long time for a lot of on-line games now and the only two working solutions I have seen to prevent "multi clienting" are "Gamemasters" who know what they are looking for to manually check players and games that are designed in a way that people do not even need/want to cheat the game in such a way. |
Though the idea in general isn't bad, I've been trying to think up a good way to get a computer-based code per player; to effectively ban them unless they buy an entirely new machine, or at least a new piece of hardware for their current one. The idea for using mac addresses was already shot down though.