Photon Bolt has several settings that can be configured on the
Bolt Settings window (
Here we list these settings:
Simulation Rate: Bolt will automatically set Unity’s
FixedUpdate rate to the
SimulationRate specified in the
Bolt Settings. Bolt runs almost entirely off
FixedUpdate internally (via the
BoltPoll component, which has a low script execution order so it runs first). This is used for
SimulateOwner, transform extrapolation, and everything else that uses
Network Rate: Determines how many simulation ticks occur between sending a network packet. By default Bolt sets the simulation rate to 60 and the network rate to 3. This means there are three fixed update ticks per each packet. This means there are 20 packets per second sent by default and 60 fixed update simulation ticks per second.
Max Priorities: The highest priority an
Property can have.
Disable Dejitter Buffer: Check to disable the internal dejitter buffer.
Dejitter Delay: Configure how sensitive the dejitter is.
Scoping Mode: Configure the scoping mode. More info here.
Instantiate Mode: Configure the instantiation behavior of Bolt Entities. It can be set to
Everyone (Server and Clients), and
Override Time Scale: Enable Bolt to force the Unity's Time Scale to be set to value one (1) automatically if it changes. It is not recommended to disable this (if you want the game to pause for example you should use
IEntityBehavior Query, IPriorityCalculator Query, IEntityReplicationFilter Query: Configure how the components will be queried within the GameObjects. The search can be done by Component (only the first component is returned), Components (in which a list with all components of the same type is returned), and ComponentsInChildren (that will search inside the children too).
Limit: The maximum number of allowed peers on the session, this includes the server itself. After the server reaches this number, new player connections will fail automatically.
Timeout: The connection timeout in milliseconds. After this period of time, if no replies from the remote connection, the peer will be disconnected. On the Server side, a client will be dropped after this time, on the Client side, it will disconnect itself.
Connect Timeout: The timeout between each connection attempt. As the client needs to wait some time for the Server reply, you can configure the waiting period on this parameter. Lower values do not mean a fast connection.
Connect Attempts: The total number of connection attempts before the connection fails.
Accept Mode: Configure the
Accept Mode used by the Game Server to let clients connect to it. By default, it's set to
Auto, which means it will accept any client, or you can set to
Manual, and treat each connection individually. You can read more about this on this page.
Packet Size: The MTU size in bytes of the Bolt packet. As Photon Bolt uses UDP and does not perform fragmentation/reassembly, the maximum size is also limited by the MTU of the UDP itself.
Client Connection Metrics: Enables the connection metrics with the server. With this option enabled, you can check some connection stats by looking at the
Bolt Remotes window (open it on
App Id: Photon Cloud Application ID. In order to access the Cloud features, you need a valid Application registered on the Photon platform.
Region: The region that your player will try to connect when starting Bolt using the
PhotonPlatform. If you prefer to not use a fixed
Region and let the player connect the nearest region, select
Best Region in the options menu.
NAT Punchthrough Enabled: Enables the NAT Punch capabilities of Photon Bolt when using the
PhotonPlatform. With this option enabled, Bolt will try to establish a direct connection between client and server, if its not possible, will fallback to a relayed connection using the Photon Cloud.
Room Create Timeout: The timeout for the Session creation on the Photon Cloud. When starting as a Server, you can create a Session so other players can find and connect to it.
Room Join Timeout: The timeout for joining a Session. Starting as a Client, you can browse for the available sessions and try to join one, connecting to a Game Server.
Enabled: Enables the latency simulation feature.
Packet Loss: The percentage of packets discarded simulated. The higher the value, the more likely a package will be dropped.
Ping: The lag that will be added on each packet. It's divided into two values: (i) the average lag and (ii) the jitter, which is a variation randomly added to each packet beyond the normal lag.
Noise Function: Select the noise generator functions used by the simulation. It is used when testing if a packet should be dropped and when adding a random extra lag to a particular packet.
DLL Mode: The current build mode that Bolt is running,
Debug (with log messages and good performance) or
Release (without any logs and best performance).
Show BoltEntity Settings Hints: Enables the hint messages on the
BoltEntity component attached to each of your Entities, giving more information about each param.
A2S Server Queries Port: The listening port of A2S service.
Log Targets: Select all the output targets where the Bolt logs will be printed out.
Show Debug Info: Enables the in-game console that will print all Bolt log messages.
Toggle Key: Select the key used to toggle the
Debug Info console on or off.
Visible by Default: Select if the
Debug Info console will be shown by default or not.
Enable Source Provider Integration: Enables the integration with the
Source Control System attached to Unity. Bolt will checkout any necessary files to perform its compilation. You can read more about this topic on Unity dedicated page.
Warning Level: Select the
Warning Message Level when compiling Bolt and generating the user DLLs. You can read more about the
Warning Levels on this page.
Prefab Mode: Select the mode that Bolt Prefabs will be discovered. It can be: (i)
Automatic Scan, where Bolt will scan all project folders to find prefabs and register them, (ii)
Manual Scan, that you need to execute the scan manually, but using the Scan button on the
Bolt Prefabs window, and (iii)
Manual, where each prefab must be registered by hand.