!skins (Skins Factored)


Library mod that makes it easy for other mods to add custom characters (skins), with a character picker. Written to be compatible with almost all mods that edit the default character prototype. Explicitly compatible with Jetpack, Space Exploration, RPG System, and CharacterModHelper.

Utilities
7 hours ago
1.1 - 2.0
3.74K

Changelog

Version: 1.3.3
Date: 20.11.2024
  Compatibility:
    - Hide the GUI, shortcuts, and player settings when running in compatibility mode.
  Bugfixes:
    - Fix a desync related to compatibility with miniMAXIme.
    - Fixed the close button of the GUI not specifying the correct sprite due to 2.0 changes.
Version: 1.3.2
Date: 15.11.2024
  Bugfixes:
    - Fix the crash site site cutscene being interrupted
Version: 1.3.1
Date: 15.11.2024
  Features:
    - Added a setting to enable/disable the button for the skin selector in the top left.
  Compatibility:
    - Correctly copy character attribute bonuses, fixing compatibility with RPGsystem.
  Bugfixes:
    - Fixed the skin previews in the character selector being a black rectangle (caused by a Factorio update).
    - Fixed the player's hand position and cursor ghost not being copied.
Version: 1.3.0
Date: 2.11.2024
  Compatibility:
    - Automatically finds other character skins with "skin" in the name and displays them in the selector window!
    - Data-stage compatible with Pi-C's "CharacterModHelper"
  Bugfixes:
    - Fix a crash caused when switching skins from the Informatron menu fails.
Version: 1.2.2
Date: 1.11.2024
  Features:
    - Redesign skin selector GUI to match the rest of Factorio's GUIs.
  Bugfixes:
    - Correctly handle armor animations's armor field again (fixes a potential crash introduced in 1.2.1).
    - Keep the current GUI open when switching characters.
Version: 1.2.1
Date: 25.10.2024
  Features:
    - Allow skin mods to specify custom footprint particles for a character.
    - Allow skin mods to specify a custom light definition for a character.
    - More error detection when registering a skin id.
  Bugfixes:
    - Fix how custom water reflections are specified, and correctly apply them to the prototype.
Version: 1.2.0
Date: 21.10.2024
  Features:
    - Update to Factorio 2.0.
    - No changes are required by dependent character mods; just change the factorio_version to 2.0 in your info.json!
Version: 1.1.0
Date: 10.7.2023
  Compatibility:
    - Detects when running with other skin selector mods; gives them our skins & disables our skin swapping functionality.
    - In compatibility mode, displays a message in the GUI with information about registered skins & which mod is causing compatibility mode.
    - Currently works with miniMAXIme and RitnCharacters (though the latter is inherently buggy and not recommended).
    - miniMAXIme + !skins + Jetpack will cause a crash upon toggling the jetpack; this is waiting for a fix from minime.
Version: 1.0.1
Date: 9.7.2023
  Bugfixes:
    - Fixed filename capitalization error when requiring "common.lua"
Version: 1.0.0
Date: 30.6.2023
  Features:
    - New API! Uses a function instead of setting table values.
    - Incremented the schema_version (now 2) to account for the above change.
    - Better error protection and messages when invalid data is passed to the library.
    - Added a warning when loading a save with a missing skin in use (player's inventory is unavoidably deleted).
  Bugfixes:
    - Reset the all-skins smuggle setting on every game load, now the mod will recognize skins that are added later in the game.
    - Fixed the GUI buttons not changing when skins are added/removed.
    - Moved some internal stuff to common.lua, and cleaned up some code.
Version: 0.2.0
Date: 2.8.2022
  Features:
    - Added skin selector GUI, with live previews of all available skins and the player's current character.
    - The skin selector GUI is embedded in the Informatron page.
    - Added better instructions to both menus.
    - Added mod-gui button, keybind, & quickbar shortcut to open the GUI.
    - Added an option to disable the GUI's camera view of the current character (useful in multiplayer because of latency).
    - Improved initalization and cleanup of player data (active skin, etc.). This prevents potential crashes or desyncs in multiplayer.
  Bugfixes:
    - Fixed the /character command help not displaying.
    - Fixed an issue with trying to swap characters during the intro cutscene (it shouldn't be possible, but was in specific situations).
    - Moved a safety check to prevent swapping to the current character.
    - Fixed an issue with resetting the setting value when swapping characters failed.
  Compatibility:
    - Better handling of cases where the player is controlling a character from a different mod.
Version: 0.1.7
Date: 28.7.2022
  Features:
    - Added schema_version field to the skins_factored table. Current version is 1
Version: 0.1.6
Date: 27.7.2022
  Compatibility:
    - Call all mods' on_character_swapped event handler, improving compatibility with many character-related mods.
Version: 0.1.5
Date: 27.7.2022
  Features:
    - Copy crafting queue progress when switching characters.
  Bugfixes:
    - Fix crash when starting scenarios without a player character.
    - Fix items stuck in crafting queue by full inventory being both created and re-queued when switching characters. Items will not be re-queued but will still drop on the ground (this is not possible to prevent).
Version: 0.1.4
Date: 19.3.2022
  Features:
    - Swapping characters while in a vehicle (driver or passenger) keeps you in the vehicle.
    - If after swapping you would be inside a structure, you are moved outside of it. Fixes getting stuck in rocket silos or while being moved by a mod (SE cargo rocket).
Version: 0.1.3
Date: 18.3.2022
  Features:
    - Informatron page with basic info.
  Bugfixes:
    - The message displayed when switching characters now uses the right prototype name for the engineer.
Version: 0.1.2
Date: 17.3.2022
  Features:
    - Proper handling of the crash site cutscene at the start of the game; characters will now show the correct skin during the cutscene.
  Bugfixes:
    - Initalize variables that would not be set when starting a new game, causing a crash.
Version: 0.1.1
Date: 16.3.2022
  Features:
    - Notify the user if they try to swap to the skin they're currently using, instead of re-swapping to the same one again.
    - Reset skin setting if swapping characters fails.
    - Better validation before swapping characters, preventing some possible crashes.
    - Correctly set player's facing direction when swapping to include diagonal directions.
  Bugfixes:
    - Only attempt to change a player's skin when they change the skin setting, instead of when any mods' settings change (whoops lol).
  Compatibility:
    - Improve behavior with other skin changing mods. It is now possible to swap between other mods' characters by first selecting the engineer.
Version: 0.1.0
Date: 7.3.2022
  Features:
    - Initial release!
    - Properly merge character's animation tier armor lists
    - Generate corpse animation map from character's armor list
Version: 0.0.4
Date: 7.3.2022
  Compatibility:
    - Call Space Exploration's on_character_swapped event
Version: 0.0.3
Date: 25.10.2021
  Features:
    - Swapping character when setting changed
    - Choose right character on respawn
  Locale:
    - Added English translation
Version: 0.0.2
Date: 24.10.2021
  Features:
    - Swapping characters fully functional (all data copied)
    - Saving settings, no reading yet
Version: 0.0.1
Date: 23.10.2021
  Features:
    - Auto generating prototypes