|
Post by SACRIFICIAL on Feb 10, 2017 13:20:54 GMT -5
Thanks works like a charm. May I use some of your code to make custom animation to my objects SACRIFICIAL ? Feel free to use the codes, just make sure to change the "Tuning Ids" so they don't conflict with Sérinion object
|
|
|
Post by SACRIFICIAL on Feb 9, 2017 23:58:27 GMT -5
Nice idea, I love the objects that You created, it reminds me of Mortal Kombat ok so I've found what's causing the infinite looping issue In the " Animation Tuning Resource" Serinion:UpsideDown_AnimationTuningit had a "Repeat" command set to true. and didn't have an "end_state" The animation tuning resource should look like this instead <?xml version="1.0" encoding="utf-8"?> <I c="AnimationElement" i="animation" m="animation.animation_element" n="Serinion:UpsideDown_AnimationTuning" s="15717478694179592854"> <T n="actor_name">x</T> <T n="asm_key">02d5df13:00000000:C3A941C2941D474B</T> <L n="begin_states"> <T>UpsideDown</T> </L> <L n="end_states"> <T>exit</T> </L> </I> changing the "Animation Tuning Resource" to that should fix the problem. good luck
|
|
|
Post by SACRIFICIAL on Feb 9, 2017 20:18:33 GMT -5
Hello. SACRIFICIAL I was happy someone make a custom animation to an object finally, but there is a terrible issue. How do sims stop hanging down? I just cancel the iteration and my sims continue hanging down, and even if i delete the object, sims get trapped there. :( Hello I've noticed this issue while working on the interaction but decided to ignore it since "I believe" that You want Your sims to stay hanged up there and not be able to go down. a simple "Reset Sim" interaction worked to get the sims down. I don't believe that it's the reference from "spooky stuff" that's causing the issue because I own the pack & still had it. maybe it's happening because I made the interaction time "Too Long" <T n="max_time">99999</T>
<T n="min_time">99999</T> I've made different "Custom interactions with custom animations" before & the sims never got stuck when I asked them to stop. I'm assuming it's the time of the interaction that's causing this
|
|
|
Post by SACRIFICIAL on Feb 9, 2017 20:12:50 GMT -5
You are the best ! Congratulation ! It's very good. Very good work. Indeed, there is still some error of position. But it's a good start ! I will study the file in detail to try to understand your work. thank you so much. You're welcome & I'm glad that You like the work I tried to change the position as much as I can so it works this way. here's a tip for changing the position in Serinion:UpsideDownPosition_Interaction try to change the numbers in the constrains
<L n="_constraints">
<U>
<L n="constraints">
<U>
<E n="key">HUMAN</E>
<V n="value" t="cone">
<U n="cone">
<T n="angle">70</T> <---
<T n="ideal_radius_max">0.1</T>
<T n="ideal_radius_min">0.1</T>
<T n="max_radius">5</T>
<T n="min_radius">1</T>
</U>
</V>
</U>
</L>
</U>
<U>
<L n="constraints">
<U>
<E n="key">HUMAN</E>
<V n="value" t="facing">
<U n="facing">
<T n="inner_radius">0</T>
<T n="range">135</T> <---
</U>
</V>
</U>
</L>
</U>
</L>
I'm not sure which one of them changes the sim's rotation but I'm assuming it's the one's where I put an arrow at "<---" Good luck
|
|
|
Post by SACRIFICIAL on Feb 9, 2017 12:20:04 GMT -5
Victory!!!After hours of tinkering and trying different options and methods I finally was able to make the object work the way it should! I'm really excited and happy about this & I hope that it's good enough for You. beside adding the interaction to the object I had to modify the mesh placement & change the footprint of the object; thanks to @misters for the valuable information. You can get the modified package from HEREthere are slight issues that I've noticed after all but they're small -Sometimes sims don't get placed 100% perfectly in the cuffs "mostly they do" -The shadow placement is not the same as Sims shadow placement and that's all it was a pleasure helping You with this project & I don't want You to feel that You took away from My time as I've learnt a few things while working on it if You have more questions I'd be happy to help if I can, & I know that You want to learn the way I created this interaction so I'm going to make a tutorial on it when I have more time. have a great day
|
|
|
Post by SACRIFICIAL on Feb 9, 2017 11:01:49 GMT -5
Export the footprint from a rug and import it into your mesh On a side note, if click on object polygons in the rug and change the 00000005 to 00000007 the sims will not walk on it, but the object can still be placed under and through things like a rug. Thank You so much, it worked like a charm! Much appreciated ❤
|
|
|
Post by SACRIFICIAL on Feb 8, 2017 16:05:37 GMT -5
Hello, I've been trying to make a custom object with it's custom mesh to be route free but had no luck achieving that, by route free I mean that sims can walk through it/Under it like for example "rugs" "Ceiling lights" "Baby Rattles" but my sims always go around the object to route. what do I have to modify to make my sims route through the object ? Thanks in advance
|
|
|
Post by SACRIFICIAL on Feb 8, 2017 16:01:55 GMT -5
I'm having so many problems making this work, I've spent about 7 hours trying to achieve what's wanted here but I get stuck at weird problems. I made everything work fine except not on Your object's mesh, sims just refuse to go under Your object's mesh. so I tried adding the interaction to an original baby decor thing and it worked perfect but when I try it on the modified mesh they refuse to go under it. I'm going to make a post about this issue and see if someone can help me with that
|
|
|
Post by SACRIFICIAL on Feb 7, 2017 17:31:52 GMT -5
I would like to share My information with people who'd like to learn to be honest, but I think creating a video for it would be easier to understand than text. Thanks for modifying the file, I'll look into it when I have some free time & I hope that it will work the way You want it
|
|
|
Post by SACRIFICIAL on Feb 7, 2017 17:29:48 GMT -5
I don't have much experience in this area but have you tried using a compiled version of the script instead of loose? I actually have to include both loose & combined versions in the script, I've added interactions to sims via a script but it's not working for terrains for some reason. I appreciate the suggestion, thanks a lot for the reply EDIT: I've finally found a code that adds interactions to terrain object by " batman101
from Sims 4 Occult Life State: Succubus mod. This is the working code to add interactions to a terrain via python
import services
import injector
import sims4.resources
from sims4.tuning.instance_manager import InstanceManager
from sims4.resources import Types
DG_DeadlyToddlers_Interactions_ObjectTerrain_sa_instance_ids = (13434953397345340498, 11438713963126644620, 15313978156997466037,)
DG_DeadlyToddlers_Interactions_ObjectTerrain_object_ids = (14982,)
@injector.inject_to(InstanceManager, 'load_data_into_class_instances')
def add_superaffordances(original, self):
original(self)
if self.TYPE == Types.OBJECT:
affordance_manager = services.affordance_manager()
sa_list = []
for sa_id in DG_DeadlyToddlers_Interactions_ObjectTerrain_sa_instance_ids:
key = sims4.resources.get_resource_key(sa_id, Types.INTERACTION)
sa_tuning = affordance_manager.get(key)
if not sa_tuning is None:
sa_list.append(sa_tuning)
sa_tuple = tuple(sa_list)
for obj_id in DG_DeadlyToddlers_Interactions_ObjectTerrain_object_ids:
key = sims4.resources.get_resource_key(obj_id, Types.OBJECT)
obj_tuning = self._tuned_classes.get(key)
if not obj_tuning is None:
obj_tuning._super_affordances = obj_tuning._super_affordances + sa_tuple
|
|
|
Post by SACRIFICIAL on Feb 6, 2017 18:30:16 GMT -5
There are no tutorials for this kind of mods yet, I had to discover things by myself. You don't have to edit the xml files, just edit the object & mesh like I suggested & I'll do the rest for You
|
|
|
Post by SACRIFICIAL on Feb 6, 2017 12:45:40 GMT -5
You're welcome I've figured that explaining this in text would take a long time & would be a hard process for You if You know nothing about tuning resources, I might do a tutorial for this kind of mods in the future. I decided to create the interaction for You & attach the animations to it & put it on the object, You can get the modified package from here LINKbut I'm having a problem making the sim stand below the object since this is My first time creating an animation that requires the target to be under the object. here's what it looks like I've tried changing the constraints in the interaction so the sim will be standing under it, but the sim couldn't route to the place since You've used a floor sculpture & the game kept the settings for the sculpture as if it was sitting on the floor. I recommend copying a different object that has a "ceiling" rig & footprint <-- this is not really My specialty & I've never worked with these before. You can copy the "baby genius mobile" as I find it the most fitting here. & then changing the mesh of that object to Your object's mesh. Also You should rotate the object's mesh in blender to face the other side since the sim will start the animation "Facing" the object. btw I love Your idea & animation, it looks great Good luck
|
|
|
Post by SACRIFICIAL on Feb 5, 2017 17:52:05 GMT -5
Hello, You can create a custom buff using "Zerbu's mod constructor" & inside the buff You can put a "Basic Extras" appearance modifier that puts on the glasses whenever that sim has that buff. You'll also need to create a custom interaction to give Your sim the buff that has the glasses & another one to take the buff off. If this is Your first time creating such a mod & reading what I provided made You confused then maybe You'll need to look at some tutorials first But this kind of mod is possible, however You'll have to click on the sim itself and not the glasses I'll be happy to help if You have any questions
|
|
|
Post by SACRIFICIAL on Feb 5, 2017 17:41:20 GMT -5
You're going to need a JAZZ File, which can be easily opened & edited in Sims 4 studio or Notepad++, the jazz instances are called "ASM" -Animation State Machine- everything You need to edit or modify is mostly straight written into it & easy to understand / modify FA"Clip Name"
These are the things that You'll need:
1.Clip resource+ It's Clip header -that is auto generated by Sims 4 studio when creating a new clip- 2.ASM Key "JAZZ resource" 3."Animation Tuning Resource" -usually a very short text that contains the ASM KEY to make it playable through an interaction 4."Interaction Tuning resource" XML -A simple reaction interaction FA: -Angered by ghostly rage reaction- to make the animation played through an interaction
if You don't know how to create or clone standalone objects I suggest that You watch a video tutorial or read a tutorial post first. after You've learnt how to do that and got Your custom object + Interaction to work; post here to let me know & I'll tell You what to do next.
It's an easy process but You need to take it a step by step
|
|
|
Post by SACRIFICIAL on Feb 5, 2017 15:12:32 GMT -5
Hello, I've been trying to add interactions to a terrain using a python script but it's not showing up in game. I've tried adding them to "object_terrain" tuning recourse " "14982" and it works fine but I couldn't figure out how to add them via a script. This is the script that I used import services
import injector
import objects
import objects.terrain
from objects.terrain import Terrain
DG_DeadlyToddlers_Interactions_ObjectTerrain_sa_instance_ids = (11438713963126644620, 13434953397345340498, )
DG_DeadlyToddlers_Interactions_ObjectTerrain_object_ids = (14982, )
@injector.inject_to(Terrain, 'on_add')
def DG_DeadlyToddlers_Interactions_ObjectTerrain_add_super_affordances(original, self):
original(self)
sa_list = []
affordance_manager = services.affordance_manager()
for sa_id in DG_DeadlyToddlers_Interactions_ObjectTerrain_sa_instance_ids:
tuning_class = affordance_manager.get(sa_id)
if not tuning_class is None:
sa_list.append(tuning_class)
self._super_affordances = self._super_affordances + tuple(sa_list)
I've also tried this
import services
import injector
import objects
import types
import objects.terrain
from objects.terrain import Terrain
DG_DeadlyToddlers_Interactions_ObjectTerrain_sa_instance_ids = (11438713963126644620, 13434953397345340498, )
DG_DeadlyToddlers_Interactions_ObjectTerrain_object_ids = (14982, )
def attachinteraction(sa_list, affordance_manager, sa_id):
tuning_class = affordance_manager.get(sa_id)
if not tuning_class is None:
sa_list.append(tuning_class)
@injector.inject_to(Terrain, 'on_add')
def DG_DeadlyToddlers_Interactions_ObjectTerrain_add_super_affordances(original, self):
original(self)
if not self.guid64 in DG_DeadlyToddlers_Interactions_ObjectTerrain_object_ids:
return
sa_list = []
affordance_manager = services.affordance_manager()
if(isinstance(DG_DeadlyToddlers_Interactions_ObjectTerrain_sa_instance_ids, int)):
attachinteraction(sa_list, affordance_manager, DG_DeadlyToddlers_Interactions_ObjectTerrain_sa_instance_ids)
else:
for sa_id in DG_DeadlyToddlers_Interactions_ObjectTerrain_sa_instance_ids:
attachinteraction(sa_list, affordance_manager, sa_id)
self._super_affordances = self._super_affordances + tuple(sa_list)
but I had no luck, I wish someone can help me with this Thanks in advance EDIT: I've finally found a code that adds interactions to terrain object by " batman101
from Sims 4 Occult Life State: Succubus mod. This is the working code to add interactions to a terrain via python import services import injector import sims4.resources from sims4.tuning.instance_manager import InstanceManager from sims4.resources import Types
DG_DeadlyToddlers_Interactions_ObjectTerrain_sa_instance_ids = (13434953397345340498, 11438713963126644620, 15313978156997466037,) DG_DeadlyToddlers_Interactions_ObjectTerrain_object_ids = (14982,)
@injector.inject_to(InstanceManager, 'load_data_into_class_instances') def add_superaffordances(original, self): original(self)
if self.TYPE == Types.OBJECT: affordance_manager = services.affordance_manager() sa_list = [] for sa_id in DG_DeadlyToddlers_Interactions_ObjectTerrain_sa_instance_ids: key = sims4.resources.get_resource_key(sa_id, Types.INTERACTION) sa_tuning = affordance_manager.get(key) if not sa_tuning is None: sa_list.append(sa_tuning) sa_tuple = tuple(sa_list)
for obj_id in DG_DeadlyToddlers_Interactions_ObjectTerrain_object_ids: key = sims4.resources.get_resource_key(obj_id, Types.OBJECT) obj_tuning = self._tuned_classes.get(key) if not obj_tuning is None: obj_tuning._super_affordances = obj_tuning._super_affordances + sa_tuple
|
|