More miniloaders

by Jakzie

Adds more miniloaders from Miniloader mod for some modded transport belts. Includes miniloaders for Leighzer's Uranium Logistics, One More Tier, Xander Mod, Iper Belt, Hiladdar's Belts and 5Dim. Includes an API for mod creators to add their own miniloaders.

3 months ago
1.0 - 1.1
4226
Owner:
Jakzie
Source:
N/A
Homepage:
N/A
License:
GNU GPLv3
Created:
6 months ago
Latest Version:
1.0.7 (3 months ago)
Factorio version:
1.0 - 1.1
Downloaded:
4226 times

Overview

More miniloaders extends the Miniloader mod by adding miniloaders for some mods which it doesn't have support for yet.
It adds support for following mods:

  • Leighzer's Uranium Logistics (1.0 only) - Adds uranium miniloader
  • One More Tier - Adds superfast miniloader
  • Xander Mod - Adds crude and expedited miniloader, disables chute, fixes description of express miniloader to show the correct speed and changes recipe of express miniloader to require expedited miniloader
  • Iper Belt - Adds iper miniloader
  • Hiladdar's Belts - Adds MK4-8 miniloaders and fixes the speed and description of express miniloader
  • 5Dim's mod - New Transport (1.1 only) - Adds MK4-10 miniloaders and changes recipe of express miniloader to require stack inserter MK2

This mod works by cloning the prototypes of miniloaders and modifying them, therefore it doesn't directly contain any content from the Miniloader mod.

Make sure that the "Enable standard miniloaders" mod setting is enabled. Having that disabled isn't yet supported by this mod.

Keep in mind that not all these mods are 100% compatible with each other and incompatibilities between them aren't solved by this mod.

If you run into any problems or want to add a miniloader for your favorite modded belt, let me know in the discussion section.

Check out my other mods: Jakzie's mods

API for mod creators

This mod includes two functions accessible from other mods, which allow mod creators to add miniloaders for their belts and modify existing ones. To access those functions you only need to add this mod as a dependency.

If you are the creator of some mod mentioned above and want to add the miniloader yourself using the API, let me know and I will remove the miniloader from the mod.

- Function for creating new miniloader:

more_miniloaders.create_miniloader{name=..., color=..., underground_belt=..., ingredients=..., filter_ingredients=..., tech_prereq=..., next_upgrade=...}

Parameters:

  • name: name of the miniloader
  • color: color of the miniloader (hex format)
  • underground_belt (optional): name of underground belt the miniloader is based on; is set to [name]-underground-belt by default
  • ingredients: array of ingredients for the miniloader recipe; it's recommended to follow the estabilished pattern: previous tier miniloader + same tier underground belt + several fast/stack inserters (+ possibly some extra materials)
  • filter_ingredients (optional): array of ingredients for filter miniloader recipe; if not set then the filter miniloader won't be created
  • tech_prereq: array of prerequisites for the miniloader technology; cost of the technology is copied from the first one in the array; it's recommended to put the technology unlocking the same tier belt as the first one and previous tier miniloader technology as the second one
  • next_upgrade (optional): name of the next tier miniloader; used by the upgrade planner

Return value:

The function returns a table containing created prototypes (already added to the data table) for further adjustments if needed. It has the following structure:

{normal={loader=..., inserter=..., item=..., recipe=...}, filter={loader=..., inserter=..., item=..., recipe=...}, technology=...}

Example:

more_miniloaders.create_miniloader{
    name = "uranium",
    color = "43ff4b",
    ingredients = {
        {"express-miniloader", 1}, 
        {"uranium-underground-belt", 1}, 
        {"stack-inserter", 2}, 
        {"uranium-235", 2}
    },
    filter_ingredients = {
        {"express-filter-miniloader", 1}, 
        {"uranium-underground-belt", 1}, 
        {"stack-filter-inserter", 2}, 
        {"uranium-235", 2}
    },
    tech_prereq = {"uranium-logistics", "express-miniloader"},
}

Note: You have to insert your underground belt into the data table BEFORE you use this function or else it won't work.

- Function for modifying existing miniloader:

more_miniloaders.modify_miniloader{name=..., ingredients=..., filter_ingredients=..., tech_prereq=..., next_upgrade=..., fix_speed=..., fix_description=...}

Parameters:

  • name: name of the miniloader
  • ingredients (optional): array of ingredients for the miniloader recipe; it's recommended to follow the estabilished pattern: previous tier miniloader + same tier underground belt + several fast/stack inserters (+ possibly some extra materials)
  • filter_ingredients (optional): array of ingredients for filter miniloader recipe
  • tech_prereq (optional): array of prerequisites for the miniloader technology; cost of the technology is copied from the first one in the array; it's recommended to put the technology unlocking the same tier belt as the first one and previous tier miniloader technology as the second one
  • next_upgrade (optional): name of the next tier miniloader; used by the upgrade planner
  • fix_speed (optional): if set to true then the speed of the miniloader will be adjusted to match the speed of same tier underground belt; this should be done automatically by the Miniloader mod, so only use this if it for some reason isn't
  • fix_description (optional): if set to true then the miniloader description will be regenerated to show its speed correctly

Example:

more_miniloaders.modify_miniloader{
    name = "fast", 
    next_upgrade = "expedited",
    fix_description = true,
}

If you encounter any issues with the API let me know.