forked from cacklingfiend/lignumis
		
	Add mid-game items and balancing (a.k.a. coming back to Lignumis)
This commit is contained in:
		
							parent
							
								
									5b3d38ae6e
								
							
						
					
					
						commit
						1a8b0df94a
					
				
					 21 changed files with 252 additions and 4 deletions
				
			
		|  | @ -1,3 +1,8 @@ | |||
| Version: 0.0.8 | ||||
| Date: 12.01.2025 | ||||
|   Changes: | ||||
|     - Add mid-game items and balancing (a.k.a. coming back to Lignumis) | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 0.0.7 | ||||
| Date: 11.01.2025 | ||||
|   Changes: | ||||
|  |  | |||
							
								
								
									
										
											BIN
										
									
								
								lignumis/graphics/icons/cupriavidus-necator-1.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lignumis/graphics/icons/cupriavidus-necator-1.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 11 KiB | 
							
								
								
									
										
											BIN
										
									
								
								lignumis/graphics/icons/cupriavidus-necator-2.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lignumis/graphics/icons/cupriavidus-necator-2.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 11 KiB | 
							
								
								
									
										
											BIN
										
									
								
								lignumis/graphics/icons/cupriavidus-necator-3.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lignumis/graphics/icons/cupriavidus-necator-3.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 12 KiB | 
							
								
								
									
										
											BIN
										
									
								
								lignumis/graphics/icons/dead-cupriavidus-necator-1.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lignumis/graphics/icons/dead-cupriavidus-necator-1.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 9.4 KiB | 
							
								
								
									
										
											BIN
										
									
								
								lignumis/graphics/icons/dead-cupriavidus-necator-2.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lignumis/graphics/icons/dead-cupriavidus-necator-2.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 9.8 KiB | 
							
								
								
									
										
											BIN
										
									
								
								lignumis/graphics/icons/dead-cupriavidus-necator-3.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lignumis/graphics/icons/dead-cupriavidus-necator-3.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 10 KiB | 
|  | @ -53,6 +53,8 @@ steam-science-pack=Steam science pack | |||
| destination-nauvis=Travel to Nauvis | ||||
| lumber=Lumber | ||||
| basic-repair-pack=Basic repair pack | ||||
| cupriavidus-necator=Cupriavidus necator | ||||
| dead-cupriavidus-necator=Dead Cupriavidus necator | ||||
| 
 | ||||
| [item-description] | ||||
| wooden-wall=Use wooden walls to protect your base from the locals and to reduce noise levels. | ||||
|  | @ -70,6 +72,12 @@ provisional-rocket-part=Provisional rocket part | |||
| wood-splitter-electronic-circuit=Wood splitter | ||||
| lumber-mill-electronic-circuit=Lumber mill | ||||
| burner-agricultural-tower-electronic-circuit=Burner agricultural tower | ||||
| cupriavidus-necator-starter=Cupriavidus necator (starter culture) | ||||
| plastic-from-cupriavidus-necator=Bioplastic | ||||
| plastic-from-dead-cupriavidus-necator=Bioplastic | ||||
| low-density-structure-gold=Low density structure | ||||
| rocket-fuel-from-wood-pulp-and-peat=Bio-rocket-fuel | ||||
| nutrients-from-wood-pulp=Nutrients from wood pulp | ||||
| 
 | ||||
| [recipe-description] | ||||
| moist-stromatolite-remnant-desiccation-without-steam=Used for balancing the production of steam. | ||||
|  |  | |||
|  | @ -23,5 +23,6 @@ require("lumber") | |||
| require("wood-logistics") | ||||
| require("basic-repair-pack") | ||||
| require("basic-radar") | ||||
| require("mid-game-recipes") | ||||
| 
 | ||||
| require("noise") | ||||
|  |  | |||
|  | @ -26,7 +26,7 @@ data:extend({ | |||
|         distance = 16.5, | ||||
|         orientation = 0.2625, | ||||
|         magnitude = 0.35, | ||||
|         order = "a[lignumis]", | ||||
|         order = "0[lignumis]", | ||||
|         subgroup = "planets", | ||||
|         map_seed_offset = 100, | ||||
|         map_gen_settings = planet_map_gen, | ||||
|  |  | |||
							
								
								
									
										223
									
								
								lignumis/prototypes/content/mid-game-recipes.lua
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										223
									
								
								lignumis/prototypes/content/mid-game-recipes.lua
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,223 @@ | |||
| local space_age_item_sounds = require("__space-age__.prototypes.item_sounds") | ||||
| 
 | ||||
| data:extend({ | ||||
|     { | ||||
|         type = "recipe", | ||||
|         name = "cupriavidus-necator-starter", | ||||
|         category = "organic-or-chemistry", | ||||
|         energy_required = 12.8, | ||||
|         enabled = false, | ||||
|         ingredients = { | ||||
|             { type = "item",  name = "peat",                   amount = 10 }, | ||||
|             { type = "item",  name = "gold-stromatolite-seed", amount = 1 }, | ||||
|             { type = "fluid", name = "wood-pulp",              amount = 100 }, | ||||
|             { type = "fluid", name = "water",                  amount = 100 } | ||||
|         }, | ||||
|         results = { { type = "item", name = "cupriavidus-necator", amount_min = 4, amount_max = 10, probability = 0.1 } }, | ||||
|         result_is_always_fresh = true, | ||||
|         icons = { | ||||
|             { icon = "__lignumis__/graphics/icons/cupriavidus-necator-1.png" }, | ||||
|             { icon = "__lignumis__/graphics/icons/peat.png",                 scale = 0.25, shift = { 8, 8 } }, | ||||
|             { icon = "__lignumis__/graphics/icons/wood-pulp.png",            scale = 0.25, shift = { 8, 8 } } | ||||
|         }, | ||||
|         crafting_machine_tint = { | ||||
|             primary = { r = 1.000, g = 1.000, b = 1.000, a = 1.000 },    -- #fefeffff | ||||
|             secondary = { r = 0.771, g = 0.771, b = 0.771, a = 1.000 },  -- #c4c4c4ff | ||||
|             tertiary = { r = 0.768, g = 0.665, b = 0.762, a = 1.000 },   -- #c3a9c2ff | ||||
|             quaternary = { r = 0.000, g = 0.000, b = 0.000, a = 1.000 }, -- #000000ff | ||||
|         }, | ||||
|         enabled = false, | ||||
|         allow_quality = false, | ||||
|         preserve_products_in_machine_output = true, | ||||
|         order = "0[lignumis]-b[cupriavidus-necator-starter]", | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|         name = "cupriavidus-necator", | ||||
|         category = "organic-or-chemistry", | ||||
|         energy_required = 12.8, | ||||
|         enabled = false, | ||||
|         ingredients = { | ||||
|             { type = "fluid", name = "wood-pulp",           amount = 40 }, | ||||
|             { type = "fluid", name = "water",               amount = 100 }, | ||||
|             { type = "item",  name = "cupriavidus-necator", amount = 10 }, | ||||
|         }, | ||||
|         results = { | ||||
|             { type = "item", name = "cupriavidus-necator", amount_min = 10, amount_max = 80, ignored_by_productivity = 1 } | ||||
|         }, | ||||
|         result_is_always_fresh = true, | ||||
|         crafting_machine_tint = { | ||||
|             primary = { r = 1.000, g = 1.000, b = 1.000, a = 1.000 },    -- #fefeffff | ||||
|             secondary = { r = 0.771, g = 0.771, b = 0.771, a = 1.000 },  -- #c4c4c4ff | ||||
|             tertiary = { r = 0.768, g = 0.665, b = 0.762, a = 1.000 },   -- #c3a9c2ff | ||||
|             quaternary = { r = 0.000, g = 0.000, b = 0.000, a = 1.000 }, -- #000000ff | ||||
|         }, | ||||
|         enabled = false, | ||||
|         allow_productivity = true, | ||||
|         preserve_products_in_machine_output = true | ||||
|     }, | ||||
|     { | ||||
|         type = "item", | ||||
|         name = "cupriavidus-necator", | ||||
|         icon = "__lignumis__/graphics/icons/cupriavidus-necator-1.png", | ||||
|         pictures = { | ||||
|             { filename = "__lignumis__/graphics/icons/cupriavidus-necator-1.png", size = 64, scale = 0.5 }, | ||||
|             { filename = "__lignumis__/graphics/icons/cupriavidus-necator-2.png", size = 64, scale = 0.5 }, | ||||
|             { filename = "__lignumis__/graphics/icons/cupriavidus-necator-3.png", size = 64, scale = 0.5 }, | ||||
|         }, | ||||
|         stack_size = 1000, | ||||
|         spoil_result = "dead-cupriavidus-necator", | ||||
|         spoil_ticks = 2 * 60 * 60, | ||||
|         inventory_move_sound = space_age_item_sounds.agriculture_inventory_move, | ||||
|         pick_sound = space_age_item_sounds.agriculture_inventory_pickup, | ||||
|         drop_sound = space_age_item_sounds.agriculture_inventory_move, | ||||
|         subgroup = "agriculture-processes", | ||||
|         order = "0[lignumis]-c1[cupriavidus-necator]", | ||||
|         default_import_location = "lignumis", | ||||
|         weight = 1 * kg | ||||
|     }, | ||||
|     { | ||||
|         type = "item", | ||||
|         name = "dead-cupriavidus-necator", | ||||
|         icon = "__lignumis__/graphics/icons/dead-cupriavidus-necator-1.png", | ||||
|         pictures = { | ||||
|             { filename = "__lignumis__/graphics/icons/dead-cupriavidus-necator-1.png", size = 64, scale = 0.5 }, | ||||
|             { filename = "__lignumis__/graphics/icons/dead-cupriavidus-necator-2.png", size = 64, scale = 0.5 }, | ||||
|             { filename = "__lignumis__/graphics/icons/dead-cupriavidus-necator-3.png", size = 64, scale = 0.5 }, | ||||
|         }, | ||||
|         stack_size = 1000, | ||||
|         inventory_move_sound = space_age_item_sounds.agriculture_inventory_move, | ||||
|         pick_sound = space_age_item_sounds.agriculture_inventory_pickup, | ||||
|         drop_sound = space_age_item_sounds.agriculture_inventory_move, | ||||
|         subgroup = "agriculture-processes", | ||||
|         order = "0[lignumis]-c2[dead-cupriavidus-necator]", | ||||
|         default_import_location = "lignumis", | ||||
|         weight = 1 * kg | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|         name = "plastic-from-cupriavidus-necator", | ||||
|         category = "organic-or-chemistry", | ||||
|         icons = { | ||||
|             { icon = "__base__/graphics/icons/plastic-bar.png" }, | ||||
|             { icon = "__lignumis__/graphics/icons/cupriavidus-necator-1.png", scale = 0.25, shift = { 8, 8 } } | ||||
|         }, | ||||
|         energy_required = 12.8, | ||||
|         enabled = false, | ||||
|         ingredients = { { type = "item", name = "cupriavidus-necator", amount = 100 } }, | ||||
|         results = { | ||||
|             { type = "item",  name = "plastic-bar", amount_min = 1, amount_max = 20 }, | ||||
|             { type = "fluid", name = "wood-pulp",   amount = 10,    ignore_productivity = 10 } | ||||
|         }, | ||||
|         crafting_machine_tint = { | ||||
|             primary = { r = 1.000, g = 1.000, b = 1.000, a = 1.000 },    -- #fefeffff | ||||
|             secondary = { r = 0.771, g = 0.771, b = 0.771, a = 1.000 },  -- #c4c4c4ff | ||||
|             tertiary = { r = 0.768, g = 0.665, b = 0.762, a = 1.000 },   -- #c3a9c2ff | ||||
|             quaternary = { r = 0.000, g = 0.000, b = 0.000, a = 1.000 }, -- #000000ff | ||||
|         }, | ||||
|         enabled = false, | ||||
|         subgroup = "agriculture-processes", | ||||
|         order = "0[lignumis]-d1[plastic]", | ||||
|         allow_productivity = true | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|         name = "plastic-from-dead-cupriavidus-necator", | ||||
|         category = "organic-or-chemistry", | ||||
|         icons = { | ||||
|             { icon = "__base__/graphics/icons/plastic-bar.png" }, | ||||
|             { icon = "__lignumis__/graphics/icons/dead-cupriavidus-necator-1.png", scale = 0.25, shift = { 8, 8 } } | ||||
|         }, | ||||
|         energy_required = 12.8, | ||||
|         enabled = false, | ||||
|         ingredients = { { type = "item", name = "dead-cupriavidus-necator", amount = 100 } }, | ||||
|         results = { | ||||
|             { type = "item",  name = "plastic-bar", amount_min = 1, amount_max = 14 }, | ||||
|             { type = "fluid", name = "wood-pulp",   amount = 7,     ignore_productivity = 7 } | ||||
|         }, | ||||
|         crafting_machine_tint = { | ||||
|             primary = { r = 1.000, g = 1.000, b = 1.000, a = 1.000 },    -- #fefeffff | ||||
|             secondary = { r = 0.771, g = 0.771, b = 0.771, a = 1.000 },  -- #c4c4c4ff | ||||
|             tertiary = { r = 0.768, g = 0.665, b = 0.762, a = 1.000 },   -- #c3a9c2ff | ||||
|             quaternary = { r = 0.000, g = 0.000, b = 0.000, a = 1.000 }, -- #000000ff | ||||
|         }, | ||||
|         enabled = false, | ||||
|         subgroup = "agriculture-processes", | ||||
|         order = "0[lignumis]-d2[plastic]", | ||||
|         allow_productivity = true | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|         name = "low-density-structure-gold", | ||||
|         category = "crafting", | ||||
|         energy_required = 15, | ||||
|         enabled = false, | ||||
|         ingredients = { | ||||
|             { type = "item", name = "gold-plate",  amount = 20 }, | ||||
|             { type = "item", name = "plastic-bar", amount = 7 }, | ||||
|             { type = "item", name = "wood",        amount = 8 } | ||||
|         }, | ||||
|         results = { { type = "item", name = "low-density-structure", amount = 2 } }, | ||||
|         allow_productivity = true, | ||||
|         icons = { | ||||
|             { icon = "__base__/graphics/icons/low-density-structure.png" }, | ||||
|             { icon = "__lignumis__/graphics/icons/gold-plate.png",       scale = 0.25, shift = { 8, 8 } } | ||||
|         } | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|         name = "nutrients-from-wood-pulp", | ||||
|         category = "smelting", | ||||
|         energy_required = 1, | ||||
|         enabled = false, | ||||
|         ingredients = { { type = "fluid", name = "wood-pulp", amount = 10 } }, | ||||
|         results = { { type = "item", name = "nutrients", amount = 5 } }, | ||||
|         allow_productivity = true, | ||||
|         icons = { | ||||
|             { icon = "__space-age__/graphics/icons/nutrients.png" }, | ||||
|             { icon = "__base__/graphics/icons/wood.png",          scale = 0.25, shift = { 8, 8 } } | ||||
|         }, | ||||
|         order = "0[lignumis]-a[nutrients]", | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|         name = "rocket-fuel-from-wood-pulp-and-peat", | ||||
|         energy_required = 15, | ||||
|         enabled = false, | ||||
|         category = "crafting-with-fluid", | ||||
|         ingredients = | ||||
|         { | ||||
|             { type = "item",  name = "peat",      amount = 9 }, | ||||
|             { type = "fluid", name = "wood-pulp", amount = 45 } | ||||
|         }, | ||||
|         results = { { type = "item", name = "rocket-fuel", amount = 1 } }, | ||||
|         crafting_machine_tint = | ||||
|         { | ||||
|             primary = { r = 1.0, g = 0.7, b = 0.0, a = 1.000 }, | ||||
|             secondary = { r = 1.0, g = 0.7, b = 0.0, a = 1.000 }, | ||||
|         }, | ||||
|         allow_productivity = true, | ||||
|         icons = { | ||||
|             { icon = "__base__/graphics/icons/rocket-fuel.png" }, | ||||
|             { icon = "__lignumis__/graphics/icons/peat.png",      scale = 0.25, shift = { 8, 8 } }, | ||||
|             { icon = "__lignumis__/graphics/icons/wood-pulp.png", scale = 0.25, shift = { 8, 8 } } | ||||
|         }, | ||||
|         subgroup = "agriculture-processes", | ||||
|         order = "0[lignumis]-e[rocket-fuel]", | ||||
|     } | ||||
| }) | ||||
| 
 | ||||
| table.assign(data.raw.technology["plastics"].effects, { | ||||
|     { type = "unlock-recipe", recipe = "cupriavidus-necator-starter" }, | ||||
|     { type = "unlock-recipe", recipe = "cupriavidus-necator" }, | ||||
|     { type = "unlock-recipe", recipe = "plastic-from-cupriavidus-necator" }, | ||||
|     { type = "unlock-recipe", recipe = "plastic-from-dead-cupriavidus-necator" } | ||||
| }) | ||||
| 
 | ||||
| table.insert(data.raw.technology["low-density-structure"].effects, | ||||
|     { type = "unlock-recipe", recipe = "low-density-structure-gold" }) | ||||
| 
 | ||||
| table.insert(data.raw.technology["rocket-fuel"].effects, | ||||
|     { type = "unlock-recipe", recipe = "rocket-fuel-from-wood-pulp-and-peat" }) | ||||
| 
 | ||||
| table.insert(data.raw.technology["agriculture"].effects, { type = "unlock-recipe", recipe = "nutrients-from-wood-pulp" }) | ||||
|  | @ -19,7 +19,8 @@ data:extend({ | |||
|         durability_description_key = "description.science-pack-remaining-amount-key", | ||||
|         factoriopedia_durability_description_key = "description.factoriopedia-science-pack-remaining-amount-key", | ||||
|         durability_description_value = "description.science-pack-remaining-amount-value", | ||||
|         random_tint_color = item_tints.iron_rust | ||||
|         random_tint_color = item_tints.iron_rust, | ||||
|         default_import_location = "lignumis" | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|  |  | |||
|  | @ -38,7 +38,8 @@ data:extend({ | |||
|         }, | ||||
|         results = { | ||||
|             { type = "fluid", name = "wood-pulp", amount = 10 } | ||||
|         } | ||||
|         }, | ||||
|         allow_productivity = true | ||||
|     }, | ||||
|     { | ||||
|         type = "technology", | ||||
|  |  | |||
|  | @ -19,7 +19,8 @@ data:extend({ | |||
|         durability_description_key = "description.science-pack-remaining-amount-key", | ||||
|         factoriopedia_durability_description_key = "description.factoriopedia-science-pack-remaining-amount-key", | ||||
|         durability_description_value = "description.science-pack-remaining-amount-value", | ||||
|         random_tint_color = item_tints.iron_rust | ||||
|         random_tint_color = item_tints.iron_rust, | ||||
|         default_import_location = "lignumis" | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|  |  | |||
|  | @ -72,6 +72,7 @@ local tree_plant = data.raw.plant["tree-plant"] | |||
| tree_plant.growth_ticks = 5 * minute | ||||
| tree_plant.minable.results = { { type = "item", name = "wood", amount_min = 4, amount_max = 6 } } | ||||
| tree_plant.minable.count = nil | ||||
| table.insert(tree_plant.autoplace.tile_restriction, "natural-gold-soil") | ||||
| 
 | ||||
| table.insert(data.raw["assembling-machine"]["assembling-machine-1"].crafting_categories, "wood-processing-or-assembling") | ||||
| table.insert(data.raw["assembling-machine"]["assembling-machine-1"].crafting_categories, "organic-or-assembling") | ||||
|  | @ -272,3 +273,10 @@ data.raw["equipment-grid"]["small-equipment-grid"].width = 6 | |||
| data.raw["equipment-grid"]["small-equipment-grid"].height = 6 | ||||
| data.raw["equipment-grid"]["medium-equipment-grid"].width = 8 | ||||
| data.raw["equipment-grid"]["medium-equipment-grid"].height = 8 | ||||
| 
 | ||||
| 
 | ||||
| -- Always show Nauvis icon | ||||
| 
 | ||||
| local nauvis = data.raw.planet["nauvis"] | ||||
| nauvis.flags = nauvis.flags or {} | ||||
| table.insert(nauvis.flags, "always-show") | ||||
|  |  | |||
							
								
								
									
										
											BIN
										
									
								
								sources/icons/cupriavidus-necator-1.afphoto
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								sources/icons/cupriavidus-necator-1.afphoto
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								sources/icons/cupriavidus-necator-2.afphoto
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								sources/icons/cupriavidus-necator-2.afphoto
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								sources/icons/cupriavidus-necator-3.afphoto
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								sources/icons/cupriavidus-necator-3.afphoto
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								sources/icons/dead-cupriavidus-necator-1.afphoto
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								sources/icons/dead-cupriavidus-necator-1.afphoto
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								sources/icons/dead-cupriavidus-necator-2.afphoto
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								sources/icons/dead-cupriavidus-necator-2.afphoto
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								sources/icons/dead-cupriavidus-necator-3.afphoto
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								sources/icons/dead-cupriavidus-necator-3.afphoto
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Simon Brodtmann
						Simon Brodtmann