Skip to content
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

Fix vehicle fridges and freezers sprites #78125

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

ampersand55
Copy link
Contributor

@ampersand55 ampersand55 commented Nov 25, 2024

Summary

Bugfixes "Fix vehicle fridges and freezers sprites"

Purpose of change

Vehicle fridge and freezer sprites were not displayed properly. They didn't have a "location" defined and they had "looks_like": "fridge",, reference to an item that isn't defined.

Fixes #77955

Thanks to submitter @twasbrilligandtheslithytoves who helped debug their own issue.

Describe the solution

Json edits.

Add "location": "center", to ap_apartment_fridge which every other part inherits from.

Replace "looks_like": "fridge", with "looks_like": "minifreezer",

Describe alternatives you've considered

Testing

Seems to load without errors. Spawned a food truck that displays diverse sprites in MXotto+ (where more sprites are defined), displays minifreezer sprite in UltiCa.

EDIT: Changed looks_like to the furniture versions.

Additional context

image

image

@github-actions github-actions bot added [JSON] Changes (can be) made in JSON Appliance/Power Grid Anything to do with appliances and power grid <Bugfix> This is a fix for a bug (or closes open issue) json-styled JSON lint passed, label assigned by github actions astyled astyled PR, label is assigned by github actions labels Nov 25, 2024
@stubkan
Copy link
Contributor

stubkan commented Nov 25, 2024

Could you use chest_freezer instead? Because these fridges are like 2-3x the capacity and power of minifridge/minifreezer

It also looks better and bulkier, as well as giving the different vehicles fridges a visible variant. Real life vehicle fridges/freezers do look like this as well.

image

@stubkan
Copy link
Contributor

stubkan commented Nov 25, 2024

Also, I dont think you really need to change ALL the fridges to be small? The household fridges do render properly as "f_fridge" (as a rotational variety) or "fridge" as not - so f_fridge probably best.

image
A fridge using lookslike "f_fridge" furniture type which rotates with the vehicle.

I think you really only need to add the sprite fix to the actual vehicle fridge/freezers (food truck fridge and food truck freezer)

And let all the normal household or store fridges look like their default fridge, instead of making everything look like a minifridge

@ampersand55
Copy link
Contributor Author

Yea, probably best to change all vehicle looks_like to their furniture f_ versions.

@stubkan
Copy link
Contributor

stubkan commented Nov 25, 2024

Yea, probably best to change all vehicle looks_like to their furniture f_ versions.

I don't think they all have actual sprites. I mean, there's a reason they were all set to f_fridge previously.

image

However, the food truck fridge and food truck freezer are by default vehicle fridges - so should not look like a household fridge, which is why I suggested making them look distinctly different - by using the chest_freezer, which does look like a vehicle type fridge.

image

So we end up with vehicles spawning with two main vehicle fridge variants - a small fridge/freezer and a regular big chest type fridge using chest_freezer sprite. However there is a second 'box' type freezer sprite; The minifreezer sprite already looks like this;

image

So possibly the "chest minifreezer" should also use the minifreezer sprite imo, rather than looking like a minifridge.

The normal household fridges, should remain looking like household fridges so they dont look like letters because missing sprites, when placed into a vehicle;

image

I think the only other furniture fridge different to f_fridge that has an actual sprite is the glass fridge, used in shopfronts;

image

@ampersand55
Copy link
Contributor Author

However, the food truck fridge and food truck freezer are by default vehicle fridges - so should not look like a household fridge, which is why I suggested making them look distinctly different - by using the chest_freezer, which does look like a vehicle type fridge.

It might look better when you turn, but it wouldn't fit the item. A chest fridge opens on top while most fridges opens on the side. That's an important distinction from a game mechanics standpoint as upright freezers have higher energy consumption.

From the comments of food truck freezer:

"//": "141 kwh, but since you open it and use it, and because it's upright, 1.5 as much",

Also, I've only actually changed the appliances which the vehicle parts inherit from and there's no reason for them to look different from the furniture versions. I think rotating vehicle sprites would be nice, but that's a tileset issue.

@stubkan
Copy link
Contributor

stubkan commented Nov 25, 2024

Please dont see me as being combative - I want the same thing you do, a better game that looks better, and I'm only discussing this to help.

Also, I've only actually changed the appliances which the vehicle parts inherit from and there's no reason for them to look different from the furniture versions. I think rotating vehicle sprites would be nice, but that's a tileset issue.

Well Vehicle/Furniture sprites already are differing based on being a furnite item or vehicle. Minifreezer/minifridges as furniture look different because they display differently.

It might look better when you turn, but it wouldn't fit the item. A chest fridge opens on top while most fridges opens on the side.

There are multiple things against using a household fridge sprite for a vehicle fridge.

  1. The fridge is always facing the wrong way and rotates the wrong way when you turn. A sprite that looks right no matter which way you turn or orient is ideal.
  2. IRL vehicle designed fridge/freezers are always smaller than household ones, so the sprite should reflect that.
  3. It would also be better to have a vehicle sprite that doesnt obscure the sprite tile above it like the household fridge.
  4. There is less tileset variety / differing ability when the vehicle fridge looks the same as a household fridge - the tileset suffers when all the fridges look identical.
  5. There should be a tileset difference to visually distinguish between household appliances and vehicle appliances.

Also, BTW there are bugs, since some of the sprites and items you wrote don't actually exist - leading to crashes with starting a game.

image

@stubkan
Copy link
Contributor

stubkan commented Nov 25, 2024

Lets look at this visually for a moment. Here is the default unchanged tileset.

image

As you can see, the vehicle fridges look like normal fridges And the variants have no sprites.

Your proposed change is to make it like this;

image

The reason the minifridge/minifreezer looks like a fridge is apparently because it messes with the ground, like shown here. Perhaps those could use the chest fridge/freezer sprite variant instead, to be visually smaller whilst not messing with the ground layer.

My proposed change is to make the vehicle fridges look distinctly different from fridges, which would look like this;

image

The key difference imo - is that not everything looks like only minifridge or a household fridge. There is variety and a visual difference between designed-for-vehicle fridges and designed-for-houses fridges

@github-actions github-actions bot added the Vehicles Vehicles, parts, mechanics & interactions label Nov 25, 2024
@ampersand55
Copy link
Contributor Author

ampersand55 commented Nov 25, 2024

Please dont see me as being combative - I want the same thing you do, a better game that looks better, and I'm only discussing this to help.

Of course, we're having a healthy discussion. I appreciate the feedback.

  1. IRL vehicle designed fridge/freezers are always smaller than household ones, so the sprite should reflect that.
  1. The item in question is the "food truck freezer" which is designed for a vehicle to begin with. The vehicle parts inherits from the appliances they are installed from, as there are no tools or skills required for the installation we can assume there's no modification to the appliances.

Most of your issues are tileset issues. The primary focus of this PR is to fix bugged vehicle sprites not showing up at all. I added "looks_like": "minifridge", to fix the rotation issues, but ideally they should have unique sprites. I would suggest making an issue over at https://github.com/I-am-Erk/CDDA-Tilesets/issues

Also, BTW there are bugs, since some of the sprites and items you wrote don't actually exist - leading to crashes with starting a game.

Yes the heavy duty freezer. I've fixed it now.

image

@Etos7
Copy link

Etos7 commented Dec 17, 2024

@ampersand55 Any updated on when this will be merged?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Appliance/Power Grid Anything to do with appliances and power grid astyled astyled PR, label is assigned by github actions <Bugfix> This is a fix for a bug (or closes open issue) [JSON] Changes (can be) made in JSON json-styled JSON lint passed, label assigned by github actions Vehicles Vehicles, parts, mechanics & interactions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Food truck fridge and freezer vehicle parts unable to display sprites
4 participants