Smart Inserters


A more modern and configurable approach at adjustable inserters to change pickup/drop position/offsets, and many more options like custom inserter length, a custom setting for ranges and diagonal, support for slim and big inserters... Enjoy!

Utilities
10 days ago
1.1 - 2.0
7.66K
Logistics

Changelog

Version: 2.0.14
Date: 2024-12-09
  Changes:
    - Welcome message will now appear only once per game/configuration changes (after a cutscene) (https://github.com/Wip-Sama/Smart_Inserters/issues/6#issuecomment-2527526230)
Version: 2.0.13
Date: 2024-11-21
  Changes:
    - Hidden long inserter from factoriopedia when "Disable long inserter" is enabled (https://mods.factorio.com/mod/Smart_Inserters/discussion/673c8eba2735c617045563f5)
    - Hidden long inserter entities when "Disable long inserter" is enabled (https://mods.factorio.com/mod/Smart_Inserters/discussion/673c8eba2735c617045563f5)
  Bugfixes:
    - crash on multiplayer when some palyer where in unsupported inventories (https://mods.factorio.com/mod/Smart_Inserters/discussion/673e66f7ca09f2d747c2b864, https://mods.factorio.com/mod/Smart_Inserters/discussion/6735efaf9477b5edd9be8058, https://mods.factorio.com/mod/Smart_Inserters/discussion/672e7dde0836644d01fcd65e)
Version: 2.0.12
Date: 2024-11-16
  Bugfixes:
    - Tried to patch a set of crash taht involves other mods gui (this is just a patch not a fix, I'm not dure if teh bug is fixed since I can not reproduce it)
    - Bumped yafla dependency to 0.1.9 (I forgot to do it in the last update)
Version: 2.0.11
Date: 2024-11-14
  Bugfixes:
    - Directional slim inserters did not work properly
    - Fixed some handlers related bugs (required yafla >= 0.1.9)
Version: 2.0.10
Date: 2024-10-27
  Changes:
    - Sprites are now defaulted to high contrast sprites
    - Split directional and single line inserter to allow for fine control over slim and non slim inserters (by default for the slim one these settings are enabled)
    - Removed a row/column of available position if directional inserters is enabled
Version: 2.0.9
Date: 2024-10-27
  Added:
    - High contrast sprites
    - A setting to enable/disable high contrast sprites
  Bugfixes:
    - Directional inserter were inverted
Version: 2.0.8
Date: 2024-10-26
  Changes:
    - Single line slim inserters now applies to all inserters (renamed to Single line inserters)
    - Directional slim inserters now applies to all inserters (renamed to Directional inserters)
  Bugfixes:
    - Crash when disabling offset flow and useing shortcuts (https://mods.factorio.com/mod/Smart_Inserters/discussion/671cf036dc0b8de9590f7c82)
Version: 2.0.7
Date: 2024-10-26
  Bugfixes:
    - in world selector not working with building under the selection (fix by: Progor)
Version: 2.0.6
Date: 2024-10-23
  Changes:
    - Disable long inserter setting now defaults to false
  Bugfixes:
    - Crush with helmod, (this is a rudimentary patch) https://mods.factorio.com/mod/Smart_Inserters/discussion/67195c415d424c40a6870b08
    - Crush when switching armors https://discord.com/channels/639182424412127242/655181761025802295/1298767587513204747
Version: 2.0.5
Date: 2024-10-22
  Bugfixes:
    - Ui offset were not accurate
Version: 2.0.4
Date: 2024-10-21
  Bugfixes:
    - Bumped factorio version to 2.0
Version: 2.0.3
Date: 2024-10-20
  Bugfixes:
    - Added missing texture in 2.0.2
Version: 2.0.2
Date: 2024-10-20
  Bugfixes:
    - In some settings the ganre was lower than teh technology adverties
  Changes:
    - Bumped YAFLA dependency to 0.1.5
Version: 2.0.1
Date: 2024-10-20
  Changes:
    - Bumped YAFLA dependency to 0.1.4
Version: 2.0.0
Date: 2024-10-20
  Warning:
    - This is a full rewrite of the mod, some features have changed so it may take some time to get used to it (it shouldn't be hard)
    - The mod SHOULD be stable and backward compatible but if you're on a big world or an important one you should make a backup before updating
  Changes:
    - New UI, it may look similar but it's Yafla inside
    - New icons
    - Right-click change pickup
    - Left click change drop
    - Shift inveert right/lesft click
    - Control on any will switch pick and drop
    - Offset will not change when changing position/rotation (may change)
    - Shortcut now support slim and oddly shaped inserters
    - New UI for the in-world selector
  Added:
    - Rebase setting / incremental-with-rebase / inserter-with-rebase, the rabese setting will prevent an inserter to move it's range below is default range, so a long inserter wont' be able to place to the tiles adjacent itself
    - Pick/Drop on the same tile
    - Support for 2x2, 2x3, 3x2, slim, and any strange inserters up to 6x6, it SHOULD work for bigger inserters but do not quote me on that
    - Shortcut now support slim and oddly shaped inserters
    - Shortcut to adjust the distance in the opposite direction (expand and retract, before it worked only expand)
    - Support for in-world selector on slim or odd shaped inserters
  Removed:
    - Copy-paste selector, this caused more problems than anything so it was not worth the time and problems it caused, it may come back in the future
    - shortcut to fine control offsets, only near and far are available now, the shortcut should be fast if you want granular control open the GUI
  Modding:
    - If you want to add support for your mod you can use events.on_inserter_arm_changed to be notified when something happens, this is used internally for GUI updates so you should not miss anything
  Notes:
    - I did not test slim inserters of odd shapes like 3-0, or 0-3, consider these as not supported if you encounter any of them, the current code is not far away from supporting them, but I don't feel like spending the time to implement a use case that does not exist    
  Known Issues:
    - coping settings from inserters of different sizes (2x2 to 3x3) will probably move the pickup/drop out of the grid
    - If the inserter position is invalid the pickup/drop will not appear on the grid so you will not be able to change it
    - if the offset is too close to the border the first time you rotate it may change position, this ONLY HAPPENS when the position is not set with this mod
    - This update made the mod kinda slow again while rewriting the code I disabled matrix caching, I'll re-enable it in the future
  Planned:
    - Inserter presets, i'ts just an idea for now, I'm brainstorming ideas to implement it
Version: 1.2.16
Date: 2024-07-09
  Bugfixes:
    - Slim inserter copy past was broken
  Added:
    - A setting to disable inserter power usare (false by default)
Version: 1.2.15
Date: 2024-03-27
  Bugfixes:
    - en localization was displaying 3x3 where not needed
    - it localization was displaying 3x3 where not needed
    - Fixed a bug with the technology level 5
    - Fixed a bug with the diagonal calculations
  Changes:
    - Downgraded incremental setting by 1 tile due to the new technology (now the increment start from 0 instead of 1)
    - Removed 1.2.13 from the mod portal
Version: 1.2.14
Date: 2024-03-26
  Added:
    - Support for slim inserter in the in-world selector
    - Quick far/near hotkey for the offset ("smart-inserters-drop-..-adjust-distance")
    - New technology for range = 6
  Changes:
    - RENAMED all the offset shortcuts internally 
    - - "smart-inserters-..-offset-adjust-lateral" -> "smart-inserters-drop-..-adjust-horizontal"
    - - "smart-inserters-..-offset-adjust-distance" -> "smart-inserters-drop-..-adjust-vertical"
    - - "smart-inserters-drop-..-adjust-distance" now mean the general offset distance
    - MASSIVE optimization for bigger grids (though 6 and 5 will probably still be quite slow in the in-world selector)
    - Incremented max distance from 5 to 6
    - Optimized the in-world selector
    - Started migration of core components to YAFLA (Yet Another Factorio Library Attempt)
    - Code cleanup
    - Localized switch in bigger inserters
  Bugfixes:
    - For some reason, the Incremental setting added a tile to the max range (now the max incremental range is reachable)
  Notes:
    - If you plan on using QAI with this mod you may want to remap the shortcuts of the in-world configurator
  Planned:
    - Switch the toggle button to a checkbox in the copy-paste configurator
    - A Remote to use some functions of SI and get information such as the max range of an inserter or general range/ matrix of allowed positions and so on...
    - Firing an event when the player changes the inserter position (Also handle this event internally for better compatibility with other mods)
    - A new mod appeared While I was doing this update (QAI) the author added compatibility with this mod itself
    - - I was planning on moving some settings to "map settings" but I may not do this anymore or at least not now 
    - Some of the features of QAI are not currently supported by SI
    - - pickup/Drop on the same tile will become a setting in the future
    - - Long inserter can't catch items near them, I did not think of this feature I'll add a setting in the future
    - If you use the new shortcut on slim inserter the first time the direction may not change and you might need to use it again (it's not the best but it greatly reduces code complexity, I'll fix it in the future) 
  Maybe:
    - - "Mirrored Inserters only" is not something that will be implemented for now since SI does not change the inserter starting position, but I may add some stuff like this in the copy-paste configurator
    - I'm thinking of a way to select some inserters and change all their position at the same time, this feature will need quite a bit of development so if it ever comes to light it will be in the far future
Version: 1.2.13
Date: 2024-01-09
  Bugfixes:
    - Fixed crash when inserter range was bigger than max range -https://mods.factorio.com/mod/Smart_Inserters/discussion/659a0582cfee49884a10192a
Version: 1.2.12
Date: 2023-12-23
  Bugfixes:
    - Fixed rail rix... again -https://mods.factorio.com/mod/Smart_Inserters/discussion/6586f61a8146ffe803935088
Version: 1.2.11
Date: 2023-12-23
  Added:
    - Now you can replace "long-inserter" with "inserter" -https://mods.factorio.com/mod/Smart_Inserters/discussion/657a5e73b39c571c939896d8
  Changes:
    - Now all the shortcuts are set to none, if you want to use them you need to set them at ( settings -> controls -> mods -> Smart Inserters )
  Bugfixes:
    - pickup would be stuck when changed if near a rail -https://mods.factorio.com/mod/Smart_Inserters/discussion/656b192ef49ec2e9ceac7eac
    - Copying inserter settings resets constant filters -https://mods.factorio.com/mod/Smart_Inserters/discussion/656515f9b9de9721d8ba3802
Version: 1.2.10
Date: 2023-12-12
  Added:
    - Toggle button to the copy-paste configurator to toggle all the checkboxes in a tab
    - Reset button in the copy-paste configurator to reset all the checkboxes to the default
  Bugfixes:
    - Crush on_gui_click due to missing entity (may not be fully fixed through, just a patch)
Version: 1.2.9
Date: 2023-11-23
  Bugfixes:
    - Fixed crash while copying from inserters with more filter slots than the one you are pasting to
    - Fixed huge grid size while using GhostOnWater and incremental setting
Version: 1.2.8
Date: 2023-11-16
  Bugfixes:
    - Max range could not be unlocked in "equal" mode
    - Fix offsets not being copied properly in some cases
Version: 1.2.7
Date: 2023-11-13
  Changes:
    - Inserters in incremental settings have different max heights depending on the inserter type
    - Reworked a bit the changelog
    - Reworked a bit the English localization
  Bugfixes:
    - World selector was not working properly
    - The copy/past configurator is now back online and should work properly
    - Technologies were resetting after updating
    - SI_Storage a nil value when on_configuration_changed ran
Version: 1.2.6
Date: 2023-11-12
  Bugfixes:
    - Incremental setting now works properly again
Version: 1.2.5
Date: 2023-11-12
  Changes:
    - Reverted everything to 1.1.2
  Notes:
    - I'm truly sorry for this huge mess, I got excited over this mod and ruined everything, I will try to be more careful in the future, for now, I reverted everything to where it was still working, sorry again, I'll fix this taking my time to make sure it works fine
Version: 1.2.4
Date: 2023-11-12
  Bugfixes:
    - Offsets were not working properly
  Notes:
    - I hope it's the last update for today
Version: 1.2.3
Date: 2023-11-12
  Bugfixes:
    - still crashing while pasting... hope it's fixed now
Version: 1.2.2
Date: 2023-11-12
  Changes:
    - Code cleanup
  Bugfixes:
    - Copy-pasting filtered inserter in some cases would crash the mod
    - localization fixes
Version: 1.2.1
Date: 2023-11-10
  Bugfixes:
    - Copy-pasting any entity other than an inserter would crash the mod
Version: 1.2.0
Date: 2023-11-10
  Added:
    - Ability to toggle what to copy when copy/pasting an inserter over another (does not work with blueprint)
  Changes:
    - Better integration of the in-world selector with the copy-paste
    - Now the pickup/drop offset shortcuts alternate between far and near instead of 3 positions
Version: 1.1.2
Date: 2023-10-28
  Added:
    - Italian localization
    - tech difficulty selector (starting settings)
    - Incremental range setting
  Bugfixes:
    - Item would drop on the floor when activating the in-world selector if you had a single slot available
    - pickup/drop selector items are no longer put into the player inventory when swapping them
    - technologies were defined with 4 mipmaps while having 1
Version: 1.1.1
Date: 2023-10-27
  Changes:
    - Items placed by the in-world selector are now centered on the tile
  Bugfixes:
    - Now instead of destroying the item in your cursor it will be placed inside your inventory or dropped on the floor while using the in-world selector
    - Fixed mod crash when using the in-world editor on mini loader (this feature is now disabled)
Version: 1.1.0
Date: 2023-10-26
  Added:
    - a new way to change inserter drop/pickup without opening its GUI (to change the offset you need to use the shortcut)
  Bugfixes:
    - Locked shortcuts (hotkeys) behind technologies
  Changes:
    - The welcome message now is localized
    - migrated inserter-config to smart-inserter (internal naming)
  Planned:
    - a shortcut (hotkey) to switch between the near and far side of the belt
    - Support for Slim/arrow inserter in the new positioning mode
    - Support for big inserter in the new positioning mode
  Known Issues:
    - With a size 5 grid you may experience performance issues in the world selector ( I need to optimize the code to fix this so this will take quite a while )
    - The new placer does not work with blueprint sandboxes
  Notes:
    - Since I have no friends (maybe) the world selector is not tested in multiplayer, expect bugs!
Version: 1.0.10
Date: 2023-10-17
  Bugfixes:
    - Fixed mod-checking the hotkeys even when it shouldn't
Version: 1.0.9
Date: 2023-10-16
  Added:
    - Hotkeys for pickup-offset
  Bugfixes:
    - distance adjust hotkeys (if you know a way to read minds to implement the other diagonals tell me)
    - rotation adjust hotkeys
  Changes:
    - Configuration UI is now disabled for mini loader and RenaiTramsportation mods
    - pickup-Drop UI is now centered
    - Slim inserter settings are now hidden if none are detected (sorta, it only checks if known slim inserter mods are present due to Factorio limitations)
    - Corrected some parts of my terrible English in the changelog
    - Small optimizations to the disable-long-inserter script
  Maybe:
    - Compatibility with RenaiTramsportation (this is going to be a headache...)
  Notes:
    - hotkeys are disabled in slim/big inserter due to mental health limitations, the support will come in the next update hopefully (too much math for my poor brain)
    - If arrow inserter and RenaiTramsportation are installed, RenaiTramsportation will crash and Smart_inserter will appear in the crash log, it's NOT smart_inserter fault (smart inserter does not affect the distance of the inserter in the data phase)
Version: 1.0.8
Date: 2023-10-04
  Added:
    - 2x2 inserters support
  Bugfixes:
    - drop offset when switching position didn't update... now it does...  
  Changes:
    - New disable-long-inserter script
  Planned:
    - Hide slim inserters settings if none are detected (DONE)
Version: 1.0.7
Date: 2023-09-27
  Bugfixes:
    - Crash due to missing texture in 1.0.6 (sorry)
Version: 1.0.6
Date: 2023-09-27
  Added:
    - Offset technologies
    - Settings to enable offset technologies
  Changes:
    - Changelog changes 
    - Better localization for some settings (again)
    - Removed the separator between pickup/drop offset and centered pickup/drop offset
  Migrations:
    - Now when migrating from Bob some technologies will be migrated to Smart Inserter tech
  Bugfixes:
    - Crash when clicking on the UI with pickup/drop offset disabled
  Maybe:
    - Centre the ui for pickup/drop position
Version: 1.0.5
Date: 2023-09-21
  Added:
    - Ability to change pickup offset
    - Setting to enable/disable offset selector (on by default)
    - Added "Inserter_Config" to the incompatible mods
  Changes:
    - Better localization for some settings
  Planned:
    - Offset technology (DONE)
    - Rewrite the code to disable long inserters (DONE)
Version: 1.0.4
Date: 2023-09-20
  Changes:
    - Disabled cells now show the pickup/drop icon
  Maybe:
    - Support for 2x2 inserters
Version: 1.0.3
Date: 2023-09-02
  Changes:
    - Slim inserter now appears as a rounded square to avoid misleading direction by the arrow
    - Now the offset is set to be the farthest position from the inserter to maintain vanilla item placement on the belt (also I like it aesthetically)
    - Directional slim inserter is not true by default
  Bugfixes:
    - Slim inserter position swap was wrong in some specific cases (I hope this is the last time I need to fix this)
Version: 1.0.2
Date: 2023-08-20
  Added:
    - Technology to unlock inserters range (off by default)
    - Technology to unlock inserters diagonals (off by default)
    - Setting to enable single lane in slim inserters (ON by default, this is how slim inserters should work with this mod for its creator)
  Bugfixes:
    - Some UI problems while using slim inserters
Version: 1.0.1
Date: 2023-08-15
  Changes:
    - Lowered the max inserter range to 1 instead of 2
    - Lowered the default max inserter range to 3 instead of 4
    - Some localizations
  Added:
    - Compatibility with "Kuxynator's Slim Inserters" and "Arrow inserter"
    - Setting to disable long inserter recipes
    - Setting to enable directional inserters
Version: 1.0.0
Date: 2023-08-12
  Notes:
    - First release
    - This is a fork of "Inserter_Config" to fix a bug and add some (+-QOL) features
  Maybe:
    - Technology to unlock different grid size