SwarmSpawn v2.0 - Final(Not)

Search, find and discuss about Mutators!
User avatar
OjitroC
Godlike
Posts: 3745
Joined: Sat Sep 12, 2015 8:46 pm

Re: SwarmSpawn v2.0 - UT99 Preview Release

Post by OjitroC »

MrLoathsome wrote:Maybe your log file is trying to deceive us all.
It does. I put 'PulseRockets.PulseRockets' in the SwarmSpawn.ini on the assumption that it is a Weapon Class and found it did not spawn during the game - checking further found it is a mutator and so wouldn't have spawned. The UT.Log though reported that the requisite number of PulseRockets had been spawned - so SwarmSpawn doesn't always report errors.

Will be good if you can get it to spawn differently modified versions of the same class of weapon.
User avatar
Barbie
Godlike
Posts: 2911
Joined: Fri Sep 25, 2015 9:01 pm
Location: moved without proper hashing

Re: SwarmSpawn v2.0 - UT99 Preview Release

Post by Barbie »

OjitroC wrote:The UT.Log though reported that the requisite number of PulseRockets had been spawned
This can be correct - why should SwarmSpawn not be able to spawn Mutators? :lol2:
"If Origin not in center it be not in center." --Buggie
User avatar
OjitroC
Godlike
Posts: 3745
Joined: Sat Sep 12, 2015 8:46 pm

Re: SwarmSpawn v2.0 - UT99 Preview Release

Post by OjitroC »

Barbie wrote:
OjitroC wrote:The UT.Log though reported that the requisite number of PulseRockets had been spawned
This can be correct - why should SwarmSpawn not be able to spawn Mutators? :lol2:
So it's spawning the mutator but not the weapon? Hadn't thought of that, though the log shows SwarmSpawn spawning PulseRockets at regular intervals, meaning that all instances of the mutator are being destroyed/removed in the map.

Another interesting occurance. I used the following .ini

Code: Select all

[SwarmSpawn.SS]
CheckRate=0.66
bDebugMode=True
SwarmInfo[0]=(SwarmClass="Botpack.ripper",Qty=0,bSpawnOnce="True",SSet0=(SName="AltProjectileClass",SVal="Class'Botpack.flakslug'"))
SwarmInfo[1]=(SwarmClass="RocketStinger.RocketStinger",Qty=2,bSpawnOnce="True")
SwarmInfo[2]=(SwarmClass="RazorStinger.RazorStinger",Qty=2,bSpawnOnce="True")
SwarmInfo[3]=(SwarmClass="Botpack.PulseGun",Qty=0,bSpawnOnce="True",SSet0=(SName="AltProjectileClass",SVal="Class'Botpack.RocketMk2'"))
SwarmInfo[4]=(SwarmClass="PulseGRockets.PGR",Qty=2,bSpawnOnce="True")

The PulseGRockets is configured to fire rockets as primary fire and the normal Pulse Gun plasma stream as the alternative fire. Everything spawned - the Botpack Pulse gun correctly fired plasma as primary fire and rockets as the altprojectile but the alternative fire of the PulseGRockets was also rockets instead of a plasma stream. So this is a case where a weapon of the same class (the PulseGRockets being subclassed from the PulseGun) later in the ini inherited only part of the 'characteristics' of a weapon before it in the ini.

-------------------- Edit ------------------------------------------------
I now realise that the order of SwarmClass weapons is important - reverse the order of Botpack.PulseGun and PulseGRockets and everything works perfectly

Code: Select all

[SwarmSpawn.SS]
CheckRate=1.00
bDebugMode=True
SwarmInfo[0]=(SwarmClass="Botpack.ripper",Qty=0,bSpawnOnce="True",SSet0=(SName="AltProjectileClass",SVal="Class'Botpack.flakslug'"))
SwarmInfo[1]=(SwarmClass="RocketStinger.RocketStinger",Qty=2,bSpawnOnce="True")
SwarmInfo[2]=(SwarmClass="RazorStinger.RazorStinger",Qty=2,bSpawnOnce="True")
SwarmInfo[3]=(SwarmClass="PulseGRockets.PGR",Qty=2,bSpawnOnce="True")
SwarmInfo[4]=(SwarmClass="Botpack.PulseGun",Qty=0,bSpawnOnce="True",SSet0=(SName="AltProjectileClass",SVal="Class'Botpack.RocketMk2'"))
User avatar
papercoffee
Godlike
Posts: 10507
Joined: Wed Jul 15, 2009 11:36 am
Personal rank: coffee addicted !!!
Location: Cologne, the city with the big cathedral.

Re: SwarmSpawn v2.0 - UT99 Preview Release

Post by papercoffee »

The PulseRocket Rifle is created by Bloeb ...if this is of interest for someone.
User avatar
OjitroC
Godlike
Posts: 3745
Joined: Sat Sep 12, 2015 8:46 pm

Re: SwarmSpawn v2.0 - UT99 Preview Release

Post by OjitroC »

Referring to my previous post, I now find that everything works as stated if it is just me in the map (using the last .ini I posted) - when I add bots the PulseGRockets fires rockets as both primary and alt fire, though the Botpack.PulseGun works as it should.
MrLoathsome
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: SwarmSpawn v2.0 - UT99 Preview Release

Post by MrLoathsome »

I had not got around to even attempting to have the Swawner spawn mutators, but it is not surprising that it does.
It now spawns Actors. :shock: Am guessing other conditions are not right for the mutator to do anything, or
possibly some other reason why a mutator wont run that way.

During some earlier tests, I had the thing attemping to place ArrowSpawners on a map, and it was indeed spawning the arrowspawner actor. (bHidden...)
But none of the other conditions the ArrowSpawner needs to function were set, (Trigger mostly I think), so nothing would happen.

As OjitroC is discovering, the order of things can be very important with this.
Not sure why adding bots would change anything, but I haven't looked at any bot code for any of this.
And it could be some code in the PulseGRockets effecting this as well.
Wonder what happens if you try to spawn bots with the SwarmSpawner? Ain't tried that yet either.

There is no processing that occurs for any specific "parent" type class. Not bots, not skaarj, nothing
past a check to see if the actor is a pawn, IF the size needs adjusting.

Suspect some of these issues will go away once I correct that Precache function glitch.
At least that will give us more config possibility's for the thing that may enable work arounds.
blarg
User avatar
OjitroC
Godlike
Posts: 3745
Joined: Sat Sep 12, 2015 8:46 pm

Re: SwarmSpawn v2.0 - UT99 Preview Release

Post by OjitroC »

MrLoathsome wrote: Wonder what happens if you try to spawn bots with the SwarmSpawner? Ain't tried that yet either.
It will spawn bots. I tried with the following .ini

Code: Select all

[SwarmSpawn.SS]
CheckRate=1.00
bDebugMode=True
SwarmInfo[0]=(SwarmClass="Botpack.ripper",Qty=0,bSpawnOnce="True",SSet0=(SName="AltProjectileClass",SVal="Class'Botpack.flakslug'"))
SwarmInfo[1]=(SwarmClass="RocketStinger.RocketStinger",Qty=2,bSpawnOnce="True")
SwarmInfo[2]=(SwarmClass="RazorStinger.RazorStinger",Qty=2,bSpawnOnce="True")
SwarmInfo[3]=(SwarmClass="PulseGRockets.PGR",Qty=2,bSpawnOnce="True")
SwarmInfo[4]=(SwarmClass="Botpack.PulseGun",Qty=0,bSpawnOnce="True",SSet0=(SName="AltProjectileClass",SVal="Class'Botpack.RocketMk2'"))
SwarmInfo[5]=(SwarmClass="MBot_A.MTFemale2Bot",Qty=2,bSkipPreCache="True",SSet0=(SName="WeaponType",SVal="Botpack.minigun2"))
Of course, they didn't have a skin but, more importantly, didn't come with the minigun. The UT.log said

Code: Select all

ScriptLog: SwarmSpawn: Swarm #5 MBot_A.MTFemale2Bot Needs: 1
ScriptLog: SwarmSpawn: -  Pre-Spawn class default adjustment: Set MBot_A.MTFemale2Bot WeaponType Botpack.minigun2
ScriptLog: SwarmSpawn: DM-Vera Tomb.MTFemale2Bot2 spawned....
ScriptLog: Attempted settings: DM-Vera Tomb.MTFemale2Bot2 WeaponType Botpack.minigun2
ScriptLog: Actual values: DM-Vera Tomb.MTFemale2Bot2 WeaponType 
ScriptLog: SwarmSpawn: Swarm #5 MBot_A.MTFemale2Bot Needs: 0
ScriptLog: SwarmSpawn: Swarm #5 MBot_A.MTFemale2Bot Needs: 0
ScriptLog: Player health 100 had no weapon
ScriptLog: Player health 100 had no weapon
ScriptLog: Player health 100 had no weapon
ScriptLog: Player health 100 had no weapon
ScriptLog: Player health 96 had no weapon
ScriptLog: Player health 96 had no weapon
ScriptLog: Player health 96 had no weapon
The other interesting thing in this test is that both the Botpack.PulseGun and the PulseGRockets fired the correct primary and alt projectiles.
User avatar
sektor2111
Godlike
Posts: 6433
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: SwarmSpawn v2.0 - UT99 Preview Release

Post by sektor2111 »

Would be wise to let those MBots in game by default. If you want them holding some stuff you need a mutator, BOT/MBOT doesn't have variable slot "WeaponType" they are NOT Skaarj.
By configuring User.ini correctly they enter in game using even custom Skins. MBOT is just a bit of modified Bot not a ScriptedPawn, I wrote MBot in order to replace defaults not to be spawned with pointless values.

But... oh... umm... I have 2 Weapon-Holders (I didn't need many) they are monsters using indeed a "WeaponType" a sort of Skaarj so to speak but looking as a Bot - it was like an old UT selfie if I well recall. What I was loving at them their ability to change weaponry depending on player. Example: If player attacks with SniperRifle would be better to say a pray or to be skilled as long as they soon will copy weapon and will respond with the same coin. These might happen if "WeaponType=None" and player exist armed well.
[attachment=0]SHuman.zip[/attachment]

Classes to get called are named: SHuman.ScriptedFemale and SHuman.ScriptedMale. Or a summon type command or make a cube with them... or... delete them.

Edit:You can use one of setup features of Spawner to put such thing "MenuName" value "AnyName". By example I was curious how sounds when I'm attacked by myself... sorta UT Selfie (was trendy at a moment so I couldn't resist...)
Edit2:If they are triggered in attack and have no weapon or weapons are low rated they reject battle getting vanished.
Trivia: They are able to use even default Redeemer (which Skaarj have troubles with it).
You do not have the required permissions to view the files attached to this post.
Last edited by sektor2111 on Fri May 20, 2016 8:12 pm, edited 3 times in total.
User avatar
OjitroC
Godlike
Posts: 3745
Joined: Sat Sep 12, 2015 8:46 pm

Re: SwarmSpawn v2.0 - UT99 Preview Release

Post by OjitroC »

sektor2111 wrote:Would be wise to let those MBots in game by default. If you want them holding some stuff you need a mutator, BOT/MBOT doesn't have variable slot "WeaponType" they are NOT Skaarj.
By configuring User.ini correctly they enter in game using even custom Skins. MBOT is just a bit of modified Bot not a ScriptedPawn, I wrote them in order to replace defaults not to be spawned.
I see - didn't really understand that about the "WeaponType" before.

The curious thing is that adding the MBot_As via SwarmSpawn does not appear to have the same effect on the projectiles fired by the Botpack.PulseGun and the PulseGRockets as playing DM/TDM with MBot_As - that is if it is the Bots having such an effect.

As an aside, I use the MBot_A as the default bots in all games, configured via XBots9, so that's the reason I experimented wth spawning them.
MrLoathsome
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: SwarmSpawn v2.0 - UT99 Preview Release

Post by MrLoathsome »

Interesting results.

Soon as I get an update that correctly supports the multiple SSets on each line, you should be able to set more variables
that are probably needed to get the bots (or Mbots) working the way they should. (Maybe....... :mrgreen: )

Re: Bot Weapons.

Pretty sure you would have to somehow execute GiveTo() and GiveAmmo() function calls, or adjust various bot
variables to "fool" the bot into thinking that all the stuff in those functions has all been done.

I have pretty much avoided bot stuff, (as much as possible), ever since I did the XBots9 and Adjustobots/BotOrders stuff
long long ago.

Sector probably has a better idea of if/how that could be made to happen via SwarmSpawner than I do.
(I would have to spend a few days staring at the default bot code to figure it out currently.....)

*Making good progress on my update I think. Hope to have the update posted here in a day or 3 at the most.
(Maybe even late tonight.)
blarg
User avatar
sektor2111
Godlike
Posts: 6433
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: SwarmSpawn v2.0 - UT99 Preview Release

Post by sektor2111 »

It's part of UT, if a new pawn is coming up, everyone start testing if can do potatoes at dinner. MBot is just... Bot, results for implementing in things map related rather than letting DM to work returns the same results unless you want to control them in a different way. I'd prefer to call default "AddBot()" because it does full job... and timing with "MinPlayers".

Right now I look over that log and something looks like in fog: DO YOU HAVE MAPS WITH SPACE in NAMES ? Good luck with redirection. I though such dumb things no longer exist.
User avatar
OjitroC
Godlike
Posts: 3745
Joined: Sat Sep 12, 2015 8:46 pm

Re: SwarmSpawn v2.0 - UT99 Preview Release

Post by OjitroC »

A short report on spawning a couple of SHuman.ScriptedFemales with SwarmSpawn - used the following ini
Spoiler
[SwarmSpawn.SS]
CheckRate=1.00
bDebugMode=True
SwarmInfo[0]=(SwarmClass="Botpack.ripper",Qty=0,bSpawnOnce="True",SSet0=(SName="AltProjectileClass",SVal="Class'Botpack.flakslug'"))
SwarmInfo[1]=(SwarmClass="RocketStinger.RocketStinger",Qty=2,bSpawnOnce="True")
SwarmInfo[2]=(SwarmClass="RazorStinger.RazorStinger",Qty=2,bSpawnOnce="True")
SwarmInfo[3]=(SwarmClass="PulseGRockets.PGR",Qty=2,bSpawnOnce="True")
SwarmInfo[4]=(SwarmClass="Botpack.PulseGun",Qty=0,bSpawnOnce="True",SSet0=(SName="AltProjectileClass",SVal="Class'Botpack.RocketMk2'"))
SwarmInfo[5]=(SwarmClass="SHuman.ScriptedFemale",Qty=1,bSkipPreCache="True",SSet0=(SName="WeaponType",SVal="Botpack.minigun2"),SSet1=(SName="MenuName",SVal="Doris"))
SwarmInfo[6]=(SwarmClass="SHuman.ScriptedFemale",Qty=1,SDS=0.60,bSkipPreCache="True",SSet0=(SName="Health",SVal="150"),SSet1=(SName="MenuName",SVal="Rachel"),SSet2=(SName="WeaponType",SVal="Botpack.ripper"))
Both ScriptedFemales spawned and respawned OK but the confguration of variables varied from spawn to spawn - sometimes SwarmInfo[6] SHuman spawned with a minigun, not the ripper, and the default health (1500 I think); and sometimes SwarmInfo[5] SHuman spawned with 150 health. Omitting the SSet=2 from SwarmInfo[6] meant it came either with a mnigun or an enforcer, but not the default ScriptedFemale weapon. Incidentally the SHumans had no adverse effect on the projectiles fired by the PulseGun or PulseGRockets.

@sektor2111 - the SHuman are pretty cool - determined and tough - loved the human\Skaarj combination of sounds.
sektor2111 wrote:It's part of UT, if a new pawn is coming up, everyone start testing if can do potatoes at dinner. MBot is just... Bot, results for implementing in things map related rather than letting DM to work returns the same results unless you want to control them in a different way. I'd prefer to call default "AddBot()" because it does full job... and timing with "MinPlayers".
My reason for using MBot_A in SwarmSpawn is to test the effects of using the mutator to spawn bots (more specifically, the apparent impact of bots on the configuration of weapons spawned) and not to test the Bot itself. The effect that using Bots in the nomral manner in a DM/TDM has on the projectiles fired by the PulseGun or PulseGRockets seems to differ from the effect when spawning the bots and the weapons via SwarmSpawn.ini.
sektor2111 wrote:Right now I look over that log and something looks like in fog: DO YOU HAVE MAPS WITH SPACE in NAMES ? Good luck with redirection. I though such dumb things no longer exist.
I don't have a server and don't play on-line, so not sure that spaces in map names are an issue for me?
User avatar
sektor2111
Godlike
Posts: 6433
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: SwarmSpawn v2.0 - UT99 Preview Release

Post by sektor2111 »

ScriptedMale and ScriptedFemale if I recall have some capping features (preventing a dumb mapper finding them to mock setup) I would like to put more wrappers restoring them completely but... I intended to make package smaller not full of codes. Usually I add them to check a DM map how is pathed... these Monsters-Bots are not collectors, are hunters depending on DM game used so in this way I check if A.I. do work fine or not. I was using them simple "WeaponType" "None", this way make them to use all kind of weapons copied from player and/or Bot. Skins are in multicolored to not be confused - there I should work a bit more but... nah, if they work perfect nobody will use them.
MrLoathsome
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: SwarmSpawn v2.0 - UT99 Preview Release II

Post by MrLoathsome »

Post 1 updated with New Improved version of this.

Let me know how it goes, or if any questions.
.
.
.
*Edit:
Barbie wrote:This can be correct - why should SwarmSpawn not be able to spawn Mutators? :lol2:
Had to add a special case for that. You must use the AddMutator() function to get a mutator added into your game correctly.
SwarmSpawner can now handle that.
blarg
User avatar
OjitroC
Godlike
Posts: 3745
Joined: Sat Sep 12, 2015 8:46 pm

Re: SwarmSpawn v2.0 - UT99 Preview Release II

Post by OjitroC »

Have just tried the new version in several games (in the same map) with the following ini
Spoiler
[SwarmSpawn.SS]
CheckRate=1.00
bDebugMode=True
SwarmInfo[0]=(SwarmClass="Botpack.ripper",Qty=0,bSpawnOnce="True",SSet0=(SName="AltProjectileClass",SVal="Class'Botpack.flakslug'"))
SwarmInfo[1]=(SwarmClass="Botpack.PulseGun",Qty=2,bSpawnOnce="True",SSet0=(SName="ProjectileClass",SVal="Class'Botpack.RocketMk2'"))
SwarmInfo[2]=(SwarmClass="UnrealI.Stinger",Qty=2,bSpawnOnce="True",SSet0=(SName="ProjectileClass",SVal="Class'Botpack.Razor2'"),SSet1=(SName="AltProjectileClass",SVal="Class'Botpack.RocketMk2'"))
SwarmInfo[3]=(SwarmClass="UnrealI.SkaarjGunner",Qty=1,bSpawnOnce="True",SSet0=(SName="WeaponType",SVal="Botpack.minigun2"))
SwarmInfo[4]=(SwarmClass="UnrealI.SkaarjInfantry",Qty=1,bSpawnOnce="True",SSet0=(SName="WeaponType",SVal="Botpack.ripper"))
SwarmInfo[5]=(SwarmClass="UnrealI.Stinger",Qty=2,bSpawnOnce="True",SSet0=(SName="ProjectileClass",SVal="Class'Botpack.RocketMk2'"),SSet1=(SName="AltProjectileClass",SVal="Class'Botpack.Razor2'"))
SwarmInfo[6]=(SwarmClass="Botpack.PulseGun",Qty=2,bSpawnOnce="True",SSet0=(SName="AltProjectileClass",SVal="Class'Botpack.RocketMk2'"))
SwarmInfo[7]=(SwarmClass="UnrealI.SkaarjGunner",Qty=2)
SwarmInfo[8]=(SwarmClass="UnrealI.SkaarjInfantry",Qty=1)
with these results
  • 1the Pulse Guns fire rockets as both primary and alt projectiles;
    2 the primary and alt projectiles fired by the Stinger vary from game to game - sometimes as SwarmInfo[1] and sometimes as SwarmInfo[5];
    3 the Skaarj spawn correctly but if bSpawnOnce="True" is omitted (together with SwarmInfos [7] and [8], they spawn with the default Unreal Eightball and Stinger; the latter firing the projectiles in [2] or [5]
    4 in all cases the UT.log reported that everything had spawned correctly as in the .ini
With this ini
Spoiler
[SwarmSpawn.SS]
CheckRate=1.00
bDebugMode=True
SwarmInfo[0]=(SwarmClass="Botpack.ripper",Qty=0,bSpawnOnce="True",SSet0=(SName="AltProjectileClass",SVal="Class'Botpack.flakslug'"))
SwarmInfo[1]=(SwarmClass="Botpack.PulseGun",Qty=2,bSpawnOnce="True",SSet0=(SName="ProjectileClass",SVal="Class'Botpack.RocketMk2'"))
SwarmInfo[2]=(SwarmClass="UnrealI.Stinger",Qty=2,bSpawnOnce="True",SSet0=(SName="ProjectileClass",SVal="Class'Botpack.flakslug'"),SSet1=(SName="AltProjectileClass",SVal="Class'Botpack.flakslug'"))
If I understand correctly, SwarmInfo[1] should spawn two Pulse Guns, in the same locations, firing rockets as the primary projectile but should not affect any Pulse Guns in the map - however the primary projectile of all Pulse Guns in the map is rockets.