I've seen it, plus xilmi forwarded it to me on discord.
I'm too lazy to write it in English.)
This part is quite on point, the problem is that I killed the screen on my main laptop and had to get a spare. It doesn't have an M2 connector and for the first time in almost 20 years I was left without linux and with only Windows, which I need for work. I had to take out the SATA disk with linux and insert the Win10 one.
Because I got a job recently, I don't have time to do hobbies at all. I tried to set up a toolchain on Win, took 5 hours and failed) I hate that shit, on linux it was just one command to install dependencies to get OXC to build and make everything work
This is just an FYI that right now there are no time or tool resources to do the finalization. More to the point...
1. about auto firing and that the rest flies to the floor - I would personally call it if not a bug, then at least an undesirable behavior. It works that way because you have to fiddle around for a different implementation. In the original it was simple in this respect - there is a target voxel and each shot flies into it with a random deviation, no matter if it killed someone or not. In my case, for each shot is determined whether there is a unit on the target voxel or not, and selected accordingly either the ground or the center of the visible part of the unit. In the original game this was also done, but once early on, at the time the target point was determined, after which it did not change. If I have time, I will try to solve this issue.
As a lyrical digression - the task of implementing alternative accuracy mechanics turned out to be much larger, and the goals themselves changed a lot in the process. The story can be summarized as follows:
1) Annoying that in X-Com (normal, without mods!) soldiers from a few meters miss at an angle of 40 degrees to the line of fire and accidentally shot in the back of his own mate’s head. I'll try to look at the source code, if toolchain will work without a headache - I can try to make the cone of fire smaller
2) Fucking hell, I looked at the algorithm, it's not adjustable at all! What probabilities are there - God only knows, that is, they hardcoded some scatter settings, matching them to the accuracy numbers, and it does not work at all distances. And the accuracy cone is tied to these probabilities. We have to write our own from scratch. I'll try to do it this way - we consider the area of the target figure, then we take the accuracy and based on it we calculate the area of the scatter spot, so that the area of the target figure makes up a fraction equal to the accuracy. Then the chance of hitting will remain, but the spread will be around the target, i.e. realistic!
3) A lot of problems! How do I draw a scatter spot in 3D, i.e. how do I limit it in code? In addition, in the game, accuracy often does not change in a huge range of distances, which means that when aiming at a distant target - the shot will be completely predictable in the vicinity, because the cone will be narrowed as the distance grows. In addition - the very concept of "accuracy" in the game - complete nonsense! It is just a figure taken from the ceiling, and the chances of hitting are very conditionally related to it. The projection area of a conditional muton is almost 2 times larger than a sectoid - should this be taken into account? What about large units? I'll make the hit depend on accuracy just like a dice roll, and the trajectory will be built to look nice.
4) Difficult, very difficult....
5) Bugs, lots of bugs in the original code. PRs with bugfixes are not accepted in the main rep, although the bug is obvious and bugfixes too.
6) What, my code doesn't work properly in the 40k/Rosigma mod? What the fuck is this all about, first time I've heard of it. I'll have to put.... FUCKING FUCK!!! Do I have to debug all the mods too?!?!?
7) X-Piratez... X-Com Files... bug reports are flying, fixing the code.
Bugs and strange solutions in mods, when the developer to create a model of the tank on the battlefield uses for the hull walls and elements of terrain, and inside shoves a unit 2x2 in the form of a turret. It turns out that not only my code glitches on this spawn of the devil - the original accuracy code erroneously applies a hidden penalty of 50% on accuracy. Another bug in the original code fixed along with mine.
9) Players complain about near misses. Well, yes, the original accuracy is not the same as written, we all know that, and I did exactly according to the figure. I'll just try to increase the accuracy for the next 10 tiles up to 100% up close.... oh shit, how many different and in some places strange shit invented by mod developers! 4 times this piece of code redesigned.
10) Players complain about balance. In mods.
get back to it.)
1.a responded
1.b - the answer is "I don't know." I've never encountered such a weapon, so I humbly await bugreports if something went wrong with it. Expected in theory behavior was - "should work", now - not sure anymore, I'm afraid it will shoot to the floor.
Further not by points, but by groups united by a common meaning. On the topic of missions becoming longer (especially in the jungle). One of the ideas behind my mod was to add working cover mechanics to the game. The way the old accuracy worked - had specific consequences. You either missed by half a map or hit a squirrel in the eye. That is, after applying the accuracy algorithm, the distribution of possible final points is such that either they are in a narrow central beam, or almost evenly smeared over the entire area of the cone. Therefore, the cover in the game was of little or no use. The main hits were of the "squirrel in the eye" category, when the final displacement from the target point is 1 voxel in a random direction.
So, I made it so that there were covers and that they worked. The idea was to add more tactics, when you really try to cover your soldiers, and the shots do not fly into the milk, and hit the covers and surrounding tiles, destroying them and forcing you to change positions. One of the obvious outcomes of this change is that there are far fewer hits in the game. I mean, before it was just accuracy. Now it's multiplied by a number between 0 and 1. Obviously, mathematically, the sum of these numbers will be smaller in the second case. I wanted when you pass the turn to the opponent - so that there wasn't that feeling of doom when shots are flying at you. Instead, now there's hope, because your man is crouched behind the wheel of the Skyranger and the shots hit the chassis strut and lie next to him. That is, your decisions really determine the odds with which the enemy will hit. That said, you have the advantage that opponents don't know how to kneel. In short, I wanted to achieve a more "tactical" feeling from the game, so that there were obstacles and shots hit less often because of them - I achieved this, it's not a bug but a feature))) A hopelessly low chance of hitting is not a problem, it's necessary to be able to see the enemy and plan something tactical, not to pounce in an attempt to kill.
Jungle mission? Burn them with flamethrowers, level them with grenade launchers. Don't shoot spiders and rats with a gun, it's not a good idea in real life either.
that's vanilla accuracy.
https://www.ufopaedia.org/images/1/16/Accuracy_areas_above.gif0% 25% 50% 75%
I forgot to add to that. If we don't mean specifically the jungle and the stuffiness that the missions on them turn into, I don't consider the fact that the missions have become longer to be a minus. The game is not work, the main thing is that it brings pleasure, in this case, it does not matter in the end how long the missions last. The difference is that your playthrough will pass for a year and not a couple of months))))
If with my changes to play worse and uninteresting - then vice versa, even if the missions would pass for the same time, it does not matter. Personally, I can't play without my mod anymore, it's uninteresting and annoying. But at the same time I know people who play without Extender Accuracy, so if they have an auto-shot 65%, it will be 65% for the entire map. I.e. distance is crossed off the list of parameters that affect tactics. From my point of view - the game is less interesting, less tactical and diverse, but if other people like it that way - no questions asked. It's just that my mod to the game won't work for them.
There is a simple solution - add a setting that adjusts how much cover affects hit chance. What you call "weight". Make three options for the setting - no effect, partial effect, full effect. The current implementation is "fully". For the option "partially" pick a percentage by which to reduce the invisible part. For example, accuracy 100%, visibility 50%.
after applying the customization will work:
1) "no effect" - chance of hitting 100%
2) "partially affects" - the invisible part of the unit is 50%, we add half of it (conditionally!) to the visible part, the resulting accuracy is 75%.
3) "affects completely" - 50% chance of hitting, as currently done
instead of "conditional half," pick a number. Maybe 60% would look better there, maybe 40%....
With the shotgun, I have to look into it, I haven't really looked into it. It's most likely that its chance of hitting is calculated for the sum of pellets, and in the log is displayed for a separate one. But that's a guess. In any case, a bug is extremely possible, one need to go in and look into it.
Lower cap on hitting. I understand that you're looking from the perspective of your habit of pointing somewhere, seeing 0% and shooting and hitting regularly. Or when you see accuracy numbers like 160% or 230% near the cursor you miss. So there you go))))) Viewed from the outside, a 0% chance of hitting means "impossible to hit" to the average person. If you have zero displayed and you hit regularly, then the chance is not zero. It can be measured by taking a large enough number of shots and collecting statistics. And I'm pretty sure that in the end, where you have 0% displayed, it will statistically turn out to be between 5 and 10%.
In my version - percentages do reflect what they mean in real life. 0% means you will never hit. 100% means you will never miss. An achievement for hitting at 0% doesn't make sense to me, sorry. But 1% would make sense, because the lower cap isn't actually 5%. If a target is less than 5% exposed (2.5% for large targets) - the lower cap is equal to its exposure. So if you find a target that's 1% open - you'll see that exact number near the scope. But at the same time, if you find a mega-cool sniper with 120 accuracy, give him a mega-accurate sniper rifle with 250% accuracy (total 300% accuracy) - you will get 300 * 1% = 3% final chance to hit. If you crouch down - you get 300*1.2 (can't remember exactly) =360*1% = 3.6 rounded up = 4% plus "flat" 2% for a shot from the knee, plus "flat" 3% for aimed. That works out to 9% - the chance is low, but far from zero.
The example was a bit extreme, what I wanted to show is this - for difficult shots good snipers and good weapons will shine, and the preparation for the shot is crucial
"20% range-to cover factor: the more is range, the more is cover bonus."
There's something to this, but there are a lot of problems with it right off the bat. First, it breaks the mechanics of cover at short ranges. Secondly.... If I'm moving forward with a tank, followed by two fighters who are completely hidden behind the tank - I wouldn't want the tank to become more and more transparent to shots as the enemy approaches).
That being said, a variant with a barn, or when your own unit shoots from behind cover that would not have prevented it from fighting, do make some sense.
But here we come to a very important characteristic of the game - the CONVENTION of the game. This characteristic has already been in place since about 94, and trying to make the game mechanics more detailed is possible, but makes no sense at all. Units are cylinders, not real models. The dimensions of these cylinders are often completely inadequate to the sprites. I haven't checked the height of the rat, but I suspect it's no good there))) Further, the accuracy has nothing to do with the size of the target - in the original rat or tank - everything is the same, the accuracy on them is the same. If the target stands on a grass field, in 3D this grass is a piece of 5 voxel "blades of grass" per square meter, each thick as my hand. And when a flying bullet hits such a blade of grass - it destroys a square meter of grass, and it turns out that the blade of grass protected the target.
And the last point, a bit controversial, but quite important for me. The thing is that I have no way to make a "magic pill" - a code variant that would work perfectly for both the main game and all its huge mods. The balance of the mods is completely on the developers' dime, and sometimes completely insane compared to the original game. In XCF, all agents are dumb, slanted, and weak after being hired because of the game's mechanics of training them on base. Such that you are met by 60 enemies on a mission - here I just sit with my mouth open and don't understand why).
That's why I don't have the task to correct the balance of mods by means of hardcoded accuracy algorithms. To some extent I can do it, but beyond that it makes no sense. If something is broken, it's because the mod author made it that way. If the Kalashnikov at 35% accuracy, agents at 60 have it, and the distance of auto-shot 7 tiles - we get 21% of the bullet at 7 meters, further worse. And it may have even worked somehow in the original game - because the shown figure has no relation to the real one, as a result hits happened more often. The problem is that the players HAVE gotten used to this difference! "It's showing 0%, but I'll try auto, sometimes it hits!"
In general, I don't consider it my problem, or rather it has a very low priority. In a good way, you could do a statistical experiment and find out the real odds for hitting different types of shots at different distances. Then adjust the numbers in my mod. But I don't have the resources for that now.
Well, and about grenades. Recently discussed either on the forum or in discord, and with at least one other person in the Telegram. Grenades generally obliterate small arms, and that's a big problem with the game as a whole. It all rests on the degree of convention again. Grenades can be thrown far away, but a Kalashnikov can't hit with a 7 meter auto-fire. I'm not the one who came up with this balance, and I'm not the one to decide it. There are solutions in general - reduce the throwing range and blast radius, remove the "instant" explosion, let the enemy escape... there are options.
Grenade throwing accuracy can be tweaked, of course.