Rumble_Notes

Recoil and Charge

Basically, there are two features:

Recoil and Charge, with charge being for the weapons that can be charged and recoil being the effect you feel when firing.

Each has some values

Recoil has: Recoil Length (floating point number, I think I have like .009f as the default, play with it, see what you like), RecoilStrengthLight (0-1) and RecoilStrengthHeavy(0-1) which correspond to the motors in the ps2, I'm not exactly sure how they translate for the xbox (don't have one)

Charge has ChargeRateHeavy, ChargeRateHeavyMax, ChargeRateLight, ChargeRateLightMax, with the two rates being a linear increment over time I think I have .2 and .4 as defaults, and the max being the maximum the charges can reach, with .7 as default.

(All of those just go inside the Weapon ODFs,

You're definitely going to want to set the grenades recoil very low or nil, same with charge, as it seems kind of strange to have it rumble when you hold it for a throw.

Rumble Regions (old way)

I've added the ability to do Rumble Regions. Just make a region like normal, but then have the name be in this format:

rumble rumbleType Time ShakeStrength ShakeLength

ex: rumble 0 4.0 1.0 1.0

with

rumbleType = 0, 1 or 2, small, medium or big rumble, as specified in the global lua file, -1 is no rumble, just camera shake. If you need more rumble types let me know and we can add some.

Time a floating point number, it's the interval in which the rumble and shake get set off

ShakeStrength, another floating point number, used for the camera shake, just like normal camera shakes.

ShakeLength, yadda yadda yadda. It's like normal camerashake length.

NOTE: Be careful, the rumble in the name is case sensitive, needs to be all lowercase.

Currently we have a limit of five rumble regions per map, but that's just some number I put in and can be changed.

Ok, I've modified rumble regions at Dell's request

The globals.lua file now contains and the rumble regions are now boiled down to just using a index value. Ex: rumble 0 OR rumble 1 OR rumble 2

RumbleSmall = {

---In A min/max format, the randomized value will be between those two numbers.

Light = { .2, .2 },

Heavy = {.1,.1},

HeavyDecay = { .5,.5 },

LightDecay = {.5, .5 },

DelayLight = {0.0, 0.0 },

DelayHeavy = { 0.0, 0.0 },

TimeLeftHeavy = {1.0, 1.0}, --how long each rumble lasts

TimeLeftLight = {1.0, 1.0},

Interval = { 4.0 , 4.0 }, --how often the rumble gets set off

ShakeAmt = { 4.0 , 4.0 },

ShakeLen = { 1.0, 1.0 }, --Camera shake length

Rumble Regions 3.0

Rumble Regions (new way)

They are now done with ODFs, prop placement and regions. (No lua, I know yer disappointed)

The Region needs to be named "rumble ODFname SomeName"

The Prop needs to be named "SomeName" in ZeroEditor and be of a rumble class label ODF type

Where the ODF name is a new type, I've included an example, should be straightforward.

When a region's timer goes off, it will do all the rumble stuff, camera shake from the ODF, and set off the particle effect of the prop (Based upon which ODF was used to build it)

IMPORTANT NOTE:

If you do not add a prop, you will HAVE to add the ODF to the req file, cuz it won't get put in the game otherwise

EXAMPLE:

Region: rumble yav_prop_rumble1 cave_effects

Props:

Cave_effects all the same name, just have different locations and/or different ODFs associated with them

Cave_effects

Cave_effects

[GameObjectClass]                   
ClassLabel   =          "rumbleeffect"
GeometryName =          "editor_grasspatch.msh"
 
[Properties]                  
MinLight = ".2"
MaxLight = ".2"
MinHeavy = ".1"
MaxHeavy = ".1"
MinHeavyDecay = ".5"
MaxHeavyDecay = ".5"
MinLightDecay = ".5" //pointless in reality, as the ps2 is either on off, not sure bout the xbox
MaxLightDecay = ".5"
MinDelayLight = "0.0"
MaxDelayLight = "0.0"
MinDelayHeavy = "0.0"
MaxDelayHeavy = "0.0"
MinTimeLeftHeavy = "1.0" //how long each rumble lasts
MaxTimeLeftHeavy = "1.0" //how long each rumble lasts
MinTimeLeftLight = "1.0"
MaxTimeLeftLight = "1.0"
MinInterval = "4.0"  //how often the rumble gets set off
MaxInterval = "4.0"  //how often the rumble gets set off
MinShakeAmt = "4.0"
MaxShakeAmt = "4.0"
MinShakeLen = "1.0" //Camera shake length
MaxShakeLen = "1.0" //Camera shake length
SoundName = "com_weap_inf_blaster_gold3" //is read in, triggers the sound at the center
FXName = "com_sfx_weap_grenade_schrap_exp " //the particle effect that gets triggered by the props

Giz asked me to take out the lock-on rumble. This is actually an ODF thing; the lock-on uses the charge variable for the rumble. So I'm just going to go thru the weapon odfs that have lock-on and set the charge rumble to 0.

Walker's footstep rumble

I know we are in lockdown, but I figured you may want to play with this at some point during the week. You can adjust the rumble on the walker's footsteps. I just have a default rumble in there now, which works for the most part, but probably could use adjusting.

The four values are:

/* "StompRumbleLightDuration" */

/* "StompRumbleHeavyDuration" */

/* "StompRumbleHeavy" */

/* "StompRumbleLight" */

The default values are:

StompRumbleLightDuration = .18f;

StompRumbleHeavyDuration = .1f;

StompRumbleHeavy = .2f;

StompRumbleLight = .8f;