> For the complete documentation index, see [llms.txt](https://docs.coherence.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.coherence.io/1.2.4/manual/components/coherenceinput.md).

# CoherenceInput

`CoherenceInput` is a component that enables a [Simulator](/1.2.4/manual/simulation-server.md) to take control of a Client's entities, based on the Client's inputs. It is an essential piece of a [server-authoritative setup](/1.2.4/manual/authority/server-authoritative-setup.md).

When you select *Server Side with Client Input* in the *Simulate In* option on a `CoherenceSync`, coherence will add a `CoherenceInput` component to the entity.

From this point on, **the authority on this entity is split**: a Client has Input authority, while a Simulator will have State authority. This means that the Client is not fully in control of the entity, but only has the license to send inputs to a Simulator. The Simulator in turn will process these inputs, elaborate new state, and send it to the Client who can now display the results.

Because of this round-trip, there will always be a delay between the player's inputs and what they see on screen. To make the game more reactive, you might need to implement prediction.

{% hint style="info" %}
For more information on how to setup and configure inputs for a `CoherenceInput` component, refer to the [server-authoritative setup](/1.2.4/manual/authority/server-authoritative-setup.md) page.
{% endhint %}
