One issue is that this can be a vector for malware. I kind of wish that game engines came standard with something like the Javascript engine in browsers, with some sort of sandbox for mods. I’m not saying that that’d solve everything – the game code that the mods invoke probably isn’t hardened – but it’d be better then just having arbitrary modifications go in. Especially with mod systems that auto-download new versions – even if the mod author is on the up-and-up, if someone compromises his account or computer, they’ve compromised all the computers using the mod.
EDIT: This isn’t just a problem specific to mods, either. A lot of online software library systems that provide auto-updates (pip for Python, rvm for Ruby, etc) can be a vector into systems. Providing auto-updates where many, many people have rights to push updates to computers is convenient in terms of getting software working, but unless the resulting code is running sandboxed, it’s creating an awful lot of vectors to attack someone’s system. This isn’t to impugn any one author – the vast bulk of people writing mods and open-source software are upstanding people. But it only takes one bad egg or one author who themselves has their system compromised to compromise a lot of other systems, and in practice, if you’re saying “subscribe to this mod”, you’re doing something that may have a lot of security implications for your system.
Consoles and phones already do a decent job of sandboxing games (well, as far as I know; I haven’t been working on security for either of them, but from what I’ve seen of the systems, they at least aim to achieve that). So maybe someone can compromise an app, but there’s a limited amount they can do aside from that. Maybe dump your name and location and such, but they can’t get control of your other software. However, Linux, Windows, and MacOS don’t have that kind of app sandboxing generally in place. I know that Linux has been working towards it – that’s one major reason for shifting to Wayland, among other things – but it’s definitely not there today.
For servers, I think that part of the way that sysadmins have been trying to deal with this is running containers or VMs on a per-service basis. Looking at !homelab, I see a lot of people talking about containers or VMs. But that’s not really an option today for desktop users who want to run games in a sandbox; it’s not set up automatically, and 3D card support spanning containers is not great today, or at least wasn’t last time I looked at it. I can run Ren’Py games in a firejail today successfully on Linux, but that’s not out-of-box behavior, Steam definitely doesn’t have it in place by default, I have no idea whether it’s possible for WINE (which is important for a lot of Windows games that run on Linux) and at least some if not all of the mechanisms firejail uses for graphics won’t permit for access to the 3D hardware.
Yeah, but if that’s the only way a game developer implements it, they’re tying themselves to Steam. I mean, if I were a game developer, I wouldn’t want to do that, as it’s a lot of lock-in.
I think that Valve’s service is a pretty good one, but they’re taking a 30% cut for doing a number of things for game developers. If they become the only game in town, it’s possible that they might start taking more than 30% and those developers are going to be kind of stuck with that.
It’s common across games, so it doesn’t make sense for game devs to reimplement the wheel, but I’d think that putting as much as possible in the game engine would be a reasonable place.
Keep a rotating history of 20 or so autosaves/checkpoints, not 1, in case the last autosave was at a bad spot. Storage space is cheap. Yeah, I can do that myself with manual saves, but why make me do that? Maintaining that isn’t a fun part of the game for me, and it’s easy for the developer to do.
A number of games would benefit from also showing a DPS number on weapons. Same idea. Yeah, I can do it in my head, but you’re running on a computer that can flawlessly do billions of calculations a second. Why not do the extra step for me?
Don’t do unskippable cutscenes. Even if you’re using them to cover up for a loading screen or something, at least give me the option to not watch them. Let me tap a button to skip the scene.
While I don’t disagree, if part of the game runs on the server and the game publisher is the only one with the server, it makes the game hard to pirate, so they’ve a potent incentive to do this.
I’d rather not have loading screens at all, but if you need them, I’d kind of like a progress bar, rather then just watching some animated doohicky telling me that hopefully the game hasn’t frozen.
I would imagine that it’s probably possible to, if the game emits checkpoints (“loading terrain”, “loading textures”), etc, to record the timestamps for each of those and then, when it emits the same checkpoints next time through, to be able to estimate how far it is through the process.
A lot of PC games let you change mouse and keyboard bindings, but not controller bindings, because they have “keyboard and mouse mode” or “console mode” if the controller is used.
I’ve got no problem with having a sensible set of defaults, but if I get a controller with more buttons, unless this is a competitive multiplayer game that needs a level playing field, I’d like to be able to take advantage of them.
Ah, that looks neat, thanks, may have to give it a go. Yeah, it looks like it uses the Spring Engine, which was originally intended to be an open-source engine to run TA. I’ve played Zero-K, which is another game running on the Spring Engine that also aims for an TA feel. Wasn’t really aimed for a sequel so much as bringing back TA, though.
That being said, normally console FPSes are designed to be much more-forgiving as to response time to account for the controller, and there’s typically some level of auto-aim. If you’re playing against other players, they’re going to be using analog sticks too.
I mean, don’t get me wrong, I’m with you on this, would rather have the mouse, just that I dunno if I’d call it a disaster. It’d be a disaster if people using mice/keyboards were competitively playing against people with analog sticks in an FPS.
A controller with two analog sticks and two analog triggers has six analog axes of input. A keyboard and mouse has two. There are definitely games that can benefit from more analog axes – think twin-stick shooters. You can use digital inputs for movement, but it’s also less-precise.
On the other hand, a mouse can provide both rapid and precise movement, more-so than an analog stick. And a keyboard has a lot more keys, which is important for some games. And a keyboard is going to be a lot better for text input.
Controllers have output to players, in the form of rumble motors (and with some controllers on some platforms, more-exotic options). There’s no widespread support for any kind of output from the mouse or keyboard. Use of rumble motors can add immersion.
While I’ve used a mouse as a flight input in Freespace 2, generally-speaking, I think that a controller’s analog sticks are better for flight sims (though if you’re playing an old-timey WW2 flight sim, probably getting a full-size stick with all the extra controls is worthwhile).
On the other hand, it’s very hard for a controller to compete with the keyboard and mouse for first-person shooters. I’ve used one for some games that were designed for consoles and aren’t very demanding in response and often have vehicles that are better-controlled with a controller – I’m playing Starfield with a controller. But one is simply going to do much better with a keyboard and a mouse, if one practices with both. Playing an FPS with a controller feels like driving a truck.
Some games, like a number of strategy games, are going to be much-better played with a mouse. I have a hard time seeing Paradox’s grand strategy games being played with a controller, even with a lot of work on the control scheme.
Ditto for RTSes. I’ve tried a few with controllers, like Supreme Commander, and it definitely benefits from a mouse.
Playing interactive fiction of the classic sort, where one types in commands, really, really needs a keyboard. There are ways you can mitigate a bit of the pain, and some point-and-click adventure games have tried to do this, provide a limited set of preset commands, but it’s just not great.
Playing pretty much any game designed for a D-pad, I’d rather play on a controller. Yeah, you can get okay with a keyboard, but it just doesn’t feel the same, not nearly as fluid.
And there are a few other input options that aren’t seen much any more:
Full-size flightstick, maybe with throttle and pedals. Some had force feedback. I haven’t seen many new releases; in the 1980s and 1990s, though, these were common for PCs.
One thing that keeping exclusive control of the server does is make a game, or at least the game in multiplayer mode, really hard to pirate. That’s a pretty compelling argument in favor for someone making the game.