- Site Map >
- Modding and Creation >
- Sims 2 Creation >
- Sims 2 Tools >
- New Tool Needs Name
- Site Map >
- Modding and Creation >
- Sims 2 Creation >
- Sims 2 Tools >
- New Tool Needs Name
#26
16th Sep 2008 at 8:26 PM
No, I know nothing at all about Maxis file formats or records. If they happen to have the same name as SimPE resources, which I don't know if they do, you could work from there. Open up a sim package or clothing or an object and see what SimPE lists in the resource list. If they don't have the same name, and you want to know where a GZPS or TXMT or whatever is stored, look in the SimPE source for routines that read them, and it will tell you the record name and format. As Inge said, you'll need to understand C#. Or probably at least C++.
You could join MATY if you wanted to. There's lots of knowledgeable folks there.
You could join MATY if you wanted to. There's lots of knowledgeable folks there.
Advertisement
#27
16th Sep 2008 at 9:31 PM
Posts: 3,535
Thanks: 26 in 1 Posts
I don`t have SimPE, either. I`m having NO significant troubles parsing records, any more. I just don`t know WHICH records to parse. The Wiki gives me the record name and format for many records. It just doesn`t tell me much about which records I`ll be needing, or what they can be used for. At least, not anywhere I`ve looked, yet. Please look here and tell me if you recognize "SimPE resources" in the list of names. As for joining MATY, I can barely keep up here and still have any time left to play! I appreaciate any and all attempts to help.
#28
16th Sep 2008 at 9:53 PM
Umm, the wiki list is the list of internal formats and what they are. Each format has a 4 character code. If you read the descriptions of each format on the Wiki then you tend to know what they actually are.
Additionally, you go and look in SimPE. If you seriously intend on writing a program go get SimPE!. It has lists of every format type, and easily tells you what they are. If you still don't have it then go get it.
No offense, but you really don't seem to have a clue what you are writing. When I develop a tool I have a clear goal or purpose in mind. I say "Okay I want it to do THIS" and then I research, learn and read about how I can achieve that goal - even if it means learning about a new internal type, or directx, or whatever. You seem to be saying "Hey I can parse a couple of types but I don't know anything about the rest but can you suggest something I can do?" - instead, ask yourself "What do people need?" or "What do people want?". Identify a niche and work towards that.
With regards to compression - the algorithm is there in C# and also in PHP too so it should be fairly easily to convert to Python.
I don't mean to be mean or anything, but seriously - figure out a goal, stick to it, and make something. Stop focusing on what your "tool" is going to be called. Stop calling it a "tool" - right now you have nothing but a collection of some scripts to parse package files. It wont be a tool until it actually has a purpose.
Story books are full of fairy tales, of Kings and Queens, and the bluest skies.
Additionally, you go and look in SimPE. If you seriously intend on writing a program go get SimPE!. It has lists of every format type, and easily tells you what they are. If you still don't have it then go get it.
No offense, but you really don't seem to have a clue what you are writing. When I develop a tool I have a clear goal or purpose in mind. I say "Okay I want it to do THIS" and then I research, learn and read about how I can achieve that goal - even if it means learning about a new internal type, or directx, or whatever. You seem to be saying "Hey I can parse a couple of types but I don't know anything about the rest but can you suggest something I can do?" - instead, ask yourself "What do people need?" or "What do people want?". Identify a niche and work towards that.
With regards to compression - the algorithm is there in C# and also in PHP too so it should be fairly easily to convert to Python.
I don't mean to be mean or anything, but seriously - figure out a goal, stick to it, and make something. Stop focusing on what your "tool" is going to be called. Stop calling it a "tool" - right now you have nothing but a collection of some scripts to parse package files. It wont be a tool until it actually has a purpose.
Story books are full of fairy tales, of Kings and Queens, and the bluest skies.
#29
17th Sep 2008 at 12:31 AM
Quote: Originally posted by GeneralOperationsDirector
I don`t have SimPE, either. ... Please look here and tell me if you recognize "SimPE resources" in the list of names. |
#30
17th Sep 2008 at 2:51 AM
Posts: 3,535
Thanks: 26 in 1 Posts
Quote: Originally posted by Delphy
Umm, the wiki list is the list of internal formats and what they are. Each format has a 4 character code. If you read the descriptions of each format on the Wiki then you tend to know what they actually are. |
Quote: Originally posted by Delphy
Additionally, you go and look in SimPE. If you seriously intend on writing a program go get SimPE!. It has lists of every format type, and easily tells you what they are. If you still don't have it then go get it. |
Quote: Originally posted by Delphy
No offense, but you really don't seem to have a clue what you are writing. When I develop a tool I have a clear goal or purpose in mind. I say "Okay I want it to do THIS" and then I research, learn and read about how I can achieve that goal - even if it means learning about a new internal type, or directx, or whatever. You seem to be saying "Hey I can parse a couple of types but I don't know anything about the rest but can you suggest something I can do?" - instead, ask yourself "What do people need?" or "What do people want?". Identify a niche and work towards that. |
Quote: Originally posted by Delphy
With regards to compression - the algorithm is there in C# and also in PHP too so it should be fairly easily to convert to Python. |
Quote: Originally posted by Delphy
I don't mean to be mean or anything, |
Quote: Originally posted by Delphy
but seriously - figure out a goal, stick to it, and make something. Stop focusing on what your "tool" is going to be called. Stop calling it a "tool" - right now you have nothing but a collection of some scripts to parse package files. It wont be a tool until it actually has a purpose. |
When I have learned to parse record formats that allow me to do something interesting, my tool WILL perform surgery on package files.
This post has gotten too long already. I`m replying to Cat`s post seperately. I overflowed the edit buffer here trying to reply to both at once.
#31
17th Sep 2008 at 3:03 AM
Posts: 3,535
Thanks: 26 in 1 Posts
Quote: Originally posted by CatOfEvilGenius
Yes, I see lots, SHPE, CRES, GMDC, GMND, GZPS, BHAV, etc. |
Quote: Originally posted by CatOfEvilGenius
However, as Delphy said, you need to get SimPE and look at it yourself. Learn about, use it, and you will know for yourself what the different resources are and which ones you need. |
Quote: Originally posted by CatOfEvilGenius
You will also know what the capabilites of SimPE are, so you can better decide what other functionality is needed that you could provide. |
Quote: Originally posted by CatOfEvilGenius
You also need to look at other existing tools. Figuring out what you want your program to do should be done before you work on actual implementation, like parsing records. |
I know what I want; I just don`t know how to express it well.
#32
17th Sep 2008 at 9:27 AM
No offense, but you haven't said what you want your tool to do. You said you "will perform surgery on package files". What kind of surgery? What will you be fixing? What will the end result be? What specific tasks do you need to do to achieve that end result?
Right now, you are blundering about in the dark - becuase you - or, rather, your tool - has no purpose, no life.
As both Cat and I are saying (and Cat said so well): Figure out what you want your program to do before working on actual manipulation. It's basic software design 101.
When I write programs, I always have a clear goal in mind - "this is what it will do". Then I work towards that goal. I don't think "Lets learn some random package file chunks and then see if I can do anything with them", becuase often you must have a purpose first.
A tool that I am working on now, for example, is one that does things with Skintones. First I talked to HP - and looked extensively in SimPE - in depth to understand what the end result was as well as looking (again, in SimPE) at what would need to change. Only from that (once I know what needs to be done and how you can do it manually in SimPE) do I start actually writing a tool to do it automatically. This is what I suggest you do - find a process that currently people are doing manually and then figure out how that is done in SimPE and then see if you can automate it.
Otherwise you really will be floundering in the dark not getting very far.
Story books are full of fairy tales, of Kings and Queens, and the bluest skies.
Right now, you are blundering about in the dark - becuase you - or, rather, your tool - has no purpose, no life.
As both Cat and I are saying (and Cat said so well): Figure out what you want your program to do before working on actual manipulation. It's basic software design 101.
When I write programs, I always have a clear goal in mind - "this is what it will do". Then I work towards that goal. I don't think "Lets learn some random package file chunks and then see if I can do anything with them", becuase often you must have a purpose first.
A tool that I am working on now, for example, is one that does things with Skintones. First I talked to HP - and looked extensively in SimPE - in depth to understand what the end result was as well as looking (again, in SimPE) at what would need to change. Only from that (once I know what needs to be done and how you can do it manually in SimPE) do I start actually writing a tool to do it automatically. This is what I suggest you do - find a process that currently people are doing manually and then figure out how that is done in SimPE and then see if you can automate it.
Otherwise you really will be floundering in the dark not getting very far.
Story books are full of fairy tales, of Kings and Queens, and the bluest skies.
#33
17th Sep 2008 at 7:51 PM
Posts: 3,535
Thanks: 26 in 1 Posts
Quote: Originally posted by Delphy
No offense, but you haven't said what you want your tool to do. You said you "will perform surgery on package files". What kind of surgery? What will you be fixing? What will the end result be? What specific tasks do you need to do to achieve that end result? |
I do know that I want this to be a multi-purpose tool that does many things; as such, the building blocks I`m attempting to create now will be useful later when I discover what I can do with them, but I need to start small, and build.
I guess the best way to describe what I`m trying to build is as a toolkit for building applications with. I`m not ready to build an application until I have a toolkit. I`d like some guidance on what parts of the toolkit to develop first, especially which "resources" would be most useful to understand for general purpose manipulation. Without that guidance, I am blundering blindly. With it, I will at least be blundering towards something.
#34
17th Sep 2008 at 8:01 PM
Posts: 11,682
Thanks: 9675 in 11 Posts
What was your motivation for choosing Python? Or maybe what I am asking is, did you want to become proficient in Python and this seemed a good project to motivate you, or is your main aim to learn Sims 2 package files, and because you are already proficient in Python it seem like it will be the easiest language to experiment with as you unravel them?
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
#35
17th Sep 2008 at 8:05 PM
Posts: 3,535
Thanks: 26 in 1 Posts
The second, Inge. Very much the second. :D
Thank you for asking.
Thank you for asking.
#36
17th Sep 2008 at 8:30 PM
Last edited by CatOfEvilGenius : 17th Sep 2008 at 8:56 PM.
Quote: Originally posted by GeneralOperationsDirector
I`d like some guidance on what parts of the toolkit to develop first, especially which "resources" would be most useful to understand for general purpose manipulation. Without that guidance, I am blundering blindly. |
You mentioned you want to find new resources. That is a great goal. If you happened to figure out where Maxis keeps facial skeletons, we could make false eyelashes that move with a sims's eyes and all sorts of stuff we couldn't do before. But first, figure out the resources that are well understood. Just parsing them will not give you sufficient understanding if you haven't worked with them in SimPE.
#37
17th Sep 2008 at 9:15 PM
SimPE didn't start as an all purpose package tool - it grew into that by adding functionality over time. I tihnk you'll get much quicker much further in terms of understanding things if you do have a specific goal to work for.
Story books are full of fairy tales, of Kings and Queens, and the bluest skies.
Story books are full of fairy tales, of Kings and Queens, and the bluest skies.
#38
18th Sep 2008 at 1:42 AM
Posts: 3,535
Thanks: 26 in 1 Posts
Ok, tell me this: Where do I find the name of a sim?
Inge, you and Mootilda have been investigating Lot and Neighborhood packages lately; are there any records therein that would need to be changed if a sim`s name was changed in the character package? Also, Inge, do you know where a family`s name is stored? You know, the one that shows up when you hover your mouse over the occupied lot in the neighborhood.
By the way, Inge, I`ve read all 2089 posts in Discussion: Lot Size, Orientation, Rotation, etc., and it made for very interesting reading.
Inge, you and Mootilda have been investigating Lot and Neighborhood packages lately; are there any records therein that would need to be changed if a sim`s name was changed in the character package? Also, Inge, do you know where a family`s name is stored? You know, the one that shows up when you hover your mouse over the occupied lot in the neighborhood.
By the way, Inge, I`ve read all 2089 posts in Discussion: Lot Size, Orientation, Rotation, etc., and it made for very interesting reading.
#39
18th Sep 2008 at 2:13 AM
Last edited by CatOfEvilGenius : 18th Sep 2008 at 2:19 AM.
Quote: Originally posted by GeneralOperationsDirector
Ok, tell me this: Where do I find the name of a sim? |
1) Run SimPE .
2) Tools menu -> Neighborhood, pick a neighborhood, wait for it to load
3) Tools menu -> Neighborhood -> Sim Browser, pick a sim from the list
4) In the Plugin View, in the bottom half of the screen, you'll see the sim's name and family name. If you look in the Resource List, upper right quarter of the screen, you'll see one of the resources is highlighted. The name of the resource is the sim's name, and the resource type, in the Type column, is a four letter acronym. This is the resource type you'll want to look up in the wiki.
5) I looked for this particular resource in the wiki, but didn't see it, so I googled it. Found an article about it in the modding discussion forum on MTS2. I didn't actually find a file format for it, but then, I only searched for about 5 minutes.
I'm sure Delphy or Inge or someone else who knows more than me would be happy to tell you all about this resource type, once you've looked it up in SimPE and read what there is to read about it on MTS2.
You keep asking questions that you could answer yourself by learning to use SimPE. If you are willing to read 2089 posts, then I think you are also capable of taking the time to learn SimPE. It comes with a manual and there are tons of tutorials for specific tasks you can do with it. This will teach you about the different resource types and about modding. SimPE can also be used to test your software, see if it is reading records correctly.
#40
18th Sep 2008 at 2:34 AM
Last edited by GeneralOperationsDirector : 18th Sep 2008 at 2:36 AM.
Reason: Added postscript.
Posts: 3,535
Thanks: 26 in 1 Posts
I kinda prefer to stay on-site, but I followed the SimPE autolink, and got the following, every time for several tries:
I know I`m connected, because I have this page open in another tab! Is http://sims.ambertation.de/ still the correct URL?
P.S.: I had no problems PINGing that address, and TRACERT worked, too.
Quote: Originally posted by Internet Explorer
Internet Explorer cannot display the webpage Most likely causes: You are not connected to the Internet. The website is encountering problems. There might be a typing error in the address. What you can try: Check your Internet connection. Try visiting another website to make sure you are connected. Retype the address. Go back to the previous page. More information |
P.S.: I had no problems PINGing that address, and TRACERT worked, too.
#41
18th Sep 2008 at 3:40 AM
I can't get to it either. It's probably down right now. Try again later.
#42
18th Sep 2008 at 3:49 AM
Last edited by GeneralOperationsDirector : 18th Sep 2008 at 4:20 AM.
Posts: 3,535
Thanks: 26 in 1 Posts
Hokay.
Um, that isn`t Inge`s site, is it?
Edit:
I`ve been playing with my tool, and discovered a GLOB record only 48 bytes long in a character package:
TypeID: 'GLOB'
GroupID: 4294967295L
InstanceID1: 128
InstanceID2: 0
Offset: 96
Size: 48
'0\x00\x00\x00\x10\xfb\x00\x01@\xe3Semi-global file\xab@\x00\x00\xe1\rPersonG\x08A\xc2\x00\x00\xecs\xa3\xfc'
"\x" plus the next two characters are the hexadecimal code for a non-printing character; all other characters represent themselves. The Wiki defines the GLOB record to be a MINIMUM of 65 bytes, with the data as plain text following a count byte at offset 64. Weird. The GLOB record[s] I`ve encountered previously fit the Wiki`s description.
Um, that isn`t Inge`s site, is it?
Edit:
I`ve been playing with my tool, and discovered a GLOB record only 48 bytes long in a character package:
TypeID: 'GLOB'
GroupID: 4294967295L
InstanceID1: 128
InstanceID2: 0
Offset: 96
Size: 48
'0\x00\x00\x00\x10\xfb\x00\x01@\xe3Semi-global file\xab@\x00\x00\xe1\rPersonG\x08A\xc2\x00\x00\xecs\xa3\xfc'
"\x" plus the next two characters are the hexadecimal code for a non-printing character; all other characters represent themselves. The Wiki defines the GLOB record to be a MINIMUM of 65 bytes, with the data as plain text following a count byte at offset 64. Weird. The GLOB record[s] I`ve encountered previously fit the Wiki`s description.
#43
18th Sep 2008 at 9:03 AM
Is that "Size" the size from the index? If so, and the chunk is compressed, then this is not the true size of the chunk
Story books are full of fairy tales, of Kings and Queens, and the bluest skies.
Story books are full of fairy tales, of Kings and Queens, and the bluest skies.
#44
18th Sep 2008 at 9:12 AM
Posts: 3,535
Thanks: 26 in 1 Posts
Oops! I forgot about compressed! I`ll have to check on that. Yes, it is from the index. This [probably] also explains some other oddities with the dump of that particular file.
I`m signing off for the night, now; it`s almost morning here. I`ll look into it later.
I`m signing off for the night, now; it`s almost morning here. I`ll look into it later.
#45
18th Sep 2008 at 9:35 AM
Posts: 11,682
Thanks: 9675 in 11 Posts
The SimPE site's down. Unfortunately I am only a proxy (not poxy) Admin, not the owner, and other than hoping Quaxi spots my email in his spam bucket there is nothing I can do about it
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
#46
18th Sep 2008 at 6:30 PM
Posts: 3,535
Thanks: 26 in 1 Posts
Quote: Originally posted by Inge Jones
The SimPE site's down. |
...just asking; willing to take "no" for an answer.
#47
18th Sep 2008 at 6:41 PM
Posts: 11,682
Thanks: 9675 in 11 Posts
It's back up now.
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
#48
18th Sep 2008 at 7:28 PM
Last edited by GeneralOperationsDirector : 18th Sep 2008 at 7:52 PM.
Posts: 3,535
Thanks: 26 in 1 Posts
What are "SimPE Photostudio Templates", and do I need/want them?
Edit: When I try to run it, it fails with pretty much the same error Delphy`s Download Organizer does. I`m assuming that this means that I need to install .net, which I didn`t want to do, as I do NOT wish to clutter my system partition with unneeded junk [only with NEEDED junk! ]. I`m downloading .net as I type; how can I test to see if I really do need to install it?
Edit: When I try to run it, it fails with pretty much the same error Delphy`s Download Organizer does. I`m assuming that this means that I need to install .net, which I didn`t want to do, as I do NOT wish to clutter my system partition with unneeded junk [only with NEEDED junk! ]. I`m downloading .net as I type; how can I test to see if I really do need to install it?
#49
18th Sep 2008 at 10:11 PM
Last edited by CatOfEvilGenius : 19th Sep 2008 at 1:02 AM.
Well, if it doesn't work without .net, and if it starts working after you install .net, I'd say that means you need it.
#50
18th Sep 2008 at 11:35 PM
.NET 2.0 framework is needed for SimPE.
.NET 1.1 framework is needed for the DDO and S2PCI.
Seriously, what PC doesn't have it these days?
Story books are full of fairy tales, of Kings and Queens, and the bluest skies.
.NET 1.1 framework is needed for the DDO and S2PCI.
Seriously, what PC doesn't have it these days?
Story books are full of fairy tales, of Kings and Queens, and the bluest skies.
Who Posted
|