• Please make sure you are familiar with the forum rules. You can find them here: https://forums.tripwireinteractive.com/index.php?threads/forum-rules.2334636/

[Mutator] Total Game Balance + Gunslinger Perk (ScrN Balance)

I got an update on the trader bug it appears everytime just before it happens this gets spammed in the logs

Code:
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.PostBeginPlay:0055) Accessed None 'MyStatsObject'
FMXFTPTcpLink KF-Gilles-F.FMXFTPTcpLink (Function FMXServerPerksMut.FMXFTPTcpLink.DownloadStats.InitDataConnection:00F5) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.GetData:000E) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:0015) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:0032) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:004F) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:006C) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:0089) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:00A6) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:00C3) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:00E0) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:00FD) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:011A) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:0137) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:0154) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:0171) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:018E) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:01AB) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:01C8) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:01E5) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:0204) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:0221) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:023E) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:025B) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:0278) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:0295) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:02B2) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.RepCopyStats:02C0) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.GetData:003C) Accessed None 'MyStatsObject'
ServerStStats KF-Gilles-F.ServerStStats (Function ServerPerksMut.ServerStStats.GetData:00CB) Accessed None 'MyStatsObject'
 
Upvote 0
@poosh

After all the new changes you have made to ScrN lately, I'm having some issue and questions. I haven't hosted a ScrN game in a while.

Question #1

About the new zed manager, is it normal that you cannot pick which zeds that you want to spawn by configuring the mutator in-game anymore? It looks like you can to it manually by editing 'Zeds.ini' with 'bEnabled='. Is this correct?

Question 2#

When hosting a multiplayer game I can now select 'killing floor' and 'ScrN Floor', but what's really the difference between them? When picking 'ScrN Floor' I cannot choose the game length, I noticed.

Problem 1#

I cannot get 'Super Zombies' to work on 1062 - and not even with ScrN on. It simply has no effect when hosting a listen server, and when hosting a dedicated server with it on the result is the server crashing if anybody trying tries to join it. I remember reading a comment by you that it was broken, but that ScrN can fix it (that's why I write this here). You mentioned something about ScrN having to load first or something. I usually host by making a dedicated server in-game, and 'Super Zombies' always place itself above ScrN in the mutator list. I suppose this is the issue? How can I solve this?

Thanks for the help. :)

Edit:

I have a request. It would be very nice if a '
BonusLevelNormalMin=0' were added to ScrN. The reasoning is that I'm not interested in level progression, however, I love the idea about how levels simple scale compared to the game difficulty. If you're not interested in having this particular option show up in the ScrN interface then add it as a statement in 'ScrnBalance.ini'?
 
Last edited:
Upvote 0
#1

The Vote command changed in the Zed manager. instead of "mvote <zedname> on/off" you need to use "mvote zed <zedname> on/off" now.

#2

not really sure whats the difference but i know in scrn floor you can use game length options with marcos voting handler. you read more here http://steamcommunity.com/groups/ScrNBalance/discussions/7/540739405557321007/

#3

super zombies never really worked for me during a event and if so they crashed the server after some time.
 
Upvote 0
You can use ZED Manager to spawn SuperZombies.

Zeds.ini:
Code:
ZedDefs=(Kind="Clot",Username="SuperClot",Package=,ClassName="SuperZombieMut.ZombieSuperClot",bEnabled=True,bLocked=False)
ZedDefs=(Kind="Crawler",Username="SuperCrawler",Package=,ClassName="SuperZombieMut.ZombieSuperCrawler",bEnabled=True,bLocked=False)
ZedDefs=(Kind="GoreFast",Username="SuperGoreFast",Package=,ClassName="SuperZombieMut.ZombieSuperGoreFast",bEnabled=True,bLocked=False)
ZedDefs=(Kind="Stalker",Username="SuperStalker",Package=,ClassName="SuperZombieMut.ZombieSuperStalker",bEnabled=True,bLocked=False)
ZedDefs=(Kind="Scrake",Username="SuperScrake",Package=,ClassName="SuperZombieMut.ZombieSuperScrake",bEnabled=True,bLocked=False)
ZedDefs=(Kind="Fleshpound",Username="SuperFleshpound",Package=,ClassName="SuperZombieMut.ZombieSuperFleshpound",bEnabled=True,bLocked=False)
ZedDefs=(Kind="Bloat",Username="SuperBloat",Package=,ClassName="SuperZombieMut.ZombieSuperBloat",bEnabled=True,bLocked=False)
ZedDefs=(Kind="Siren",Username="SuperSiren",Package=,ClassName="SuperZombieMut.ZombieSuperSiren",bEnabled=True,bLocked=False)
ZedDefs=(Kind="Husk",Username="SuperHusk",Package=,ClassName="SuperZombieMut.ZombieSuperHusk",bEnabled=True,bLocked=False)
You need to run SuperZombieMut only in cases, when you want bleeding Stalkers and poisonous Crawlers. Other super zeds are working fine without SuperZombieMut. But if you decided to use SuperZombieMut, then set all values to False in SuperZombieMut.ini and leave zed spawning work to ZED Manager.
 
Last edited:
Upvote 0
Upvote 0
I'm trying to make a magnum modification that has no perk discount, like the scrn version. But code for gunslinger discount:
Code:
static function float GetCostScaling(KFPlayerReplicationInfo KFPRI, class<Pickup> Item)
{
    //reduced base price, so no discount on magnums
    if ( Item == class'ScrnBalanceSrv.ScrnMagnum44Pickup' || Item == class'ScrnBalanceSrv.ScrnDual44MagnumPickup' )
        return 1.0;

    if ( ClassIsChildOf(Item,  class'DeaglePickup') || ClassIsChildOf(Item,  class'DualDeaglePickup')
            || ClassIsChildOf(Item, class'MK23Pickup') || ClassIsChildOf(Item, class'DualMK23Pickup') 
            || ClassIsChildOf(Item,  class'Magnum44Pickup') || ClassIsChildOf(Item,  class'Dual44MagnumPickup')
            || ClassIsInArray(default.PerkedPickups, Item)
        )
    {
        if ( GetClientVeteranSkillLevel(KFPRI) <= 6 )
            return 0.9 - 0.10 * float(GetClientVeteranSkillLevel(KFPRI)); // 10% perk level up to 6
        else
            return FMax(0.1, 0.3 - (0.05 * float(GetClientVeteranSkillLevel(KFPRI)-6))); // 5% post level 6
	}
    return 1.0;
}
makes all child classes of ScrnMagnum44Pickup receive a discount. Can you add a check on top that removes discount if user have specified custom bonuses for the weapon in config file and didn't include discount in them? Same with other perks and bonuses. Or is there a simpler solution?
 
Last edited:
Upvote 0