Page 1 of 1

[Bilka] [0.17.79] Efficiency not listing on in-game tooltip of placed generator?

Posted: Thu Nov 21, 2019 8:52 pm
by Kingdud
I'm making a custom entity via mod and setting it to be 25% efficient (it's a generator type). I noticed a few things and I wonder if any/all of them are intentional:
  1. effectivity for the entity itself only affects the tooltip display and does NOT change the efficiency of the generator itself.
  2. Setting effectivity in the 'burner' property of the generator correctly modifies generator efficiency, but does not create a correct tooltip.
  3. Once the item is placed in the world, the Efficiency is no longer listed on the tooltip for the entity, only if it is mined into inventory is the efficiency once again displayed.
Are any/all of these behaviors expected? Personally I find #3 a bit annoying purely because I'd be wondering why the hell my power plant was using 4x as much fuel as I think it should, until I mouse over the item in my inventory and realize 'oh, it's only 25% efficient. Derp.'

I can kinda understand effectivity needing to be in two places, but they shouldn't be allowed to differ when one is cosmetic and one is actual.

Here is the entity definition I'm using. I haven't gotten around to making the artwork, so for now, yes, it's a steam engine 'entity' in the world with a nuclear reactor icon. I'll fix it later. I have to force myself to use blender. :/

Code: Select all

data:extend({
	{
		burner = {
			burnt_inventory_size = 1,
			--Setting effectivity here actually makes it less efficient.
			effectivity = 0.25,
			fuel_inventory_size = 3,
			fuel_category = "nuclear"
		},
		collision_box = {
			{
			  -1.3500000000000001,
			  -2.3500000000000001
			},
			{
			  1.3500000000000001,
			  2.3500000000000001
			}
		},
		corpse = "steam-engine-remnants",
		dying_explosion = "medium-explosion",
		--Setting effectivity here sets it for the tooltip but does nothing else
		effectivity = .75,
		energy_source = {
			type = "electric",
			emissions_per_minute = .01,
			usage_priority = "primary-output"
		},
		fast_replaceable_group = "steam-engine",
		flags = {
			"placeable-neutral",
			"player-creation"
		},
		fluid_box = nil,
		horizontal_animation = {
			layers = {
			{
				filename = "__base__/graphics/entity/steam-engine/steam-engine-H.png",
				frame_count = 32,
				height = 128,
				hr_version = {
					filename = "__base__/graphics/entity/steam-engine/hr-steam-engine-H.png",
					frame_count = 32,
					height = 257,
					line_length = 8,
					scale = 0.5,
					shift = {
						0.03125,
						-0.1484375
					},
					width = 352
				},
				line_length = 8,
				shift = {
					0.03125,
					-0.15625
				},
				width = 176
			},
			{
				draw_as_shadow = true,
				filename = "__base__/graphics/entity/steam-engine/steam-engine-H-shadow.png",
				frame_count = 32,
				height = 80,
				hr_version = {
					draw_as_shadow = true,
					filename = "__base__/graphics/entity/steam-engine/hr-steam-engine-H-shadow.png",
					frame_count = 32,
					height = 160,
					line_length = 8,
					scale = 0.5,
					shift = {
						1.5,
						0.75
					},
					width = 508
				},
				line_length = 8,
				shift = {
					1.5,
					0.75
				},
				width = 254
			}}
		},
		icon = "__base__/graphics/icons/steam-engine.png",
		icon_size = 32,
		max_health = 400,
		max_power_output = "500MW",
		min_perceived_performance = 0.25,
		minable = {
			mining_time = 0.3,
			result = "lwr"
		},
		name = "lwr",
		performance_to_sound_speedup = 0.5,
		selection_box = {
		{
			-1.5,
			-2.5
		},
		{
			1.5,
			2.5
		}
		},
		smoke = nil,
		type = "generator",
		vehicle_impact_sound = {
			filename = "__base__/sound/car-metal-impact.ogg",
			volume = 0.65
		},
		vertical_animation = {
			layers = {
			{
				filename = "__base__/graphics/entity/steam-engine/steam-engine-V.png",
				frame_count = 32,
				height = 195,
				hr_version = {
					filename = "__base__/graphics/entity/steam-engine/hr-steam-engine-V.png",
					frame_count = 32,
					height = 391,
					line_length = 8,
					scale = 0.5,
					shift = {
						0.1484375,
						-0.1953125
					},
					width = 225
				},
				line_length = 8,
				shift = {
					0.15625,
					-0.203125
				},
				width = 112
			},
			{
				draw_as_shadow = true,
				filename = "__base__/graphics/entity/steam-engine/steam-engine-V-shadow.png",
				frame_count = 32,
				height = 153,
				hr_version = {
					draw_as_shadow = true,
					filename = "__base__/graphics/entity/steam-engine/hr-steam-engine-V-shadow.png",
					frame_count = 32,
					height = 307,
					line_length = 8,
					scale = 0.5,
				shift = {
					1.265625,
					0.2890625
				},
				width = 330
				},
				line_length = 8,
				shift = {
					1.265625,
					0.296875
				},
				width = 165
			}
			}
		},
		working_sound = {
			match_speed_to_activity = true,
			sound = {
				filename = "__base__/sound/steam-engine-90bpm.ogg",
				volume = 0.6
			}
		}
	}
})

Re: [0.17.79] Efficiency not listing on in-game tooltip of placed entity?

Posted: Thu Nov 21, 2019 8:57 pm
by Bilka
Ahhh burner generators how much I love you.

1 and 2 are kind of expected but not really, 3 is a bug.

Re: [Bilka] [0.17.79] Efficiency not listing on in-game tooltip of placed generator?

Posted: Thu Nov 21, 2019 9:02 pm
by Kingdud
lol sorry. For what it's worth, I looked into using reactors and boilers, but both of those require using the fluid system under the covers, and the performance hit of that is what I'm trying to avoid. The goal of the mod, overall, is to make nuclear a viable megabase power option (so getting the UPS impact of nuclear to something tiny) while also leaving it complex enough to be enjoyable as a mod you might want to use outside of megabasing.

Re: [Bilka] [0.17.79] Efficiency not listing on in-game tooltip of placed generator?

Posted: Sat Dec 07, 2019 8:31 am
by Bilka
Thanks for the report, fixed in the next version.