Cannot find the dots settings in Project setting

According to the official documentation,

https://docs.unity3d.com/Packages/com.unity.netcode@1.0/manual/client-server-worlds.html

I tried to find the relevant configuration in the Project Settings within the Unity Editor, but I couldn’t locate it. Does this description mean what I think, or am I misunderstanding it?

Hey Bagazi! You’re right that it’s slightly misleading. These settings are under **Project Settings > Entities > Build**. We’ll improve that documentation based on this feedback, cheers!

And what’s the difference between these two settings when compiling standalone: Client/Client&Server? In what scenarios are they applied?

I’m personally thinking that for a published game project, the executable version should be consistent. Whether it’s running as a client or a server should be determined dynamically by the player, is that right? Or am I misunderstanding it?

This dropdown determines whether or not you want the resulting client build to support hosting their own server (in-process in the client build).

If yes, set Client&Server. If no, set ClientOnly.

With this use-case, you’d build the client as Client&Server, so that at runtime, users have the choice. Some game developers may want to strip servers out into:

  • DGS only, thus players should not have access to server executables or functionality.
  • A separate server exe that is shipped alongside the game exe.

Details from the doc page:

  • A client-only build. The UNITY_CLIENT define will be set in the build (but not in-editor).
  • A client/server build. Neither the UNITY_CLIENT, nor the UNITY_SERVER are set (i.e. not in built players, nor in-editor).

For either build type, specific baking filters can be specified in the DOTS project setting, to allow you to customize which assemblies you include.