-
Notifications
You must be signed in to change notification settings - Fork 4.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feedback on cramped vehicle space "fix". #74263
Comments
Also, further testing. My 6'2" character wearing only hot pants, a tank top and a pair of socks, and holding no other inventory, is still "squeezed uncomfortably into this cramped space" - that space being a reclining leather (driver's) seat, containing nothing else in the vehicle tile. This causes -2 STR and a -2 DEX. AFAIK this is not a compact car. (how is that flag determined anyway?) This is not fun nor do I believe it is realistic. |
1L of gear on the floor contributes as much as carrying 1L of gear. Your problem here is wearing a pack, not having a pillow in the seat. (Note: If you want them to sleep in vehicles you should probably use a vehicle bed, it's more comfortable. It also has a lot more room for the blanket, pillow, and person.)
I see this as a positive. Dismounting vehicles is NOT quick. Even purpose-built APCs which are nothing but an empty space and a ramp can take time to get in or out.
Here's what an APC looks like inside: https://upload.wikimedia.org/wikipedia/commons/9/99/APC_Interior.jpg You can freely and easily move around in an aisle while wearing clothes, on average. You have to be wearing at least 5L of stored items before it starts to become a problem - that's a filled sling pack - and even then it's just a debuff. Not pain, not inability to move, just awkward to get around in there.
A 188cm( 6'2" ) character will be ~86.78L of volume before any gear is accounted for. They will find a tiny vehicle aisle cramped (no surprise - they've got 6 inches of height on the average person), but not impossible. The average car seat will still hold them. And yeah it'll be tight and cramped. They're much larger than the average person, and it's a car. It's not a tile of open air. Of course it's going to cramped? You're seeing the cramped message and looking at the debuff and thinking "This is bad", but it's in fact completely irrelevant to you. Those stat minuses do not apply unless you are actively fighting while sitting in the driver's seat, at which point yeah you should be penalized.
Absolutely not relevant in any way. |
We clearly have different definitions of 'cramped'. I consider cramped to be sitting in a middle economy class airline seat between two large people and the person in front of me leaning the seat back. As a tall person, I have been inside plenty of vehicles where I do not feel cramped, including the aisles of RVs. (Though yes, there are compact cars that exist that are not comfortable) I don't consider my STR or DEX reduced as a result of being cramped. Though again this is a matter of different semantic definitions, which we again clearly don't agree on what they represent. Yes, I see those debuffs as "this is bad" most gamers will. It's a matter of perception, and I disagree that it should be irrelevant because the perception of players matters. I feel like the game would be better off implementing messages and/or accuracy penalties at the time when fighting from the drivers seat actually happens rather than a constant debuff because you're in a car. I have assumed that the movement penalty 'it is slow moving off this seat and/or through this door' already sufficiently served as the representation of mounting/dismounting a vehicle not being quick. There is no need to add to it. Perhaps I am being too wordy, if so ignore the minutia this is my main point: This mechanic is the opposite of fun, it makes me enjoy the game less. (The mechanic being where I cannot physically enter walkable vehicle tiles without playing multiple rounds of inventory management first. The cramped debuff argument stuff is just a side issue.) |
If you've ever seen weightlifting you might notice that sitting in a car seat is NOT a stance anyone uses. There is a reason for this. Similarly, do you believe sitting down in a car seat is as dexterous as standing at the ready? Then why is sitting down not a universally accepted stance for swordfighting or other martial arts?
The cramped space effect already has |
You are not being harmed by having -2 STR and DEX while driving, and it goes away as soon as you get out of the car. As for fully blocked entry: my initial numbers for preventing entry into a vehicle tile, and the corresponding seat capacities, were not especially generous because I wasn't accounting for gear. It might be a good idea to raise the threshold for blocking entry entirely, while leaving it in place for comfort. I also had it so that some mutations made the system somewhat more permissive, namely BENDY1. I didn't see if that was still in, but it might be a good idea to re-add it if not so that people can build toward a solution to backpack woes. Spitballing, if anyone wants more ideas: The game could also use a high roof, which would make the space count as unroofed for volume purposes. This could be implemented on things like semi trailers, where people are meant to be able to stand in them. It could be made to require a standard or even a heavy-duty frame to prevent people just slapping them on everything and cramming their ursine self into an 10kg aluminum speed cube. |
As I said before we are clearly not defining STR and DEX in the same way. IMO 'stance' is irrelevant, and I do believe that I have the same physical dexterity (and strength) when sitting down in a car seat and standing at the ready. I believe this because I interpret 'dexterity' as inherent to my physical body, which did not change as a result of sitting down. My muscles did not shrink, my reflexes did not diminish, and I did not suddenly become injured or starving or experience any physical impairments during the short moment between standing and sitting down in a car. If you asked if I had the same level of maneuverability or freedom of movement between standing in the open and sitting in a car I'd have said 'No, of course not.'
I don't know, I'm not familiar with the code. It may in fact be unreasonable to try as a result of how it is currently coded. That doesn't mean I still don't think it would be better from a UI perspective and also a design perspective to evoke a less negative reaction from players who will rightly wonder 'why the hell did my character lose stats by walking into a car?'.
That would be useful. Though, my character doesn't even use a backpack, but does have an ankle sheath, ankle wallet pouch, distributed rigging, survivor belt, two armband pouches, and a survivor harness (the front torso hang one that can hold a rifle) as their standard strapped carry gear. They also wield a duffel bag for quick pickup/drop. They should theoretically be able to just toss that into the far passenger seat or aisle nearly just as easily, but can't if they can't even enter the drivers seat while holding it. Caveat: the reason they dont use a backpack is because I like to use a spear strap for that spot, with a spear in it. Admittedly, a spear (or even larger polearms) make the least sense for carrying into a car. However, my character was still unable to enter the tile despite both rifle and spear stowed elsewhere, and no armor (power armor was also stored elsewhere) under all the loaded strapped gear I mentioned above. I think I had to drop three grenades and/or magazines elsewhere to get under whatever that volume limit was.
A high roof would be a very useful addition. |
The game does all kinds of stuff like this already, so you appear to be mistaken about how they're defined. |
Really? Now I'm curious. Which buffs and debuffs (particularly ones that affect STR and DEX) are location-dependent and do not involve some kind of body-affecting modification or ailment such as drugs/injury/etc? How many are there compared to how many are body-modification/ailment-related? I've probably never encountered the location-dependent ones or don't remember them, aside from the cramped space thing. |
Being covered in sap, for instance, is a massive dex debuff. Many debuffs (ie grabbed) have moved to limb score penalties, which are sort of the same but often much worse than numerical stat penalties as they are a proportional hit to your total effectiveness rather than the minor flat debuff that's used now, and stack up way harder. They're also worse because you have to open submenus to find out how bad they are, rather than having them on your sidebar, and it's not at all clear what most of them do. So that's an option, but you're probably not going to like it. But don't swordfight while driving a car and it will literally never matter. |
Is it normal that when all doors are closed. the seat you are in is considered less cramped? |
Other parts being open/closed should have no effect on the space available.
The source tile is irrelevant, only the destination tile. The destination can't fit you in that case. |
Seems reasonable to me that you wouldn't be able to load a bow while crammed into a 2017 Toyota Celica as an eight foot tall bull mutant. And that's not "harsh". That's a case that's not really impactful nor is it going to come up very often. Just get out of the car. And the .50 is irrelevant. You can't operate the crossbow because you're pulling the string back with your hands. A gun doesn't use muscle that way, which is why they don't have strength requirements. |
Idk about dex or str but pain level is def bullshit. I just tested it with a 168cm (what the layman would call a short king, so he would have generally less problems than the hypotethical 6"4 man mentioned in this thread) character and spent 30 mins naked (literally no clothes) in a car. It gives you mild pain. That's the same level of getting beaten up by a few zombies. Another 30 mins and it's distressing pain. That's the same amount of pain with getting stabbed a generous amount of times by a flesh raptor. I know we all spent some bothersome hours in traffic but after reaching home I think everyone would agree that at worst you get an annoying leg/back pain. Definitely not as debilitating as what's happening in the game currently. That's neither realistic nor (may Allah forgive me for uttering this word) fun. And brother you can definitely fire a crossbow from your car. It would be slower, but in the end, you could do it. My solution would be removing the whole thing but if you really wanna keep it, here you go: instead of lowering your stats instantly or causing pain, you get a "discomforted" debuff that starts out with something like -1 dex, -1 str, penalties to your manipulation, balance etc. numbers. The more you spend time in a car, the worse it gets. Even after you get out it lingers (although for a short time like 15-20 minutes, less or more depending how much you spent your time in that damn thing). Only after like 2-3 hours it starts causing pain like it does currently. |
There is also the problem with vehicle roofs being undefined. A sedan's and a bus' roofs are considered same. The 168cm short king would not have as much problem in a rv than as a 185cm person has. Yet both are considered same currently. Also some people said that even while laying in a bed in a vehicle you get the debuff. I don't think that's supossed to happen. |
The pain was removed, roofs were discussed as a possible future addition, and mattresses hold a more stuff than seats, which means they are only cramped if there's a ton of crap on them. It sounds like you are not caught up on the update and going from inaccurate hearsay. |
I agree, but not for lack of strength. Furthermore, in my case above I'm just trying to fire the crossbow, not draw and reload it -same as a rifle (EDIT: I realize now that that isn't clear from the log - I reloaded the crossbow after firing it and before entering the vehicle). The point with the rifle is that despite being considerably more bulky, it is able to be used more effectively (i.e; at all). If the character was exactly the same size but a little stronger, they would be able to operate the crossbow. The cutoff should be more "this thing is to big to operate with the free space you have available" and less "you're just not strong enough to overcome the geometric constraints of the space you're working in". FWIW, the crossbow strength requirement should be checked at the reload, not the fire, but I digress... |
Crossbows checking strength at fire instead of load is an unrelated issue. |
Perhaps this could be further amplified w/ the viscous & pseudolimb mutations? |
You seem to be right. Mine was a 05-31 build. I updated just now and I could move freely in the aisles and lay on bed as a 175cm man. No pain either. Still, having to get naked just to feel comfortable on a bucket seat is absolutely silly. |
I think the problem now is that volume held by a seat has not changed yet (still 82.5L?) If our seats are (and in real cars they are!) adjustable, it shall be possible to negotiate some space for an average human wearing a sable coat or something like that. Also, there is a difference between "uncomfortable to seat" and "slow and awkward to get into". The later is handled by 400 movement cost just fine. |
Checking the source code, the calculation is done in https://github.com/CleverRaven/Cataclysm-DDA/blob/master/src/character.cpp#L3103 Printing out the values from this formula gives the following sizes (not taking into account any obesity modifications that may be added later, I didn't dig deeper):
This means that if your character is taller than 185 or so, they won't be able to get into a normal car seat (current capacity 85.0 L in-game), providing they have no equipment on them either. Perhaps a more "realistic" formula can be found, for instance here: https://calculator.academy/body-volume-calculator/ This seems to indicate that height does not make much of a difference for how much space you take up, but rather weight, see for instance the table below, calculated from the Brozek formula:
In this instance, a person weighing 50 kg (emaciated or very short) takes up roughly 50 L, which I think makes sense since the density of the human body is 985 kg / m3. In this case an average(?) weight human being takes up roughly 72 L, and a large human of 150 kg takes up about the double. And the unfortunate short but stout survivor at 95 cm tall and 150 kg weight will probably DO have trouble getting into a bucket seat of a car, let alone reach the pedals. |
That's 6'8" and way way WAY outside the average. That is quite reasonable. |
I have personal acquaintances that are over 200 cm / 6'8" tall, and they have no problems getting into and driving cars, even with their clothes on. Granted, they may not be driving a Toyota Corolla, or a Humvee. There's also this:
And as previously mentioned, it may be uncomfortable, but even if you're 6'8" you should still be able to ENTER the car, and possibly even drive it (especially if it's an automatic). If one is tremendously obese, it might be a different matter though. |
Theoretically. Can we realize this at the expense of flags?
In general, the parameters that we will take into account. Ideally, we need an array of volume, weight and length.
The idea is for each vehicle tile to have a flag or set of flags that will serve as a limiter and indicator of a character's comfort with being on that tile. And then, a 2m tall character can sit comfortably in a jeep or bus. But will experience the effect of cramping in ordinary cars. And in a coupe (?) will not be able to sit at all. That said, if he builds his own car. (Complete construction, starting from the frame). Then he won't have any problems. P.S. What is the difference between a cargo carrier and a walled aisle? In reality, no difference. In the game, +400 liters. |
Or use fields. By adding the ability to link a field to a vehicle.
By binding to a part of the vehicle, I mean the following. The field is valid until the part is removed. The weight field is tied to the frames. And based on the material and construction of the frame. So a folding wooden frame will support the minimum weight. And a heavy frame, maximum weight. The length field is tied to the roof. The volume field, to the seats and beds. I'm not sure about the cargo parts. Maybe multiple bindings? To the seat and the presence of sides/doors next to it? An additional plus. Fields can be used for more than just cars. You can use them for buildings. A cave with a low ceiling. Or for portal storm and space distortion. |
I like the idea of huge creatures not being able to fit into a car, but using the This leads to vehicle seats having a size of 85 liters. To illustrate, here is a suitcase with a volume of 80 liters: As someone who is almost 2 meters tall, I have entered the backseat of a compact car with a suitcase of this size, but currently, in the game, I would never fit in there. The current check also only examines parts with the Most humans (unless mutated) are not liquid; using volume to determine if someone can fit and be comfortable somewhere is strange. It's the dimensions of a space that determine those things, and we currently do not have that information for vehicle parts implemented. Using flags to determine what size a boardable tile can support, independent from the storage space, would be a proably a better way to go about this. |
Indeed 82.5L seems a realistic car seat capacity in addition to a person in the seat. Like an average (clothed) human sitting there with a large backpack on their lap. |
I've produced some data for comparison between different models to add to the discussion. Results can be found here: https://github.com/feinorgh/body_volume_calculation |
Relying on volumes down to the ml allows us to make changes to volume calculations, and keep the tests withing reasaonable boundaries. references CleverRaven#74263
* Provide body volume calculation based on body density * Simplify calculations * Adjust test cases to the volume calculation * Adjust volumes for baseline tests too * Make checks for volume pass within reasaonable ranges Relying on volumes down to the ml allows us to make changes to volume calculations, and keep the tests withing reasaonable boundaries. references #74263 * Make checks for volume less dependent on exact volumes Make tests more flexible * Make tests exact, set character to exact calorie count This strategy makes the test repeatable * Remove unused header units.h
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not bump or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered. |
Is your feature request related to a problem? Please describe.
#74162
I feel this fix has made the problem worse.
Previously characters were cramped which was very annoying but at least could be worked around. Now my character (and I suspect some NPCs which is the reason they won't path find properly) cannot enter all vehicle squares, such as the driver's seat (reclining leather seat) because it had a pillow on it.
In order to enter the seat I had to strip off a lot of gear and remove the pillow. (and I'm not even referring to the power armor, that's more understandable but I could not even carry it unworn through the tiles. Plain 'aisle' vehicle tiles still don't allow passage, floor trunk did.)
If I or NPCs need to get into the vehicle quickly, they can't.
The vehicle is supposedly a roomy infantry carrier. If such a vehicle is not considered 'roomy' we need the ability to craft roominess into our vehicles before a change like this is made.)
I don't want to add yet more inventory micromanagement just to be able to sit down and drive. I definitely do not want to add more inventory micromanagement to NPC which are too stupid to know when to drop and pick up their own stuff temporarily, which again I suspect but can't confirm, may be the pathfinding issue they're hitting. (I had pillows in each seat, and planned to have blankets there too, precisely so that NPCs would find it a more desirable place to sleep than wandering off to find a bed in an adjacent house instead of staying put inside the secure, sealed-up vehicle)
This feature is not adding fun to the game it is adding frustration. I understand the realism arguments, but the game as is does not support this kind of restriction in a way that makes sense with enough workarounds at this time.
Solution you would like.
What are some things that are needed?
NPCs that can drive. That way I can tell them where to go and they can sit in the vehicle and guard it while I tromp out through the back of the vehicle to mow down zombies in my power armor, without needing to micromanage my crap just to be able to sit in the driver's seat.
Some kind of "standing harness" vehicle seat, so my future squad of power armor-clad NPCs (or my own character) can be belted in even if they cannot sit down or sleep there, so I don't need to micromanage their crap so that they can find this new seat and not stand around outside doing nothing. (Caveat, as I write this... Does this already exist? Can I install a 5-point harness without a seat being present? Does it count as a seat for NPC pathfinding purposes if I do? I never tried.)
At present, I was able to walk through a vehicle hatch while wearing power armor. Will that remain true in the future given the direction this is going? Do we need to add a new type of door, a motorized ramp door so my future power armor-clad NPCs can walk out and start fighting (or fleeing) right away, or will they have to gear down, exit, and gear up with all the trade window and 'use this item' micromanagement that would involve?
Weapon racks as a component inside a vehicle tile?
Some command to automatically put things away in mass and re-retrieve them in mass 'stow away gear', 'retrieve stowed gear' to reduce the inventory micromanagement?
A way for NPC's to know how to do the too with items also flagged as temporarily owned by them so they know what to fetch?
At the minimum, a character needs to be able to enter vehicle tiles carrying most of everything. Make it uncomfortable? I can begrudgingly deal with that. But if the tile I want to stow the stuff away in is on the other side of the tile I want to enter, I can't put the crap away until I get adjacent to the tile. (then I can make myself comfortable again by putting it away properly before driving off)
While I have this up for discussion, would it it not be better to have a "manage vehicle inventory" entry on the right-click context menu when examining a vehicle tile, and on the '^' vehicle controls menu? Through this theoretical new screen, you'd have the ability to see the entire inventory contents of the vehicle's cargo capable tiles, and add, swap, and remove things to each one directly. (even if they are more than one tile away from you)
Describe alternatives you have considered.
No response
Additional context
No response
The text was updated successfully, but these errors were encountered: