JustTheBast
31st Jul 2006, 08:17 PM
Sometimes when you build something in The Sims 2, you get to a point where you want to do something that seems perfectly logical and obvious and looks as if it should be no problem at all - but for some reason the Build Mode refuses to let you do it. Two pieces of flooring that are clearly exactly level with each other are separated by only one empty square, but you simply cannot place a floor tile to close the gap and connect them. And if you do manage to place that tile, maybe because you have turned on a cheat, suddenly one of the two floors has been pushed out of the way, as if by a force field, and now looks squashed and warped.
Sometimes you find a tutorial that teaches you how to build what you want, but you have to go through lots of complicated steps, that include building temporary scaffolds and guides, using cheats, and often very nearly destroying everything you've already built. And you wonder why it's so complicated.
The reason why this happen lies in the way that The Sims 2 models its most basic 3D building blocks, namely the floor tiles and walls. They are not freeform 3D objects as one would have in a generic 3D modelling program, but they are restricted to specific slots in a rigid, square matrix somewhat like this:
http://thumbs.modthesims2.com/getimage.php?file=346254
Floor tiles can only be placed into the horizontal squares on one of the planes, and walls (ignoring for the sake of simplicity the special case of diagonal walls) can only exist in one of the vertical rectangles, connecting a grid line on one plane with the line directly above.
The only variation allowed in this rigidity is that each of the intersection points defining the squares can be raised or lowered along the vertical axis, thus deforming the floor planes like this:
http://thumbs.modthesims2.com/getimage.php?file=346255
However, no point can ever be raised or lowered so far that it touches the next plane. The game enforces a minimum distance of four clicks, above and below. This also has the effect that two squares from different planes can never be directly side by side. There will always be at least one square of space between them, in which the two planes slope downwards and upwards respectively to avoid each other:
http://thumbs.modthesims2.com/getimage.php?file=346256
This is the reason why sometimes two areas of floor simply cannot be connected, even though they are at the same height. They are on different planes, and there is no horizontal square in which a connecting floor tile could be placed.
Another effect of this is that you cannot get a 90 degree slope in one of the planes, whether it's the ground or one of the upper levels. For two adjacent floor squares of the same plane to have different elevations, the grid points between them would need to have two different heights at once:
http://thumbs.modthesims2.com/getimage.php?file=346257
It's not possible to do that. The only thing you can do is to put one of the grid points at one height, the next one at the other height, and let the ground slope between them. Normally that's not a problem, because you would simply use two different planes and connect them with a wall to get your 90 degree angles - but when "excavating" a hole in the ground level for a basement, that's not possible, since there is no lower level than that. You have to use the plane of the ground level for both elevations and hide the slope, e.g. by building walls at either end or by building a foundation across it (which is basically the same thing, only more automated).
http://thumbs.modthesims2.com/getimage.php?file=346263
Sometimes you find a tutorial that teaches you how to build what you want, but you have to go through lots of complicated steps, that include building temporary scaffolds and guides, using cheats, and often very nearly destroying everything you've already built. And you wonder why it's so complicated.
The reason why this happen lies in the way that The Sims 2 models its most basic 3D building blocks, namely the floor tiles and walls. They are not freeform 3D objects as one would have in a generic 3D modelling program, but they are restricted to specific slots in a rigid, square matrix somewhat like this:
http://thumbs.modthesims2.com/getimage.php?file=346254
Floor tiles can only be placed into the horizontal squares on one of the planes, and walls (ignoring for the sake of simplicity the special case of diagonal walls) can only exist in one of the vertical rectangles, connecting a grid line on one plane with the line directly above.
The only variation allowed in this rigidity is that each of the intersection points defining the squares can be raised or lowered along the vertical axis, thus deforming the floor planes like this:
http://thumbs.modthesims2.com/getimage.php?file=346255
However, no point can ever be raised or lowered so far that it touches the next plane. The game enforces a minimum distance of four clicks, above and below. This also has the effect that two squares from different planes can never be directly side by side. There will always be at least one square of space between them, in which the two planes slope downwards and upwards respectively to avoid each other:
http://thumbs.modthesims2.com/getimage.php?file=346256
This is the reason why sometimes two areas of floor simply cannot be connected, even though they are at the same height. They are on different planes, and there is no horizontal square in which a connecting floor tile could be placed.
Another effect of this is that you cannot get a 90 degree slope in one of the planes, whether it's the ground or one of the upper levels. For two adjacent floor squares of the same plane to have different elevations, the grid points between them would need to have two different heights at once:
http://thumbs.modthesims2.com/getimage.php?file=346257
It's not possible to do that. The only thing you can do is to put one of the grid points at one height, the next one at the other height, and let the ground slope between them. Normally that's not a problem, because you would simply use two different planes and connect them with a wall to get your 90 degree angles - but when "excavating" a hole in the ground level for a basement, that's not possible, since there is no lower level than that. You have to use the plane of the ground level for both elevations and hide the slope, e.g. by building walls at either end or by building a foundation across it (which is basically the same thing, only more automated).
http://thumbs.modthesims2.com/getimage.php?file=346263