Hi there! You are currently browsing as a guest. Why not create an account? Then you get less ads, can thank creators, post feedback, keep a list of your favourites, and more!
Quick Reply
Search this Thread
Instructor
Original Poster
#1 Old 23rd Jan 2006 at 5:55 PM
Default 2 animations in 1 object?
Hi guys,
Me again,sorry for the non descriptive title,but I was wondering is it possible to combine 2 animations in to 1 object,such as a fireplace with the animations "Sit down" and "View" For example the sim sitting on the fireplace base would raise comfort. Anyways,thanks for reading anyways!
Advertisement
retired moderator
#2 Old 23rd Jan 2006 at 7:46 PM
I haven't tried anything with animations in TS2, but with TS1, I did all sorts of things like that, so I'm supposing that it is perfectly fine. You just have to mess with the behaviors and animations, making sure they are all linked properly.

You gotta have faith . . .
www.Grapholina.com
Retired Duck
retired moderator
#3 Old 24th Jan 2006 at 4:04 AM Last edited by Echo : 24th Jan 2006 at 4:30 AM. Reason: bad spelling
What you're asking is possible but is not, strictly speaking, related to animations. An animation simply moves the various parts of the sim into a particular position. You could have the "view" option of something force the sim to run a sitting animation, but if that were the only change you made then the sim would appear to "sit" in mid-air. The animation command also cannot itself raise comfort - changing motives is managed by a different command.

What you're actually suggesting here is combining interactions. The difference is this: An animation moves the 3d model around so that it appears to be doing something. An interaction is the entire set of steps needed to do a particular thing - from going over to the object, animating the sim/object, changing motives, etc, to leaving the object afterwards.

As to whether interactions can be combined... It's a bit of an iffy one. Can you combine "Romeo and Juliet" with "Tom Sawyer"? They're both books, so you could theoretically just take all the pages from one and intersperse them amongst the other book's pages. However, the story wouldn't make a lot of sense. Likewise, taking two complicated interactions and just combining them into one interaction probably wouldn't work (worst case would be a game crash). However, if you had "Spot the Dog" and "Run, Spot, Run", then you're dealing with two fairly simple books which have some things in common. Combining these stories, while still taking a bit of work, would be somewhat easier. On the whole though, it'd probably be easier to read both books really carefully, take segments of useful text from both, and write a new story which is partially your own words and partially the words of the two books.

I guess that was a very roundabout way of saying that it depends on the complexity of the interactions you're trying to combine, the nature of the object you're trying to combine them in. And even if you have two interactions that seem to combine easily, you'll still have to work in some of your own code to "bridge" between them.
Forum Resident
#4 Old 24th Jan 2006 at 7:58 PM
I don't think he is asking to make sit and view one command, but to have them on one object.
Retired Duck
retired moderator
#5 Old 25th Jan 2006 at 2:58 AM
Ah, well in that case your chances are slightly better. It still varies from object to object, and depends on how similar the two objects are to start with, but it is possible. For example, several objects in the grand trianon imported the interactions from the mirrors into other objects like the dresser.
Mad Poster
#6 Old 20th Feb 2006 at 7:17 PM
Regarding to te animation combination, Echo, do you also mean the relative position of a sims body part for the overall sequence of animation has to be able to get back to the original default position after a complete set of animation? If not, will it cause a mess-up of sims animation? Simply because the next animation will pick up the last posture's relative positions.

As for 2 interactions in 1 object,
How can I just add some interactions from other objects into an objecr originally without any? If there're some tutorials about it, can you point me there, please? I'm not familar with the terms used still, sorry...
Retired Duck
retired moderator
#7 Old 21st Feb 2006 at 12:55 AM
They don't *have* to be back in the default position, but it will look odd when the animation finishes because the sim will sort of jump-slide back into the original position after the animation completes. It won't break your game, just look kinda odd. That's why all the animations in game link up. If you look at the more complex animations like "dance", you'll see that there's a "start" and an "end" animation, and that all the other animations start and end with the sim in the same position. That way the sim can play the start, any random sequence of dance moves, then an end to get the sim back to standing normally. Of course, if the animations are close but not quite pixel perfect, you can generally get away with it because the slide-jump is so small that most people don't notice.

As for your second question, the easiest way is to clone the object with the original interaction, and not bother about transferring it to a different object at all. As I said earlier, the process can vary significantly from one object to another, so I doubt there's going to be much in the way of tutorials for it. As a general run down though...
- You'll need to import (or create if the object doesn't have one) the pie menu functions and strings
- * Export all the BHAVs needed for the interaction from the donor object (all of them, not just the Interaction BHAV itself, but all the things it calls, and all the things they call, etc)
- Add the BHAVs into the new object and fix the instance numbers so none of them overlap
- Fix all the cross-references in the BHAVs to the correct instance numbers
- * Fix all the references in the BHAVs to other resources (STR, BCON etc)
- Add the new options to the pie menu.

The ones I've marked with a * are the ones that are the most challenging to do, and also the ones most likely to fail if the interaction and object are incompatible. In both cases, you have to be very capable of looking through BHAV code and understanding it to get through. I'd suggest reading up on BHAV info, but that's a fairly obvious suggestion. Good luck!
Mad Poster
#8 Old 21st Feb 2006 at 6:05 AM
Now, I start to remember and understand a bit why the "teleport here" by means of insiminator is so quick and the sims can get back to the default standing state. For the dance animation, that strategy is really like as in TS1, but I idn't realise there's a "slide-jump" part. So, that part is always the last or beginning animation of an animated interaction? Or it can also be somewhere between animations of a partiular animated interaction, right? Yeah, I'm wondering its potential positions of a given animation ssequence.

Wow, it's gonna take a lot of trials and fixes before I can handle it, as a noob, I'd better try something much simpler to begin with. :bandit: But, thanks very much for your suggestions and direcions. At least, I can start to build them up bits by bits now,
Retired Duck
retired moderator
#9 Old 21st Feb 2006 at 7:51 AM
Quote: Originally posted by niol
So, that part is always the last or beginning animation of an animated interaction? Or it can also be somewhere between animations of a partiular animated interaction, right?


It's generally any time when a sim goes from a postition at the end of one animation to a significantly different position at the start of another. Remember that even when the sims are just standing idle, they are actually running an "idle" animation. So running two unrelated animations one after another can cause a jump, as can running a single animation that doesn't end in an idle-type position. The animate sim command does have a "blend out" option which smoothes over some of these jumps if they're small, but the big ones can still cause problems.
The ModFather
retired moderator
#10 Old 21st Feb 2006 at 11:24 AM
Quote: Originally posted by Echo
- You'll need to import (or create if the object doesn't have one) the pie menu functions and strings
- * Export all the BHAVs needed for the interaction from the donor object (all of them, not just the Interaction BHAV itself, but all the things it calls, and all the things they call, etc)
- Add the BHAVs into the new object and fix the instance numbers so none of them overlap
- Fix all the cross-references in the BHAVs to the correct instance numbers
- * Fix all the references in the BHAVs to other resources (STR, BCON etc)
- Add the new options to the pie menu.


While creating my multi-purpose stove, I had to deal with this very problem: combining the "cook" functions (built-in in the gas range I've cloned for my stove) with the "Dispose" functions, and basically I did all you say.
But it wasn't enough... Once imported the needed TrashSemiglobals, and fixed the references to the other "trash" BHAVs and BCONs, I realized that they still referred to many semiglobal elements:
1) Animations: if the BHAV tries to read a semiglobal animation, it will look into the Stove semiglobal STR#, and not the Trash ones; I couldn't just import the semiglobal STR#s, because my package already contained such files, for the "cook" functions; so I had to append the Trash entries to the Cook ones, and manually fix *all* the animation calls from within the Trash BHAVs.
2) Attributes: same as above; I had to convert each and every call to SemiAttributes to private attributes, appending the new "trash" private attributes to the existing list of "cook" attributes.
3) Call Named Trees: same as above.

All ov the above pllies also to the "private" elements that the "trash" BHAV expects to find into the package itself: all the private attributes, animations and CNTs that usually are found in every "trash" object needed to be moved into my package and merged with the existing ones.

To make short a long story: a *lot* of work!

I've finally started my Journal. Information only, no questions.

My latest activity: CEP 9.2.0! - AnyGameStarter 2.1.1 (UPD) - Scriptorium v.2.2f - Photo & Plaques hide with walls - Magazine Rack (UPD) - Animated Windows Hack (UPD) - Custom Instrument Hack (UPD) - Drivable Cars Without Nightlife (UPD) - Courtesy Lights (FIX) - Custom Fence-Arches - Painting-TV - Smarter Lights (UPD)


I *DON'T* accept requests, sorry.
Retired Duck
retired moderator
#11 Old 21st Feb 2006 at 11:55 AM
That was what I was hoping to say by the second starred item, except I couldn't think of all the things that needed to be translated across. Thanks for a much more complete explaination!

There can also be an added complication when combining two objects with bone-based animations. You can either edit out all the calls to object animating in one of the two interactions or do some very serious object restructuring. I try to avoid this complication as much as possible, cause I tend to run away whenever anyone mentions bones and objects in the same sentence.
Test Subject
#12 Old 30th Sep 2006 at 4:58 PM
After reading this thread I think I might be wanting to do something far beyond my limited newbie-modder ability and understanding. I have an object. It consists of the mesh from object 1 and the sim interactions from object 2. I was wanting to swap out the animations with those from object 3. From what I understand there's no easy way to do that. Right?
One horse disagreer of the Apocalypse
#13 Old 30th Sep 2006 at 5:19 PM
There is no easy way to do anything very much with this game (says someone who just spent 3 days to get one face of a stair the right way out...)
The ModFather
retired moderator
#14 Old 30th Sep 2006 at 5:26 PM
Right. And moreover, applying a sim-to-object interaction to a different objects may not work. For example: if I want to use the animation when the sim opens the stove oven to a custom object cloned from the microwave, it won't work, because the animation looks for a specific "interaction point" in the stove mesh, and that special spot doesn't exist in the microwave.

Applying a non-interacting animation - i.e. an animation played by the sim himself, without interacting with an object - is easier (well... less difficult! ); for example, adding a "warm self" animation stripped from a fireplace to a stove oven.

I've finally started my Journal. Information only, no questions.

My latest activity: CEP 9.2.0! - AnyGameStarter 2.1.1 (UPD) - Scriptorium v.2.2f - Photo & Plaques hide with walls - Magazine Rack (UPD) - Animated Windows Hack (UPD) - Custom Instrument Hack (UPD) - Drivable Cars Without Nightlife (UPD) - Courtesy Lights (FIX) - Custom Fence-Arches - Painting-TV - Smarter Lights (UPD)


I *DON'T* accept requests, sorry.
Test Subject
#15 Old 30th Sep 2006 at 9:31 PM
Aaah... yes I was wanting to swap the animations of getting a bottle from the fridge with the animations of getting a bottle from the smartmilk aspiration object. Like your stove vs. microwave example though I assume that just wouldn't work even if I did have a clue how to go about it. Well thank you.
Back to top