CorruptSnail Testing Server - A Zombie Gamemode

I’m looking for people to playtest my new early-stage zombie gamemode (including the spawning system). A lot of additions and changes will occur all the time, based on (more or less) community feedback.

IP: 94.130.180.216

What’s this gamemode?
Basically, you just spawn in without any radar or any other indicator where you could be. You simply roam around, observing the happenings (occasional military helicopter flying by, rebel groups which might be enemies, etc.) and finding stuff. You can communicate with other players through the default chat (for now).

As this is still a early WIP, a basic trainer (for spawning weapons/vehicles) and a teleport menu are included. These will of course be removed once the gamemode is in a good shape.

What’s implemented right now?

  • Multi-player aware spawning system (shouldn’t stack up spawning amounts, big improvement over my older zombie gamemode)

  • Spawning zombies (of course)

  • Spawning obstacles/wreckages (though the object pool includes some stupid props right now)

  • Spawning vehicles

  • Spawning rebel groups (right now they are always hostile against players)

  • Spawning military helicopters (occasionally will also help out players)

  • A fuel system (without refilling; being able to use a vehicle forever would be boring)

  • Time Sync (should work?)

  • All the ambient stuff

What’s comming?
After working out the kinks and a proper weapon spawning system, pretty much more events.

I’ll properly release this gamemode once it’s in a good state.

Is it open source?
Yes! All of the progress will be pushed there. Of course, any PRs are more than welcome!

Please post any feedback here. Thanks!

6 Likes

Joined. Immediately hear gunfire and explosion. Use trainer… get myself a pistol. I can only see so far within the dense fog. I can only sprint so fast. See a fellow man being attacked by zombies. He has a gun. He isn’t doing so well. I fend off the attackers, and save his life. He turns his gun on me. I have to shoot him first. I do. I collect his weapon. I turn around to run away. More zombies have approached from behind while I wasn’t looking. They are too close for an escape. One lunges at me, and I die immediately. 10/10.

Btw, got this error when I first joined:

[    144878] Loaded corruptsnail.net, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null into ScriptDomain_2026307470
[    144894] Instantiated instance of script CorruptSnail.Atmosphere.
[    144925] Instantiated instance of script CorruptSnail.VehFuelHandler.
[    144941] Instantiated instance of script CorruptSnail.Spawners.TimeSync.
[    144941] Instantiated instance of script CorruptSnail.Spawners.VehicleSpawner.
[    144941] Instantiated instance of script CorruptSnail.Spawners.ZombieSpawner.
[    144956] Instantiated instance of script CorruptSnail.Spawners.SpawnerHost.
[    144956] Instantiated instance of script CorruptSnail.Spawners.ObjectSpawner.
[    144956] Instantiated instance of script CorruptSnail.Spawners.Events.RebelSquadSpawner.
[    144972] Instantiated instance of script CorruptSnail.Spawners.Events.ArmyHeliSquadSpawner.
[    144972] Instantiated instance of script CorruptSnail.Spawners.Ambient.AmbientWarNoiseSpawner.
[    145721] HostState transitioning from HS_HOSTING_NET_GAME to HS_HOSTED
[    145752] EndpointMapper::HandleRequest: GET /cloud/11/cloudservices/titles/gta5/pcros/bgscripts/bg_ng_1290_0.rpf
[    145923] SPAWNER_HOST
[    146220] EndpointMapper::HandleRequest: POST /gta5/11/gameservices/matchmaking.asmx/Advertise
[    147437] GetNetworkObject: no object by ID 43
[    147905] Exception during executing Post callback: System.NullReferenceException: Object reference not set to an instance of an object.

[    147905]   at CorruptSnail.Spawners.ObjectSpawner+<SpawnRandomObstacle>d__7.MoveNext () [0x00106] in <2e9eef8088cc47ecbea577935c0419c8>:0 

[    147920] --- End of stack trace from previous location where exception was thrown ---

[    147920]   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    147920]   at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__6_0 (System.Object state) [0x00000] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    147920]   at CitizenFX.Core.CitizenSynchronizationContext+<>c__DisplayClass1_0.<Post>b__0 () [0x00000] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:20 

[    147920]   at CitizenFX.Core.CitizenSynchronizationContext.Tick () [0x0003e] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:38 
[    147983] Exception during executing Post callback: System.NullReferenceException: Object reference not set to an instance of an object.

[    147983]   at CorruptSnail.Spawners.ObjectSpawner+<SpawnRandomObstacle>d__7.MoveNext () [0x00106] in <2e9eef8088cc47ecbea577935c0419c8>:0 

[    147983] --- End of stack trace from previous location where exception was thrown ---

[    147998]   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    147998]   at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__6_0 (System.Object state) [0x00000] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    147998]   at CitizenFX.Core.CitizenSynchronizationContext+<>c__DisplayClass1_0.<Post>b__0 () [0x00000] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:20 

[    148014]   at CitizenFX.Core.CitizenSynchronizationContext.Tick () [0x0003e] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:38 
[    148029] Exception during executing Post callback: System.NullReferenceException: Object reference not set to an instance of an object.

[    148029]   at CorruptSnail.Spawners.ObjectSpawner+<SpawnRandomObstacle>d__7.MoveNext () [0x00106] in <2e9eef8088cc47ecbea577935c0419c8>:0 

[    148045] --- End of stack trace from previous location where exception was thrown ---

[    148045]   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148045]   at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__6_0 (System.Object state) [0x00000] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148061]   at CitizenFX.Core.CitizenSynchronizationContext+<>c__DisplayClass1_0.<Post>b__0 () [0x00000] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:20 

[    148061]   at CitizenFX.Core.CitizenSynchronizationContext.Tick () [0x0003e] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:38 
[    148061] Exception during executing Post callback: System.NullReferenceException: Object reference not set to an instance of an object.

[    148061]   at CorruptSnail.Spawners.ObjectSpawner+<SpawnRandomObstacle>d__7.MoveNext () [0x00106] in <2e9eef8088cc47ecbea577935c0419c8>:0 

[    148061] --- End of stack trace from previous location where exception was thrown ---

[    148076]   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148076]   at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__6_0 (System.Object state) [0x00000] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148076]   at CitizenFX.Core.CitizenSynchronizationContext+<>c__DisplayClass1_0.<Post>b__0 () [0x00000] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:20 

[    148076]   at CitizenFX.Core.CitizenSynchronizationContext.Tick () [0x0003e] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:38 
[    148076] Exception during executing Post callback: System.NullReferenceException: Object reference not set to an instance of an object.

[    148092]   at CorruptSnail.Spawners.ObjectSpawner+<SpawnRandomObstacle>d__7.MoveNext () [0x00106] in <2e9eef8088cc47ecbea577935c0419c8>:0 

[    148092] --- End of stack trace from previous location where exception was thrown ---

[    148092]   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148092]   at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__6_0 (System.Object state) [0x00000] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148092]   at CitizenFX.Core.CitizenSynchronizationContext+<>c__DisplayClass1_0.<Post>b__0 () [0x00000] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:20 

[    148107]   at CitizenFX.Core.CitizenSynchronizationContext.Tick () [0x0003e] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:38 
[    148123] Exception during executing Post callback: System.NullReferenceException: Object reference not set to an instance of an object.

[    148123]   at CorruptSnail.Spawners.ObjectSpawner+<SpawnRandomObstacle>d__7.MoveNext () [0x00106] in <2e9eef8088cc47ecbea577935c0419c8>:0 

[    148123] --- End of stack trace from previous location where exception was thrown ---

[    148123]   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148139]   at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__6_0 (System.Object state) [0x00000] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148139]   at CitizenFX.Core.CitizenSynchronizationContext+<>c__DisplayClass1_0.<Post>b__0 () [0x00000] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:20 

[    148139]   at CitizenFX.Core.CitizenSynchronizationContext.Tick () [0x0003e] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:38 
[    148139] Exception during executing Post callback: System.NullReferenceException: Object reference not set to an instance of an object.

[    148154]   at CorruptSnail.Spawners.ObjectSpawner+<SpawnRandomObstacle>d__7.MoveNext () [0x00106] in <2e9eef8088cc47ecbea577935c0419c8>:0 

[    148154] --- End of stack trace from previous location where exception was thrown ---

[    148154]   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148154]   at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__6_0 (System.Object state) [0x00000] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148154]   at CitizenFX.Core.CitizenSynchronizationContext+<>c__DisplayClass1_0.<Post>b__0 () [0x00000] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:20 

[    148170]   at CitizenFX.Core.CitizenSynchronizationContext.Tick () [0x0003e] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:38 
[    148170] Exception during executing Post callback: System.NullReferenceException: Object reference not set to an instance of an object.

[    148170]   at CorruptSnail.Spawners.ObjectSpawner+<SpawnRandomObstacle>d__7.MoveNext () [0x00106] in <2e9eef8088cc47ecbea577935c0419c8>:0 

[    148170] --- End of stack trace from previous location where exception was thrown ---

[    148170]   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148185]   at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__6_0 (System.Object state) [0x00000] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148185]   at CitizenFX.Core.CitizenSynchronizationContext+<>c__DisplayClass1_0.<Post>b__0 () [0x00000] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:20 

[    148185]   at CitizenFX.Core.CitizenSynchronizationContext.Tick () [0x0003e] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:38 
[    148185] Exception during executing Post callback: System.NullReferenceException: Object reference not set to an instance of an object.

[    148185]   at CorruptSnail.Spawners.ObjectSpawner+<SpawnRandomObstacle>d__7.MoveNext () [0x00106] in <2e9eef8088cc47ecbea577935c0419c8>:0 

[    148201] --- End of stack trace from previous location where exception was thrown ---

[    148201]   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148201]   at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__6_0 (System.Object state) [0x00000] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148201]   at CitizenFX.Core.CitizenSynchronizationContext+<>c__DisplayClass1_0.<Post>b__0 () [0x00000] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:20 

[    148201]   at CitizenFX.Core.CitizenSynchronizationContext.Tick () [0x0003e] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:38 
[    148217] Exception during executing Post callback: System.NullReferenceException: Object reference not set to an instance of an object.

[    148217]   at CorruptSnail.Spawners.ObjectSpawner+<SpawnRandomObstacle>d__7.MoveNext () [0x00106] in <2e9eef8088cc47ecbea577935c0419c8>:0 

[    148217] --- End of stack trace from previous location where exception was thrown ---

[    148217]   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148217]   at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__6_0 (System.Object state) [0x00000] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148217]   at CitizenFX.Core.CitizenSynchronizationContext+<>c__DisplayClass1_0.<Post>b__0 () [0x00000] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:20 

[    148232]   at CitizenFX.Core.CitizenSynchronizationContext.Tick () [0x0003e] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:38 
[    148248] Exception during executing Post callback: System.NullReferenceException: Object reference not set to an instance of an object.

[    148248]   at CorruptSnail.Spawners.ObjectSpawner+<SpawnRandomObstacle>d__7.MoveNext () [0x00106] in <2e9eef8088cc47ecbea577935c0419c8>:0 

[    148248] --- End of stack trace from previous location where exception was thrown ---

[    148248]   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148263]   at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__6_0 (System.Object state) [0x00000] in <a4e3abdd630b4c98a9d6f31a99197de6>:0 

[    148263]   at CitizenFX.Core.CitizenSynchronizationContext+<>c__DisplayClass1_0.<Post>b__0 () [0x00000] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:20 

[    148263]   at CitizenFX.Core.CitizenSynchronizationContext.Tick () [0x0003e] in C:\gl\builds\aaf2d114\0\cfx\fivem\code\client\clrcore\CitizenTaskScheduler.cs:38 
[    148513] GetNetworkObject: no object by ID 85
1 Like

Yeah, haven’t figured out what causes it yet (as my gamemode checks if the player exists first before doing stuff), but it doesn’t seems to affect anything.

Great to hear you witnessed so much of the gamemode already!

I believe FiveM creates the ped prior to spawn, but it doesn’t really exist in the game yet. I have had similar issues in the past when trying to check for this. Check to see if network session has started (there is a native for it). That will be true once the player is actually spawned in.


–Edit: This is what I use to check if player is spawned and fully ready:

if (!IsPlayerSessionStarted && API.NetworkIsSessionStarted() && !API.GetIsLoadingScreenActive())
{
        IsPlayerSessionStarted = true;
        //run code for first join
}

Thanks for the hint, going to try it out later!

How’s progress coming along @pongo1231

looks awesome if this makes progress!

keep it up !!