# Characters

## Overview

The **Network Character** is the component resposible for synchronizing player's movement, rotation, jump, attachments, ragdoll state, model change, look tracking and more.

{% hint style="success" %}
This works with any type of controller like Navmesh, Tank, Rigidbody etc.
{% endhint %}

***

## Setup

Setting up a Game Creator character for Fusion is simple. Just attach a **`Network Character`** component, and it will automatically add all the necessary components, making it ready to use.

<figure><img src="https://3895715781-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LDchaEIEhpBAh2gCe06%2Fuploads%2Fgit-blob-aba56cd6705d8e492709d0081aae5771541e36d0%2Fnetwork-character-ezgif.com-optimize.gif?alt=media" alt=""><figcaption></figcaption></figure>

***

## Attachments

To synchronize attachments the objecs needs to be registered first, you can do this by using **Local List Variables Network** or **Gloal List Variables Network** and select the Attachments sync mode.

<figure><img src="https://3895715781-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LDchaEIEhpBAh2gCe06%2Fuploads%2Fgit-blob-a331c1717871deeee996df4df8ddeba65dd27524%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

Once attachmets are registered you can use regular GC2 instructions to attach or remove objects

<figure><img src="https://3895715781-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LDchaEIEhpBAh2gCe06%2Fuploads%2Fgit-blob-26fff7890fab242bc224472fc898b7a3cc62ffb8%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

***

## Models

Models work the same way attachment does using **Local List Variables Network** or **Gloal List Variables Network** and select the **Models** sync mode

<figure><img src="https://3895715781-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LDchaEIEhpBAh2gCe06%2Fuploads%2Fgit-blob-119383013a2f947ce4529c8769e5ac5040e4335e%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

Once models are registered you can use regular Change Model instructio from GC2.

<figure><img src="https://3895715781-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LDchaEIEhpBAh2gCe06%2Fuploads%2Fgit-blob-5adeda2adc0fe4bfe6d11e43b3d48d27a317f4b4%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

### Model Config

Models comes with a special variable type to use.

{% hint style="success" %}
Values like **Name, Prefab** and **Sprite** can be used to display a list of characters
{% endhint %}

<figure><img src="https://3895715781-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LDchaEIEhpBAh2gCe06%2Fuploads%2Fgit-blob-700fe0e949de7441be759a00e818ec111b5f66e6%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

### Properties

The fusion module includes properties for this new Model Config variable type like:

* **Model Prefab** (Game Object)
* **Model Name** (String)
* **Model Prefab Name** (String)
* **Selected Model** (String)
* **Model Sprite** (Sprite)
* **Selected Model Sprite** (Sprite)
