Good eye Barbie. (I like your current location. I never move without proper hashing, so I picked something different.
That particular bit of code where the list of possible spawnpoints is created has been rewritten a number
of times. Both for this project and some of earlier mutators I was screwing around with. Some of the previous versions
were doing all kinds of crazy stuff. Adding random offsets to the locations. Attempting to spawn a temp pawn there
to validate the location, etc etc.
Both in an attempt to get as many possible locations as possible, and to try and eliminate or reduce the frequency of things
that "fell out of the world!".
During the current v2.0 project I have simplified that a lot. Preview Release III will probably have a version of that bit
which will be very similar to what you just posted. (Hell I might just steal your example and tweak it a bit.)
Thanks for mentioning the InventoryItem/InventorySpot bit there. I was unaware. (I really don't look at maps at all....)
In addition to reducing some redundancy in the spawnpoints list, that info may help me reduce the falling out of the world crap.
If I was doing that stuff anywhere other than the SpawnPawn() function I would be inclined to use that.
As it is, the mutator does log the actual values after the attempt to set them, so if you see either a blank
space or a value other than the one you tried to set in that log line you know something has gone wrong.
Just have to look a bit closer to see it.
Think what I have executes faster in this case as it avoids the extra function call. And half of it only happens if bDebug="True".
The mutator will process the entire ini file sequentially the first pass thru.
bRandMode will only kick in for swarms that have bSpawnOnce="False" and Qty > 0 after the first pass.
You should configure your ini so that only Monsters or items that are destroyable or have a LifeSpan set are in
the list of "Active" swarms that will actually use the bRandMode option.
When a player picks up a weapon, UT actually spawns a new copy of it and gives it to the player.
It is NOT the same actual actor that SwarmSpawner has spawned. The SwarmSpawner will only
count/track the status of the actual pickup it spawned. It ignores any the players have. If they toss their guns
those are also ignored by the mutator. (I think....
You should be able to spawn weapons that respawn or not. You could have them spawning once and respawning.
Or have them spawn once and not respawn. Or have them spawn once with a lifespan, and they will be gone if you don't find them in time.
Or have them not respawn, and not spawn once, optionally with a lifespan.
In which case they would show up at random locations during the match, as swarmspawner would replace them after they get picked up or destroyed.
If I did it right, this can all be set to happen any way you want regardless of whatever WeaponsStay option you have set in UT for the match.
That setting should just effect weapons that are on the map by default.