Создание Мутаторов Для Killing Floor 2

Тема в разделе "Killing Floor 2", создана пользователем Essence, 19 май 2015.

  1. eXes1ze`

    eXes1ze` Соучастник

    добавь } перед defaultproperties .
     
  2. Flame

    Flame -Заслуженый кодер форума-

    Давай уточним, открываются 4 скобки, закрываются 4 и ты считаешь надо ещё одну?)
     
  3. w.a.l

    w.a.l Капо

    ыыыы.... Сам себе противоречу :whistling:

    Обсчитался. Тогда гдето есчо искать
     
  4. STaJIKeR

    STaJIKeR Солдат

    Вообщем эта гадость с 313 строкой... Надоела.... И решил сравнить исходники вытащенные с помощью UEexplorer И обычной депомпиляцией.

    /*******************************************************************************
    * MiniHans generated by Eliot.UELib using UE Explorer.
    * Eliot.UELib ? 2009-2015 Eliot van Uytfanghe. All rights reserved.
    * http://eliotvu.com
    *
    * All rights belong to their respective owners.
    *******************************************************************************/
    class MiniHans extends KFPawn_ZedHans
    config(Game)
    hidecategories(Navigation);


    function bool Died(Controller Killer, class<DamageType> DamageType, Vector HitLocation)
    {
    local bool Result;


    Result = super(KFPawn_Monster).Died(Killer, DamageType, HitLocation);
    return Result;
    return ReturnValue;
    }


    simulated function PlayDying(class<DamageType> DamageType, Vector HitLoc)
    {
    super(KFPawn).PlayDying(DamageType, HitLoc);
    return;
    return;
    }


    defaultproperties
    {
    BattlePhaseLightTemplateGreen=PointLightComponent'Default__MiniHans.PointLightComponent0'
    BattlePhaseLightTemplateYellow=PointLightComponent'Default__MiniHans.PointLightComponent1'
    BattlePhaseLightTemplateRed=PointLightComponent'Default__MiniHans.PointLightComponent2'
    BattlePhaseLightTemplateBlinking=PointLightComponent'Default__MiniHans.PointLightComponent3'
    BattlePhases=/* Array type was not detected. */
    VulnerableDamageTypes=none
    begin object name=ThirdPersonHead0 class=SkeletalMeshComponent
    ReplacementPrimitive=none
    object end
    // Reference: SkeletalMeshComponent'Default__MiniHans.ThirdPersonHead0'
    ThirdPersonHeadMeshComponent=ThirdPersonHead0
    begin object name=FirstPersonArms class=KFSkeletalMeshComponent
    ReplacementPrimitive=none
    object end
    // Reference: KFSkeletalMeshComponent'Default__MiniHans.FirstPersonArms'
    ArmsMesh=FirstPersonArms
    begin object name=SpecialMoveHandler_f class=KFSpecialMoveHandler
    SpecialMoveClasses=/* Array type was not detected. */
    object end
    // Reference: KFSpecialMoveHandler'Default__MiniHans.SpecialMoveHandler_f'
    SpecialMoveHandler=SpecialMoveHandler_f
    AmbientAkComponent=AkComponent'Default__MiniHans.AmbientAkSoundComponent_1'
    WeaponAkComponent=AkComponent'Default__MiniHans.AmbientAkSoundComponent'
    FootstepAkComponent=AkComponent'Default__MiniHans.FootstepAkSoundComponent'
    DialogAkComponent=AkComponent'Default__MiniHans.DialogAkSoundComponent'
    Health=3500
    begin object name=KFPawnSkeletalMeshComponent class=KFSkeletalMeshComponent
    ReplacementPrimitive=none
    object end
    // Reference: KFSkeletalMeshComponent'Default__MiniHans.KFPawnSkeletalMeshComponent'
    Mesh=KFPawnSkeletalMeshComponent
    begin object name=CollisionCylinder class=CylinderComponent
    ReplacementPrimitive=none
    object end
    // Reference: CylinderComponent'Default__MiniHans.CollisionCylinder'
    CylinderComponent=CollisionCylinder
    begin object name=Sprite class=SpriteComponent
    ReplacementPrimitive=none
    object end
    // Reference: SpriteComponent'Default__MiniHans.Sprite'
    Components(0)=Sprite
    begin object name=CollisionCylinder class=CylinderComponent
    ReplacementPrimitive=none
    object end
    // Reference: CylinderComponent'Default__MiniHans.CollisionCylinder'
    Components(1)=CollisionCylinder
    begin object name=Arrow class=ArrowComponent
    ReplacementPrimitive=none
    object end
    // Reference: ArrowComponent'Default__MiniHans.Arrow'
    Components(2)=Arrow
    begin object name=KFPawnSkeletalMeshComponent class=KFSkeletalMeshComponent
    ReplacementPrimitive=none
    object end
    // Reference: KFSkeletalMeshComponent'Default__MiniHans.KFPawnSkeletalMeshComponent'
    Components(3)=KFPawnSkeletalMeshComponent
    Components(4)=AkComponent'Default__MiniHans.AmbientAkSoundComponent'
    Components(5)=AkComponent'Default__MiniHans.AmbientAkSoundComponent_1'
    Components(6)=AkComponent'Default__MiniHans.FootstepAkSoundComponent'
    Components(7)=AkComponent'Default__MiniHans.DialogAkSoundComponent'
    DrawScale3D=(X=0.70,Y=0.70,Z=0.70)
    begin object name=CollisionCylinder class=CylinderComponent
    ReplacementPrimitive=none
    object end
    // Reference: CylinderComponent'Default__MiniHans.CollisionCylinder'
    CollisionComponent=CollisionCylinder
    }




    Версия из исходников:

    class MiniHans extends KFPawn_ZedHans;
    //Prevent game from ending when killed
    function bool Died( Controller Killer, class<DamageType> DamageType, vector HitLocation )
    {
    local bool result;
    result = super(KFPawn_Monster).Died( Killer, DamageType, HitLocation );
    return result;
    }
    simulated function PlayDying(class<DamageType> DamageType, vector HitLoc)
    {
    Super(KFPawn_Monster).PlayDying(DamageType, HitLoc);
    return;
    }
    defaultproperties
    {
    DrawScale3D=(X=0.7,Y=0.7,Z=0.7)
    Health=5500//6500
    DoshValue=500
    VulnerableDamageTypes.Empty
    Begin Object Class=KFMeleeHelperAI Name=MeleeHelper_0
    BaseDamage=56//75.f
    MaxHitRange=200//275.f
    MomentumTransfer=20000//40000.f
    MyDamageType=class'KFDT_Slashing_Hans'
    End Object
    Begin Object Class=KFSpecialMoveHandler Name=SpecialMoveHandler_f
    SpecialMoveClasses(SM_BossTheatrics) = None
    SpecialMoveClasses(SM_MeleeAttack) =class'KFGame.KFSM_MeleeAttack'
    SpecialMoveClasses(SM_MeleeAttackDoor) =class'KFSM_DoorMeleeAttack'
    SpecialMoveClasses(SM_Stumble) =class'KFGame.KFSM_Stumble'
    SpecialMoveClasses(SM_RecoverFromRagdoll)=class'KFGame.KFSM_RecoverFromRagdoll'
    SpecialMoveClasses(SM_Knockdown) =class'KFSM_RagdollKnockdown'
    SpecialMoveClasses(SM_DeathAnim) =class'KFSM_DeathAnim'
    SpecialMoveClasses(SM_Stunned) =class'KFSM_Stunned'
    SpecialMoveClasses(SM_Taunt) =class'KFGame.KFSM_Zed_Taunt'
    SpecialMoveClasses(SM_WalkingTaunt) =class'KFGame.KFSM_Zed_WalkingTaunt'
    SpecialMoveClasses(SM_Grab)=class'KFSM_Hans_Grab'
    SpecialMoveClasses(SM_GrabAttack) = class'KFSM_GrappleAttack_Hans'
    SpecialMoveClasses(SM_ChangeStance) = class'KFSM_Hans_WeaponSwitch'
    SpecialMoveClasses(SM_Hans_ThrowGrenade)=class'KFSM_Hans_ThrowGrenade'
    SpecialMoveClasses(SM_Hans_GrenadeHalfBarrage)=class'KFSM_Hans_GrenadeHalfBarrage'
    SpecialMoveClasses(SM_Hans_GrenadeBarrage)=class'KFSM_Hans_GrenadeBarrage'
    SpecialMoveClasses(SM_GrappleVictim)=class'KFGame.KFSM_GrappleVictim'
    SpecialMoveClasses(SM_HansGrappleVictim)=class'KFGame.KFSM_HansGrappleVictim'
    End Object
    SpecialMoveHandler=SpecialMoveHandler_f

    BattlePhases(0)={(bCanFrenzy=false,
    bSprintingBehavior=false,
    GlobalOffensiveNadePhaseCooldown=12,
    HENadeTossPhaseCooldown=20,
    bCanTossNerveGas=false,
    bCanBarrageNerveGas=false,
    bCanUseGuns=true,
    GunAttackPhaseCooldown=0,
    GunAttackLengthPhase=99999,
    bCanTossGrenade=false,
    bCanBarrageGrenades=false)}
    BattlePhases(1)={(bCanFrenzy=false,
    bSprintingBehavior=false,
    GlobalOffensiveNadePhaseCooldown=12,
    HENadeTossPhaseCooldown=20,
    bCanTossNerveGas=false,
    bCanBarrageNerveGas=false,
    bCanUseGuns=true,
    GunAttackPhaseCooldown=0,
    GunAttackLengthPhase=99999,
    bCanTossGrenade=false,
    bCanBarrageGrenades=false)}
    BattlePhases(2)={(bCanFrenzy=false,
    bSprintingBehavior=false,
    GlobalOffensiveNadePhaseCooldown=12,
    HENadeTossPhaseCooldown=20,
    bCanTossNerveGas=false,
    bCanBarrageNerveGas=false,
    bCanUseGuns=true,
    GunAttackPhaseCooldown=0,
    GunAttackLengthPhase=99999,
    bCanTossGrenade=false,

    BattlePhases(3)={(bCanFrenzy=false,
    bSprintingBehavior=false,
    GlobalOffensiveNadePhaseCooldown=12,
    HENadeTossPhaseCooldown=20,
    bCanTossNerveGas=false,
    bCanBarrageNerveGas=false,
    bCanUseGuns=true,
    GunAttackPhaseCooldown=0,
    GunAttackLengthPhase=99999,
    bCanTossGrenade=false,
    bCanBarrageGrenades=false)}

    GroundSpeed=210.f
    SprintSpeed=550//650.f
    NumMinionsToSpawn=0
    BossName="Mini Patriarch"

    }

    Спасибо UE за гемор....

    В Пример взят файл MiniHans.uc



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

    Все успешно было сделано. Спасибо за помощь.
    Причина UE портация скриптов. Лучше ручками... чем через кривые проги....