Page 1 of 1

[0.12.33] Paste settings still works when operable=false

Posted: Sat May 07, 2016 2:44 am
by JasonC
When an entity's operable property is set to false, entity settings can still be modified via copy + paste.

Steps to reproduce:
  1. In a mod, create an entity with operable = false, or set it on an existing entity.
  2. In the game, copy the settings from a compatible entity then paste them onto the inoperable one.
Expected results: No change to target entity settings. Actual: Target entity settings are modified.

I believe the expected results are the desired behavior. Setting operable=false entails that you do not want the player to be able to modify the settings of an entity, but currently copy + paste can still be used as a way around this. If a player inadvertently copies + pastes onto an inoperable entity is is unlikely they would expect its behavior to change, and the only way they would have to "correct" it would be to somehow determine what the inoperable entity's settings should be then paste back into it.

Edit:
<Rseding91|W> JasonC: I don't know if I consider that a bug. The "operable" property was added for some trailer and scenario related things and has since kind of been forgotten. Defining what all it's meant to do might be a better idea first.
<JasonC> well there's a good although rare use for it now; to hide the gui for an element in certain modding cases.
<JasonC> in my case i built a directional sensor based on a combinator to sense resource flow rates (didn't work, but that's beside the point), and so the combinator gui had to be set to some specific settings and wasn't useful for the player to edit it.
So if this property doesn't have a current well-defined purpose, I do think it can be useful for certain mods, especially ones that make custom combinator-based things, etc., when the mod wants control over the GUI-settable settings and it's not appropriate for the player to adjust them. There's no other way, afaik, to "disable" the GUI for an entity but keep it interactable in all other ways (e.g. selectable, rotatable, mineable, etc.). I interprate "inoperable" as "the player can't operate the controls", which may be useful sometimes. (On the other hand certain additional API capabilities would negate the need for this, e.g. overridable entity GUI's, a circuit network API, stuff like that, but right now the property seems useful.)

Re: [0.12.33] Paste settings still works when operable=false

Posted: Tue Jun 07, 2016 11:46 am
by Klonan
Thanks for the report,

I'll move it to confirmed so that we can get an interpretation of what operable should mean for an entity

Re: [0.12.33] Paste settings still works when operable=false

Posted: Tue Jun 07, 2016 5:06 pm
by Rseding91
Fixed for 0.13. I also found that the game allowed rotation of inoperable entities and fixed that.