ID:2962373
 
Resolved
Some client commands stopped working from the Options & Messages menu.
BYOND Version:516.1654
Operating System:Windows 11 Home 64-bit
Web Browser:Chrome 132.0.0.0
Applies to:Dream Seeker
Status: Resolved (516.1655)

This issue has been resolved.
As of the latest beta version, client-side commands such as .profile or .reboot no longer seem to be working—either by being called via code or by clicking on them in the Options & Messages > Server dropdown menu.

// Quick snippet to check it programmatically.
client/verb/Profile()
winset(src, null, list("command" = ".profile"))
winset(src, null, list("command" = ".host"))
winset(src, null, list("command" = ".reboot"))
winset(src, null, list("command" = ".screenshot"))
winset(src, null, list("command" = ".screenshot auto"))

The issue does not occur in 516.1652.
Most of these are intentional, except for the fact of not working from Options & Messages, which is definitely wrong. The .reboot one probably makes less sense to have disabled from the server, so I'll look into that especially.

The screenshot commands aren't intended to be initiated by the server or a winset. For .host and .profile, I don't see a use case for allowing that but if you can think of an exception I'm open-minded to re-enabling those.

In any case all of these ought to work from O&M so that's something I need to change.
Lummox JR resolved issue with message:
Some client commands stopped working from the Options & Messages menu.
The lack of allowing the server to tell the client when to perform a screenshot effectively neuters https://github.com/cmss13-devs/cmss13/pull/3972

Can we please just not have features regressed. What if you have a game that automatically saves a screenshot when you earn an achievement or something? I don't see the harm in allowing commands like this.
In response to Drathek
Drathek wrote:
Can we please just not have features regressed. What if you have a game that automatically saves a screenshot when you earn an achievement or something? I don't see the harm in allowing commands like this.

You haven't considered the broader ramifications. I'd be open to a modification of the screenshot command that allowed for a very specific carve-out for your use case, but it's something we'd have to discuss in Discord. It would, at a minimum, need to be something the client explicitly allowed.
I don't really care if you want to gate it behind a permission to opt out of - that'd be fine, but this isn't like some recent feature that you now are discovering somehow is abusable. If its opt in, then the server needs to be able to know a user has blocked said permission to tell them so. Even as far back as 415.980 its being tweaked to where control_freak can be used to limit it. .screenshot does far less thrashing to a user's drive than just using byond storage regularly does.
In response to Drathek
Drathek wrote:
The lack of allowing the server to tell the client when to perform a screenshot effectively neuters https://github.com/cmss13-devs/cmss13/pull/3972


This can be done much cleaner using vis_contents and RenderIcon(), since you're chunking it up based on view anyways. You'd probably even be able to manage it with less images required, since you'd be able to get upwards of 100x100 in each image.

Not to say the underlying issue isn't an issue, just saying that using actual screenshots is not the best way to accomplish what the linked feature is trying to do.
In response to James
Goal was to have as little of an impact on an existing round, and it achieves that. CM games consist of about 100-200 players at any moment.
In response to Drathek
control_freak is a limitation from the server end. A limitation from the client end is a different concept and it'd be a new one. So it's something that we'd have to work out.
I'm speaking to how old of a feature this is.
This is a wild unannounced removal, without even a deprecation period - we've depended on the server being able to call these for over a decade.