Chaos Carrier

3,485 Downloads 323 Thanks  Thanks 56 Favourited 96,316 Views
Uploaded: 10th Apr 2010 at 7:41 PM
Updated: 10th Apr 2010 at 10:03 PM
Carry Any ICarryable or ICustomCarryable Object Anytime, (Almost) Anywhere, while doing (Almost) Anything else! Ideal for machinima makers, this is my attempt to mimic the various Prop Hacks for TS2.

What is this mod?
  • This is a Tuning Injection Mod
  • This mod should run with ALL VERSIONS of the game, BUT IT HAS ONLY BEEN TESTED ON VERSION 3.2.8
  • This mod should not conflict with any other core mods or tuning mods, but it has not been tested to ensure this.
  • If the mod is not working, make sure your framework is functioning correctly. Read the instructions below, put all the necessary files in the correct places, and restart your game. If this mod still fails to function in your game, then you may post about your problem.

What does this mod do?
This mod allows you to command any sim to pick up, hold, and put down any object in the with a script class that inherits either the ICarryable or ICustomCarryable interfaces, including custom objects made by other modders.

Pick Up/Put Down Interactions:
All interactions are found under the Chaos Carrier… menu in the clicked object’s pie menu.
  • Pick Up Object: Added to every carryable object, this interaction causes your sim to pick up the object from wherever it is, even from their inventory.
    After they have picked it up, they enter a special Carry Object Posture (the round interaction that appears at the front of the interaction queue)
    Once a sim has entered this posture, they will be able to do (almost) anything while holding the object, and their arm will stay posed holding the interaction, except in certain rare cases where another animation overpowers the pose.
    However, even if the pose is overpowered, the object will still defy gravity and stay glued to your sim’s right hand until you tell them to put it down.
    If your sim sits down, starts socializing, picks up a child, or does something else that enters a new posture, don’t worry, as they’ll go right back to the Carry Object Posture once they’re finished and you command them to do something else.
    Canceling this posture will make the nearest put down object interaction un-cancelable or add a generic un-cancelable put down object interaction to the end of your sim’s queue.
    While this posture is in place, it has the added bonus of boosting the priority level of any user added interactions to the sim’s queue, meaning that they won’t stop to do something stupid, like panic over a fire or have a baby or die, until they’ve completed your orders.
  • Put Carried Object Here: Added to every terrain in the game, this will cause your sim to route to the clicked point and set the object down there.
    For some objects, the animation will only go about halfway down and the object will jump to the floor, due to Eaxoid laziness in making the animations for the object.
  • Put Carried Object in The Nearest Free {Surface Type} Slot: Added to every surface in the game, including tables, counters, desks, coffee tables, etc, this interaction causes your sim to route to the surface and place the object in the nearest available slot of the specified surface type to where you clicked on the surface.
    There are many different surface types, and their availability will vary based on the kind of object that your carrying and the kind of surface you clicked on. Below is a list of the most common types and the surfaces they’re most likely to appear in:
    --Computer (desks, tables)
    --Eating (tables, counters)
    --Homework (desks, tables)
    --Normal (all surfaces)
    --Prep (counters)
    For those of you doing machinima, you may want to experiment with every type of slot closest to where you clicked to check for the ideal position before taking the shot.
  • Put Carried Object in Inventory: Added to every sim in the game, this interaction causes your sim to put the object into their inventory, performing the into pocket/up butt animations that we all love.
    The carried object is then added to their inventory and you can remove it with the hand tool or by starting another Pick Up Object interaction.
    Once your sim uses any of these available ways to put down their carried object, they will exit the Carry Object Posture.
    Some minor objects, such as coffee mugs, may disappear completely instead of being added to your sim’s inventory. Take note of this when making machinima, and have plenty of back-up props at the ready.
    Eventually, I’ll add a feature where you can spawn any carryable object from a list without spending a dime or going through various preparation interactions, but it’s currently too buggy and wasn’t included in this version, considering it set the game to edit neighborhood mode every time it was entered.

Debugging Interactions
No, these interactions do not need debugging mode enabled or an advanced debugging mod to be seen. There’s no real harm in leaving them in for you players because all they really do is just display information, except for one interaction that can set the object’s rotation, which can already be done in buy/build mode.
These interactions can be found under the Chaos Carrier…Debug… submenu on every object in the game.
  • Show Product Data: Display information from the object’s BuildBuyProduct, including whether or not it can be stolen, repossessed, or set on fire. Sims have an additional interaction that allows you to choose from a list of the objects on the lot they’re currently on, which is useful for those invisible objects, such as the stairs helpers, pool helpers, and jigs.
  • Show Sim Posture Stack Trace: A sim’s posture is part of a stack of previous postures, with each posture linking back to the one that proceeded it. This interaction displays that stack for up to the first 20 postures in the stack (in order to prevent an overflow from recursive cyclic linking).
  • Show Sim’s Transition Interaction: When a sim switches between postures, this occasionally involves a hidden transition interaction that handle things like animations and executing the code of actual posture switch. When this interaction is clicked, this mod will continually update you with the sim’s current transition interaction every 5 sim minutes for 3 sim hours after the interaction is clicked. If you don’t like getting spammed with Notification Messages, don’t use this interaction.
  • Show Sim’s Interaction Queue: At first glance this interaction may seem useless, but actually, it can be useful because a sim can have hidden interactions in their queue that were added by the game code. This interaction also displays the full type name of each interaction in the queue, which can be useful too.
  • Total Product Count: Displays the total number of unique object BuildBuyProducts in your game (aka the number of objects in the build/buy mode catalog and special kinds of objects that don’t appear in the catalog).
  • Display Slotting Info: Displays the name of the object’s parent object that it’s slotted to or stored in, whether or not the object is in an inventory, and the name of the slot it’s sitting in, which will most likely be a 32-bit number.
  • Display Slotted Objects: Displays a list of all objects currently in the object’s containment slots, and the name of the slot that each object is in, which will most likely be a 32-bit number.
  • Display Location Data: Displays the data associated with the object’s position in the game world, including its lot id, room id, floor level, height above floor, position vector, forward vector, bounding box, and transform matrix.
  • Display Transform Data of Slot… Displays the position vector and transform matrix information for a selected containment slot of the object.
  • Set Object Rotation: Sets the angle of rotation of the object to the selected fraction of pi radians, which can be useful for those objects that are tricky or hard to rotate in build/buy mode.

Current Bugs/Quirks
  • There are some game interactions that will cause your sim to put down the object they’re carrying and not exit the Carry Object Posture. If this happens, simply use your favorite way of resetting the sim and they’ll lose the posture, or choose to pick up another object and replace it with a new one.
  • Sims cannot take carried objects into beds or lounge chairs. I may be able to eventually circumvent this, but for right now I don’t know enough about Postures to be able to do this.
  • Sims cannot take carried objects into pools. This may have to do with routing, and it may not be able to be circumvented without core modding. As with beds and lounge chairs, more research is required.

In future versions of this mod, I will try to not only fix these issues, but also add more advanced features, including a more powerful way to carry babies, toddlers, and possibly even children, without any of those stupid relationship requirements to get in the way.