Quality Heat Pipes


The reach of heat pipes is now affected by quality. +1 range per level.

Tweaks
2 months ago
2.0
2.63K
Logistics

g crash when building ghost

2 months ago

The mod Quality Heat Pipes (1.1.2) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event quality-heat-pipes :: on_robot_built_entity (ID 17)
Unknown entity name: rare-rare-heat-pipe
stack traceback:
[C]: in function 'create_entity'
quality-heat-pipes /control.lua:15: in function
< quality-heat-pipes /control.lua:1>

I think it was placing a ghost of an underground pipe from the other mod that was causing issues in 1.1.1, but am not 100% certain.

2 months ago

also, the forum ate some of the error messsage, because apparently two underscores in a row makes text bold...

2 months ago

Nah I think I already see the issue. A big oversight on my end. You likely clicked q on a rare heat pipe, and tried to place it as a ghost. With how the mod works, it tried to replace the ghost with a rare rare heat pipe. Not a typo, just a mistake on my end. I’ll have to fix it when I have time this week, but I work long hours so it likely will be a couple days.

In the meantime, avoid picking ghosts from existing quality pipes that are placed, and instead stick to your heat pipe items.

2 months ago

easy enough to avoid, thanks for tracking that down

2 months ago

If there are any extra crashes that you can replicate, please do share

2 months ago

Okay so I have time now, and I cannot seem to replicate the issue?

2 months ago

The problem seems to be that my mod (More Quality Scaling) replaces the rare heat-pipe with a rare-heat-pipe, and then the latter with a rare-rare-heatpipe since that also exists (the replacement logic only checks if a quality-prefixed version of an entity exists, and not if a replacement for a specific position/tick was already done).

Then your mod sees that a heat pipe was placed down, and tries to prepend a further rare- - which leads to the crash.
This could be prevented on your end by checking if the new destination entity name exists (check for prototype.entity[quality.."-"..name]) before placing it down, but I could also a) add an additional check when your mod is detected or b) generally only replace each entity once - the latter option having the downside that this may kill compatibility with mods that do their quality prefix replacement via a name whitelist (if I replace heat-pipe with rare-heat-pipe, they might not replace that with the rare-rare-heatpipe which is modified by both our mod).
Though data stage compatibility would be preferable anyway, since otherwise the number of created additional entities scales with the square of the available quality levels...

Maybe you could just check for the existence of quality-prefixed heat pipes, and prevent generating additional entities in that case (simply modifying them instead if necessary)? And in control.lua implement the prototype existence check?

2 months ago

Hell yeah thanks for the detailed response, I’ll have to look into that when the weekend rolls around

a month ago

Hi, I hope you're okay author. It seems to be a bug that was discussed a month ago, but I wanted to know if there was any indication of a fix. Thanks.

Error while running event quality-heat-pipes::on_robot_built_entity (ID 17)
Unknown entity name: epic-epic-heat-pipe
stack traceback:
[C]: in function 'create_entity'
quality-heat-pipes/control.lua:15: in function <quality-heat-pipes/control.lua:1>

26 days ago

I am not running 'more quality scaling' or any other heat-pipe affecting mod (as far as I know), and I am getting the same error, ie. crash when building ghosts/blueprints/whatever with a quality heat pipe in them.

The mod Quality Heat Pipes (1.1.2) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event quality-heat-pipes::on_robot_built_entity (ID 18)
Unknown entity name: legendary-legendary-heat-pipe
stack traceback:
[C]: in function 'create_entity'
quality-heat-pipes/control.lua:15: in function <quality-heat-pipes/control.lua:1>

25 days ago

Replacing this mod with "more quality scaling" (and toggling off all the functionality you are not interested in in startup settings) would solve your issue, and all quality heat pipes placed since this mod was installed would keep their improved range. Blueprint should also stay valid.
When this mods author fixes this issue, you could similarly switch back without issue (just don't load your save while neither of our mods is installed, or quality heat pipes might disappear).

20 days ago

I'm getting the same crash, but without using the "More Quality Scaling" mod. Regular ghost placement works. It only crashes when I try to place the quality heat pipe with a blueprint. I tested with just this mod (and all others I have installed turned off), and the crash still happens.

Again, normal ghosting & bot placement works. It's just when the bots tries to place it via blueprint that causes the crash.

8 days ago
(updated 8 days ago)

getting the same crash, only using quality heatpies without any other quality mod.

Error while running event quality-heat-pipes::on_robot_built_entity (ID 18)
Unknown entity name: legendary-legendary-heat-pipe
stack traceback:
[C]: in function 'create_entity'
quality-heat-pipes/control.lua:15: in function <quality-heat-pipes/control.lua:1>

https://imgur.com/a/YYmyMRQ
Also I have 5 heat pipes?
4 of them are quality heat pipes, the 2nd is vanilla heatpipe

New response