More Awesome Than You!

TS2: Burnination => The Podium => Topic started by: Lerf on 2008 November 18, 18:48:05



Title: Is this a Sea Level Fix
Post by: Lerf on 2008 November 18, 18:48:05
I'm asking here because I don't have an affected home to use as a guinea pig.

Over on a non-awesome board someone had downloaded the Curious brothers' house from someplace and put it in a neighborhood.  The "sea-level" was so low that the house was underwater and the poster wanted to know if there was away to fix it.

I was wondering if the method of raising the level used for fixing occupied beach apartments--changing the Z value using the SimPe Lot Description Editor--would work?   You'd have to get the corrected Z value by putting an empty lot on the location of the lower lot to find out what it should be. 

But like I said, I don't have any currently underwater lots to use to test this.

Come to think of it, would it work to fix those annoying cases of houses creating a valley and distorting the road in front of it when a house built at a lower level gets put on a higher street? 



Title: Re: Is this a Sea Level Fix
Post by: Mootilda on 2008 November 18, 19:08:18
No, I do not believe that the Z-level fix will resolve this problem.  Instead, the house in question will end up on top of a hill if you increase the Z-value arbitrarily.  Then again, maybe that's what you want...

Neighborhoods have only one terrain record, which contains the elevations of the land.  The water level is just a constant for the entire neighborhood.  Lots, on the other hand, contain two terrain records: one for the land and a separate one for the water.  When a lot is added to a neighborhood, or moved within a neighborhood, I believe that the game is modifying the lot's water elevation array to mimic the neighborhood water level.

In order to test my theory, I'd need a neighborhood package and a lot package (for that neighborhood) which shows this problem.  Alternatively, someone could point me to a specific Maxis-made neighborhood / lot combination which produces this effect when the lot is moved to a specific location in the neighborhood.  If I can reproduce this problem, I can probably solve it.

My guess is that we need a tool for adjusting the water level array in the lot package.  It would be easy for me to write a program which would adjust the water level on a lot to be a fixed amount lower than the corresponding land elevations.  The LotAdjuster is already doing this for lot edges and expanded terrain.  However, I'm not sure that is what people would actually want.  It would remove all water currently on the lot, including rivers and ponds.  If that's good enough, just let me know and I'll see what I can do.

Alternatively, I have been working on a program to adjust the terrain elevations for each level on a lot.  It should be fairly trivial to add the water elevations to this program.

Come to think of it, would it work to fix those annoying cases of houses creating a valley and distorting the road in front of it when a house built at a lower level gets put on a higher street? 
This might work.  If a house is too low in the neighborhood, then adjusting the Z-value will raise the entire lot.  The question is: what happens to the neighborhood road?


Title: Re: Is this a Sea Level Fix
Post by: Lerf on 2008 November 19, 00:16:27
OK, here's what happened why I tried changing the Z value on a house that was lower than its neighbors.  I checked the Z value of the adjacent house, then I loaded the house I wanted to raise and changed it to the Z value of the first house, commited, saved.

When I went into the neighborhood the house was still at the original elevation, but something was changed--the driveway was clearly not connected to the street and the red overlay that shows a houses level when you mouse over it with the grab tool in the houses bin showed that the level was higher than the house currently sat.  I picked up the house and put it back down.  It was at the old level.

However, I then picked up the house and put it down on another part of the street which was on the same level as the rest of the houses.  It didn't drop, and looking at it in SImPe it was still at the new level I'd set it to.  The street remained level.  The spot where it had been remains lower and the street is still distorted.

So, it can be done if you first place the house somewhere other than where you want it to be, change the elevation and then move it.


Title: Re: Is this a Sea Level Fix
Post by: Nepheris on 2008 November 19, 08:43:34
For your distorted road problem: I've fixed a few instances of road distortion by placement of houses by removing said house, and placing an empty lot on the affected area that is larger than the lot that used to occupy that space. This smoothes the area out to the same level as the surrounding terrain.

I know this is probably useless advice if the affected area in your game is too small to put a new lot on it, and I don't know to which extent this works (I've never had drowned houses in my hoods), but might be worth a try at least?


Title: Re: Is this a Sea Level Fix
Post by: J. M. Pescado on 2008 November 19, 14:05:03
There is no "Sea level fix", but if a point on the lot is below the "natural" sea level of the neighborhood, the lot will be flooded with neighborhood-water. This is harmless and has no effect on your sims, so you can create your own Atlantis, but you may consider it to be unsightly.

There are additional, associated issues with placing lots which are not "flat" basically anywhere, or placing "flat" lots on non-flat terrain. Doing either will permanently deform the neighborhood terrain where you did it, in many cases irreparably. Don't do it.


Title: Re: Is this a Sea Level Fix
Post by: Lerf on 2008 November 19, 18:03:46
Sorry two issues here.  I know this won't fix the underwater problem.

THe problem I tried to fix, the one that sort of works, occurs when you have built a house on a lot, even a flat lot, in a neighborhood at a given level.  Then when the house is put in the bin--sans residents--and used in a neighborhood that is at a higher or lower level than the one in which the house was originally built.

This means that 1. It's a lot harder to place the house.  2. When you can it makes weird level changes to the road, 3. It looks like sh#t.  I'll try to get some pictures of what I'm talking about, but they're all in my non-vanilla neighborhood which I'm not using until after I've vetted M&G today.


Title: Re: Is this a Sea Level Fix
Post by: Mootilda on 2008 November 19, 22:04:16
THe problem I tried to fix, the one that sort of works, occurs when you have built a house on a lot, even a flat lot, in a neighborhood at a given level.  Then when the house is put in the bin--sans residents--and used in a neighborhood that is at a higher or lower level than the one in which the house was originally built.

This means that 1. It's a lot harder to place the house.  2. When you can it makes weird level changes to the road, 3. It looks like sh#t.  I'll try to get some pictures of what I'm talking about, but they're all in my non-vanilla neighborhood which I'm not using until after I've vetted M&G today.
I've never seen this behavior.  Then again, I usually package lots and install them, rather than just moving them into the lot bin and out again.  Now you have my curiousity peaked... I'm going to try this today.

If your discription is correct, then I believe that I have a solution: Use SimPE to adjust the Z-value of the package while it is still in the lot bin.  There's one difference: a lot in the lot bin doesn't have a neighborhood Lot Description (DESC aka LTXT) record.  Instead, you would have to change the LOT record in the lot package.  The two records have very similar formats.  Unfortunately, there's no plugin for the LOT record, so you'd have to either a) edit the record in the hex view or b) write a program to make this adjustment or c) convince Peter Jones to create a plugin for the LOT record.  I've been thinking about changing the LotAdjuster to allow modification of lot packages in the lot bin; adding the ability to change the elevation would be trivial.

Internal record format of the LOT record: http://www.sims2wiki.info/wiki.php?title=LOT

[Update:]
Took another look at the LOT record and there's no Z-value that we know of... in fact, none of the information about placing the lot in the neighborhood exists in that record.  So, the behavior that you're seeing is very odd... I can't imagine where that information is being stored.  The game really ought to have lost all of the positioning information for the lot, so it should use the standard positioning logic when the lot in placed in the neighborhood.

I really need to see this at work...

[Another update:]
I just confirmed that this works as expected:  I placed 170 Sim Lane from Pleasantview into the lot bin, then placed the lot onto the top of the hill.  No problem.  Lot was moved up as expected, to match the level of the road.

I'm going to need a working example of your problem to investigate.



Title: Re: Is this a Sea Level Fix
Post by: J. M. Pescado on 2008 November 19, 23:54:30
I suspect that he's trying to place a lot with non-flat edges, which, naturally, corrupts the terrain.


Title: Re: Is this a Sea Level Fix
Post by: Mootilda on 2008 November 19, 23:57:02
Yeah, I wondered about that.  But, he does say that it happens with flat lots...

I'll try again with a lot with non-flattened edges.

Lerf, which EPs and SPs are you running?

[Update:]

Created a lot with a severe slope, even at the road.  (10 Oak Street from Pleasantview; moved to sloping road at the top of the hill.  Expanded right to create a downward sloping road and terrain.)  Placed in lot bin, then moved to low ground in Pleasantview.  Lot still behaves as expected: road at top of slope matches neighborhood road, slope causes neighborhood terrain to slope downwards to the right.

However, I now have a theory about how this can happen: your lot has the road at a negative relative elevation, rather than at a relative elevation of 0 (which is the standard for all TS2 lots).  IE, your lot contains an odd terrain array which tells the game that the road on the lot is supposed to be lower than the neighborhood road.  Needless to say, this confuses the game and will cause problems everytime that you move the lot, reguardless of whether the lot is being moved to higher, lower, or level ground.  My guess is that this problem occurs whether you just move the lot in the neighborhood, bin the lot, or package the lot; can you confirm?

Again, I believe that I need to see your lot.  Can you attach it here?  (No need for the neighborhood; I just need to see the binned lot package).

[Another Update:]

I managed to reproduce your problem by creating a lot with the road at a negative relative elevation (not an easy task).  I really suspect that this is your problem.


Title: Re: Is this a Sea Level Fix
Post by: Lerf on 2008 November 20, 04:47:48
It could be.  The most severe case was a lot on a location I'd tried numerous other houses on before putting that one in.  I just went in, removed the lot I thought was the problem and all the lots around it.  I used ModifyNeighborhood Terrain to level it and put the problem lot back in--no sinkage.  So, I guess, the street had gotten really badly distorted by trying all the other houses there, plus it ran parallel to a beach with an abrupt drop off.  (Note: it wasn't classified as an apartment at the time I first placed it)

(http://img.photobucket.com/albums/v487/Lerf1950/snapshot_00000043_1630b349.jpg)

However, the other house, the one I experimented on was on an otherwise level street and the lot had been flattened before I built on it.  I almost never leave a lot with bumps on it unless I'm trying to do something unusual, which I wasn't with this house:

BEFORE: You can see by the fact that the road dips from across the street to the house--which it didn't do before I placed the house--that the ground has "sunk". 

(http://img.photobucket.com/albums/v487/Lerf1950/snapshot_00000041_962f3821.jpg)

AFTER Changing Level and Moving:  THe house is on the other end of the same row of houses, two buildings down from where it was.  The house hasn't sunk.

(http://img.photobucket.com/albums/v487/Lerf1950/Screenshot-1.jpg)

Mootilda--I have all EPs and SPs--except MG which I can't get to install.  :P  I don't use the no-CD crack. 
I'll try and get a copy of the house from one of my other neighborhoods where I haven't changed the level.