Why are systems not being added to my world!

After much google searching, the only forums I could find were from 2018 when the way to create and add systems to worlds were different! I am not sure If I am doing something wrong but no systems are added to my world!

 private void Awake()
    {

        cellSimulationWorld = new CellSimulationWorld("Cell Simulation World");

        cellSimulationWorld.GetOrCreateSystem<UpdateWorldTimeSystem>();

        World.DefaultGameObjectInjectionWorld = cellSimulationWorld;

        //Start Systems
        var initializationSystemGroup = cellSimulationWorld.GetOrCreateSystem<InitializationSystemGroup>();

        initializationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<BeginInitializationEntityCommandBufferSystem>());
        initializationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<EndInitializationEntityCommandBufferSystem>());

        //update
        var simulationSystemGroup = cellSimulationWorld.GetOrCreateSystem<SimulationSystemGroup>();

        simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellBoundsSystem>());

        simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellBoundsSystem>());

        simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellVelocitySystem>());

        simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellHungerSystem>());

        simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellPropertiesSystem>());

        simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellStateSystem>());

        simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<NeuralNetworkSystem>());

        //Late update / rendering
        var presentationSystemGroup = cellSimulationWorld.GetOrCreateSystem<PresentationSystemGroup>();

        initializationSystemGroup.SortSystems();
        simulationSystemGroup.SortSystems();
        presentationSystemGroup.SortSystems();
}

CellSimulationWorlds is just a class that is derived from World.

When I play, the world looks like this:

1 Like

from memory, add this to the end

ScriptBehaviourUpdateOrder.AddWorldToCurrentPlayerLoop(cellSimulationWorld);

3 Likes

Good memory

THANK YOU SO MUCH! The method was changed to ScriptBehaviourUpdateOrder.UpdatePlayerLoop