Slot number out of range
|
|
#1
28-11-2013
I'm relatively new here, so I apologize if this is in the wrong section. I'm having difficulties with several table-type objects I built recently. Most are based on the skeleton for this table. The tables in question are usually t-shaped or l-shaped with one or two tiles that don't have slots on them. I playtested them thouroughly and they seemed to work okay, but later I found out that if one of the tables is placed and a sim tries to serve food, it creates a jump bug; the sim snaps out of the slot and the food is destroyed. I ran boolprop testingCheatsEnabled true and the message displayed was "Slot number out of range" (I've included the error log in my upload). I'm not sure what's causing this. I've also included the console (table) and the master objects it's based off of so it doesn't flash blue in-game. Any advice or assistance would be much appreciated.
This is the file: Odd-Shaped Table Error
This is the file: Odd-Shaped Table Error
ocelotekatl, proud to be a member of LeeFish since Nov 2013.
#2
28-11-2013
Oce! Fancy meeting you here! Are you still active over at SimTrek? Sad to say I can't even remember the last time I was logged in there.
"Slot number out of range" usually means that the slot the Sim is trying to use either is in the bone names text list but not in the cres, or vice versa. (It could also be that it isn't in the Slot File, but I think you'd get a different error message then.) I'm pretty decent with slots (even though mustluvcatz is THE slot person here), so I'll take a look and see if I can figure out what's going on. Stay tuned!
Edit: All right, so the issue was with the slot file, but not in the way I thought.
First of all, it's best if you have two slot files like the original table, and they should have instance numbers 80 (128) and 81 (129) respectively. The slots id in the OBJDs (under Resource cross-refs) should then be the number in brackets - otherwise the table doesn't know which slot file it should use to get the slots for that particular tile. Which seems to be what's happening here. If you look at the OBJD for the 0,0 tile of your table, the slots id is 133, which is the number of the one slot file you have (so that is correct even though it's a weird instance number for a slot file). BUT, the slots id for the 1,0 OBJD is 128, and you don't have that slot file. Neither do you have a 125 one, which is what your added 1,1 tile wants. Cue unhappy table, since it's looking for slots in all the wrong places.
So, I pulled the two slot files from the original two-tile table and added them to yours (and deleted the one you had). Then I changed the slot id's in the OBJDs so that the 0,0 tile refers to slot file 128 and the 1,0 and 1,1 ones to 129. Table is now happy. (You might want to look at the position of the slots, though, since they make sense for a two-tile dining table but not so much for your ops table.)
"Slot number out of range" usually means that the slot the Sim is trying to use either is in the bone names text list but not in the cres, or vice versa. (It could also be that it isn't in the Slot File, but I think you'd get a different error message then.) I'm pretty decent with slots (even though mustluvcatz is THE slot person here), so I'll take a look and see if I can figure out what's going on. Stay tuned!
Edit: All right, so the issue was with the slot file, but not in the way I thought.
First of all, it's best if you have two slot files like the original table, and they should have instance numbers 80 (128) and 81 (129) respectively. The slots id in the OBJDs (under Resource cross-refs) should then be the number in brackets - otherwise the table doesn't know which slot file it should use to get the slots for that particular tile. Which seems to be what's happening here. If you look at the OBJD for the 0,0 tile of your table, the slots id is 133, which is the number of the one slot file you have (so that is correct even though it's a weird instance number for a slot file). BUT, the slots id for the 1,0 OBJD is 128, and you don't have that slot file. Neither do you have a 125 one, which is what your added 1,1 tile wants. Cue unhappy table, since it's looking for slots in all the wrong places.
So, I pulled the two slot files from the original two-tile table and added them to yours (and deleted the one you had). Then I changed the slot id's in the OBJDs so that the 0,0 tile refers to slot file 128 and the 1,0 and 1,1 ones to 129. Table is now happy. (You might want to look at the position of the slots, though, since they make sense for a two-tile dining table but not so much for your ops table.)
(This post was last modified: 28-11-2013 06:21 PM by NixNivis.)
#3
29-11-2013
Nix! I'm still around SimTrek and Blue Heaven Sims, and occasionally at MTS, Plumb Bob Keep, etc. Haven't chatted you in forever.
It works perfectly in-game. Thanks.
I get the part about the slot reference, but the motive behind my butchering the tables originally was to remove the unwanted contaner slots, but still keep a part of the footprint so that the sims don't walk through the object. It seems as if the table globals make it so that each OBJD has to be associated with a slot. Changing the cross-reference value to 0 in the OBJD doesn't fix this, I still get the same bug. Likewise when I try to change the container slots to a different type of slot in the SLOT resource. Changing the I7 value of the container slots of the SLOT to 0 has no effect; for some reason, the game still thinks the container is a table.
Soooooooo... that leaves moving the translation of the container slot in the CRES to a point where it's below ground (which kinda works, but still isn't my favorite solution) or setting up a "dummy" slot with just a routing slot in the CRES and Model-Bones STR# (which would be extremely labor intensive, provided I can get it right and not break the object). I'll continue in my endeavors.
Hope you're having a wonderful holiday, sister. Happy Thanksgiving to you and yours.
It works perfectly in-game. Thanks.
I get the part about the slot reference, but the motive behind my butchering the tables originally was to remove the unwanted contaner slots, but still keep a part of the footprint so that the sims don't walk through the object. It seems as if the table globals make it so that each OBJD has to be associated with a slot. Changing the cross-reference value to 0 in the OBJD doesn't fix this, I still get the same bug. Likewise when I try to change the container slots to a different type of slot in the SLOT resource. Changing the I7 value of the container slots of the SLOT to 0 has no effect; for some reason, the game still thinks the container is a table.
Soooooooo... that leaves moving the translation of the container slot in the CRES to a point where it's below ground (which kinda works, but still isn't my favorite solution) or setting up a "dummy" slot with just a routing slot in the CRES and Model-Bones STR# (which would be extremely labor intensive, provided I can get it right and not break the object). I'll continue in my endeavors.
Hope you're having a wonderful holiday, sister. Happy Thanksgiving to you and yours.
#4
29-11-2013
I've pretty much given up on SimTrek, it seems the site is all about the RPG these days and everything else drowns in the chatter. I mostly hang out here or at MTS, and of course at my own place. I lurk at the Keep, too, but I don't go by Nix there; I'm mainly there for my Westeros 'hood, and a trueborn daughter of the north like myself can't very well go by the name of Snow (nix, nivis) in that setting. It would cast aspersion on my lineage.
Anyway. Table. There is a third option, and that is to change the I7 value to something that's not a table slot, but still a valid value for container slots. (Post #13 in this thread lists them all.) I tried changing it to 9, which is "in counter". Then the Sims still wanted to put a plate on the table when sitting down to eat (it was the only table in the room), but after a couple of tries they gave up and walked away to sit elsewhere - quietly, without any errors. They didn't try to put any other things on it, though, or at least Rhonda Random opted to trek all the way to the bedroom to put her bills on an end table instead of using the ops table in the middle of the living room. Granted, it's not a perfect solution, but at least it's an option.
Happy Thanksgiving to you and yours, too! We don't celebrate it here, but I appreciate the sentiment.
Anyway. Table. There is a third option, and that is to change the I7 value to something that's not a table slot, but still a valid value for container slots. (Post #13 in this thread lists them all.) I tried changing it to 9, which is "in counter". Then the Sims still wanted to put a plate on the table when sitting down to eat (it was the only table in the room), but after a couple of tries they gave up and walked away to sit elsewhere - quietly, without any errors. They didn't try to put any other things on it, though, or at least Rhonda Random opted to trek all the way to the bedroom to put her bills on an end table instead of using the ops table in the middle of the living room. Granted, it's not a perfect solution, but at least it's an option.
Happy Thanksgiving to you and yours, too! We don't celebrate it here, but I appreciate the sentiment.
#5
30-11-2013
It worked!
Actually, I was reading a tutorial at TSR (don't hate me for turning to the dark side) that mentions a couple of other I7 values (12 for driveways, 13 for OFB shelves). So I tried replacing all the container slot I7 values to 12 and it bloody well worked! Now the game thinks the slot is a great place to park your Smoogo.
I know I've said it before, but thank you, thank you, thank you for always providing just the insight I need to fix my broken objects.
Actually, I was reading a tutorial at TSR (don't hate me for turning to the dark side) that mentions a couple of other I7 values (12 for driveways, 13 for OFB shelves). So I tried replacing all the container slot I7 values to 12 and it bloody well worked! Now the game thinks the slot is a great place to park your Smoogo.
I know I've said it before, but thank you, thank you, thank you for always providing just the insight I need to fix my broken objects.
#6
30-11-2013
Thanks for the confidence, Nix. Yeah, I do know slots but when I looked at this topic last night I had to pass on it because I didn't know what the error meant. Now that I do? That's one more bit of knowledge to add to my "toolbox", lol.
ocelotekatl - I think I'd go with changing those slot values to 9 like Nix mentioned.. just to make sure that no sims actually try to park their car on the table. Although that would be rather amusing...
ocelotekatl - I think I'd go with changing those slot values to 9 like Nix mentioned.. just to make sure that no sims actually try to park their car on the table. Although that would be rather amusing...
#7
30-11-2013
Actually, the result is about the same. I ran a playtest (with the I7 value set at 12) and the following happened:
If a sim takes a vehicle off the lot and you delete the driveway so that only one of the tables is left, the game prompts you that the vehicle can't return until a driveway is placed.
If a sim finishes a meal and begins to clean up, he/she may fumble the plate two or three times trying to place it into the slot, but eventually figures it out and moves away.
Just in case someone is doing a similar project and needs my project notes.
If a sim takes a vehicle off the lot and you delete the driveway so that only one of the tables is left, the game prompts you that the vehicle can't return until a driveway is placed.
If a sim finishes a meal and begins to clean up, he/she may fumble the plate two or three times trying to place it into the slot, but eventually figures it out and moves away.
Just in case someone is doing a similar project and needs my project notes.
#8
02-12-2013
Ohhh. yeah. Guess the driveway IS needed, lol. So no sims parking their car on a table then.
#9
03-12-2013
@mustluvcatz, I get more errors with my slots than you do. I've got this one a few times, but most of the time it's been because I've forgot to add the slot to the cres - or because I've added it, but haven't added it as a child anywhere. It's one of my favourite things to forget, right along with forgetting to add new subsets to the shape.
@ocelotekatl, happy I could help! I should add that I didn't choose "in counter" for my attempt because I knew it was the best value to use, but simply because I wanted something that absolutely wasn't a surface Sims would try to put things on. Other not-surface values should work just as well.
@ocelotekatl, happy I could help! I should add that I didn't choose "in counter" for my attempt because I knew it was the best value to use, but simply because I wanted something that absolutely wasn't a surface Sims would try to put things on. Other not-surface values should work just as well.
|