bearcat22 said:
Is it in some way inordinately difficult or expensive
For most of these, yes. Yes it is. For some it is potentially hard, or merely a human time issue, all depending on implementation details.
1. enable the unlimited skipping of cut scenes;
Depending on the system used it can be easy or hard. Some cut scenes pull from game data, others adjust game data, and jumping to the end isn't trivial. For those that are playing a movie and doing nothing else, it's usually pretty easy.
For many games it is something that could be added relatively easily. Not implementing it is usually about development time, spending a week or two of effort on the “skip scene” button versus a week or two on some other feature.
2. Allow the player to save at any time, as opposed to forcing them to go back to a "checkpoint";
This is extremely difficult for most games. There is a lot of game state. Storing the animations, storing all the state machines, storing the particle systems and their states, storing all the things out in the world and their state.
There are also aspects around cheating and exploits for save anywhere, anytime. One missed variable, or one duplicated variable, or catching something mid-update, all it takes is a creative player to discover a single value that has a bug and they've got an infinite object exploit, or infinite health, or whatever.
Checkpoints and save points provide a location and way to ensure that the bulk of the stuff is cleaned up and not in use. If a player loses debuffs, or effects restart, or all the characters open back up in their neutral poses, these don't bother a player so much.
There is also an element of gameplay design around them. There are also aspects around cheating and exploits for save anywhere, anytime. Auto-save on entering a new zone is one players expect. The classic “save point before a boss” is one players expect, as are save points at dungeon entrances. An inn or save point in town is one players expect. Placing save points signal things to players.
“Save anywhere” certainly can be done, but it isn't easy nor cheap, and modifies the feel of the game.
2b. Allow the player to remap any and every key to any function;
Most games have a certain amount that is easy, but then elements that are difficult. Some are expressly forbidden by manufacturers or license, like the game console's platform buttons. Remapping analog and digital inputs is potentially tricky even under ideal scenarios.
3. Provide a manual that explains how to do something
One recommendation from a game designer I heard decades ago was “write the user manual first. It makes interfaces better."
They cost time and money, although for big studios they're a relatively small expense.
3b. Put the AI on a completely equal basis with the human player
It can be done, but it is often with terrible results. The goal is to make a FUN game, not necessarily a FAIR game.
The topic is quite deep in game design, but as a rough view it is far easier to make a fun game when the computer cheats. The computer knows information the player doesn't, the computer can have access to resources the player doesn't, the computer has different statistics than the player.
Often the AI is written to be worse. The easy-to-program AI never misses a shot. The easy-to-program AI makes perfect decisions every time. The easy-to-program AI always takes the shortest route, always makes the perfect dodge and the perfect counter attack, always makes the ideal (highest scoring) decision based on the input it is provided. A huge amount of AI tuning is figuring out how to impair the robots enough to make it fun. It also is about variable amounts of impairment, a low level player should have AI opponents that barely react to fatal wounds, a high level player should have AI opponents that start reacting before the player enters the screen in order to give them a challen
4. Create logical and intuitive behavior in AI allies of the human player;
See previous. In practice it is extremely difficult.
4b. Find and eliminate bugs in a game BEFORE release to the public?
Unrealistic. Developers do all that they can do with the time and money available, but at some point you've got to ship a game.
And no matter how good the developers are, people will still find exploits. Sometimes people find new bugs and exploits years after a game is initially released.
Can AI find bugs in software?
Yes, and most major game studios do it already. And have for years.
We have static analysis tools that review the source code. We have runtime analysis tools that watch as the game plays to look for errors. Tools have been around for decades, although use varies tremendously. Usually these are a matter of budget and discipline. Automated tests and TDD are used in some systems where it is likely cost effective, but it's a business decision about cost / benefit.
In the game it is common to develop a series of bots for testing. Usually there's an auto-play bot that does nothing but play the game continuously, 24/7. Any crashes, freezes, soft-locks, or other issues are reported as bugs. Usually there's also a button mashing bot that does nothing but randomly push buttons, sometimes in conjunction with auto-play. Often game studios will have a few machines constantly running AI vs AI, similarly looking for issues on clients and servers.
Of course, developing those systems take time and money, and keeping them running takes time and money. Bigger studios are more likely to use them then smaller studios.
5. Create and license out a superb enemy AI, for use in multiple games, the same way graphics engines are created and licensed out;
Wishful thinking still, sorry. The details are too specialized for every game.
6. Make every individual aspect of audio under independent control? For example, the player can raise or lower all aspects separately: music, dialog, sound effects.
Depending on what you mean, it's either already done or difficult. Normally games already provide rough categories, UI audio, background music, and world effects. More than that probably could be done, but it would be a tremendous burden on many developers. You'll need someone who manages all the different aspects (whatever they are) to classify them, UI for it, and a system to manage it.
Technically not too difficult, every type of audio gets tagged, but maintaining all those tags is a big human cost.
7. Create a multiplayer environment that requires a large cash deposit, that money being forfeit if a player uses hacks/cheating;
You'll immediately run into legal issues, especially around money laundering and organized crime.
It could be possible for a game to run as an escrow service like that, but government regulation would be incredibly intense. You'd be looking at similar regulations as real-money gambling, which naturally draws criminals due to the ease of money laundering and exploiting others.
Even if some seems to be taking a massive loss, let's say losing 90% of what they put in, if they're laundering funds they're still getting clean money out.
8. Release a game on time, bug-free, and complete with no need of later DLC. In other words, would it be so difficult to produce a computer game that is not total RAPE of the consumer? Are you really that desperate, that greedy, that rotten a human being?
That's an extremely biased, negative view. On time and bug-free mean expensive. That 70 dollar game would easily cost 150 or more for all that extra work, and spend another few years in development. DLC is one of the few ways customers will tolerate that help cover the ever-increasing costs of development.
Here's a good video to help explain it. Watch it, then look at the date. With inflation since then, add another $25.
9. Allow a game to run independent of any “launcher” or other crud from the publisher;
You mean like Steam? Or the launchers from Epic, Ubisoft, and EA?
Launchers do stuff. Seems like you're ignorant of what launchers actually do.
Hard no. Modern games require them. A two-phase launch is the only way to accomplish many features that players demand.
10. Allow the PLAYER to decide what, if any, “updates” alter the game;
Single player this is easy: players can update whenever they want, or not update at all.
Multiplayer, nope. Those patches fix exploits, introduce networked behaviors, and are essential for balance. If we let players keep the old game client with all those exploits, they'll destroy the ecosystem.