Industrial Display Plates

by Wyrrrd

Big, medium and small signs which display item and fluid icons. Can be used to blueprint map markers. âš  This mod will be deprecated soon. âš 

Utilities
1 year, 7 days ago
0.18 - 1.1
15.3K

g Incompatibility with Attach Notes

3 years ago

Hi,

First of all, an obligatory thank you for the mod message. Although small in scope, I find it to be a major improvement in visuals. I really like it when I run into such small gems that are designed well, and for one purpose only :)

Now onto the actual "issue". I have not filed it as a bug, because I think it's probably not on the side of Industrial Display Plates, but perhaps someone will find this tidbit of information useful.

I am using Industrial Display Plates with a bunch of other mods, and was a bit perplexed that copying/pasting and blueprinting the plates did not seem to copy the content (selected icon) as well - especially since you mentioned that it does support blueprinting explicitly in the description of the mod.

After reducing the number of mods, I finally narrowed the issue down to having the Attach Notes (https://mods.factorio.com/mod/attach-notes) and Industrial Display Plates enabled together.

So, when having both of the mods enabled, the display plates content is not copied via blueprints or via copy/pasting. What I find interesting is that the attach notes itself seems not to be copiable/blueprintable on its own, and this has been reported already for that mod under https://mods.factorio.com/mod/attach-notes/discussion/5ea5aeff7ed351000f257453 . This makes me think that most likely Attach Notes might be at fault in some way.

Best regards,
Branko

3 years ago

Please try again with the non-deprecated mod (see reply in the discussion you posted). I will try this out myself when I find time.

3 years ago

Hello,

I have actually posted a link to a wrong mod (the deprecated one) when I was making that post, my bad :) I am using the non-deprecated version of Industrial Display Plates.

To be on the safe side, I have now set-up a clean instance of Factorio 0.18.35. Here are the mods that I have installed (via game's built-in installer):

  • attach-notes_0.4.1.zip
  • creative-mod_1.5.0.zip
  • IndustrialDisplayPlates_0.18.1.zip

The Creative Mod is there only to make testing slightly easier (to get items/research).

I can confirm that with both Attach Notes and Industrial Display Plates enabled, the display plates' icon is not copied over neither when using blueprints, nor when using copy/paste.

After disabling the Attach Notes mod, copy/pasting and blueprinting display plates works as expected (the icon setting gets carried over).

Best regards,
Branko

3 years ago

I've started looking into the code of both Attach Notes and Industrial Display Plates a bit, and I may have found what the issue might be (but can't be really 100% sure). From what I can tell, Industrial Display Plates will store the tags representing the selected item in the plate via event handler:

This handler will iterate over all of the entities to locate industrial display plates in the blueprint via:

However, current documentation for the on_player_setup_blueprint (https://lua-api.factorio.com/latest/events.html#on_player_setup_blueprint) mentions that the "mapping" property of the event will be incorrect if any mod changes the blueprint.

Going back to the Attach Notes, the event handler for on_player_setup_blueprint is:

This will in turn invoke function:

And this function will set the entities of a blueprint (thus modifying it) via:

Is this in any way helpful? Is it possible to iterate the entities by some other means (I think the Attach Notes itself does not use the mapping, and I think it essentially does the same thing that Industrial Display Plates do when fetching the necessary entity info).

P.S.
As a side-note, I've noticed similar issues between Industrial Display Plates and Blueprint Extensions (https://mods.factorio.com/mod/BlueprintExtensions), and I'm suspecting something similar might be at hand as well.

3 years ago

Well, in case of Blueprint Extensions it's a different issue entirely - when it creates a blueprint, this does not seem to raise the on_player_setup_blueprint event, and it can't be raised manually. There's on_player_configured_blueprint, but I don't see that one providing any useful information.

3 years ago

Workaround added by attach-notes (see discussion).