Player Prefab
In a MultiPlayer game, each player shall have his player avatar to play, ObjectNet provides the facility to control this object, and the left object manages his creation and destruction. This functionality is called Player Prefab.
Player Prefab is an internal process to control a player's avatar life-cycle.

Use Single prefab
The Single Prefab option fixed the spawned prefab for all players who enter the game.

In the image above, every time a player enters a game the prefab "Player Armature" will be spawned and associated with this player.
Use Dynamic Spawner
The Dynamic Spawner option allows to creation of a custom logic to decide which prefab will be spawned for each player.

This option allows to spawn prefab to each player individually and implement some type of skin feature.
Internal Network ID
On ObjectNet each network object must have a unique ID, this ID is the way objects are identified over the network..
This ID could be controlled internally by the system, the option "Internal Network ID" generates a sequential unique ID for each player created.

For a casual game where the player is not identified this is a safe time option, since you don't need to be worried about player identification.
Custom Network ID
ObjectNet provides a facility to identify a spawned player with a unique state-full ID.
This is pretty useful if you wish to reuse a player session in case of any disconnection. Associated a unique ID to the player allows bringing the player back when a player is reconnected at the same match.
This option can be enabled by checking the "Custom Network ID" option.

This ID shall originate from a state full source such as a Database, PlayFab, Steam, or any other.
The Custom Network ID option requires a logic to return the Network ID to associate with the player.

In the image above, the "NetworkIdProvider" is the object with a component NetworkIdProvider which has a method called "GetNetworkId".
To create a NetworkIdProvider provider you will need to create a script to provide a custom ID, this script shall implement the interface IInformationProvider to return the ID to be associated with the player prefab to be spawned ( see Providers Scripts ).
You can also check the example script NetworkIdProvider in the examples folder. This script has a full implementation of how to provide custom IDs.
Position to Spawn
When some player is spawned, the system shall decide the position where this player will be spawned.
ObjectNet provides a facility to decide where the system will spawn players.

Fixed Position:
Fixed Position do what his name suggests, spawn all players on a specific position..

On the field "Position to Spawn" a transform must be provided, all players will be spawned on this exact position.
Multiple Positions
Multiple Positions allow to spawn players into different positions according to a provided list of possible positions.

The system will perform a random rounding robin algorithm to select the next position to spawn, which means that the next player will not be spawned at the same position as the previous one.
When all positions are used, the system will restart his list and start to spawn from scratch.
This ensures that no one player will be close to another and all possible position has players spawned.
Dynamic Position
Dynamic Position allows to spawn players into positions according to some custom logic.

In the image above, the "PositionPrefabProvider" is the object with a component PositionProvider which has a method called "GetSpawnPosition".
To create a Dynamic Position provider you will need to create a script to provide the position to spawn the player, this script shall implement the interface IInformationProvider to return the position to use when the prefab was spawned ( see Providers Scripts).
You can also check the example script PositionProvider in the examples folder. This script has a full implementation of how to provide positions.
Control player cameras
The option Control Player Cameras grand to ObjectNet the responsibility to control all cameras attached to the players.

ObjectNet will ensure that only one camera is working on the system, when another player is spawned, ObjectNet will try to find the camera associated with the local player owner of the current instance of the game, and make this camera the only camera working on the scene.
This option is pretty useful to avoid mistakes when handling multiple cameras inside each player's prefab.
Detach camera from player
The option Detach camera from the player will remove the camera from the spawned player and put it at the root of the scene hierarchy.

When the player camera is placed inside NetworkPrefab for convenience reasons but after spawned the same camera has some damping algorithm who not work properly due to the fact of being inside Player.
This option is useful because after spawned, the camera will be removed from the player object and placed at the top of the scene hierarchy.
Remove player on disconnect
ObjectNet controls all object's life cycles, this means that ObjectNet can detect when an object needs to be destroyed.
The option "Remove player on disconnect" will destroy the player's game object when the player disconnects from the server.

ObjectNet allows to destroy the player after a certain amount of time if disconnection is detected, the option "Remove disconnected after time" enables this feature.
If this option is not flagged, an extra option shall appear to allow to destruction player after a certain amount of time.
This option must be used in case a game allows them to play back on the game after disconnection, when combined with "Custom Network ID" the disconnected player may back to the game and restore the status that they had before disconnected.

Note: If both options "Remove player on disconnect" and "Remove disconnected after time" were not flagged, the player object will keep on the scene while the match is not finished or the game is running.