• 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/

The Shiver :: Final Release

Just got some tiny questions, if it's alright?

1) How much health does it have, and does its health scale with number of players?
2) I guess it does but gotta ask: Does removing its head disable its special ability (teleportation), just like all decapping all other specimen also disables their special abilities?
3) Once again, I guess it is, but need to ask anyway: Is its teleportation-range limited?
4) Can it teleport vertically (or is it only "straight forward")?
5) How often can it teleport / when does it teleport?
6) You think TWI will add this to retail today or tomorrow? ;) :D

You know, Jack said it reminded him of the "Stasis Module Enemies" from Dead Space 1. I think they look like a mix actually, of those mentioned stasis-enemies combined with Dead Space 2's enemies "The Pack", the weird children with long nails that comes in ... well, a pack :D
 
Last edited:
  • Like
Reactions: Benjamin
Upvote 0
Version 1.1 released.

how do i figure out which version i have?

edit-
nevermind, version 1.1 doesnt have all that .svn stuff in it (oh and a readme, nice)

edit again-

whats the best way to replace the old files on the server?
stop server, delete files, upload to server, upload to redirect, start server?
or just upload to server/redirect (overwrite) without stop? or stop, overwrite all, start?

edit-
do the killingfloor.ini serverpackages stay the same? or do i change it to shiver11?
 
Last edited:
Upvote 0
Just got some tiny questions, if it's alright?

1) How much health does it have, and does its health scale with number of players?
2) I guess it does but gotta ask: Does removing its head disable its special ability (teleportation), just like all decapping all other specimen also disables their special abilities?
3) Once again, I guess it is, but need to ask anyway: Is its teleportation-range limited?
4) Can it teleport vertically (or is it only "straight forward")?
5) You think TWI will add this to retail today or tomorrow?

1. 650 in standart, without multiplcators and of course its health scale with number of players
2. Yes, removing its head disable its special ability
3. Yes
4. Yes it Can teleport vertically
Its my assumptions xD
 
Upvote 0
Shiver is running on our servers :

http://forums.tripwireinteractive.com/showthread.php?t=52506

WPC Server 3 US Based (run by [WPC] Buzz//[WPC] Lord Dean)
Short description :: // Perk up to level 100 // Doom 3 // New weapons // Suicidal (15 slots)

banner_560x95.png


- - - - - - - - - - - - - - - - -

WPC Server 4 UK Based (run by [WPC] Buzz//[WPC] Lord Dean)
Short description :: // Perk up to level 100 // Doom 3 // New weapons // Hard (25 slots)

banner_560x95.png


- - - - - - - - - - - - - - - - -

WPC Server 5 US Based (run by [WPC] Buzz//[WPC] Lord Dean)
Short description :: // Perk up to level 100 // Doom 3 // New weapons // Hard (25 slots)

banner_560x95.png


- - - - - - - - - - - - - - - - -

WPC Server 6 US Based (run by [WPC] Buzz//[WPC] Lord Dean//[WPC] B-2)
Short description :: // Perk up to level 100 // Doom 3 // New weapons // Normal (25 slots)

banner_560x95.png


- - - - - - - - - - - - - - - - - -

We test new stuff on the servers every week, so drop by once in a while and have a game or 2! :) Enjoy!


www.wolfpackclan.com
 
Upvote 0
Just got some tiny questions, if it's alright?

1) How much health does it have, and does its health scale with number of players?
2) I guess it does but gotta ask: Does removing its head disable its special ability (teleportation), just like all decapping all other specimen also disables their special abilities?
3) Once again, I guess it is, but need to ask anyway: Is its teleportation-range limited?
4) Can it teleport vertically (or is it only "straight forward")?
5) How often can it teleport / when does it teleport?
6) You think TWI will add this to retail today or tomorrow? ;) :D

You know, Jack said it reminded him of the "Stasis Module Enemies" from Dead Space 1. I think they look like a mix actually, of those mentioned stasis-enemies combined with Dead Space 2's enemies "The Pack", the weird children with long nails that comes in ... well, a pack :D

1) It has 650 base health, which is in contrast to the clot's 130 base health, and the siren's 300 base health. However, the fact that damaging slows it down (no matter what you hit it with) means that in a team environment it can be pretty easy to take down, or at least defend against. Its health scales in the same way as the clot, and the head health is also currently the same. It might just be a little bit strong right now, but for testing I think it's better that way.

2) Yes. When the head is removed it can't target enemies, meaning it can't teleport or start charging. Something I haven't mentioned is that it has a system whereby it'll only teleport/charge at you if you've been in its line of sight for at least 3 seconds, so if you see one you have time to hide behind something.

3) Yes. The maximum teleport range is 2000 units, and the minimum is 550. Anything below that and it'll simply charge instead.

4) Yes! As long as you're in its line of sight. Even if you're using an exploit it should be able to teleport to you.

5) When it has targeted you (which as said can take about 3 seconds of looking at you) it will teleport immediately. It has a cooldown period of about 7.5 seconds right now.

6) I'd like to think they'd add this as retail at some point, it certainly fills a niche. Try playing a game with this thing and you'll see that it really makes a difference. If I changed its teleporting to figure out a destination in front of where the player is kiting to it'd be a very good anti-berserker specimen. As it is it's already pretty effective against the berserker since you can't really outrun it (at least, you can't gain any decent distance).

how do i figure out which version i have?

Look at the package name, 011 means version 1.1 (you can't use a decimal point in a package name so it has to be named like that). If it doesn't have numbers it's the first release.

whats the best way to replace the old files on the server?
stop server, delete files, upload to server, upload to redirect, start server?
or just upload to server/redirect (overwrite) without stop? or stop, overwrite all, start?

I'm pretty sure the server must be restarted (as opposed to just a map restart), but as for whether the server needs to not be running when you copy the files in, I'm not sure. I'd say just give it a try, it'll give you an error if it doesn't want you to copy the files while the server is using them.

edit-
do the killingfloor.ini serverpackages stay the same? or do i change it to shiver11?

You don't have to add anything to serverpackages, the mutator does it for you. :)
 
  • Like
Reactions: Aze
Upvote 0
1) It has 650 base health, which is in contrast to the clot's 130 base health, and the siren's 300 base health. However, the fact that damaging slows it down (no matter what you hit it with) means that in a team environment it can be pretty easy to take down, or at least defend against. Its health scales in the same way as the clot, and the head health is also currently the same. It might just be a little bit strong right now, but for testing I think it's better that way.

2) Yes. When the head is removed it can't target enemies, meaning it can't teleport or start charging. Something I haven't mentioned is that it has a system whereby it'll only teleport/charge at you if you've been in its line of sight for at least 3 seconds, so if you see one you have time to hide behind something.

3) Yes. The maximum teleport range is 2000 units, and the minimum is 550. Anything below that and it'll simply charge instead.

4) Yes! As long as you're in its line of sight. Even if you're using an exploit it should be able to teleport to you.

5) When it has targeted you (which as said can take about 3 seconds of looking at you) it will teleport immediately. It has a cooldown period of about 7.5 seconds right now.

6) I'd like to think they'd add this as retail at some point, it certainly fills a niche. Try playing a game with this thing and you'll see that it really makes a difference. If I changed its teleporting to figure out a destination in front of where the player is kiting to it'd be a very good anti-berserker specimen. As it is it's already pretty effective against the berserker since you can't really outrun it (at least, you can't gain any decent distance).

Thank you very much for the thorough answers!
I really love the awesome work you have put into this specimen. Looking forward to it becoming part of the actual game ;)
 
  • Like
Reactions: Benjamin
Upvote 0
So, if I simply add MutAddShivers.MutAddShivers to my mutator line, will Shiver appear in Sandbox Mode? Or I have to specify him in MonsterSquads like I did with Brute? If so, I just need to know, how many sould I add for each wave, so that it won't result in unbalanced gameplay. :confused:

No, the mutator is used for regular games. If you want to add it to sandbox you need to add Shiver011.ZombieShiver to the monster list, and then add that to some squads. If you want to use it for a server you must add Shiver011 to serverpackages.
 
Upvote 0
Ok then) Well, when I tried to put Brute into the Sandbox, Webley gave me this well-balanced specification:

Squad #24 Husk, Brute
Squad #25 Clot, Clot, GoreFast, Husk, Brute, Brute
Squad #26 Husk, Husk, Brute,


Could you provide me with similiar stuff on Shiver, so that I won't ruin the balance? :confused:

Add one to every squad except for squad 0, 1, 16, and 17.
 
  • Like
Reactions: MORDRED
Upvote 0
I'll give you a free hint of how to fix teleport FX for on-line play:
ZombieShiverBase.uc:
Code:
// Teleporting
var byte FadeStage; // int can be replaced with byte for smaller replication.
var byte OldFadeStage;

...

replication
{
    reliable if( Role==ROLE_Authority )
        FadeStage;
}
ZombieShiver.uc (also includes dedicated server optimization):
Code:
simulated function PostBeginPlay()
{
    Super.PostBeginPlay();

    if( Level.NetMode!=NM_DedicatedServer )
    {
        MatAlphaSkin = ColorModifier(Level.ObjectPool.AllocateObject(class'ColorModifier'));
        MatAlphaSkin.Color = class'Canvas'.static.MakeColor(255, 255, 255, 255);
        MatAlphaSkin.RenderTwoSided = false;
        MatAlphaSkin.AlphaBlend = true;
        MatAlphaSkin.Material = Skins[0];
        Skins[0] = MatAlphaSkin;
    }
}

simulated function ZombieCrispUp()
{
    Super.ZombieCrispUp();

    if( Level.NetMode!=NM_DedicatedServer )
    {
        MatAlphaSkin.Material = Skins[0];
        Skins[0] = MatAlphaSkin;
    }
}

simulated function Tick(float delta)
{
    local float Alpha;
    
    Super.Tick(delta);

    if (Health > 0)
    {
        if( Level.NetMode!=NM_DedicatedServer )
        {
            // Handle head twitch
            if (NextHeadTime < Level.TimeSeconds)
            {
                CurHeadRot = NextHeadRot;
                NextHeadRot.Pitch = Rand(MaxTilt) - (MaxTilt * 0.5);
                NextHeadRot.Roll = Rand(MaxTurn) - (MaxTurn * 0.5);
                NextHeadTime = Level.TimeSeconds + MaxHeadTime;
            }
        
            Alpha = 1.0 - ((NextHeadTime - Level.TimeSeconds) / MaxHeadTime);
            SetBoneRotation('CHR_Head', CurHeadRot + (NextHeadRot - CurHeadRot) * Alpha);

            // Pick movement animation according to speed
            if (VSizeSquared(Velocity) > 16900) // 130^2 = 16900
                MovementAnims[0] = RunAnim;
            else
                MovementAnims[0] = WalkAnim;
        }
        
        // Handle targetting
        if( !bDecapitated && Level.NetMode!=NM_Client )
        {
            if (Controller == none || Controller.Target == none || !Controller.LineOfSightTo(Controller.Target))
            {
                if (bCanSeeTarget)    
                    bCanSeeTarget = false;
            }
            else
            {
                if (!bCanSeeTarget)
                {
                    bCanSeeTarget = true;
                    SeeTargetTime = Level.TimeSeconds;
                }
                else if (Level.TimeSeconds > SeeTargetTime + PeriodSeeTarget)
                {
                    if (VSize(Controller.Target.Location - Location) < MaxTeleportDist)
                    {
                        if (VSize(Controller.Target.Location - Location) > MinTeleportDist || !Controller.ActorReachable(Controller.Target))
                        {
                            if (CanTeleport())
                                StartTelePort();
                        }
                        else
                        {
                            if (CanRun())
                                GotoState('Running');
                        }
                    }
                }
            }
        }
    }
    
    // Handle teleport fading
    if (FadeStage == 1) // Fade out (pre-teleport)
    {
        if( OldFadeStage!=FadeStage )
        {
            OldFadeStage = FadeStage;
            AlphaFader = 255;
        }
        AlphaFader = FMax(AlphaFader - Delta * 512, 0);
        if( Level.NetMode!=NM_DedicatedServer )
            MatAlphaSkin.Color.A = AlphaFader;
        if ( Level.NetMode!=NM_Client && AlphaFader==0 )
        {
            SetCollision(true, true);
            FlashTeleport();
            SetCollision(false, false);
            FadeStage = 2;
        }
    }
    else if (FadeStage == 2) // Fade in (post-teleport)
    {
        if( OldFadeStage!=FadeStage )
        {
            OldFadeStage = FadeStage;
            AlphaFader = 0;
        }
        AlphaFader = FMin(AlphaFader + Delta * 512, 255);
        if( Level.NetMode!=NM_DedicatedServer )
            MatAlphaSkin.Color.A = AlphaFader;
        if ( Level.NetMode!=NM_Client && AlphaFader==255 )
        {
            FadeStage = 0;
            SetCollision(true, true);
            GotoState('Running');
        }
    }
    else if( OldFadeStage!=FadeStage )
    {
        OldFadeStage = FadeStage;
        if( Level.NetMode!=NM_DedicatedServer )
            MatAlphaSkin.Color.A = 255;
    }
}
 
  • Like
Reactions: Benjamin
Upvote 0