1. Please be advised of a few specific rules and guidelines for this section.

Outdated Dye Mod 2.1 (Enraged Koala)

Change the color of almost anything! (Previously Dyeing Bucket)

  1. Xavius

    Xavius Cosmic Narwhal

    Wait, so I activate the table while holding something (via the hotbar) and it checks through my inventory first? That's... inconvenient. I have five uniforms to dye at a time, with three of the five chestplates in one color, the remainder in two other colors.
    Also, what happens if I am wearing the item in question? Is there a crash, it just doesn't work, or what?

    I guess, in addition, why did you go with this new style? I haven't tried it yet, so I can't give it a rating, but I really like the simple bucket of dye mechanic.

    Finally, can you put up a picture of what the new Dyeing Station looks like? I've got a base set up with a design aesthetic, and I really don't want to have to make a brand-new room style for a single item. My server is a light RP server, so I hope you can understand why I'm a tad wary about the change. I've so far had the bucket set up in the bathroom, along with some slime blocks 'splattered' to the walls and floor.
     
  2. MrMagical

    MrMagical Subatomic Cosmonaut

    Every other crafting station works the same way, it is just not easy to notice. I can't do much about it. I'm constantly looking for ways to get a better interface, but every approach seems to have a downside right now.

    Like I said, put the items you want to dye in the top of the materials bag (dirt icon) and they will get the best priority. When the items are dyed they are put back in a kind of reverse order. If you have enough room they would go from the materials bag to the hotbar or backpack section.

    Crafting stations simply ignore the items you are wearing. No crashes. It will still look for items in the other parts of your inventory.

    The old system required about 15000 recipe files and caused a startup time of over 2 minutes for some people. The new system is extremely lightweight and is extendable by other mods.

    It has the same style as the normal shiplocker and tech station. See this animated image. An alternate "low-tech" look for the dye station is probably coming once I calm down from this new release.
     
  3. Xavius

    Xavius Cosmic Narwhal

    Ah, I see, it's like the upgrading system for the tiered pickaxes and such, got it.
    I see, okay, I was misinterpreting what you had said previously.
    Alright, I was just trying to cut down on the number of tables, though I could easily see a large sink object as an alternate 'table' idea. And we'd finally have an actual sink, something we don't actually have yet.
     
  4. Raieth

    Raieth Ketchup Robot

  5. Mushie

    Mushie Phantasmal Quasar

    Any chance you can make an alternative verson with dying bucket insted of dying station? (crafted same way as before, and 200 pixels on 3d printer?
     
  6. Marxon

    Marxon Supernova

    Any guide for the average joe to add compatibility with clothing from mods?
     
  7. MrMagical

    MrMagical Subatomic Cosmonaut

    I am not sure what you mean. Do you want a bucket that uses the old system or the new system?

    Not sure if an item works or not? Try it! The previews are accurate unless it's a placeable object and you should never get a crash.

    Adding support (Easy method):
    Recolor the item images to use these orange colors for the areas that should change:
    [​IMG]
    Then, specify at least a default set of colors in the item properties file:
    Code:
    "colorOptions" : [
        /* BLUE */
        { "ffca8a" : "96cbe7", "e0975c" : "5588d4", "a85636" : "344495", "6f2919" : "1a1c51" }
    ]
    Edit the 2nd color code of each pair to change it to something other than blue.

    Advantages:
    Easy to do and adds no dependency on the Dye Mod at all.
    Disadvantages:
    Only people with the updated images and item properties will see the changes.
    It works best if the author of the mod distributes the changes.

    Adding support (Hard method):
    Add the file /objects/dyeengine/dyestation/dyestation.object to a mod. The format might look like this:
    Code:
    {
      "__merge" : [],
      "dyeEngine" : {
        "armor" : {
          "specialSets" : {
            "mySet1" : { "palette" : [ [ "e0cccd", "bf9798", "955b5d", "653e3f" ] ] }
          },
          "special" : {
            "myItem1" : "mySet1",
            "myItem2" : { "palette" : [ [ "ffca8a", "e0975c", "a85636", "6f2919", "db9675", false, "ae6762", "8b5252" ] ] },
            "myItem3" : "mySet1"
          }
        }
      }
    }
    In this example, myItem1 and myItem3 get their settings from mySet1. myItem2 has its own settings.
    Under "palette", specify the colors in the item images that should be replaced. The colors go from light to dark and loop around after 4 colors. Specify the word false without quotes to add a gap.

    Advantages:
    When you dye the item, everyone will see the same changes. This is because you've edited the dye process rather than the item itself.
    Disadvantages:
    It's difficult to do and adds a kind of dependency on the Dye Mod. People without Dye Mod installed will see an error in their log file, but the error is harmless.
     
  8. Marxon

    Marxon Supernova

    @MrMagical
    I have some of these modded items that worked fine in the old version once recipes were added with their file names. Though the problem now is the items I'm trying to add support for use a set of very light blue colors as the target color to change instead of the current palette, but the item properties were also different to accompany this, but now using the machine always returns the color grey. So to save myself time, would it work if I directly pasted the color definitions from the original item to the merged object script? Or is there a way to make it use the old colorindex method like the recipes did?
     
  9. Crystan

    Crystan Maverick Hunter

    I've added support to some of the items of my MMX mod back when you released the first version of the dying bucket mod and its not possible to dye them anymore with the new version. What do i need to change to make it work with the new system (easy method)? Maybe the problem is that the clothes/armors use a different standard color than the "brown" vanilla colors? Would be really sad if thats the case, because it would mean really really much work to change the sprites.
     
  10. Marxon

    Marxon Supernova

    I copied the colors from the item itself and nothing. Did I do this right?
    Code:
    {
      "__merge" : [],
      "dyeEngine" : {
        "armor" : {
          "specialSets" : {
            "avaliracial" : { "palette" : [ [ "ffca8a", "668AA8", "465371", "262539" ] ] }
          },
          "avaliracial1" : {
            "avaliracial1chest" : "avaliracial",
            "avaliracial1head" : "avaliracial",
            "avaliracial1pants" : "avaliracial"
          },
          "avaliracial2" : {
            "avaliracial2chest" : "avaliracial",
            "avaliracial2head" : "avaliracial",
            "avaliracial2pants" : "avaliracial"
          }
        }
      }
    }
    The names for the item groups are exactly the same as the file names, and the item names themselves are what the files identify themselves as.
     
  11. MrMagical

    MrMagical Subatomic Cosmonaut

    Item names go directly under "special". Linking to a set in "specialSets" is optional. The "palette" should contain the colors to change from.
    Code:
    {
      "__merge" : [],
      "dyeEngine" : {
        "armor" : {
          "specialSets" : {
            "avaliracial" : { "palette" : [ [ "ffca8a", "668AA8", "465371", "262539" ] ] }
          },
          "special" : {
            "avaliracial1chest" : "avaliracial",
            "avaliracial1head" : "avaliracial",
            "avaliracial1pants" : "avaliracial",
           
            "avaliracial2chest" : "avaliracial",
            "avaliracial2head" : "avaliracial",
            "avaliracial2pants" : "avaliracial"
          }
        }
      }
    }
    You could try the hard method.
    If neither method seems like a good option, tell me what you think you need. Keep in mind that the script can not look into files other than the dye station object file.
     
  12. Marxon

    Marxon Supernova

    Well it seems I did it right but it still only returns grey. Grey is the first color on the list of color options. I tried for one item to manually specify but still no dice.
    Code:
    {
      "__merge" : [],
      "dyeEngine" : {
        "armor" : {
          "specialSets" : {
            "avaliracial" : { "palette" : [ [ "ffca8a", "668AA8", "465371", "262539" ] ] }
          },
          "avaliracial1" : {
            "avaliracial1chest" : "avaliracial",
            "avaliracial1head" : "avaliracial",
            "avaliracial1pants" : { "palette" : [ [ "668AA8", "465371", "262539"] ] }
          },
          "avaliracial2" : {
            "avaliracial2chest" : "avaliracial",
            "avaliracial2head" : "avaliracial",
            "avaliracial2pants" : "avaliracial"
          }
        }
      }
    }
    Could the fact that the patch is in a different mod folder do anything?
     
  13. MrMagical

    MrMagical Subatomic Cosmonaut

    Psst, try using the code I posted and make sure that the file is /objects/dyeengine/dyestation/dyestation.object
     
  14. Marxon

    Marxon Supernova

    It's a double miracle, the code works, and the game now magically launches almost exactly 10 times faster, takes 8 seconds instead of a minute in a half.
     
  15. RyuujinZERO

    RyuujinZERO Supernova

    Hrm, after discussing this with the folks in my mod channel and looking at your implementation, i have concerns that the new dye bucket mod may be mutually incompatible with the Avali race mod's coming vanity overhaul.

    Basiclly, the Avali race mod clothing uses 3 discreet colour channels, totalling 12 entries per colour definition. it is done this way, because each outfit has 3 versions that use that re-use the same sprites, but have wildly different colour definitions. Each of those variants has 4 colours which change between colour entries, while the other 8 colours are essentially identical between each version (But differ from the colour seen in the PNG file). My concern, is that if I use the dye bucket to modify the 4 variable colours; will the clothing retain the other 8 colours defined in the default colour definitions, or will those colours be reset back to those of the PNG file.

    [​IMG]

    While the colour definitions look like this:
    Code:
        {    // RED
            "F3A308" : "f4988c", "D27702" : "d93a3a", "9E5500" : "932625", "7C3800" : "601119",        // Orange -> Red
            "464646" : "d8d8d8", "363636" : "c1c1c1", "242424" : "a2a2a2", "1c1c1c" : "525252",        // Black -> White
            "e1e1e1" : "464646", "c6c6c6" : "363636", "a7a7a7" : "242424", "575757" : "1c1c1c"        // White -> Black
        },
    As you can see here - all these use the same sprites. Horizontally, you have the 3 "variants" (Orange represents the dye colour), vertically illustrates examples of how the (default) dye system affects the variants. Simply put; will this system still work with Dye Bucket, or does the new system render the mod incompatible with the dye bucket?
     
    Last edited: Mar 2, 2014
    Marxon likes this.
  16. Xavius

    Xavius Cosmic Narwhal

    I have one last question real quick: when I go to create a dyed suit, will it take dyed suits first or prioritize undyed materials first?
     
  17. MrMagical

    MrMagical Subatomic Cosmonaut

    @RyuujinZERO
    It seems like what you want to do is not possible without changing the lua script (which is totally doable, even from another mod).

    I do plan on including more advanced item setups in the future, but I need to know what people would want from such a system.
    Would it be sufficient to add the ability to "lock" a set of colors to always be replaced by another set of colors, on a per-item basis?

    @Xavius
    It can't prioritize like that. No crafting station can. Sorry.
     
  18. RyuujinZERO

    RyuujinZERO Supernova

    It should do. Basiclly I want to be able to define a set of "locked" colours within a colour set, in addition to the colours that are replaceable with dyes.

    I mean it's easy enough for me to just make 2 variant sprite sheets, it's not like the sprite sheets are super big files or memory hogs, and it'd make life easier for me anyway. Was just making full use of the core engine features. I just wanted to check if this could be done at a script level first
     
  19. Xavius

    Xavius Cosmic Narwhal

    @MrMagical
    I was wondering if the dyed clothes counted as a different object for the crafting, meaning it would use up the undyed clothes first or not, basically. Either way, I tested it and found my answer anyhow, so thank you anyways for making this mod.

    Also, what did you think of the idea for an alternate dying station being a shop sink, perhaps a bit dye-splattered?
    I'm honestly surprised there's no sinks in the game already; there's toilets and mirrors (albeit broken ones) so why not sinks?
     
  20. Tripod

    Tripod Phantasmal Quasar

    How do I successfully __merge with your dyestation.object? I'm trying to include the parameters "locker128" and "locker256" to the objects whitelist.

    First I tried:
    Code:
    "__merge" : [],
    "dyeEngine" : {
      "object" : {
        "whitelist" : [
          "locker128",
          "locker256"
        ]
      }
    }
    Then I thought you might have to nest __merge like so:
    Code:
    "__merge" : [],
    "dyeEngine" : {
      "__merge" : [],
      "object" : {
        "__merge" : [],
        "whitelist" : [
          "locker128",
          "locker256"
        ]
      }
    }
    Then I tried a complete overwrite of the dyeEngine parameter with copy and paste and editing in my values. Even that didn't work! (Not that I'd want to do that)

    I can get it to work perfectly if I directly overwrite your entire file, but I would much prefer using __merge.

    EDIT: Forgot to say thanks for the great mod. You've done an awesome job! I've got my Link Lite mod compatible with it. Now I'm making Larger Lockers compatible so that locker categories can be achieved.
     
    Last edited: Mar 3, 2014

Share This Page