Crash on C# Native RequestModel, and LocalPlayer.ChangeModel

await BaseScript.Delay(msec);

also, a random example of random spawns (in an onClientGameTypeStart event handler):

                // force navmesh to be loaded so we can get safe ped coords
                AddNavmeshRequiredRegion(1952.271f, 3887.118f, 1500.0f);

                while (!IsNavmeshLoadedInArea(1952.271f, 3887.118f, 0.0f, 2052.271f, 4287.118f, 100.0f))
                {
                    await Delay(0);
                }

                // set up spawning
                Exports["spawnmanager"].setAutoSpawn(true);
                Exports["spawnmanager"].setAutoSpawnCallback(new Action(() =>
                {
                    var rnd = new Random();

                    bool success = false;
                    Vector3 pos = Vector3.Zero;

                    int tries = 0;

                    do
                    {
                        var randX = rnd.Next(1142, 2117);
                        var randY = rnd.Next(3387, 4323);
                        var randZ = rnd.Next(10, 60);
                        success = GetSafeCoordForPed(randX, randY, randZ, false, ref pos, 16);

                        ++tries;

                        if (tries > 10)
                        {
                            pos = Vector3.Zero;
                            break;
                        }
                    } while (!success);

                    Exports["spawnmanager"].spawnPlayer(new
                    {
                        x = pos.X,
                        y = pos.Y,
                        z = pos.Z,
                        heading = 189.5f,
                        model = "mp_m_freemode_01"
                    }, new Action(() =>
                    {
                        PlayerSpawned?.Invoke();
                    }));
                }));

                Exports["spawnmanager"].forceRespawn();