Basic usage features:
Spawns up to 64 different swarms.
Optionally change the size of the pawns in the swarm.
Advanced usage features:
Optionally adjust up to 16 settings for each swarm.
Able to adjust class default settings for each swarm
prior to spawn, and then restore the original default value.
Able to adjust any pawn class default settings.
More info and download available here: http://ecoop.ucoz.com/load/loathsomes_3 ... 0/1-1-0-46
Loathsomes SwarmSpawner - v1.3 released.
-
- Inhuman
- Posts: 958
- Joined: Wed Mar 31, 2010 9:02 pm
- Personal rank: I am quite rank.
- Location: MrLoathsome fell out of the world!
Loathsomes SwarmSpawner - v1.3 released.
Last edited by MrLoathsome on Fri May 11, 2012 6:54 am, edited 4 times in total.
blarg
-
- Godlike
- Posts: 3774
- Joined: Fri Jan 14, 2011 1:53 pm
- Personal rank: -Retired-
Re: Loathsomes SwarmSpawner - v1.0 released.
I'm very interested in this Loathe. A couple of questions if you get time.
Does the mod create spawnpoints or make a list from pathnodes? Basically what I'm asking is 'will it work on a non-pathed map?' And also does it take into account the player's positions at all or do the monsters spawn randomly across the entire network? Neither is bad, but if I can use this on MH-HoldTheLine then I need to know how to path for it.
Nice job as always bro. Very inventive work
Does the mod create spawnpoints or make a list from pathnodes? Basically what I'm asking is 'will it work on a non-pathed map?' And also does it take into account the player's positions at all or do the monsters spawn randomly across the entire network? Neither is bad, but if I can use this on MH-HoldTheLine then I need to know how to path for it.
Nice job as always bro. Very inventive work
So long, and thanks for all the fish
- Dr.Flay
- Godlike
- Posts: 3347
- Joined: Thu Aug 04, 2011 9:26 pm
- Personal rank: Chaos Evangelist
- Location: Kernow, UK
- Contact:
Re: Loathsomes SwarmSpawner - v1.0 released.
I still haven't got round to salvaging my UT99 gaming drive, so I have yet to try this puppy out
Damn-it ! I was so looking forward to testing.
I could put a few creatures into 1 of my editing versions, or my older "pre-hi-res" textures backup.
Actually my main candidate for a swarm-fest, is already in my editing versions.
The Cockroach from the WS_industrial pack.
It occurs to me that the ability to over-ride the default physics may be useful with this mod.
I am not sure if the cockroaches are using spider physics. It will be a bit crap if they get stuck behind a box or wall etc.
Damn-it ! I was so looking forward to testing.
I could put a few creatures into 1 of my editing versions, or my older "pre-hi-res" textures backup.
Actually my main candidate for a swarm-fest, is already in my editing versions.
The Cockroach from the WS_industrial pack.
It occurs to me that the ability to over-ride the default physics may be useful with this mod.
I am not sure if the cockroaches are using spider physics. It will be a bit crap if they get stuck behind a box or wall etc.
UT99.org House Rules
ChaosUT https://chaoticdreams.org
Your Unreal resources: https://yourunreal.wordpress.com
The UT99/UnReal Directory: https://forumdirectory.freeforums.org
Find me on Steam and GoG
ChaosUT https://chaoticdreams.org
Your Unreal resources: https://yourunreal.wordpress.com
The UT99/UnReal Directory: https://forumdirectory.freeforums.org
Find me on Steam and GoG
-
- Inhuman
- Posts: 958
- Joined: Wed Mar 31, 2010 9:02 pm
- Personal rank: I am quite rank.
- Location: MrLoathsome fell out of the world!
Re: Loathsomes SwarmSpawner - v1.0 released.
Jack. This builds its list using almost the same technique as the Zombies spawner mutator.JackGriffin wrote:Does the mod create spawnpoints or make a list from pathnodes? Basically what I'm asking is 'will it work on a non-pathed map?' And also does it take into account the player's positions at all or do the monsters spawn randomly across the entire network?
Here is the actual code that does that:
Code: Select all
for (N = Level.NavigationPointList; N != NONE; N = N.NextNavigationPoint)
{
if ((N.IsA('PathNode') || N.IsA('SpawnPoint')) && !N.Region.Zone.bWaterZone)
{
if (NavNodeCount <= 2000)
{
PNodes[NavNodeCount] = N;
NavNodeCount++;
}
N.bPlayerOnly = False;
}
}
log("SwarmSpawn Init - Spawnpoint count: "$NavNodeCount@" Number Swarms: "$NumSwarms);
In testing, I found only 1 map where this finds 0 spawnpoints. (DM-BDC-Arena][.unr)
When each swarm is about to be spawned, the mutator does check for nearby players when selecting the next spawnpoint
from the list. It attempts to spawn the hordes out of sight of players if possible.
*Edit. Just noticed during some testing that there is an issue online with some maps.
Pre-cache of the Swarm classes is failing, but only on some maps. No clue why at this point.
Testing continues.......
**2nd Edit.
Have discovered what the problem was, and fixed it.
Problem had nothing to do with running it online BTW. I just happened to find the error while testing online...
The issue is actually somewhat related to Jacks question. (Imagine that... )
Turns out I was not setting a location when spawning my temporary pawn in the PreCacheLists function.
Guess I just found out that location(0,0,0) is not always a safe place to spawn a temp pawn.
Changed the spawn call to use the 1st PNode set in the function posted above, and the problem vanished.
v1.1 now available at the link in the 1st post.
The person who downloaded v1.0 should put it on hold and use v1.1 (Hi Medor )
Going to test a few ideas I have been knocking around since I first discovered that the above method does
return 0 spawn locations on some maps. If any of them work, I may be able to add more locations to the list.
That would solve the "non-pathed map" issue I think.
That will be something for v1.2 as it will require changing the type of the PNodes array to a list of vectors
rather than navigation points.
blarg
-
- Inhuman
- Posts: 958
- Joined: Wed Mar 31, 2010 9:02 pm
- Personal rank: I am quite rank.
- Location: MrLoathsome fell out of the world!
Re: Loathsomes SwarmSpawner - v1.0 released.
Been testing a few things, and have it selecting sufficient spawn locations even on maps with no pathnodes so it spawn swarms.JackGriffin wrote:I'm very interested in this Loathe. A couple of questions if you get time.
Does the mod create spawnpoints or make a list from pathnodes? Basically what I'm asking is 'will it work on a non-pathed map?' And also does it take into account the player's positions at all or do the monsters spawn randomly across the entire network? Neither is bad, but if I can use this on MH-HoldTheLine then I need to know how to path for it.
Nice job as always bro. Very inventive work
Although it still attempts to spawn the current swarm 500UU away from any players, that is the only check made on players positions.
If this works the way I want, you won't need to path for it at all. Monsters will spawn randomly across the level using a list of locations
built during PostBeginPlay.
I have it just grabbing a bunch of starting locations near or at various existing actors locations in the map. So it sort of auto-adjusts itself depending upon
the map.
Question: Are there any other actors I should check not listed below? If a map had none of those in it, would it still be a map?
Here is a list of Actors I been testing with in various combinations:
PathNode, SpawnPoint, PlayerStart, KeyPoint, Decoration, Inventory, Trigger
I was thinking the addition of KeyPoints is redundant, and that adding the Trigger locations might be a bad idea. (I is not a mapper....)
Any feedback or ideas welcome.
blarg
-
- Godlike
- Posts: 3774
- Joined: Fri Jan 14, 2011 1:53 pm
- Personal rank: -Retired-
Re: Loathsomes SwarmSpawner - v1.1 released.
You are on the right track but I'd remove some of those:
Decoration- because it's often used for lighting and may be very high up on walls or even in the skybox (argh, another check to add in the spawnlist generation. Sorry...)
Trigger- The trigger actor may be anywhere, don't use this one. I've seen them in every nook and cranny, in the sky, driven underground, hidden in BSP.
Spawnpoint- This one is iffy. You have a lot of spawnpoints for flying monsters that sit in the sky. I wouldn't use it.
In fact you might test how hard it would be to do a quicktrace from the actor to level to ensure it's not out floating somewhere. If it is then exclude it. I'd stick to things that are always (or almost nearly always) on the ground like pathnodes, ammo pickups, health even if it makes your potential list smaller. One bad spot where the monsters are spawning out in the open will ruin the effect, especially if the players can't reach them or it ruins the effect (like inside a closed trophy case, etc).
Decoration- because it's often used for lighting and may be very high up on walls or even in the skybox (argh, another check to add in the spawnlist generation. Sorry...)
Trigger- The trigger actor may be anywhere, don't use this one. I've seen them in every nook and cranny, in the sky, driven underground, hidden in BSP.
Spawnpoint- This one is iffy. You have a lot of spawnpoints for flying monsters that sit in the sky. I wouldn't use it.
In fact you might test how hard it would be to do a quicktrace from the actor to level to ensure it's not out floating somewhere. If it is then exclude it. I'd stick to things that are always (or almost nearly always) on the ground like pathnodes, ammo pickups, health even if it makes your potential list smaller. One bad spot where the monsters are spawning out in the open will ruin the effect, especially if the players can't reach them or it ruins the effect (like inside a closed trophy case, etc).
So long, and thanks for all the fish
-
- Inhuman
- Posts: 958
- Joined: Wed Mar 31, 2010 9:02 pm
- Personal rank: I am quite rank.
- Location: MrLoathsome fell out of the world!
Re: Loathsomes SwarmSpawner - v1.1 released.
Good feedback.JackGriffin wrote:You are on the right track but I'd remove some of those:
Decoration- because it's often used for lighting and may be very high up on walls or even in the skybox (argh, another check to add in the spawnlist generation. Sorry...)
Trigger- The trigger actor may be anywhere, don't use this one. I've seen them in every nook and cranny, in the sky, driven underground, hidden in BSP.
Spawnpoint- This one is iffy. You have a lot of spawnpoints for flying monsters that sit in the sky. I wouldn't use it.
In fact you might test how hard it would be to do a quicktrace from the actor to level to ensure it's not out floating somewhere. If it is then exclude it. I'd stick to things that are always (or almost nearly always) on the ground like pathnodes, ammo pickups, health even if it makes your potential list smaller. One bad spot where the monsters are spawning out in the open will ruin the effect, especially if the players can't reach them or it ruins the effect (like inside a closed trophy case, etc).
Removed the Decoration and Trigger locations from the list, just for the reasons you mentioned.
Re: Spawnpoints. Those and PathNodes were the only 2 that the original function in the TWT_Zombies Zombies mutator used.
Not really an issue if the spawnpoints are up high, as the SpawnSwarmer will set Physics Falling, so the pawns just drop down to the floor.
And if they happen to be flying pawns.... So much the better.
My current version now builds a list of locations, rather than NavigationPoints.
On the DM-BDC-Arena][ map, where the original code was finding 0 spawnpoints, this finds 19.
On the CTF-2on2-Crates map, it now finds 53 locations, instead of 14.
(Both very small empty maps.....)
This code fragment is the bit that builds that array:
Code: Select all
for (N = Level.NavigationPointList; N != NONE; N = N.NextNavigationPoint)
{
if ((N.IsA('PathNode') || N.IsA('SpawnPoint') || N.IsA('PlayerStart')) && !N.Region.Zone.bWaterZone)
{
if (SpawnLocCount <= 3000)
{
SpawnLocs[SpawnLocCount] = N.Location;
SpawnLocCount++;
}
N.bPlayerOnly = False;
}
}
forEach AllActors(class'Inventory', Inv)
{
if ((!Inv.Region.Zone.bWaterZone) && (!Inv.Region.Zone.bPainZone))
{
if (SpawnLocCount <= 3000)
{
SpawnLocs[SpawnLocCount] = Inv.Location;
SpawnLocCount++;
}
}
}
eliminate the 1st collision when the spawner tries to spawn stuff there.
blarg
-
- Inhuman
- Posts: 958
- Joined: Wed Mar 31, 2010 9:02 pm
- Personal rank: I am quite rank.
- Location: MrLoathsome fell out of the world!
Re: Loathsomes SwarmSpawner - v1.3 released.
Bump.
Just released a new version, that addresses Jack's questions above.
Added code to this release that actually checks to make sure a full sized SkaarjWarrior will spawn
at the locations before they get added to the SpawnLocs array.
Seems to be working much better, even on maps that have defective or invalid Pathnodes or PlayerStarts on them.
Just released a new version, that addresses Jack's questions above.
Added code to this release that actually checks to make sure a full sized SkaarjWarrior will spawn
at the locations before they get added to the SpawnLocs array.
Seems to be working much better, even on maps that have defective or invalid Pathnodes or PlayerStarts on them.
blarg
- Dr.Flay
- Godlike
- Posts: 3347
- Joined: Thu Aug 04, 2011 9:26 pm
- Personal rank: Chaos Evangelist
- Location: Kernow, UK
- Contact:
Re: Loathsomes SwarmSpawner - v1.3 released.
Gotta salvage my drive ASAP!
UT99.org House Rules
ChaosUT https://chaoticdreams.org
Your Unreal resources: https://yourunreal.wordpress.com
The UT99/UnReal Directory: https://forumdirectory.freeforums.org
Find me on Steam and GoG
ChaosUT https://chaoticdreams.org
Your Unreal resources: https://yourunreal.wordpress.com
The UT99/UnReal Directory: https://forumdirectory.freeforums.org
Find me on Steam and GoG