Archery redesign?

Not really. We aren’t coding a thing here: it’s Cosmitz’s problem. Kinda like the mutagen expansion–I filed the proposal and once that came through favorably, slammed out the PR.

I’ve been keeping an eye on the thread and was meaning to reply when i have something more concrete. Unfortunately i got stuck at one point in the coding process after i realised how certain things are handled (criticals corresponding to dispersion) and an alternative path will require a serious rewrite. Either way by now i see that the github moved along blazingly. Looked around to see if i can perform a ‘merge’ somehow to make sure i’m working on an up to date variant since if it gets too old, i assume implementing it will be a huge pain, but i couldn’t figure it out.
On a matter of punctual Q&A regarding the code underbelly of the game and its development i wish there’d be more go between. Also active on another indie game, StarSector, and i might be coming off a high point there as the dev involvement in matters of modding and helping modders do their thing with new API implementations and such is quite amazing.

In any case, if i’m writing this might as well respond to some things:

Cat09: Regarding the crafting system. That’s a redesign which i’m super certain no one will entertain anytime soon.

Deadman: I appreciate the reply and great to hear from a fellow enthusiast. The issue here is gameplay over lore. You have to adapt the game to the general knowledge and perception of the people playing it. They will have to understand and interact with the system and this is not exactly that big of a part of the game that you can require the player to adapt to it. Also, the game should be playable and fun. What i have been doing for my balance checks was working with the rifles and pistols stats, irrelevant of actual measurements taken in the game versus real life. The only thing i did catch on was the strength requirements.

As for what i listed as bow types, it’s a design mechanic. The core bows are the things you craft the experience on and the ‘flavor’ bows are those which you balance around the already existent stats of the core bows and which shape up as a different gameplay mechanic or feel. The number or types is not final whatsoever, and for reference, the bow i’m using to test my stuff now is the average recurve bow with average arrows.

Martial arts style for bows can be interesting though would need a ton of explaining akin to introducing pistol stances in the game but shouldn’t be hard to implement since the framework is there, but don’t know how modular it is. In either case this is really a far-away-kingdom kind of thing at this moment.

Don’t get me wrong, i’d love to have a lot of things in the game archery-related, but the game is Cataclysm: Dark Days Ahead, not Archery Simulator: Cataclysm, and archery is a minor-minor part of the game. I just want to make archery more fun and interesting versus what it is now.

Cam:

Arrow manufacturing needs a real do-over, i’ve mentioned it here before, but just haven’t gotten around to that yet. Once i have the mechanics working exactly as i want them to, the sky is the limit.

There’s a “rebase” command that theoretically accomplishes what you’re asking, but I’ve never felt comfortable with it. Going into your branch and pulling upstream master accomplishes the same thing. (If you have a conflict, it means that you have to go into each file, sort out the bumps, save your desired version, “git add” the file, and then “git commit” once all conflicts are resolved.)

I thought I would chime in with a few ideas here:

Ammo: What if upon creating 10 arrows, there is a chance of making 3 types of arrows for simplicity’s sake. Poor, Average, and Great. At earlier levels, you might make 9 poor arrows and 1 Average arrow each bunch. As the skill in fabrication increases, the likelihood of make great arrows increases. It adds a little bit of realism, balancing, and helps nerf ammo creation without imposing too much of a change. Imagine sitting down craft stack after stack of arrow, trying get a few that are actually good. This helps to solve the unlimited ammo issue without taking away the attractiveness of sustainable ammo making. It makes good arrows seem more valuable.

Bows: There seems to be a mechanic in the game that allows for variable engine sizes right? What if a similar principle was applied to the creation of bows. Wouldn’t all hand made bows be difficult to predict exactly how strong they are? If you make 5 longbows by hand, I’m sure there would be a certain amount of variance in the strength. There could be skill scaling here as well. I’m not sure how feasible this is, but hand made bows are unique. Perhaps premade bows found in sporting goods stores could be set to various strengths. In order to simplify, there wouldn’t need to be a huge naming rework. There could be a property flag on each bow type that could +1 -1 to STR requirement, with matching dmg/range etc stats. (eg Strong Longbow/Longbow/Weak Longbow) to that effect.

Any thoughts?

Well I’ve always wanted to have an “x” number of items to make stuff with.

What I mean is that instead of having exactly 10 sticks to make arrows with, I could use 1 or 5 or 6 sticks to make said arrows.

it would be nice to be able to boil it down to a smallest possible batch size, or up to as much as you can make. especially with ammo.

  • as for crafting components, there is already an inventory value for “components” [ ] so it may not be quite as far out of the realm of possibility as it seems. (materials and component pass through seem like it would be very important for bows, so anyone working on this may want to keep the possibility of a future update in mind)
  • the draw weight system is a little odd to me, in the framework of the game… since the game measures strength in STR units, not lbs.
    actual weight units just aren’t used very much in the game in relation to character strength. how do I know what draw weight my character can support? I might just get used to it, but it doesn’t merge easily.

[quote=“Kevin Granade, post:53, topic:5611”]bows should make a noticeable amount of noise, they’re definitely not silent unless you take special measures to make them so.
for literal target practice we should probably add targets, they could catch the arrows for a much lower break rate.[/quote]

While basic bows and cheaper bows do in fact make a little bit of noise, Hunters go to great lengths to make their bows as silent as possible.

modern compound bows can be fired by amateurs without making a sound. that should be reflected in the type of bow in the game, if it isn’t already.

Cosmitz: How are you holding up on the coding end?

I’m not. Got really stuck in the way critical damage was applied, which as far as i got and understood was linked primarily with the to-hit-chance/dispersion. That would mean bows would be impossible to balance in a fun form and that the only way to make them so would be an almost entire rewrite of the critical damage system to be a separate roll from accuracy. But i’m no coder, didn’t really touch C before bumping into this. I can figure some stuff out by example to just make some things work, and i did, but what this rebalance would require would be something i can’t really do due to time considerations. And again, that’s without even getting into the crafting system which would need a departure from the sure-fire-crafting we have now. And that’s really just a chunk of an extra feature which i don’t really even know where to start at.

;_;

You gave it your best Cosmitz, don’t worry. Maybe post what you worked on so someone else here could work on it?

[quote=“FunsizeNinja123, post:70, topic:5611”];_;

You gave it your best Cosmitz, don’t worry. Maybe post what you worked on so someone else here could work on it?[/quote]

Good point.

https://github.com/Cosmitz/Cataclysm-DDA/tree/archery-redesign

This was up-to-dated with what i was working on if i remember correctly. I commented my changes, and what were temporary WIP items i marked with “//Cosmo” so a ctrl-f will find it easily. Worked mostly in what i listed around here and Ranged.

LE: This is my complete WIP folder in case the github is out of sync: https://dl.dropboxusercontent.com/u/4037018/Cataclysm-DDA.7z

My only beef is damage. A few minutes ago, little old ~6 strength me in real life shot a semi-large bow and a massive arrow at least 15 feet, and it stuck into moderately hard soil. This arrow also happened to lack a head.

Meanwhile, my 10 strength Cata survivor Les Stroud was shooting an identical bow with full-on arrows at some zeds, but it took ~6, 7 shots to kill one. I don’t know about you, but I could hit it in a mildly damaging way at the range Les was at.

Indeed. Sadly, Cata for one thing takes dispersion, which also means crit chance afaik (the better your shot, the more you home in on the ‘eyes’ which is the top-crit), from ‘perfect-you-nuked-his-brain’ critical all the way to ‘totally missed by a football stadium’. So basically i found no real way to make a ‘you miss, you miss, you miss, you miss, you TOTALLY RUIN HIM, you miss, you miss’ for bows. This system works well enough for bullets and melee but for archery/crossbows in particular, not so much and they’re relegated to being used as a ‘normal’ weapon. Fixing it all would imply just rewriting a large chunk of how the game is actually played, not to mention ruining all semblance of balance.

I may work on other, smaller, projects in the game, but this is a bit out of my league.

I’ve agreed with damn near everything else you’ve posted, so I’d really like to understand where you’re coming from here, why should crit chance and accuracy be decoupled for archery?
Now for reference, I’d like a little bit of a more sophisticated system than we have now, which includes:

  1. learnable weak points.
  2. auto-targeting weak points based on a self-estimation of your shooting ability. e.g. you’d default to “center of mass” until you start being certain of your ability to get at least a headshot, and only then start targeting the head. This would mostly be a narrative thing, meaning as effective accuracy increases you’d go from occasional hit → frequent hit → frequent center-of-mass crit → frequent specific weak point hits → frequent specific weak point crits.
  3. The range of hit and miss descriptions changing based on the target and where you’re aiming (aiming wouldn’t be manual though, this is to keep the combat messages more interesting/realistic, not to add a micromanagement layer).

I appreciate what you’ve laid out here, I can tell you if I personally end up with the time and inclination to do an archery overhaul, it’ll follow the outline here.

[quote=“Tawarochir, post:73, topic:5611”]My only beef is damage. A few minutes ago, little old ~6 strength me in real life shot a semi-large bow and a massive arrow at least 15 feet, and it stuck into moderately hard soil. This arrow also happened to lack a head.

Meanwhile, my 10 strength Cata survivor Les Stroud was shooting an identical bow with full-on arrows at some zeds, but it took ~6, 7 shots to kill one. I don’t know about you, but I could hit it in a mildly damaging way at the range Les was at.[/quote]
I’m not sure what makes you think a zombie would go down with less than 6 shots from a bow (I’m guessing from an unskilled attacker, you didn’t say). A lot of the things that give arrows a large amount of stopping power and lethality simply don’t apply to a zombie, namely large wound voids and profuse bleeding. Also I’m not sure what you mean by full-on arrows, you mean with a modern broadhead or similar?

You have a point there, Kevin. I don’t thing weapons designed to kill in the manner of a broadhead arrow would have the same effect on a zombie, but will an arrow kill a human or living creature more efficiently?

also, Have you considered adding encumbrance to the zombie, considering shafts sticking out of their chest and limbs would get in the way?

I’ve agreed with damn near everything else you’ve posted, so I’d really like to understand where you’re coming from here, why should crit chance and accuracy be decoupled for archery?
Now for reference, I’d like a little bit of a more sophisticated system than we have now, which includes:

  1. learnable weak points.
  2. auto-targeting weak points based on a self-estimation of your shooting ability. e.g. you’d default to “center of mass” until you start being certain of your ability to get at least a headshot, and only then start targeting the head. This would mostly be a narrative thing, meaning as effective accuracy increases you’d go from occasional hit → frequent hit → frequent center-of-mass crit → frequent specific weak point hits → frequent specific weak point crits.
  3. The range of hit and miss descriptions changing based on the target and where you’re aiming (aiming wouldn’t be manual though, this is to keep the combat messages more interesting/realistic, not to add a micromanagement layer).

I appreciate what you’ve laid out here, I can tell you if I personally end up with the time and inclination to do an archery overhaul, it’ll follow the outline here.[/quote]

Thanks for the vote of confidence. Let me explain my position better, and in retrospect, be prepared for a huge wall of text.

I don’t mean for archery to be decoupled. I mean that in system as is now and as i understood it, working from the primary Damage attributes in correlation to how hitting works make it so that with any attack, at least a ranged one didn’t dive in thrown/melee, you have a chance to execute it perfectly (supercrit) which scales linearly up to the chance of the lower ceiling, which indeed decreases due to skills, and would mean a miss. The middle ‘average’ here, which would be a small island in the range, would be just purely applying the rated damage, with wide swaths to the left and right of said island.

And seeing how critical damage is actually quite… critical, as in, not a blank slate +25% damage or something, and if i’m not mistaken even THREE times the damage, the issue of balance comes up.

My issue with the system is how the damage done is highly inconsistent, even for highly skilled characters and linked heavily with ‘accuracy’ which it itself is just hardcapped by a fixed tile-range and the fact that a lot of checks are RNG and not a pure skillcheck to ‘ceiling’ from it. This is not a distribution of hitting average and damage that i am happy with considering it was well in weapons range at 4 tiles with a good gun and level 10 across the board:

Apart for three shots that might as well just have purely missed and the ones that actually missed, the damage was ranged from 17, to up to almost FOUR times more, 58 (Later edit, a headshot in the same circumstance gave 81!!! damage). This is really not something that i find right from both a gameplay perspective and from the experience the user behind the screen is getting in relation to the role-play element. His super buffed 10/10 arms/firearms doing less damage to a bear from three shots than it would have taken if the player tossed some string at him.

Edit: Yes, indeed, i was fighting against recoil, but considering the outcome, the fact that such a well implemented system such as recoil is in place is mostly washed out considering what chances you’re playing with. I love that it’s in the game and how it’s handled, but the actual shooting mechanics crushes it.

I really do like your suggestion for hitting weakspots, and i will evolve on the concept later on, but please take a cup of coffee or tea and read on.

For one thing, the whole concept of accuracy has to be re-thought and separated from damage to start. Crits should still stay in, but in a different form as you mentioned. Secondly, at this moment if it’s within range, you shoot, no gameplay consideration given and a crucial fun choice taken out of your hands. Range is a huge thing in real life and it gets given nothing more than a passing consideration here. I don’t think anyone here for example tries to hold off shots that are at max range. It’s considered a ‘given’ that you shoot when you are able.

Ideally you could shoot at pistol at 75 meters, and if you’re really good, you might even hit. Then again, when you can barely unsafety the weapon, you would not want to waste precious ammo blindly shooting at ranges that are fully within the gun’s optimal but your skill prohibits you from hitting reliably. You’d want to wait until you are confident in your skills to hit at a certain range. The difference from bows to guns would be that guns would have more reliability and distance initially, so they’d be easier to use, while bows would almost be a hindrance rather than useful to begin with.

Ok, enough babbling, let’s talk hard design:

The base common thread here is reducing RNG to levels where you can see a true progression of your character skill, where you can feel the increase in skill or equipment, but still keep a decent deal of chance that makes the game fun and interesting when fate conspires against you or helps you out.

That being said,

1. Accuracy:

All weapons have a hard number for accuracy, the dispersion we use now. That’d be the ‘optimal range’ that you can expect to get out of them, for balance sakes, this can be lower than current range, just so we don’t have to rebalance the entire game (so a USP.45 would have 11 instead of 16 at 75%). This can be represented ingame while firing with a green ‘overlay’ line. After that range, (11 in our case) you are shooting in ‘bullet-drop’ range which is double the base gun’s range (22 in the example) and represented with a red overlay line (it can change hues slowly from green to red to illustrate it). You can still hit in both ranges with skill mattering in both, but while in normal range you just have to overcome the maximum dispersion correlating with the enemy’s size and movement, the bullet-drop range is a geometrically increasing progression up to triple the dispersion rating (so even though there is a huge ceiling, do allow people the extremely off chance of taking an almost impossible shot). To note, monster sizes should add or remove dispersion rating. If we consider a regular zombie as having 100% of the size adjustment variable we can use a squirrel as 60% and a zombie hulk 140% for example, as i see monsters do have a ‘size’ already defined but i don’t remember that being used in the calculations (i may be wrong in this regard). It’d also be nice that enemy movement counts into this as well. Just a simple ‘did it move’ instead of anything more insane as to ‘how much did it move’, just something to reward people shooting stationary targets outside their sight range or stuff stuck in holes.

If you have a really well skilled character you could end up shooting in bullet drop ranges reliably for center mass of a stationary hulk, but on the other hand, if you do not ‘roll’ that minimum check, you will never shoot that moving squirrel at bullet-drop range with a pistol.

In short, minimise RNG’s effects. It will still have it’s tail in the final accuracy check that you list versus the needed to hit(and on the damage done, see Damage section), more of a 25% up/down, so 50%, that will decide whether you hit or not, but not to the limits that we have now, that also affect damage so horribly. So you can be firmly convinced that your 8 Pistols 8 Firearms character with a perfectly good pistol will be able to shoot a bear in three tiles 100% of the time since even if your check goes -25% on the RNG, it’s still more than enough to pass the bear’s, and if you allow me a D&D reference, the bear’s ‘armor class’ or it’s inherent ability to dodge shots due to moving and its size.

The point is to have a clear distinction between damage and hits. Instead of those 1-2 damage grazes, flavor text for misses is enough, maybe even correlating to how much you missed. ‘You shoot wide and miss’ , ‘Your shot misses the target’ , ‘Your shot went a bit stray grazing him but doing no damage.’.

Any any case, all calculations so far were done for ‘just hitting the target’. Where comes after.

You can have a listing after you push F to fire and select the target, like:

F. Shoot for center mass

  1. Shoot for the legs
  2. Shoot for the arms
  3. Shoot for the head

So, the once the to hit calculations come through as positive, and you hit the target, we decide whether you actually hit what you wanted. All the percentages here based on the player’s skill, with what i’d say to be 10 in the weapon specialization will mean you always hit the bodypart you aim for IF you actually manage to complete the ‘to hit’ calculation. 10 is relative, if there is a desire for more randomisation added with a higher ceiling we can use 15 or even the max 20.

For center mass, the chance should be at 80% that you hit it. The other 20% (which decreases down to 0% as you increase up to 10 skill, so at 10, you always hit) means you hit an ‘other’, say you hit the head instead of the torso for more damage, or the arm for less damage.

For legs/arms, we can use 60%, with the rest of the 40% means you hit something else, and of course, this decreases down to 0 at 10 skill. Hitting legs/arms does half damage but imposes penalties, see below.

For the head, something that should do something akin to double damage, i’d say it’s fair the base chance to actually hit it would be around 20%.

As far as i know, in Catalcysm so far there are no real ‘bodyparts’ attached to the monsters, and it would not be needed to model that for this system. Just fulfilling the required ‘hit’ to the bodypart will add a debuff. Hitting the legs will add a streight half-penalty to movement or something of the like and arms to their chance of hitting you with an attack.

That will make the game a lot more tactical. Do you want to slow that zombie before killing it or just outright kill it? What if there are two? Maybe you want headshot that extremely close zombie which you have a high chance of and then leg-shot that zombie dog to not get it within chomping range? I call this ‘fun’.

Of course, per enemy these names can be changed, and the debuffs modified and also some more unobvious parts ‘learned’ as part of a system, so a chicken walker would have:

F. Center mass

  1. Legs (movement penalty)
  2. Optical Sensor (dispersion penalty) (‘butchering’ required beforehand, or some Skill to a certain level)
  3. CPU Cluster (headshot damage) (same as above)
  4. Main Weapon (disable shooting)

Each modifyable via JSON via existing Flags, just to make it all blend together well with what we’re doing now. “Nohead” well, no head. “immobile” no legs, and so on and so forth. Alternatively a whole new section ‘Bodyparts’ that’s editable. We don’t have enough monsters in now as to say it’d be ‘too much’ of a workload.

Anyhows, after all those calculations, which actually were only two, the to-hit and the bodypart, we now have succesfully placed a shot on an enemy. Huzzah. Damage is applied now.

2. Damage

Compared to hitting, damaging is hugely simple. For normal guns, it’d be a straight 25% chance up/down from the listed damage, replacing the current ‘critical’ hits.

So using the .45 USP’s 32 damage with ACP (sorry, it’s my favorite handgun).
-25% You graze the 's . 24 damage.
+25% You place a great hit on the 's . 40 damage.

-25% on a succesful hit on the head. You graze the 's head. 48 damage.
+25% on a succesful hit on the head. You place a great hit on the 's head. 80 damage.

For bows/crossbows, the range to the target can decrease damage down to 60% of the base and then 25%+/- applied off that. There will be a lot of tweaking of optimal range for these, but the rulesets outlined here can be succesfully used for throwing items.

3. Conclusion

What will all of this actually do for the game?

  • Players will get a better feel of their character’s progression as skills and gear contribute more to an increase in reliable damage and hitting chance instead of allowing a critical hit from a thrown nailboard to do more damage than a sniper rifle.
  • Players will have a new gameplay element to really account for and which they will learn to play off of, increasing the depth and fun of the system. It will allow true sniping as well as allowing minimal guarantees as to the prowess of your character, both things that allow more self satisfaction since ‘you’ did that, not a lucky RNG roll.
  • Game will be more realistic.
  • Most things in the game, including crafting and movement are not RNG-based. It’s a play off statics mostly and having such a large variable hanging in the middle just doesn’t work for it. Call it a uniformisation of design.

In closing i just want to say that i’d love to help with this, but aside from writing pointless pseudocode i don’t have the C++ experience to really help in such a huge project. But bows as i envision them cannot really work within the current framework.

I would fucking love all of what you said, but think of the coding man!