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

List of bugs in the current KF Build

  • Linux dedicated servers cannot start up due to missing files in the build
  • Objective mode is currently broken where the server crashes after one round of gameplay
  • Armor welder class needs to be modified due to a change in the Tick function in the Welder class
  • Headshot achievement has been changed

More to come

Linux servers can start up if they have the correct glibc version. If you don't have glibc 2.15, then download the source and build it yourself.

http://www.gnu.org/software/libc/

I'm using openSUSE 12.2 and I can run the latest update just fine.
 
Upvote 0
Benjamin thanks for the post to assembla

the change to the headshot code (from KFMonster.uc) :
Line 2705
Code:
//Award headshot here, not when zombie died.
if( bDecapitated && Class<KFWeaponDamageType>(damageType) != none && instigatedBy != none && KFPlayerController(instigatedBy.Controller) != none )
{
	bLaserSightedEBRM14Headshotted = M14EBRBattleRifle(instigatedBy.Weapon) != none && M14EBRBattleRifle(instigatedBy.Weapon).bLaserActive;
	Class<KFWeaponDamageType>(damageType).Static.ScoredHeadshot(KFSteamStatsAndAchievements(PlayerController(instigatedBy.Controller).SteamStatsAndAchievements), self.Class, bLaserSightedEBRM14Headshotted);
}

Change to ground speed code (from KFMonster.uc) :
Line 418 NOTE there is multiple references to GroundSpeed that should now be SetGroundSpeed
Code:
// Some randomization to their walk speeds.
RandomGroundSpeedScale = 1.0 + ((1.0 - (FRand() * 2.0)) * 0.1); // +/- 10%
SetGroundSpeed(default.GroundSpeed * RandomGroundSpeedScale);

Line 479
Code:
// Accessor for GroundSpeed so we can track what is setting it
simulated function SetGroundSpeed(float NewGroundSpeed)
{
    GroundSpeed = NewGroundSpeed;
}
 
Last edited:
Upvote 0
Has anyone noticed that zeds behaviour is weird, following only one player and ignoring you in normal gametype?

Someone mentioned it here

List of things i found:
Patty can walk into the Casino Trader and falls down the flywheel.
On objective mode 1 ZED always survive.

AND the MOST Importent one!
You failed making a trigger. The ZED's only focus 1 Player and follow him over the whole map, while the other players can kill them easily without beeing attacked.
I dont get why they have removed XMAS zeds from KFChar...
Yeah i noticed this. Atlease they keeped the Normal zeds in (as well as Mix)
 
Upvote 0
Benjamin thanks for the post to assembla

the change to the headshot code (from KFMonster.uc) :
Line 2705
Code:
//Award headshot here, not when zombie died.
if( bDecapitated && Class<KFWeaponDamageType>(damageType) != none && instigatedBy != none && KFPlayerController(instigatedBy.Controller) != none )
{
	bLaserSightedEBRM14Headshotted = M14EBRBattleRifle(instigatedBy.Weapon) != none && M14EBRBattleRifle(instigatedBy.Weapon).bLaserActive;
	Class<KFWeaponDamageType>(damageType).Static.ScoredHeadshot(KFSteamStatsAndAchievements(PlayerController(instigatedBy.Controller).SteamStatsAndAchievements), self.Class, bLaserSightedEBRM14Headshotted);
}

Change to ground speed code (from KFMonster.uc) :
Line 418 NOTE there is multiple references to GroundSpeed that should now be SetGroundSpeed
Code:
// Some randomization to their walk speeds.
RandomGroundSpeedScale = 1.0 + ((1.0 - (FRand() * 2.0)) * 0.1); // +/- 10%
SetGroundSpeed(default.GroundSpeed * RandomGroundSpeedScale);

Line 479
Code:
// Accessor for GroundSpeed so we can track what is setting it
simulated function SetGroundSpeed(float NewGroundSpeed)
{
    GroundSpeed = NewGroundSpeed;
}

Where does this apply to in the ServerPerks codes?
 
Upvote 0
I do not know yet.

I cannot figure out where or what this new item is self.Class in relation to the headshots.

If you are not using a copy of KFMonster.uc in your mod then I am not sure yet.
I did a workaround.

Another issue has come up with the healing projectile but nothing in the compiler about it.
 
Last edited:
Upvote 0
After checking on the modified AI code I spotted one obvious bug on KFHumanPawn:
Code:
function float AssessThreatTo(KFMonsterController  Monster, optional bool CheckDistance)
{
    local float ValMax;
    local float TotalThreat;

    if(Monster == none || Monster.Pawn == none)
    {
        return -1.f;
    }

    [COLOR="Red"]if(CheckDistance)[/COLOR]
    {
        ValMax = Square(100.f);
        TotalThreat = (ValMax -(VSizeSquared(Monster.Pawn.Location - Location)/ ValMax))/100.f ;
    }

    return TotalThreat;
}
If "CheckDistance" is false, then player threat level is 0, meaning AI wont attack you.
In KFMonsterController that is false in most of the cases:
Code:
function bool SetEnemy( Pawn NewEnemy, optional bool bHateMonster )
{
    /* This enemy is of absolutely no threat currently, ignore it */
    if(bUseThreatAssessment && KFHumanpawn(NewEnemy) != none &&
    KFHumanpawn(NewEnemy).AssessThreatTo(self) <= 0)
    {
        return false;
    }
...
}
But only place where it is true at is in function "FindNewEnemy" which is called when zombie has no enemy and is forced to find one.
That means zombies wont see, hear, touch or know they got damaged by player, they only go for first and closest player to them when they initially spawn.

So a fix would include to simply return a threat level value at least greater than 0:
Code:
function  float AssessThreatTo(KFMonsterController  Monster, optional bool CheckDistance)
{
...
    return FMax(0.1,TotalThreat);
}
 
Last edited:
Upvote 0
thanks Marco!

new warning messages:
KFHumanPawn KF-MountainPass.KFHumanPawn (Function KFMod.KFPawn.GetSound:00FD) Accessed null class context 'SoundGroupClass'
KFHumanPawn KF-MountainPass.KFHumanPawn (Function KFMod.KFPawn.GetSound:00FD) Accessed null class context 'SoundGroupClass'
KFHumanPawn KF-MountainPass.KFHumanPawn (Function KFMod.KFPawn.GetSound:00FD) Accessed null class context 'SoundGroupClass'
KFHumanPawn KF-MountainPass.KFHumanPawn (Function KFMod.KFPawn.GetSound:00FD) Accessed null class context 'SoundGroupClass'
KFHumanPawn KF-MountainPass.KFHumanPawn (Function XGame.xPawn.PlayTakeHit:00A5) Accessed null class context 'SoundGroupClass'
KFHumanPawn KF-MountainPass.KFHumanPawn (Function KFMod.KFPawn.GetSound:00FD) Accessed null class context 'SoundGroupClass'
KFHumanPawn KF-MountainPass.KFHumanPawn (Function KFMod.KFPawn.GetSound:00FD) Accessed null class context 'SoundGroupClass'
...
 
Last edited:
Upvote 0