CleverRaven / Cataclysm-DDA

Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world.
http://cataclysmdda.org
Other
10.27k stars 4.12k forks source link

Vehicle mass is apparently ignored #19854

Closed 1skandar closed 7 years ago

1skandar commented 7 years ago

This really needs looking into with the new lower speed on vehicles. As it stands speed is the only thing that counts to the point that the easiest way to get my 4 or 5 ton 40 mph vehicle through the brush is to go out and smash bushes to clear the way. And I'm struggling to squish even regular zombies, which is just wrong. Where as a light electric vehicle going 70 mph or so pulps the hell out of brutes...and kinda wrecks itself in the process. Which means that you can't really build a zombie killing death machine anymore. And considering the effort, time, and materials involved is a distinct disappointment.

Don't get me wrong, I'm all for the vehicle rebalance, just it's exposing some flaws in the system.

BorkBorkGoesTheCode commented 7 years ago

So ramming damage doesn't take mass into account?

1skandar commented 7 years ago

Not a bit. I tend to push zombies around for 3 or 4 tiles with armored vehicle before they squish and doing so to anything else is mostly futile unless I'm perfectly lined up with an ordinal direction and hit them with the dead center of my vehicle, else they roll off to one side or the other. My scout car, with barely any armor but twice the max speed, reliably 1 hit kills zombies and will fling anything else around, I just have to stop afterward and put my front end back together if I hit more than a few.

And if I have to go off road with my armored transport I have to jump out and smash bushes I can't drive around which is patently ridiculous for a multi ton armored vehicle going 40 mph. Anything I hit brings me to a dead stop.

sniperm13 commented 7 years ago

Well, I actually thought maybe the speed nerf MIGHT have some sense. I mean, a tank can't go THAT fast right? Boy, that was wrong. An Abrams 60 ton tank can go 45 mph on roads. I'm struggling on keeping my loot truck (no longer a mobile fortress, sigh) at 30 mph and its not even 30 tons. :/ i really hope the double engine fix is coming soon...

Coolthulhu commented 7 years ago

The most recent vehicle rework has brought a lot more problems than fixes. The biggest bugs are still open.

I won't be able to help with the game much in the nearest future (~3 months) due to lack of time. @mugling looks busy too.

If it is still possible, it may be worth reverting the rework for the time being. Or patching it with hacks.

sniperm13 commented 7 years ago

Just sayin, dont get me wrong mate. I like the changes if only to see the possibilities it can get to. The old vehicle workings was kinda iffy with realism so im all for the rework. But I'm sure the balancing and fixes take time as they usually do and RL comes first.

1skandar commented 7 years ago

Yeah, right now some very significant things are very broken. Vehicles are now slower than they should be, multiple engines are broken, and collisions are also screwed. All of these render vehicles close to useless. The rework either needs to be reverted or these issues need to be fixed.

mugling commented 7 years ago

Vehicles are now slower than they should be

How fast should the bicycle and motorbike be (in tiles per turn)? Can you reasonably control them at those speeds? The range of usable speeds (those at which a player can control a vehicle) is very narrow.

multiple engines are broken

You can't have multiple concurrent engines. It's a limitation but not broken.

and collisions are also screwed

Always been a problem but the previous solution of ramming down shrubs at mach 3 is of course no-longer available.

I won't be able to help with the game much in the nearest future (~3 months) due to lack of time. @mugling looks busy too.

Pretty much in the same situation.

Vehicle code has always been a scary mess. The main issues are with algorithm bugs as opposed to balance. The two most significant are collisions with terrain and off-roading improving fuel consumption.

1skandar commented 7 years ago

I would say having a well armored van struggle to do 2 tiles a turn is broken somewhere along the line. I'm perfectly fine with slower vehicles, but slower as in 4 to 8 tiles a turn not 2 to 4. It is patently ridiculous that even a light sport car struggles to go 4 to 5 times faster than a character can walk.

And since when can we not have multiple engines? I know you can't have more than 1 type of engine running at a time, but currently you can't even have 2 of the same type of engine running which is broken, at least versus the old system.

And regardless of when it was broken, the collision system is decidedly broken.

Listen, I fully agree the old way was broken, but right now, in its current shape, the new way is even more broken.

BorkBorkGoesTheCode commented 7 years ago

To clarify: multiple identical engines, such as the multiple traction engines mounted on the Main Battle Tank from Tank mod, cannot be used simultaneously?

EDIT: RE: Bicycles. Why not have bicycles move at double player running speed?

mugling commented 7 years ago

but slower as in 4 to 8 tiles

What is fast then? You can't control a vehicle at 8+ tiles/turn

1skandar commented 7 years ago

The most useful way of doing this is tying this to player walking speed, as that looks most correct. Calling that 10 mph would make that the most sense and would look fairly correct from a player perspective. Thus vehicles should really be going about 4 tiles a turn, or 40 mph on the slow end and up to 100 mph, or 10 tiles a turn on the upper end with only the lightest, unloaded vehicles capable of reaching that speed. In most cases, even though they could reach that speed players won't, as there simply won't be enough open space to achieve it. And when they can it's perfectly fine if it is hard to control, honestly.

As it stands a lot of vehicles are falling in the 2 to 3 tiles a turn range, or not much more than a running player which is objectively wrong. And it just makes how very, very broken the collision mechanics are very apparent.

mugling commented 7 years ago

You might want to try --dump-stats VEHICLE which will show you the speeds (tiles/turn) for all the in-game vehicles. Last time I checked the output had most vehicles in the range 3-8 tiles/turn which is entirely reasonable.

1skandar commented 7 years ago

I will. I just lost the ability to check directly as I'm holiday and was relying on a remote connection to my desktop which died for an unknown reason. That said, I seem to rember most of the heavier vehicles ranging in the 3 to 4 range which I'd consider a bit low. I'll double check when I have access to my desktop again in a few days. I'm not advocating for a huge bump, at any rate, and most of my issue is with Diesels which really feel like they are under performing overall. Plus, with vehicle mass not meaning a damn thing in collisions atm, a bit more speed to clear bushes would be nice, at least until mass starts meaning something in collisions. Having to get out of my armored vehicle and smash bushes flat to get through is both ridiculous and immersion breaking.

And what is the status of multiple engines of the same type? Moreover than not it's not a huge issue, but hooking up electric motors in pairs is useful. And for the tank mod it's kinda necessary with dual traction engines. This was working before and, while not a priority, would be nice to have again.

(As a complete secondary note, I'd love to be able to hook an engine up to a vehicle and NOT to the drive train. Having a motorcycle engine or similar hooked up to a generator to keep electric engines moving without relying on solar panels would be a nice edition. The concept exists today, it's a "true" hybrid and is very fuel efficient. In game it would allow scout vehicles to function at night without relying on banks of batteries. Perhaps a "vehicle generator rig". Hmm, now that's a thought. Could you make a vehicle part that isnt an engine that consumed fuel and output power? If so I may tackle that on my own via a mod)

sniperm13 commented 7 years ago

On the concept of speed, using the Abrams as an example. I think a 30-ton armored vehicle should at least make it to 45-50 mph comfortably which is half the weight of the tank and if it has a decent, fully repaired engine. As it stands right now, you can pretty much forget armor... plop even a few heavy frames and you're stuck with a 20 mph vehicle. And you can forget the loot. Much less trampling bushes. XD

BorkBorkGoesTheCode commented 7 years ago

The horsepower and construction details of the examples should be noted.

BorkBorkGoesTheCode commented 7 years ago

If we are relying on Wiki, it says that the Abrams has a https://en.wikipedia.org/wiki/Honeywell_AGT1500 gas turbine engine.

sniperm13 commented 7 years ago

You nailed it there BorkBorkGoesTheCode. Knew somthin seemed off. The engine on the tank is 1500 hp which yeah, is extreme but stay with me. A 2L gas engine in a car in CDDA is 83hp vs a sedan 1.8L is around 140 hp. Could it be that these hp values need adjusting? Or perhaps, have more engine options that will provide more power, I mean the tank was put into service in 1980, figure they have these engines in the tanks in the game at least. :D oooh I'd hunt for that engine!

Aivean commented 7 years ago

@mugling

What is fast then? You can't control a vehicle at 8+ tiles/turn

This is not true.

Here I recorded a short video where I'm driving 100-200+ mph (10-20 tiles/turn) in old build: driving

Sure, you probably don't want to drive 10+tiles/turn in towns, but it helps with cruising the wilderness. Currently I'm playing with distances between cities set to 6 and it's VERY boring to cross these distances at 3 tiles/turn.

Also, I think this issue #19709 contributes to worse driving experience on higher speeds in recent builds. Before (as you can see from my video) you were able to see movement "animation" in the intermediate stages, right now it's instant "teleportation". Maybe fixing this should be prioritized over nerfing top speed.

JacobKessler commented 7 years ago

It does seem like there is a lack of appropriately large engines. A semi truck or APC, for example, will have an 8 to 12 liter engine, not a 4 liter one.

On the other hand, while the Abrams is probably excessive the Stryker ifv is 16 tons at 60mph on 350 horsepower, which should be in range of the large electric motor (which I think is 400 horsepower?), so it might be that the dynamics are to harsh in addition to wanting larger engines.

Is it possible that the speed rescale meant that getting a vehicle to 4 tiles per turn now calculates air and rolling resistance as of it's going twice as fast as it used to?

kevingranade commented 7 years ago

Between this:

The most recent vehicle rework has brought a lot more problems than fixes. The biggest bugs are still open. I won't be able to help with the game much in the nearest future (~3 months) due to lack of time. @mugling looks busy too.

and this

Pretty much in the same situation.

I'm going to look into reverting the lot.

Additionally, this:

multiple engines are broken

You can't have multiple concurrent engines. It's a limitation but not broken.

Is completely wrong, the vehicle system has supported multiple engines for as long as I can remember, simply disabling that feature is a breakage and the PR that did it should have never been merged on that basis alone.

1skandar commented 7 years ago

Ouch. Can't say I disagree, though. As it sits, the rework has done has much harm as good. It has fixed some things that have long needed work, but broken enough other things in the process to not make it a real step forward.

mugling commented 7 years ago

19629 has been open for approaching a month so presuming that's representative the rate of forward progress is likely to be slow. By the same token I'm not sure going backward would be any quicker and will probably just swap one set of bugs for another. Targeted fixes are likely more achievable and immediately useful - the terrain collision issue most importantly.

Multiple engine support is the exception - it's hard and would probably take longer. Wanting to support something and having an reasonable implementation of it aren't the same thing. The previous implementation is defacto impossible to work on. A diff on the vehicle code from last year shows a lot of progress but whichever route we take there's a lot of distance to cover.

JacobKessler commented 7 years ago

It seems like while what mugling changed broke many things, it was generally forward progress systems-wise if not functionality-wise, and that the failure was somewhere in the promise to quickly follow up to fix the issues (speed, multiple engines, fuel consumption) rather than the changes themselves. Given that, it seems like less effort to patch those and leave the vehicle system better if hacky than to revert (probably hard at this point) and require the work to be done again.

mugling commented 7 years ago

There was a big drive to close bugs last month (generally, not just vehicle code). Speed and fuel consumption aren't bugs (the off-roading issue excluded). Acceleration and collisions have issues with the algorithm and we should focus our efforts there. As above there are outstanding PR's open that continue the work that haven't been merged.

Regularitee commented 7 years ago

Related, (though probably should have a better title): #19571

mugling commented 7 years ago

Yes, the above linked issue is the most significant outstanding bug.

keyspace commented 7 years ago

Title is incorrect, vehicle mass is taken into account. This is, though:

just it's exposing some flaws in the system

keyspace commented 7 years ago

A hotfix is linked above.

keyspace commented 7 years ago

As demonstrated in #19974 (closed un-merged), this has been alleviated by VPO revert.

Are there cases where this is still present?