Jump to content

Single-client AI?


FLHerne
 Share

Recommended Posts

At the moment, AIs are run synchronously on every client like the rest of the simulation. Not only does this require each client PC to do the processing for every AI, it makes development of AIs harder because they need to be perfectly deterministic or else create obscure and hard-to-fix bugs.

Is there any reason why each AI couldn't be run on a single client (either all on the game host or automagically distributed somehow), with all simulation-modifying commands being sent in the same manner as human players? Such an arrangement would reduce the load on each client and remove the need for deterministic AIs.

One small downside would be that saving a multiplayer game wouldn't be able to preserve AIs being run on other clients - perhaps in this case the serialized AI states (how big are they?) could be requested from the clients running them?

Link to comment
Share on other sites

Running the AI on every computer makes it impossible for the host to cheat with the AI. Deterministic AIs also make debugging easier, as we can reproduce AI behaviour of a certain game and see what went wrong.

Determinism is generally something wanted in multiplayer development, and thus enforced by OOS errors.

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...