FakeFishGames / Barotrauma

A 2D online multiplayer game taking place in a submarine travelling through the icy depths of Jupiter's moon Europa.
http://www.barotraumagame.com/
1.74k stars 404 forks source link

Issues with some containers #8192

Closed Singularia closed 1 year ago

Singularia commented 2 years ago

Description Some containers have issues like mismatched selection box, different Sprite Depth compared to other containers and missing tags.

Version Tested on 0.16.2.0

  1. Outpost Cabinets' selection box is bigger than the sprite itself, this can create difficulty in selecting any item that is placed above it. It also has default Sprite Depth set to 0.920 while the standard depth for cabinets is 0.840. cabinets

  2. Medical Compartments have their default Sprite Depth set to 0.970 while the standard depth for cabinets is 0.840. They also lack any "Allowed links" choices and item tags med comp

Additional information It's not an issue, but a personal opinion regarding Medical Compartments. Medical Compartments most of the time used (for Sub-Builders) as a general-purpose compartments (for armouries, reactor rooms, crew quarters, kitchens etc.) and not just for medical purposes, so it may be better to rename them as "Storage Compartment" to make them better fit in any room variants.

Singularia commented 2 years ago
  1. Weapon Holder won't accept Syringe Gun because current Syringe Gun lacks required tags.

Expected behaviour Syringe Gun can be put in weapon holder (tested using Stable version 0.9.10.0). image Example 1

Actual behaviour Syringe Gun alongside with Crowbar, Toy Hammer, Sprayer, Welding Tool and Plasma Cutter can't be placed in weapon holders. image Example 2

Possible cause This is because in previous releases Syringe Gun had 3 tag weapon, mediumitem, gun but currently it has only smallitem tag. Lack of the weapon tag prevents it from being put in weapon holders.

Additional information Some items have slightly wrong offset when in a weapon holder (look at example pic 2):

Singularia commented 2 years ago
  1. Medicine Cabinet can't be mirrored by X-Axis, only by Y-Axis I already mentioned a related issue in #7709 (Item 14)
Tsunder commented 2 years ago

the position of the stun baton is also kind of weird. It's "held" by its "blade" section, rather than something like the handle.

I guess this applies to the knives also.

Regalis11 commented 2 years ago

Fixed most of the issues in https://github.com/Regalis11/Barotrauma-development/commit/7c62a1d82cbd000824081c0e43f9e9e2e8fd3a0b

Changing the name of the medical compartments will have to wait until next loca batch though.

Some items have slightly wrong offset when in a weapon holder (look at example pic 2):

What would you consider the "right" offset? Atm we just place the origin of the item's sprite to the center of the weapon holder.

the position of the stun baton is also kind of weird. It's "held" by its "blade" section, rather than something like the handle. I guess this applies to the knives also.

That makes sense to me, if it was held by the handle wouldn't you have to grab it by the blade to take it from the holder?

Medicine Cabinet can't be mirrored by X-Axis, only by Y-Axis

Is there some necessary use case for this?

Singularia commented 2 years ago

What would you consider the "right" offset?

It's a poor choice of word on my side here, by "wrong" I meant one that stands out from the rest (visually), like Shotgun with its noticeable shift to the right side of a holder

Also regarding Knives, I think they should be held blade side down and handle up (assuming that we take items from the top side of a holder).

Is there some necessary use case for this?

In some cases, the front decoration pieces can conceal a painted cross on its right side, thus preventing players from visually identifying that it's indeed a Medicine Cabinet.

Unlike Crate Shelf or Railgun Shell Rack, for example, Medicine Cabinet has a different texture on its right and left (if sliced vertically) so mirroring is by X-axis makes sense. image

That makes sense to me, if it was held by the handle wouldn't you have to grab it by the blade to take it from the holder?

I think there is nothing wrong with it being held by the handle, it's just strange that "blade" part goes up, especially for knives, or handles up for pistols/revolvers.

Singularia commented 2 years ago

5a. Not sure if it's an oversight or intentional change but i noticed that the new loaders (that were added with hardpoints) have different Sprite Depth, all old loaders had Sprite Depth value of 0.800 and now most have a value of 0.780. image

5b. White rectangles (not sure how to call it properly) and the initial position of loaders are misaligned between each other.

image

Singularia commented 2 years ago
  1. Alien Artifact Holder's connection panel can't be opened using a screwdriver both in wiring mode and in-game. Instead, the item container's window opens.
Regalis11 commented 2 years ago

Alien Artifact Holder's connection panel can't be opened using a screwdriver both in wiring mode and in-game. Instead, the item container's window opens.

This is intentional, the holders are not supposed to be rewireable.

Singularia commented 2 years ago

This is intentional, the holders are not supposed to be rewireable.

Oh, it's intentional, that was unexpected. Though it is an odd decision since as players we can't (re)wire alien stuff in ruins anyway, but in the editor, on the other hand, we can (re)wire all alien tech, except for Artifact Holder.

IMO this restriction only makes it harder to work with it, since it still possible to manually create a custom Item Assembly where Artifact Holder is wired to JB for example.

MaaiG commented 2 years ago

5b. White rectangles (not sure how to call it properly)...

Maybe "hitboxes"

...and the initial position of loaders are misaligned between each other.

😳 confess I don’t understand https://github.com/Regalis11/Barotrauma/issues/7459#issuecomment-976753619

Regalis11 commented 2 years ago

@Singularia

Oh, that's a good point! You're right, it'd make sense for them to be rewireable in the editor.

@MaaiG

I wouldn't call them hitboxes because they have nothing to do with collision detection: they just visualize the position and extents of the item. In the code they're just called the "rects" of the item, but outside the code I'd maybe use something like "outline" or "borders".

MaaiG commented 2 years ago

@Regalis11 Thank you very much. A small dictionary (or large :)) of such "special terms" could help to better describe problems in issue reports and more appropriately express our thoughts on this specific issue, considering language difficulties.

P.S. Without the ability to attach a video it would probably be a real hell...

itchyOwl commented 2 years ago

Related to the comment above:

Added a separate tag ("mountableweapon") that defines whether the item can be placed on weapon holders or not in Regalis11/Barotrauma-development@6e68a55.

image.png

Regalis11 commented 1 year ago

Made the loaders' sprite depths consistent in https://github.com/Regalis11/Barotrauma-development/commit/62a1c1f9fb952a46f7a13b212964b9d661847c2f. I think everything here has now been addressed, aside from the ones that aren't actual bugs? Moving to review

Rokvach commented 1 year ago

Tested, working correctly. Closing.