How can I use overrided navigation system as default class after 4.20.3?

In previous version (4.19),I can use the overrided navigation system to default navigation class by modifying DefaultEngine.ini as follows:

[/Script/Engine.Engine]
NavigationSystemClassName=/Script/[MyGame].MyNavigationSystem

However, after upgrading the engine to 4.20.3, the NavigationSystemClass should be set in NavigationSystemConfig of WorldSettings.
If I have 10 umaps of using MyNavigationSystem, I need to set the class 10 times in worldSettings of these umaps.

I have tested this issue in newly created C++ Third Person project in UE4.20.3. There have no doubt about the complexity of game project.

I think the modifictation of 4.20 also conflicts with the config variable NavigationSystemClassName in Engine.h.
Since modifying the variable in DefaultEngine.ini does no change the default class in any map anymore.

Does there exist any easily and correct way to solve this issue? Thank you.

1 Like

I know this is an old post, but this is working right now on 4.27

Also discovered, that if you place your NavigationSystem class in a plugin, you have to swap the [MyGame] for the name of the plugin, so for example I have a project named MyProject and inside I have a plugin named MyPlugin, and inside that plugins is the class MyNavigationSystem. Then you have to write on the DefaultEngine.ini

[/Script/Engine.Engine]
NavigationSystemClassName=/Script/MyPlugin.MyNavigationSystem
1 Like