ID:2965897
 
BYOND Version:515
Operating System:Windows 10 Home
Web Browser:Chrome 133.0.0.0
Applies to:Dream Seeker
Status: Open

Issue hasn't been assigned a status value.
Descriptive Problem Summary:
According to the reference, ckey is supposed to be read only. But we can actually write to it. It's mostly harmless, with the only side effect being that this can allow a single client to log into a server an infinite number of time provided that the ckey is changed to a unique value.
Numbered Steps to Reproduce Problem:
Run the Print verb to see current ckey.

Use ChangeCkey to make your ckey = "loooool".

Run print again to see that the ckey has changed.

Code Snippet (if applicable) to Reproduce Problem:
mob/verb/ChangeCkey()
client.ckey = "loooool"

mob/verb/Print()
world << client.ckey


Expected Results:
Be read only.

Actual Results:
It is actually read and write.

Does the problem occur:
Always.

I believe the usefulness of being able to change a client's ckey should stay (since it's a way you can connect with multiple clients.) If anything, the docs should be changed to something like:

"In most cases, you will not need to modify this variable. However, there are cases where it can be useful if you're wanting to debug multiple clients locally, but this behavior may be buggy, so be careful."

Login to reply.