![]() |
![]() |
|
#1
|
|||
|
|||
|
__________________
Last edited by Benjamin; 11-28-2012 at 11:29 PM. |
|
#2
|
||||
|
||||
|
I was waiting for you to put something like this up! GJ
__________________
|
|
#3
|
|||
|
|||
|
On a note you have to be careful when editing default values. Clients may keep the modified values still after mapswitch (or server when switching between game modes).
Meaning client may get wrong fire rates/weapon names or such after connected to different server. |
|
#4
|
||||
|
||||
|
You have to make it some how only relevant to the server.
__________________
|
|
#5
|
||||
|
||||
|
I love you.
*starts helping Yomomomassis with Rainbow Six porting* |
|
#6
|
||||
|
||||
|
Great guide. I'm not too much into editing but i understood it quite well.
|
|
#7
|
|||
|
|||
|
Thanks guys, I appreciate the comments. If I can find some time soon I'd like to write a tutorial on making weapons from scratch, but I'd need to do some more research first since I have no experience with media handling in UE.
I hadn't thought of that, thanks. I'm not sure about the client retaining the default values, but I know for sure that after a map switch (and no doubt a game mode switch) a server still retains them after the mutator is disabled. Still, for the sake of the tutorial I think it works well since it's a clean and easy way to explain which classes contain which variables. I've modified the tutorial a little bit (including the code) to point out that the example method is for single-player.
__________________
|
|
#8
|
|||
|
|||
|
Can someone please cleare some things up
Do i have to create a mutator with this? And could someone post an example of a moded weapon how should all the lines look? Thankyou |
|
#9
|
|||
|
|||
|
Quote:
Agree
|
|
#10
|
|||
|
|||
|
Yes, it has to be created as a mutator. See the link to the tutorial on making a mutator at the top of my post.
__________________
|
|
#11
|
|||
|
|||
|
Why doesn't this work when I put it on a server? It works fine on solo.
Great work Benjamin! This is helped me so much. Last edited by RichardtheLionhart; 06-22-2011 at 11:15 AM. |
|
#12
|
||||
|
||||
|
I'm having problems with this, i have enter the info for a weapon (M14EBRM) which is a automatic m14. I am fairly new to coding, so i think the problem is format, or misplacement of {'s and }'s.
This is the .uc file code: [CODE][class AlteredWeaponMut extends Mutator; function PostBeginPlay() { class'Single'.default.ItemName = "M14EBRBattleRifle"; } weaponname { class'Single'.default.ItemName = "M14EBRBattleRifle"; class'SinglePickup'.default.Itemname = "M14EBR"; class'SinglePickup'.default.ItemShortName = "M14EBR"; } firetype { class'SingleFire'.default.bWaitForRelease = false; } damage { class'SingleFire'.default.DamageMax = 65; class'DamTypeM14EBR'.default.HeadShotDamageMult = 2.5; } firerate { class'SingleFire'.default.FireRate = 0.175; class'SingleFire'.default.FireAnimRate = 2.0; } recoil { class'SingleFire'.default.RecoilRate = 0.07; class'SingleFire'.default.MaxVerticalRecoilAngle = 25; class'SingleFire'.default.MaxHorizontalRecoilAngle = 5; } accuracy { class'SingleFire'.default.Spread = 0.015; class'SingleFire'.default.MaxSpread = 0.12; } aiming { class'Single'.default.bHasAimingMode = true; class'Single'.StandardDisplayFOV = 70.0; class'Single'.ZoomedDisplayFOV = 65.0; class'Single'.PlayerIronSightFOV = 75.0; } ammuntion { class'SingleAmmo'.default.MaxAmmo = 200; class'SingleAmmo'.default.InitialAmount = 100; class'SingleAmmo'.default.AmmoPickupAmount = 40; class'SingleAmmoPickup'.default.AmmoAmount = 30; } pickupmessage { class'SinglePickup'.default.PickupMessage = "You got the M14EBR"; } trader { class'SinglePickup'.default.Cost = 200; class'SinglePickup'.default.AmmoCost = 10; class'SinglePickup'.default.BuyClipSize = 30; class'SinglePickup'.default.PowerValue = 40; class'SinglePickup'.default.SpeedValue = 5; class'SinglePickup'.default.RangeValue = 35; } inventory { class'Single'.default.InventoryGroup = 4; class'Single'.default.GroupOffset = 1; class'Single'.default.Priority = 3; class'Single'.default.Weight = 6; class'Single'.default.bKFNeverThrow = true; } defaultproperties { GroupName="KFM14EBRM" FriendlyName="Altered Weapon Mutator" Description="Automatic M14EBR." }/CODE] My second one there may be one error in. .bat file: Code:
del "C:\Program Files\Steam\steamapps\common\killingfloor\M14EBRM.u" "C:\Program Files\Steam\steamapps\common\killingfloor\System\UCC.exe" make del "C:\Program Files\Steam\steamapps\common\killingfloor\System\steam_appid.txt" pause
|
|
#13
|
|||
|
|||
|
You don't split it into sections like that, you can just put all lines in the PostBeginPlay function.
This method works a certain way that isn't meant for online play. If you want to make weapons that work online I'd suggest subclassing existing weapons and adding them to the trader.
__________________
Last edited by Benjamin; 03-14-2011 at 12:41 PM. |
|
#14
|
|||
|
|||
|
Quote:
(Oh and great guide, worked perfectly in SP )
|
|
#15
|
|||
|
|||
|
The method described in the OP does in fact work for multiplayer mutators, if:
|
|
#16
|
|||
|
|||
|
Right, but it's not a good idea since when you run such a mutator on a server the values will stick even when the mutator is disabled, unless you manually restore them yourself.
__________________
|
|
#17
|
|||
|
|||
|
Oh I see. Strange, though... I don't recall having ever run into that problem. Still, I'll take your word for it.
|
|
#18
|
|||
|
|||
|
Hi.
I want to make vampire Katana for berserker. When berserker player hit some enemy it heal himself. from where I can start to dig? I think the start point is KFMeleeFire -> Timer() function where HitActor.TakeDamage function calls are. but how I can access Player healths and Player veterancy type from this section of code? how to access Owner? and how to make mutator of KFMeleeFire ---- ok. I have step 1 this function is placed in KFMeleeFire.uc -> Timer() and it deals damage to enemy HitActor.TakeDamage(MyDamage, Instigator, HitLocation, vector(PointRot), hitDamageClass) ; so for "Vampire" effect, after Enemy TakeDamage I must somehow make somethink like this if (Instigator.VeterancyType=class<'KFVetBerserker'>) { Instigator.GiveHealth(MyDamage*coefficient); } need help!) Last edited by Dave_Scream; 07-01-2011 at 02:02 PM. |
|
#19
|
||||
|
||||
|
What code to enable level-up?
|
|
#20
|
|||
|
|||
|
That's done by the damagetype of the weapon.
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|