Jump to content

ORGM Rechambered


Fenris_Wolf

Recommended Posts

v3.05-stable is up

 

* M1903 Springfield is now properly a bolt action instead of semi-auto

* Fixed bug when firearms got updated, reattached components did not properly modify stats.

* Components/Weapon Mods now track what ORGM they were created in, allowing them to be properly updated
  on attaching and removing from weapons.
 
* Adjusted Weapon Mods mounting points:
    Tactical lights laser sights, and foregrips  now fit on the 'Clip' slot instead of 'Canon', allowing
    these to be mounted on shotguns with chokes, or properly used with Nolan's Silencers mod.
   
    Recoilpads now properly fit on the 'RecoilPad' slot instead of 'Sling'
   
    Skeletal and Collapsing Stocks now properly fit on the 'Stock' slot instead of 'Sling'

* Reduced weight of some weapon mods.


* Increased effectiveness of rifle slings.

* Compatibility patch for Nolan's Silencers mod now changes the display name on items from "Silencer" to "Suppressor"

 

 

Due to the way the weapon mod updating works, these won't update until you attempt to attach/detach the mod. So the 'upgrade' context menu may not properly display all items until they've been updated. (If the firearm has something attached to the old slot). Items attached to a firearm will be automatically updated when the firearm is.

 

 

@JackMods Since i know from previous posts you've edited, the tables passed to registerComponent(), you may want to retake a look at the mod's current calls to that function. the tables now include a 'lastChanged' key with the build id number for a value. Current build id is 20. I made sure when the components get updated it copies the items current condition, and any mod data attached. On another note relooking at your code in that post, you don't seem to call :getClip() so you may want to include that now ;)

Link to comment
Share on other sites

On 3/18/2018 at 6:40 PM, Fenris_Wolf said:

@JackMods Since i know from previous posts you've edited, the tables passed to registerComponent(), you may want to retake a look at the mod's current calls to that function. the tables now include a 'lastChanged' key with the build id number for a value. Current build id is 20. I made sure when the components get updated it copies the items current condition, and any mod data attached. On another note relooking at your code in that post, you don't seem to call :getClip() so you may want to include that now ;)

 

Will do, thanks for the heads up.

Link to comment
Share on other sites

v3.06-stable is up.

 

* Fixed bug in Benelli M3 and Spas12 conversion from semi-auto to pump and back (introduced v3.00).

* All text strings now make use of proper translation files instead of being hardcoded.

* Firearms with single action or double action triggers found with a round in chamber now have
    the hammer cocked. (prevents normal reload difficulty from auto racking and dropping the round
    in the chamber).

* Added icons for spent shell cases, with reduced size.

* Fixed weapon update function not properly setting condition of attached mods.
 

The spent casing icons are a big improvement over the placeholder icons that were being used

Spoiler

shells.thumb.jpg.8e4e407d76eee124c36c1b480a91d184.jpg

1.thumb.jpg.50f3cec7909ec866090125f932285dcc.jpg

 

 

Link to comment
Share on other sites

Does anyone know what AIMINGTIME does exactly ?

 

I've tried from 0 to 200, and can't detect a bit of difference in game play...

 

- Compared panic fire vs. holding aim before pressing trigger, and the hit ratio seems the same.

- Don't notice any difference in the time it takes to bring the weapon up (in the animation)

- The damage seems unchanged between fast and aimed shots 

***(using "show damage mod", with all critical stats disabled***

- No change in rate of fire

 

- I did notice the game seems to favor "point blank" hits with more full damage hits... But at times, it seems difficult to hit a target when they are close...  I mean holding aim, until they are right in front of you before pressing trigger.... this usually results in a miss... Yet, from a 4-5 squares away, hits are easier... I understand panic throws everything out the window, so I'm making these observations with no panic in the moodle...

 

I wonder if the HitChance is on a bell curve of some kind favoring the middle

And whether the Damage is scaled some way based on range...

 

Can anyone give an example of aimingtime making any kind of difference ?

 

====================================================

Update.. I think I figured it out... Ok... This is what I tried,

 

- I set a one pistol to 200 aimingtime, and 100 hitchance

*** I wanted to isolate aimingtime, by basically finding a way to miss @100 hitchance.

- I set the PistolTacticalLight to -200 to offset it for testing back & forth

 

Here is what I did to test aimingtime :

 

I simply moved away from a zombie, and turned and pressed the trigger quickly...

 

The pistol with 100 hitchance and +200 aimingtime was able to snap shots while turning, hitting all the time... Even before fully facing the Zombie...

 

The pistol with the LIGHT attached (-200 aimingtime) with 100 hitchance could NOT do this, and was missing left and right...

 

SO... HIGHER aimingtime seems to allow for quick snap shots (shooting from the hip) while LOWER aimingtime requires you to hold aim before pressing the trigger to hit anything...

 

Looking at the MODs, it appears we might have this backwards....

- Lasers & Reflex sights REDUCING aimingtime

- Optics INCREASING aimingtime

 

would accomplish the opposite of what they should... which is :

- Magnified Scopes requiring more time to aim and,

- Laser/Reflex equipped weapons becoming quicker to point...

 

 

 

===================== ONE MORE TEST ========================

 

Ok... just to eliminate the possibility of the MOD not registering the attribute correctly, I altered (2) seperate 9mm guns... Ber92, and CZ75..

 

I gave them both 100 hitchance, and:

- CZ75 aimingtime = 1

- Ber92 aimingtime = 100

 

The Beretta (100) aimingtime was able to snap shots off 100% before even facing the zombie...

The CZ at (1) aimingtime, was still ok, but missed if fired as quickly as turning with the Ber92 at 100 aimingtime. Completely noticeable when performing this test as described above...

 

After having determined the Ber92 at (100) aimingtime was supremely effective... I attached that -200 PistolTaclight, and it became a complete piece of garbage with -100 aimingtime...

 

I literally had to hold aim for 10 seconds before it could hit anything and it felt like it wanted more time!!! Snap shots were zero % hit...

 

So I do believe we may have been using the Aimingtime attribute backwards here...

MORE is better... LESS (and negative) is WORSE...

 

 

 

Edited by Arsenal26
update
Link to comment
Share on other sites

@Arsenal26

 

So to have a properly informed answer, I just poked around the java files...

if ((weapon.isRanged()) && (owner.getBeenMovingFor() > weapon.getAimingTime() + owner.getPerkLevel(PerkFactory.Perks.Aiming) * 2)) {
    hitChance = (int)(hitChance - (owner.getBeenMovingFor() - (weapon.getAimingTime() + owner.getPerkLevel(PerkFactory.Perks.Aiming) * 2)));
}

Essentially, you're correct, higher is better.

The higher the aim time the longer you can move without penalty.


Starting with a 50 hit chance, 50 movetime, 10 aimtime, 5 aiming skill (*2)
hitChance = 50 - (50 - (10 + 10))   = 50 - 30 =   20% chance

using 20 aimtime
hitchance = hitchance = 50 - (50 - (20 + 10)) = 50 - 20 =   30% chance

This should defiantly be reduced for long arms that require aiming, and increased higher for snap shots.

 

Nice find.

 

Link to comment
Share on other sites

3 minutes ago, Fenris_Wolf said:

@Arsenal26

 

So to have a properly informed answer, I just poked around the java files...


if ((weapon.isRanged()) && (owner.getBeenMovingFor() > weapon.getAimingTime() + owner.getPerkLevel(PerkFactory.Perks.Aiming) * 2)) {
    hitChance = (int)(hitChance - (owner.getBeenMovingFor() - (weapon.getAimingTime() + owner.getPerkLevel(PerkFactory.Perks.Aiming) * 2)));
}

Essentially, you're correct, higher is better.

The higher the aim time the longer you can move without penalty.


Starting with a 50 hit chance, 50 movetime, 10 aimtime, 5 aiming skill (*2)
hitChance = 50 - (50 - (10 + 10))   = 50 - 30 =   20% chance

using 20 aimtime
hitchance = hitchance = 50 - (50 - (20 + 10)) = 50 - 20 =   30% chance

This should defiantly be reduced for long arms that require aiming, and increased higher for snap shots.

 

Nice find.

 

 

Thanks for that explanation...  just was I was looking for,

 

As with anyone who really gets into this game, I enjoy realism... and being an avid shooter, I believe certain guns are just inherently more difficult to pick up and shoot than others...  Anything with a short sight radius for example...  small pocket pistols, and the like are challenging to hit with in general...

 

And yes, Long guns take a bit longer to shoulder initially, but followup shots (depending on caliber) can be quicker due to the weight mitigating the recoil (as with .22) and all Pistol Caliber Carbines...

 

I've been messing with a spreadsheet where I input real ballistic data (Bullet weight), (Velocity), to calculate (Energy) and base alot of the weapon attributes on that data...

 

Taken into account :

- Weapon weight - factored into recoil delay

- Ammunition Energy - factored into Pushback & Knockdown

- Range - based on the ammo energy & a "sort of" ballistic coefficient

- HitChance - base value is effected by the recoil (calculated above)

 

It's all scaled to workable values that make sense in game... and the differences are small, but I just like to know that my Heavy steel framed 9mm lets me get shots off just a hair quicker than some of the Combat Tuperware in the same caliber.

 

Not sure if I like how the Critical damage system works.... It seems to really negate alot of the realism and math... So for the time being, I removed it to figure out exactly what "1.5 damage" means...

 

I think critical hits have more to do with Shot placement than an attribute that runs across the board...  So maybe it would be better linked to aiming time since that best represents shot placement ?   I don't know... Base Crit that increases with skill seems to take alot away from the actual gun, and ammo it uses...

 

I wonder.... is there a way to make an AimingTime indicator ?   much like a shift indicator on a vehicle...  Letting you know when your sights are lined up and optimal to press the trigger...  As opposed to snap shots, and hip shooting...   I mean maybe the character can just say something to let you know when he's got good sight picture...   I think that would be pretty cool...

 

 

 

 

 

Link to comment
Share on other sites

I've actually just added a change to the inspection window to help me debug the weapon stats

Spoiler

 

It turns out, the Movement Time in the above math never goes higher then 70. Which means if your total AimTime is 70 or higher you no longer suffer a penalty to movement.

 

I've been wanting to properly implement a system in for ages now that dynamically sets all the gun stats based on a number of factors....

for example recoil delay based on bullet caliber, weapon weight, barrel length, operation (blowback/gas-fed), attachments/components, etc etc...

I was trying to create weapons and ammo items dynamically, entirely done in the lua code other day. Items worked great but recipes didn't unfortunately need to investigate further...

 

For ages now some basic stats have been modified based on ammo loaded (mainly damage), but the system was pretty limited, and i've recently discovered a bug where some weapon mod changes aren't properly set after reloading/relogging in (effects weight, possibly others, seems to effect unmodded too)

 

So I've been beefing up the weapon stats modifiers, now on starting, on equipping, or reloading a new type of ammo into the chamber it calculates not only damage from the round data, but other values as well. And it also works through whatever components/upgrades it has attached. It then readjusts a number of different stats:

Weight, MinDamage, MaxDamage, DoorDamage, HitChance, AimingTime, RecoilDelay, ReloadTime and a number of others.

 

The new system for adjusting the weapon stats is just some initial groundwork for evolving it once I implement the firearm component concept.

 

This stuff should be out with the next v3.07, I was going to make it just a quick bugfix release initially but alot of new code features and changes seem to have gotten thrown in there, so I'm taking time testing and tweaking ^_^

 

Link to comment
Share on other sites

3 hours ago, Fenris_Wolf said:

I've actually just added a change to the inspection window to help me debug the weapon stats

  Reveal hidden contents

 

 

It turns out, the Movement Time in the above math never goes higher then 70. Which means if your total AimTime is 70 or higher you no longer suffer a penalty to movement.

 

I've been wanting to properly implement a system in for ages now that dynamically sets all the gun stats based on a number of factors....

for example recoil delay based on bullet caliber, weapon weight, barrel length, operation (blowback/gas-fed), attachments/components, etc etc...

I was trying to create weapons and ammo items dynamically, entirely done in the lua code other day. Items worked great but recipes didn't unfortunately need to investigate further...

 

For ages now some basic stats have been modified based on ammo loaded (mainly damage), but the system was pretty limited, and i've recently discovered a bug where some weapon mod changes aren't properly set after reloading/relogging in (effects weight, possibly others, seems to effect unmodded too)

 

So I've been beefing up the weapon stats modifiers, now on starting, on equipping, or reloading a new type of ammo into the chamber it calculates not only damage from the round data, but other values as well. And it also works through whatever components/upgrades it has attached. It then readjusts a number of different stats:

Weight, MinDamage, MaxDamage, DoorDamage, HitChance, AimingTime, RecoilDelay, ReloadTime and a number of others.

 

The new system for adjusting the weapon stats is just some initial groundwork for evolving it once I implement the firearm component concept.

 

This stuff should be out with the next v3.07, I was going to make it just a quick bugfix release initially but alot of new code features and changes seem to have gotten thrown in there, so I'm taking time testing and tweaking ^_^

 

 

In the earlier posts on this thread, I read how you wanted to work all the above in, and it sounds like a great idea... I wondered about whether the calculations could be done in the game itself, rather than figuring them out, and simply inserting them accordingly... Certain things just as you mentioned, come into question....

 

Barrel length is a good example...

The same ammo .223 coming out of an M4/AR length barrel generates ~1291 energy compared to ~750 from an SMG length barrel... Since the damage is assigned to the ammo, the weapon would need a DamageModifier for it work right...  And RangeModifier... umm... and everything modifier...  lol

 

I'd be happy with the first two though...  since things like knockdown, etc. are less significant...

 

Considering from the low ready.... not holstered...  I don't really feel a long gun requires all that much more time to aim in... Of course for longer ranges it does, but that's an inverse effect, where longer sight radius is quicker to aim at longer distances where short sight radius has more room for error, this taking longer.... but all else being equal, it shouldn't take 10 seconds to aim in on a zombie 10 feet away just because we're using a long gun...  In fact, it should be nearly as quick if the weapon is in hand...

 

For this reason, I think aimingtime is not very realistic...  Im messing with keeping it in, but narrowing the range between weapon types factoring in the weight of the weapon...  Since we don't actually select our targets in this combat system, it would be impossible I suppose to implement different aimingtime requirements for targets which are further away... That's unfortunate...  To create that effect, long guns having the ability to reach out further requiring aimingtime, is somewhat marred by them being made (imo) too ineffective at closer ranges...

 

I think its great that you are considering the operation as it affects recoil.... Slide guns w/recoil springs vs Revolvers = noticeable difference... I just added a constant value to the calc which was based off energy of the round factoring in weight to get this effect...

 

I dont mean to be a pest... but in going thru the stats and comparing them to some numbers I started collecting, I noticed also that (2) weapon weights were not scaled from pounds...

 

The M1A1 Thompson, and American180...  I believe the actual pounds were scaled by a factor of ~35

Initially I thought the Uzi and Macs too, but they really are just that heavy....

 

EDIT... Oops... M1A1 is correct @ 10.9lbs = 4.9 weight.... Just the American180 is 5.7 lbs, should be around 2.6 weight.

 

Great stuff..... never higher than 70.... good to know!!!

 

Edited by Arsenal26
Correction
Link to comment
Share on other sites

The weight is defiantly not pounds. Closer to kg, but factoring item bulk..there is no direct real translation to pz's weight system.

Yes barrel length is a very important factor effecting aim time, recoil, damage, range...not to mention the possibility firing from a semi auto with too short of a barrel for the round in question might not fully cycle the slide.

 

I wouldn't bother writing down alot of those stats, there going to be changing very soon lol.

The stuff thats in the scripts/*.txt files will mostly end up getting replaced by generic static numbers (such as 0 or 1), then adjusted with relative values as needed based on w/e conditions that effect the performance.  Since they are just going to be overwritten at run time.

Link to comment
Share on other sites

Releasing v3.07-beta for testing (not going to put this link in the initial post).  This one needs more testing and feedback before I'm comfortable having it as the next stable. The changes are pretty massive...especially on weapon stats and handling. Its also probably going to require tweaking before going stable.

Spoiler

* Added new hotkey for 'Reload Any Magazine' that finds a magazine in your inventory and
    reloads it using spare bullets (boxes/cans must be unpacked first).  The new key can be
    configured in your PZ options screen keybinding tab and defaults to 'G'.

* Added new hotkey for 'Select Fire Switch' that toggles between semi and full auto for
    select fire weapons. The new key can be configured in your PZ options screen keybinding
    tab and defaults to 'Z'.

* Added new hotkey for 'Firearm Inspection Window' that brings up the Inspection Window.
    The new key can be configured in your PZ options screen keybinding  tab and defaults to
    'U'.

* Numerous weapon stats are now set dynamically instead of from the scripts/*.txt files.
    Its a far from perfect system, but its a step toward a better one, behavior of some weapons
    might be out of whack until more tweaking is done.
   
    SwingTime is now set by weight, modified by semi or full ammo action.
    RecoilDelay is now set by round, modified by weight and components
    AimTime is now mostly set by weapon type, slightly modified by weight, and full-auto mode
    HitChance is now set by weapon type, modified by components and full-auto mode
    Damage is set by round alone (currently)
   

* Full-Auto fire behavior is drastically changed:
    Reduced HitChance by - (10 + Semi-Auto RecoilDelay): lighter weapons with larger calibers
        feel more recoil and are harder to aim full auto, items like foregrip and recoilpad
        reduce recoil in semi auto, increase accuracy in full auto.
    Reduced AimTime penalty while moving to HitChance (AimTime increased by 20)
    SwingTime set to 0.3 (to be adjusted later by gun rpm)
    Reduced RecoilDelay by 20 (minimum 0)
   
* Fixed issue where AimTime worked in reverse (higher being better). Apparently AimTime is a
    penalty reducer for HitChance while moving (higher aimtime, less penalty). Weapon
    components/mods have been adjusted  accordingly, Adjustments for guns is done automatically
    with the new dynamic stats system. (credit to  Arsenal26 for pointing this issue out)

* Added sound to the select fire mode and action type switching.

* Firearm Inspection Window now updates information/details while visible and a ORGM firearm is
    equipped.

* Added Stats panel to Inspection window, showing current Ammo, and fire mode (for select fires).
    Also shows accuracy, Rate of fire and recoil effect on ROF in fuzzy terms: High, Low, Average,
    Good, Bad, etc
   
* Added Debug panel to Inspection Window when ORGM is set to debug/dev mode.

* Component/Weapon mod appearance on firearms that spawn are now effected by
    ORGM.Settings.ComponentSpawnModifier

* Fixed bug in weapon update function that set condition to maximum.

* Fixed bug in survivors mod compatibility patch where survivors wouldn't reload if infinite
    ammo setting was enabled and they didn't actually have any bullets.

* fixed bug in settings validation where if ORGM.Settings.LogLevel was nil

   
--------------------------------------------
Major code changes for modders:

* Several table access methods are depreciated in favor of new functions. This was done to
    ensure better long term support and stability, and to simply code as they accept a string
    name itemType or a InventoryItem class object. Instead of requiring call like
    ORGM.FirearmTable[item:getType()]  you can now use ORGM.getFirearmData(item)
   
    ORGM.FirearmTable[itemType]       >>>     ORGM.getFirearmData(itemType [, moduleName])
    ORGM.MagazineTable[itemType]      >>>     ORGM.getMagazineData(itemType [, moduleName])
    ORGM.ComponentTable[itemType]     >>>     ORGM.getComponentData(itemType [, moduleName])
    ORGM.AmmoTable[itemType]          >>>     ORGM.getAmmoData(itemType [, moduleName])
    ORGM.AlternateAmmoTable[itemType] >>>     ORGM.getAmmoGroup(itemType [, moduelName])

* added new boolean functions with matching arguments to the new get*Data() functions.
    ORGM.isFirearm(), ORGM.isComponent(), ORGM.isMagazine() and ORGM.isAmmo()

* ORGM.AlternateAmmoTable has been renamed to clarify its purpose better. References to 'dummy rounds'
    in the code have been renamed AmmoGroup.
    ORGM.AlternateAmmoTable           >>>     ORGM.AmmoGroupTable
   
* ORGM.findAmmoInContainer(ammogroup, preferred, container) now supports a additional argument:
    mode (0 or nil = rounds, 1 = boxes, 2 = cans)

* added function ORGM.findAllAmmoInContainter(ammoGroup|ammoType, container)
    finds all ammo for the specified ammo group (or type), returns a table:
    { rounds=java.util.ArrayList, boxes=java.util.ArrayList, cans=java.util.ArrayList } each
    subtable containing all the matching InventoryItem objects in that container.
   
* addded function ORGM.getItemAmmoGroup(item) that returns a ammo group used by a firearm or magazine.
    If the firearm uses magazines, the ammo group is taken from its magazine instead.
    item can be a string name or a InventoryItem object.
   

 

https://downloads.tekagis.ca/ProjectZomboidMods/ORGM-3.07-beta.zip

 

Link to comment
Share on other sites

Oh hell to the yeah...  can't wait to check out the new features!

If only all software/games developed at this kind of pace... Only been playing PZ for a month or so, and I have like half a dozen versions of this mod alone....  Now that's progress!!

Link to comment
Share on other sites

29 minutes ago, Arsenal26 said:

Oh hell to the yeah...  can't wait to check out the new features!

If only all software/games developed at this kind of pace... Only been playing PZ for a month or so, and I have like half a dozen versions of this mod alone....  Now that's progress!!

Fortunately ORGM is a relatively small project compared to what I'm used to. This version is build (release) 22 of Rechambered since Nov 21, so its not going all that fast IMO. But I don't really like to release until I know its good, and try to release bug fixes quickly.

 

On the new features:

The dynamic stats settings are going to be a huge time saver later when I start adding additional firearms and calibers, and it was long overdue (plus it fixes some bugs). I still need to do alot more tweaking on the math, this is mostly a test atm to make sure the system is viable.

 

The hotkeys are great.. the mag reloading is kind of a immersion breaker, since you can reload magazines like that in the heat of battle...I may have to disable mag reloading while your aiming. But sooo much effort saved when your like me and load up a dozen STANAG Mags at once before going out on the town.  The select fire hotkey....can finally switch modes on the fly

The way the select fire works now, your better off using semi if the targets are farther away, and your not moving...when that Z sneaks up behind you and you need to move (suffering that fixed AimTime penalty), your usually better off hitting that hotkey for full auto, reducing that penalty and nailing that sneaking Z.

 

The updating stats tab on the Inspection window is pretty handy, mostly for seeing ammo count and your effectiveness with any particular weapon, depending on your skill and the firearm, you can get a rough idea how badly your accuracy is dropping when you move.

I contemplated showing actual numbers but I figured the more vague descriptions would be better for keeping server operators happy.

If your really curious about the stats can always fire up the mod in debug mode, and you can get the raw numbers for HitChance, movement penalty etc.

 

I'll probably add more cool stuff before 3.07 is fully out and stable, but giving it a through running testing for now.

 

Side note: Sad day...my beloved character Mary Hall passed away today on our server, caught in a corner in a house and ripped apart by 30 Z's..let down by my trusty M4 carbine. :(

11.5 months, 13500+ kills

Link to comment
Share on other sites

RIP Mary Hall... :(

 

I thought I had cleared out the Prison and was running all around looting... well, I missed a room JAM PACKED.... got a few shots of 00 off with the SPAS... but couldn't get out...

 

Quick observation... With Foregrip + Recoil pad... [Recoil Effect on ROF] still says NONE...

As you said, i'm sure there's a value, but perhaps the scale on the "dummy light" indicator [good/average/none] is too steep ?

 

>>> Real time Accuracy update is real slick.... Love it...

 

I get what you mean about simplified display for game play purposes.... But I am a numbers person...  which is why I have a ScanGauge in my vehicle to supplement the stock gauge cluster...  How exactly do I use the mod in Debug mode to see the actual numbers then ?

 

 

 

EDIT...  did I say the Real time accuracy update is slick? I meant ITS FREAKIN GREAT!!! I cant stop looking at it....

 

I think we have a game changer here with the updating accuracy meter... I mean, I've read alot of threads of people asking how to aim in PZ...  and while a decent enough explanation usually follows, a mod that puts this EXACT information on a little indicator would be perfect...  and allow people to understand the mechanics of shooting in moments of playing the game a getting a few levels of aiming under their belt...

 

Maybe something akin a 1-5 star rating representing 20% per star...  But real small so as not to clutter or distract...  like a HUD right over the rear sight of the character sprite... even a color dot [green/orange/red]

 

Edited by Arsenal26
Update
Link to comment
Share on other sites

 

39 minutes ago, Arsenal26 said:

Quick observation... With Foregrip + Recoil pad... [Recoil Effect on ROF] still says NONE...

As you said, i'm sure there's a value, but perhaps the scale on the "dummy light" indicator [good/average/none] is too steep ?

It plays off the RecoilDelay stat. When it reads "None", you've dropped the RecoilDelay to 3 or lower. If your in full auto, then its probably going to read None, as recoil doesn't effect how fast the action cycles (well technically yes it does, but not in game). If your using a heavier gun with a light caliber and the grip + pad, your going to end up dropping it pretty low in semi auto...really 'None' should read 'Negligible' as having a delay 3 or lower is pretty minor, but I got lazy and only wanted to do one translation entry lol

 

39 minutes ago, Arsenal26 said:

How exactly do I use the mod in Debug mode to see the actual numbers then ?

2 ways..you can edit the lua/shared/1LoadOrder/ORGMCore.lua (line 168 i think) and set

Debug = true

 

or you can throw in any lua file (in any mod) in the lua/shared folder that contains:

ORGM.Settings.Debug = true

 

I should mention though the debug window is still kinda rough, it was a quick design and doesn't show as much as I'd like it too yet...extra popup right click menus will appear in inventory...mostly old testing stuff which may or maynot still work, but probably best not to use them.

Spoiler

1.thumb.jpg.6fb16dd7b11a1717c4e1cbb16d601774.jpg

2.thumb.jpg.c58373a68273fe6f47204f4d9a1d9329.jpg

 

Edited by Fenris_Wolf
Link to comment
Share on other sites

Ah, I see... switched to handgun and do see the stat change... Can't wait to play around with it more... in my limited gaming, I have never seen a game that more properly represented firearm mechanics then what is happening here...

 

 

And just to reiterate what I've said above.... in case the general/casual player doesn't see it yet...

 

What you've done is essentially take a very basic representation of firearm mechanics where stats are simply plugged in once, and that's what you got... Kind of like Costco hotdog vendor... there's only so much on the menu...

 

And changed it so to dynamically change as you alter the weapon... Stats and all (like Subway, where you get to add whatever you want and actually make it taste better)...  The weight added by the augmentation: light, scope, sling, etc... actually affects the recoil, swingtime, etc...  in some small way...   Along with the stat boost it gives to begin with... where previously no such considerations were made or a system even in place to account for these realistic factors...

 

Basically what you've implemented with bullet type, is now throughout the whole mod...  ABSOLUTELY FANTASTIC!!!

 

I love the fact that unlike most games, where you just want to pile on the best/highest tier upgrade to end up with the highest level BFG to slaughter anything by laying on the fire button... This representation of firearms presents the player with a real decision with pros and cons.... As there *IS* no perfect weapon for every situation...  Installing that 8x optic will take from your short range game, etc... It goes way beyond the typical leveling path of "popular" games which end with the BFG, and everything else before it ends up in the corner or scrapped... 

 

This is how games with replay-ability are done... and I do enjoy messing with the script files to represent some of the components I have... For instance:

 

- Heavy weighted stock, to replace light wood furniture which is bulky, but soaks up more recoil and balances the rifle better.

 

- Reflex sights (larger MOA dot) imo are maybe not so much accuracy boosters as they are time boosters... because accuracy wise, I feel the narrower front sight post is better than the BIG DOT sight... but a tad harder to see, and thus pick up on when trying to acquire and fire quickly at a target...

 

- Red Dots with smaller MOA dot compared to Ironsights, I think are both quicker to pick up, as you dont have to line anything up, and allow you to place a shot in a tighter area (point of aim).... But since you have to look thru the body of the optic, its not as fast as Reflex type sights... 

 

So I make Reflex:

+5 Tohit

+10 Aimtime

 

and RDS

+10 Tohit

+5 Aimtime

 

Also, Aimtime does not affect time between shots (not that I can tell)

So for magnified optics where your eyes have to re-focus inside a smaller field of view I think both Aimtime AND Recoil time should be negatively affected.... Not that the gun itself recoils more.... but rather, instead of physically recovering between shots, you must optically recover if that makes sense...

 

In terms of Magnified optics bonuses...

 

I mentioned above, that I'm not sure I like how Critical stat is used in game.... I think it plays too large a part in damage calc, and too early on as well....  So much that the stats which define the weapon become irrelevant, because everything does 1400-11000 damage...  And I get that, Critical is beyond dead...  LOL but it just happens too often... so much that the bullet spec doesn't matter...

 

Consider this.... Shot placement is key to critical damage....

So whatever helps you put a round in a smaller area helps that happen....

 

How about a smaller automatic critical chance across the board, dependent more on Skill level, and supplemented by adding that modifier to certain weapon mods...

 

Specifically magnified optics, and to some small degree RDS perhaps...

I dont think a Reflex or FiberOptic fixed sights help with shot placement..... just speed.  well... maybe  a little bit..

 

Oh... so my point... Magnified optics allow you to make a headshot at distance due to the very fine crosshairs...  So imo, that translates into Critical stat bonus...

 

Perhaps, any shot taken while there is an Aimtime penalty being applied should be ZERO critical chance (regardless of Aimskill) ???   and the across the board Crit stat (per weapon) reduced to a much lower value than what it is...  I actually like leaving it at zero and letting the ammo do what it does to fully appreciate the ammotype system you've implemented.... What i'm getting at is.... Allowing Critical to happen like a constant lottery kind of takes away from the variety and specs of all this awesome stuff...

 

Ideally, the highest levels of Aimskill should be the only time Critical damage occurs like it does at say level 2-3.... Unless you are using something that augments your weapon to allow a lower skilled shooter to make a more critcal shot...  Where talkin John Wick vs. Beat cop here.... big difference...

 

Again.... just my $0.02 opinion

 

Edited by Arsenal26
Spelling
Link to comment
Share on other sites

6 hours ago, Arsenal26 said:

So I make Reflex:

+5 Tohit

+10 Aimtime

Reflex is pretty OP with its current stats, I do like this tweak

 

6 hours ago, Arsenal26 said:

Also, Aimtime does not affect time between shots (not that I can tell)

So for magnified optics where your eyes have to re-focus inside a smaller field of view I think both Aimtime AND Recoil time should be negatively affected.... Not that the gun itself recoils more.... but rather, instead of physically recovering between shots, you must optically recover if that makes sense...

Yes I know exactly what you mean, and no AimTime only effects the movement penalty.  SwingTime howerver does, and swingtime is considered how fast you can bring the weapon to bear and line up the shot, that should probably be increased with the scope instead of using recoil delay.

 

6 hours ago, Arsenal26 said:

I mentioned above, that I'm not sure I like how Critical stat is used in game...

I haven't tweaked/factored in the criticals for the new system yet...will though when I start to take a hard look at damage

 

6 hours ago, Arsenal26 said:

Perhaps, any shot taken while there is an Aimtime penalty being applied should be ZERO critical chance (regardless of Aimskill) ???

Can't really do it, thats all in the java...sure I could hack together a system thats constantly updating the firearm stats depending on enviornment, but I figured it was better for performance to only tweak the stats at key points..on login, on equip, and on loading a new type of bullet.

 

 

Link to comment
Share on other sites

I've been digging around in the java code this morning looking at damage..

1) the health of a target is represented as a float value (for zombies). During initial infection, its around 1. at Survival settings it seems to be between 1.5 to 1.8

2) damage is heavily effected by your fatigue and if your underweight, even with firearms

3) not counting fatigue penalties, the damage actually dealt is modified by a split (# of zombies hit? damage / (spilt /2) ) and eventually reduced by 0.7 for firearms (0.15 for melee)...then subtracted from the health float value.

4) a critical hit is x10 damage (lets assume this is a headshot)

 

This leads me to believe the current damage is far too high for firearms. Most of the current damage from rounds is set to 1 (min) to 1.8 - 2.5 (or so max)

Given the math...say our round is doing 2 damage and hits 1 Z, 

at min damage of 1:

1dmg / (1/2) * 0.7 = 1.4 damage

 

at max  damage of 2.5:

2.5dmg / (1/2) * 0.7 = 3.5 damage

 

This is entirely too much. Far more then the Z's health float, basically ensuring 1 shot kills most of the time unless your fatigued.

I've played around with nerfing the damage down to 20 to 40% of the current values, and its seems alot more realistic..I like the 25% but it seems like a pretty heavy handed nerf (I can just picture the wall of complaints coming in)..so 40% is probably going to be end result.

Spoiler

at 40% our new math becomes:

 

1*0.4/ (1/2) * 0.7 = 0.56  damage (meaning 3-4 non-critical shots of min damage before a tougher Z drops, or a single crit)

 

2.5*0.4/ (1/2) * 0.7 = 1.4 damage (only 1 or 2 shots of non-critical, single crit)

 

This seems alot better. BUT fatigue really cuts into damage, if you can see the moodle then its:

* 0.5  for moodle lvl 1

* 0.2 for lvl 2

* 0.1 for lvl 3

* 0.4 for lvl 4

 

So you can waste alot of rounds on a single Z if your fatigued and don't get that crit.

But if you do crit, it should be acceptable again (assuming moodle lvl 2):

1*0.4/ (1/2) * 0.7 * 0.2 = 0.112 (min damage non-crit, 1.12 crit depending on settings, maybe fatal)

2.5*0.4/ (1/2) * 0.7 * 0.2 = 0.28 (max damage non-crit. 2.8 crit will be fatal)

 

Panic and stress also have a effect...panic is 'damage - moodle level * 0.2', while stress is 'damage - moodle level * 0.1'

if your at full panic:

(1.0*0.4 / (1/2.) -0.8) * 0.7 = 0 (min damage..note you'll always do at least 0.07 damage, 0.7 on a crit)

 

(2.5*0.4 / (1/2.) -0.8) * 0.7 = 0.84 (max damage, 8.4 on a crit)

 

 

Now that constant * 0.7 multiplier (* 0.15 for melee), and some of that spoiler math formula is not counted when hitting a player. It seems its entirely different math:

damage * 15... with a additional *4 for head, neck or upper torso. Critical hit do not seem to apply at all.

 

So while I like the 40% nerf math for dealing with Z's, it seems to have a drastic effect on PVP, ensuring melee weapons will probably end up doing more damage...axe specifically will out damage a gun, which really it should anyways...but so will a baseball bat out damage the lower caliber hand guns..not counting the bleed damage and bullet getting lodged.

Without the crit bonus effecting, 1 shot kills are impossible. Tested with survivors mod a scoped SR-25 and 7.62 HP rounds, it still took quite a few rounds to drop them. Getting myself shot, a point blank hit to the chest with a shotgun still hurt like hell...dropped my health to 1/3rd or so..getting hit in the hand (not sure what they caliber were using) the damage was very minor, except for bullet and bleed.

 

Even with the effect on PVP, it may still be worth it...its probably going be bleeding out that kills you (or your target anyways). Alot of people seem to complain about the over effectiveness of guns in pvp as is.. though that is the reality of guns..that's why soldier carry guns not swords.

 

 

Link to comment
Share on other sites

I figured it was something to do with Fatigue... as I wasn't panic'd or anything, and my shots were dealing very low damage according to TommySticks ZED Health mod...  It displays Zed health anywhere between 160-170, maybe bit higher... but that's about average...

 

What's strange though is a few days ago, I wanted to see what Max damage actually was... So I set MAX/MIN health to the same value, and made all weapons CRITChance zero... For some reason, I still got a spread in damage dealt...

 

(1.5 damage) - 94, 185, 65, 69, 106, 111, 105, 50, 70, 120, 107, 63, 80, 184, 118, 120, 185, 210, 90, 100, 137, 118

3/22 shots would likely be 1 hitters

 

(2.0 damage) - 168, 189, 252, 80, 70, 74, 120, 111, 252, 88, 107, 169, 108, 163, 147, 78, 86, 210, 211, 236, 211, 154, 115, 157, 252,

11/25 shots would likely be 1 hitters

 

I changed all damage in each weapon type script file, as well as the ammo.lua file...  so i'm not sure why there would even be a spread in the damage... unless I missed something, or there's a random value (dice roll) in there somewhere...

 

Thank you for those numbers again!  and I'll try that experiment again just to be sure....

 

 

 

 

Link to comment
Share on other sites

26 minutes ago, Arsenal26 said:

TommySticks ZED Health mod...  It displays Zed health anywhere between 160-170, maybe bit higher...

Haven't actually looked at the mod, i'm assuming its taking that float value and multiplying it by 100 (same with damage)

 

The variations in numbers your seeing is probably due to target distance, which I didn't factor into the above math just to keep it simple.

Link to comment
Share on other sites

Oh just remembered...  something odd...

 

When you fire quickly & repeatedly dropping a zombie.... sometimes subsequent rounds continue to hit the already dead zombie on the ground at CRIT damage levels... this seems automatic (since its dead maybe) so on screen, using the ZED HEALTH mod, you see something like :

 

123

142 (drops)

1137 (hits body)

1254 (hits body)

1231 (hits body)

 

Kind of annoying wasting rounds like that...  but a short pause seems to allow it to move on to the next available target... This seems to happen even if there are (not dead) targets available beyond the corpse and within range...  Just an observation, which might lead someone to think they are missing repeatedly after dropping a zombie, But noticeable as "hits" when damage is displayed... Just the wrong (already dead) target...

 

And yes, it seems max (non-Crit) damage is more common at very close ranges...

 

Link to comment
Share on other sites

Its still doing its death animation at that point, even without the damage display mod you can clearly identify them as hits...or at least I can. It still makes the sound. I often end up hitting them in that state when double tapping...I just like to think of it as a extra shot just for good measure make sure they stay down :lol:

The damage math completely changes when  a target is on the ground...double crit chance, and it relies less on the actual stats of the gun for getting its numbers.

For point blank shots it looks like a 1.5 multiplier is applied.

Also seems i missed something in the earlier math..a few lines of code that assign a additional * 0.4 multiplier to player targets, and a * 1.5 to other characters.

Link to comment
Share on other sites

7 minutes ago, Fenris_Wolf said:

For point blank shots it looks like a 1.5 multiplier is applied.

Also seems i missed something in the earlier math..a few lines of code that assign a additional * 0.4 multiplier to player targets, and a * 1.5 to other characters.

 

Is that 1.5 actually the "ToHitModifier" found in the .txt script for each weapon ?

Link to comment
Share on other sites

New 3.07-Beta is out. Major changes from the previous beta include:

 

* weight reduction from slings no longer effects other stats like recoil or swingtime.

* set lower limit on recoildelay to 1 to help lower end machines failing to call reloadable:fireShot() when firing in full auto

* moved all component/weapon attachment modifiers to the lua data files instead of the scripts .txt files

* reduced all damage by 50%, to emphasize headshots (critical hits) are required to kill a zombie. Can be tweaked with the ORGM.Settings.DamageMultiplier setting. (current default 0.5)

* lots of other misc minor tweaks regarding the new dynamic stats system. I cant remember them all <_<

 

https://downloads.tekagis.ca/ProjectZomboidMods/ORGM-3.07-beta.zip

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...