- Site Map >
- Modding and Creation >
- Sims 3 Creation >
- Modding Discussion >
- Sims 3 Animator
- Site Map >
- Modding and Creation >
- Sims 3 Creation >
- Modding Discussion >
- Sims 3 Animator
Posts: 6,105
Thanks: 12816 in 71 Posts
Attached is a video of my salute animation ingame and the animation itself. |
Did you mean to attach something to this?
Posts: 242
Thanks: 2029 in 31 Posts
The reason the build isn't out is because I changed something, and now the TS3 engine won't start up.
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 11,682
Thanks: 9680 in 11 Posts
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
Posts: 242
Thanks: 2029 in 31 Posts
***A WARNING TO ALL USERS***
Before assuming TS3 Animator is broken, make sure that NOTHING is using any of the files used by TS3, as the TS3 engine loads every package file referenced by every Resource.cfg on your disk.
I wasted 5 hours of debugging on this, so, to put it in modern terms, learn from my fail!
Also, I apologize to everyone who had to wait for the build. The UI still isn't done, as I finally figured out that the strange Xaml parse error was not an Xaml parse error, but in fact a sharing violation in the native code of TS3.
TS3 Animator will be released soon, but the idiot-proofing and UI are still works in progress. I guess I'll just have to assume that you guys aren't idiots..
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 242
Thanks: 2029 in 31 Posts
If you want to add more geometries, please give them to me in either the format of:
this
SimGeometry g1 = new SimGeometry(DatabaseFunctions.GetFileFromPackage(ResourceTypes.kGeometryResourceID, "afShoesNudeafShoesNude_LOD1_fit", false));
SimGeometry g2 = new SimGeometry(new MemoryStream(ResourceMgr.FindRecord(new Sims3.CSHost.ResourceKey(0x015A1849, 0x00F3E7A0, 0x00000000BB04D86D))));
**Important Note**
While TS3 Animator EXPORTS perfectly, the IMPORTING is still a bit... shaky (lol, try it). Therefore, I recommend that if you don't plan on creating your animations from scratch that you use Wes's old tool if you for some reason desire a reference when making your animations. I would, however, recommend that you instead take a look at Blender's IK abilities.
**Important Note 2**
The files exported by my tool will almost certainly crash Milkshape, as they have over 256 bones.
SimGeometry g1 = new SimGeometry(DatabaseFunctions.GetFileFromPackage(ResourceTypes.kGeometryResourceID, "afShoesNudeafShoesNude_LOD1_fit", false)); SimGeometry g2 = new SimGeometry(new MemoryStream(ResourceMgr.FindRecord(new Sims3.CSHost.ResourceKey(0x015A1849, 0x00F3E7A0, 0x00000000BB04D86D)))); SimGeometry g3 = new SimGeometry(new MemoryStream(ResourceMgr.FindRecord(new Sims3.CSHost.ResourceKey(0x015A1849, 0x00D05442, 0x00000000B9A67B74)))); SimGeometry g4 = new SimGeometry(new MemoryStream(ResourceMgr.FindRecord(new Sims3.CSHost.ResourceKey(0x015A1849, 0x0096A5A6, 0x0000000067F52E5F)))); SimGeometry g5 = new SimGeometry(new MemoryStream(ResourceMgr.FindRecord(new Sims3.CSHost.ResourceKey(0x015A1849, 0x00BEE823, 0x00000000FB1E684D)))); SimGeometry g6 = new SimGeometry(new MemoryStream(ResourceMgr.FindRecord(new Sims3.CSHost.ResourceKey(0x015A1849, 0x00BEE823, 0x00000000ECC7C689)))); SimGeometry g7 = new SimGeometry(new MemoryStream(ResourceMgr.FindRecord(new Sims3.CSHost.ResourceKey(0x015A1849, 0x0092C87E, 0x000000001F686A3C)))); SimGeometry g8 = new SimGeometry(new MemoryStream(ResourceMgr.FindRecord(new Sims3.CSHost.ResourceKey(0x015A1849, 0x00BEE823, 0x00000000ECC7C68A)))); SimGeometry g9 = new SimGeometry(new MemoryStream(ResourceMgr.FindRecord(new Sims3.CSHost.ResourceKey(0x015A1849, 0x00FB2018, 0x000000001FA2F615)))); SimGeometry g10 = new SimGeometry(new MemoryStream(ResourceMgr.FindRecord(new Sims3.CSHost.ResourceKey(0x015A1849, 0x00BEE823, 0x00000000ECC7C68B)))); SimGeometry[] geometries = new SimGeometry[] { g1, g2, g3, g4, g5, g6, g7, g8, g9, g10 };
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 242
Thanks: 2029 in 31 Posts
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 11,682
Thanks: 9680 in 11 Posts
To a certain extent, Peter's been turning a blind eye to minor oversights, so as not to place obstacles in the way of sims community modding. But as a developer you need to at least understand what the terms are and how you could comply if necessary
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
Posts: 242
Thanks: 2029 in 31 Posts
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Runtime.InteropServices; using Microsoft.Win32; using System.IO; using s3pi.Package; using s3pi.Interfaces; using System.Reflection; namespace ConsoleApplication1 { class Program { [return: MarshalAs(UnmanagedType.BStr)] [DllImport("Sims3Common.dll")] private static extern string App3D_GetHighestGameExePathName(); // Copy all recuqired dll files, etc. to the private static bool acquirePrerequisites() { RegistryKey uninstallKey = Registry.LocalMachine.OpenSubKey("SOFTWARE").OpenSubKey("Microsoft").OpenSubKey("Windows").OpenSubKey("CurrentVersion").OpenSubKey("Uninstall"); string[] subkeys = uninstallKey.GetSubKeyNames(); string worldBuilderPath = ""; foreach (string str in subkeys) { RegistryKey subKey = uninstallKey.OpenSubKey(str); string displayName = (string)subKey.GetValue("DisplayName", ""); if (displayName.Contains("The Sims™ 3 Create a World Tool")) worldBuilderPath = (string)subKey.GetValue("InstallLocation"); } if (worldBuilderPath.CompareTo("") == 0) return false; // copy over the dlls foreach (string file in Directory.GetFiles(worldBuilderPath, "*.dll")) { string fName = file.Substring(file.LastIndexOf('\\') + 1); if (!File.Exists(Path.GetDirectoryName(System.Reflection.Assembly.GetAssembly(typeof(Program)).Location) + '\\' + fName)) File.Copy(file, Path.GetDirectoryName(System.Reflection.Assembly.GetAssembly(typeof(Program)).Location) + '\\' + fName); } string pth = App3D_GetHighestGameExePathName().Remove(App3D_GetHighestGameExePathName().LastIndexOf('\\')); foreach (string file in Directory.GetFiles(pth, "*.package")) { Package pkg = (Package)Package.OpenPackage(0, file); foreach (IResourceIndexEntry entry in pkg.GetResourceList) { if (entry.ResourceType == 0x073FAA07) { ScriptResource.ScriptResource res = new ScriptResource.ScriptResource(0, pkg.GetResource(entry)); byte[] currentAsmBytes = res.Assembly.ReadBytes((int)res.Assembly.BaseStream.Length); Assembly currentAsm = Assembly.ReflectionOnlyLoad(currentAsmBytes); FileStream fs = new FileStream(Path.GetDirectoryName(System.Reflection.Assembly.GetAssembly(typeof(Program)).Location) + '\\' + currentAsm.ManifestModule.ScopeName, FileMode.Create); fs.Write(currentAsmBytes, 0, currentAsmBytes.Length); fs.Close(); } } } return true; } static void Main(string[] args) { acquirePrerequisites(); } } }
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 242
Thanks: 2029 in 31 Posts
It is, however, attached to this post.
Installation Instructions
- Copy the contents of the zip file to a directory of your choice.
- Navigate to the TS3 Animator folder in that directory.
- Run GetDependencies.exe
- Use as you see fit.
As you see from the instructions, you no longer need to copy any files to the TS3 Animator directory manually. However, you must have the Create-A-World Tool and at least the TS3 base game installed for the tool to work.
TS3 Animator.zip (5.20 MB, 36 downloads) - View custom content | ||||||||||||||
20992 06-13-11 14:44 TS3 Animator/Animation Utilities.dll 10752 06-13-11 14:44 TS3 Animator/AnimationEditorGUI.dll 5632 06-13-11 14:44 TS3 Animator/DatabaseUtils.dll 13824 06-13-11 14:44 TS3 Animator/GeomUtilities.dll 7168 06-13-11 14:40 TS3 Animator/GetDependencies.exe 7680 06-13-11 14:40 TS3 Animator/GrannyHelper.dll 8704 06-13-11 14:40 TS3 Animator/RothnWPFControls.dll 46080 06-03-11 14:24 TS3 Animator/s3pi.Interfaces.dll 191935 06-03-11 14:24 TS3 Animator/s3pi.Interfaces.xml 27136 06-03-11 14:24 TS3 Animator/s3pi.Package.dll 21955 06-03-11 14:24 TS3 Animator/s3pi.Package.xml 10240 06-03-11 14:24 TS3 Animator/s3pi.ScriptResource.dll 4608 06-03-11 14:24 TS3 Animator/s3pi.Settings.dll 10870784 06-05-11 12:40 TS3 Animator/Sims3Common.dll 16896 06-13-11 14:44 TS3 Animator/SMDUtilities.dll 12288 06-13-11 14:44 TS3 Animator/TS3 Animator.exe 4608 06-13-11 14:44 TS3 Animator/TS3 Manager.dll -------- ------- 11281282 17 files |
||||||||||||||
Description: TS3 Animator 4 Beta |
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 242
Thanks: 2029 in 31 Posts
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 11,682
Thanks: 9680 in 11 Posts
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
Posts: 242
Thanks: 2029 in 31 Posts
What I am saying is that TS3 Animator works as well as it does with the knowledge that we have. I know personally that the export functionality is flawless, and I have even done testing (internal, no UI yet) with events and IK chains, and, used in conjunction with the appropriate SACS (JAZZ) scripts, those work flawlessly, too.
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 9
Installation Instructions
|
I'm following this topic with anticipation You made a lot of progress since I tried your tools around October last year. I'm using a custom animation made by the old version in my mod, and managed to extract an anim, load in blender, and reimport to the game with changed names with custom .jazz machine using the version linked at the beginning of this topic and loving how smooth it all works compared to the old versions (alas the reimported animation was malformed from waist down after exporting from Blender, and had sucked-in face as another poster reported already).
However the new version (4.0) crashes at launch after following these instructions. MSVC debugger says it's:
"XamlParse Exception was unhandled"
"The invocation of the constructor on type 'TS3_Animator.MainWindow' that matches the specified binding constraints threw an exception."
Looks like a simple file not found exception/invalid pathing fron the inner exception messages. The GetDependancies console tool did not create any files, is that normal?
At the moment I have the base game installed, running windows XP, english version, if that's any help for the pathing issue.
Anyway anxiously awaiting any updates on this, great work.
Posts: 8
Have we yet had feedback from people making game content using it? Just to be completely sure it's all working now? |
Posts: 35
It just crashes with no message for me. |
The same for me, with or without the granny2.dll in the app folder ...
I was running TS3Anim of drive C, sims directory on drive H. Then I moved TS3Anim to H, to the EA folder and got the same problem.
CAW present, Base game, XP sp3, framework 4.
Posts: 242
Thanks: 2029 in 31 Posts
Wait, what operating systems are you guys using? Also, if your versions of TS3 aren't legal, this tool won't work. I don't know for sure if it works on anything lower than Vista, but I assume that nobody still has a legacy system if they run TS3 with any sort of decent graphics.
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 8
Why does it not work on your systems? |
Does the command prompt say anything? |
Do you guys have .NET framework 4? |
GetDependencies should generate a ton of dll files. |
Wait, what operating systems are you guys using? |
Also, if your versions of TS3 aren't legal, this tool won't work. |
I don't know for sure if it works on anything lower than Vista, but I assume that nobody still has a legacy system if they run TS3 with any sort of decent graphics. |
I think what you are missing is instructions on how to use this, including any prerequisite applications or files and what exactly it is supposed to do.
Posts: 108
Thanks: 3466 in 5 Posts
Posts: 242
Thanks: 2029 in 31 Posts
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 242
Thanks: 2029 in 31 Posts
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 242
Thanks: 2029 in 31 Posts
Error: Keyboard not attached. Press F1 to continue. - Windows XP Setup
Hey! It compiles! Ship it! - Microsoft
Love is Hate. War is Peace. Windows is stable. - 1984 (sort of)
Posts: 8
Don't put your own granny2.dll in that folder. If you want to do it manually, copy granny2.dll from your Create-A-World directory (NOT Granny Crowd Demo) |
Posts: 8
Oh, and 3MTA3, TS3 Animator does not currently support any version of unix. You need an 8086-based system with Windows installed on it to run TS3 Animator. |
Posts: 8
I think I just realized the problem: Do you have The Sims 3: Late Night? I think I accidentally linked to those dlls. |
Posts: 108
Thanks: 3466 in 5 Posts
- Download, and extract.
- Run GetDependencies.exe
- Run TS3 Animator.exe
- File>New
- It seemed to create an empty tab, so I clicked on that and it generated an "Actor" input and a dropdown for "Animation Clip"
- After clicking that I get the "Animation Name", and "Source File" inputs, and 3 buttons, any of which immediately exit the program when clicked
Maybe the "4. Use as you see fit." isn't so clear. I see many options but they all ultimately lead to the program silently exiting
Who Posted
|