Forum Announcement, Click Here to Read More From EA_Cade.

[Updated] More .bt Requests: Lot Description (0x01942E2C) and Street Description (0xA680EA4B)

ZerbuZerbu Posts: 3,457 Member
edited March 5 in Nominated Threads
@SimGuruModSquad @SimGuruEugi

I'm trying to modify how lots appear on the world map, and have noticed that editing the resources 0x01942E2C and 0xA680EA4B both have effects on it. When I tried replacing a Lot Description resource with a copy of another, it caused the lots to overlap each other, confirming that it works, but that was as far as I could go.

I assume a .bt file wouldn't be too hard, as both are small files.


UPDATE:

Okay, I took a look at figuring out the files myself, and I think I'm sure those files aren't capable of setting lots to a fixed position on the map (only assign them to "slots" which depend on the defined neighbourhood/street), so unless there's information I'm not aware of, or someone else happens to have the same request, this won't be necessary anymore since it probably won't be capable of what I want.

In case anyone happens to be reading this and is interested, here's .bt code containing the information I have found (everything else is marked "unknown"), though the only thing that's all that interesting is the option to edit lot prices:

Lot Description
UINT16 version;
UINT16 unknown;
UINT64 streetInstance;
UINT32 mapData; // this is combined with streetInstance to determine the lot's position on the map
UINT32 price;
ubyte sizeX;
ubyte sizeY;
byte unknown;
UINT64 ambienceEffects; // points to an XML file in ClienFullBuild1/ClientDeltaBuild1
byte unknown;
byte unknown;
UINT64 soundEffects; // points to an XML file in ClienFullBuild1/ClientDeltaBuild1
byte unknown;
byte unknown;

Street Description:
UINT16 version;
UINT16 unknown;
UINT32 unknown;
UINT32 unknown;
UINT32 unknown;
UINT64 regionDescription;
UINT32 worldFileLength;
char worldFile[worldFileLength];
UINT32 unknown;
UINT32 unknown;
UINT32 unknown;
byte unknown;
byte unknown;
byte unknown;
UINT64 hsvTweakerSettingsData; // points to a DATA file
Post edited by EA_Cade on

Comments

  • Options
    IngeJonesIngeJones Posts: 3,247 Member
    edited September 2016
    Looking less and less like we will ever get a CAW or an edit town mode in the game, doesn't it? I mean, given the built-in inflexibility.
  • Options
    SimGuruModSquadSimGuruModSquad Posts: 597 Member
    Hey @Zerbu, so you are wanting to change the location of lots on the map screen? Those are defined in the resource with type 0x1cc04273.

    -SGMS
  • Options
    ZerbuZerbu Posts: 3,457 Member
    Hey @Zerbu, so you are wanting to change the location of lots on the map screen? Those are defined in the resource with type 0x1cc04273.

    -SGMS

    Thanks! I studied the resource and, unless I'm not understanding properly, it looks like the position of the lots are displayed relatively to the position of the neighbourhoods/areas, so my next question is where are the position of the neighbourhoods defined?

    Also, is it possible to move a neighbourhood from one map to another? (That's an essential part of my plan)
  • Options
    SimGuruModSquadSimGuruModSquad Posts: 597 Member
    Hey @Zerbu, to reduce confusion here is the terminology we should use:

    735ehs832jft.jpg

    The 0x1cc04273 resource defines the positions for all of a Region's Lots. They are defined in 3D space with a camera which is then transformed in 2D screen space. So that resource can fully control where all the lots for a region appear in the map.
    Also, is it possible to move a neighbourhood from one map to another? (That's an essential part of my plan)

    I believe you are asking about moving a World to a different Region. The "World's Description Resource" (type 0xa680ea4b) points to the Region a World should appear in, so in a perfect world just changing that resource would do it. However there is a complication, the UI hard codes the World IDs in each map screens such that if Lots for an unexpected World are encountered, it will just ignore them. So to move a World, currently the map screens UI (authored in Flash) would need to be modified.

    -SGMS
    map.jpg 91.1K
  • Options
    IngeJonesIngeJones Posts: 3,247 Member
    edited September 2016
    Ah.. this isn't the scope terminology SGGraham asked us to use at the release of the game. But your way makes more sense. Because it's the neighborhood which is the geographical unit - the equivalent of a TS3 CAW world. I guess Region is just a map concept - a way of presenting the worlds grouped by climate/terrain type.

    I don't suppose you know why that cross-check limitation (the hardcoding of the World IDs in Flash) was designed in? At first thought it seems to be an arbitrary frustration that serves little purpose other than to make flexibility difficult all round lol.
  • Options
    SimGuruModSquadSimGuruModSquad Posts: 597 Member
    edited September 2016
    Hey @IngeJones, the terminology I am using is what the code uses. Yeah it does not match what Producers have been using, but it will be the least confusing for our discussions since it matches the code.

    The hard-coding of World IDs in the UI is due to the highlight that happens when you hover over a World area. That highlight it is authored by artists in the flash file and the code is connecting the World with its associated highlight, and it does not currently handle the case where a highlight for the World does not exist. We should be able to change the code to allow any World to appear in any Region (although transplanted Worlds would not have a highlight), no guarantees but I'll see what we can do. @Zerbu please let me know if this is something that is still important for what you are trying to do.

    -SGMS
  • Options
    ZerbuZerbu Posts: 3,457 Member
    Being able to move worlds would be great and all, but it would be even better if it was possible to insert new regions with custom worlds that are cloned from existing worlds. Is there any chance that would ever be possible or is the engine too limiting?
  • Options
    SimGuruModSquadSimGuruModSquad Posts: 597 Member
    Hey Zerbu,
    it would be even better if it was possible to insert new regions with custom worlds that are cloned from existing worlds. Is there any chance that would ever be possible
    Adding a new region involves several steps such as adding gameplay tuning for the world, expanding the UI and creating the .world files themselves. So there's definitely a lot of work to make it happen. I don't believe there is anything that makes it impossible (such as C++ side hard coding or limitations). I am thinking the biggest hurdle would be the amount of UI modifications needed to add a new region. I know people have made UI mods that changed actionscript and what not but I have not seen anything to the level that this would require - they could be out there, I am just not aware of any.

    -SGMS
  • Options
    ZerbuZerbu Posts: 3,457 Member
    I've taken a look at the UI files, and from the look of things, adding a new region is too complicated for a modder to do. Even if I were able to figure it out, it likely wouldn't be possible to add the option to a custom tool.

    I think your original plan of changing the code to allow moving worlds would be the next best thing. If you were to do that, would it also be possible to insert new worlds into existing regions (if not create custom regions)?
  • Options
    SimGuruModSquadSimGuruModSquad Posts: 597 Member
    Hey @Zerbu,

    Agreed that your best bet is to not try and add a new Region at this point, best to take it step by step. Adding a new world to an existing region should be possible, the caveat being that I have not actually tried this so we could run in to something. But it should be doable.

    Screenshot of a moved World:
    qsmq9js2xdj0.jpg
    -SGMS
  • Options
    ZerbuZerbu Posts: 3,457 Member
    It looks promising! Will the code changes be added in the next patch, or will I have to wait until a while after that?
  • Options
    SimGuruModSquadSimGuruModSquad Posts: 597 Member
    Hi Zerbu,

    I don't have an exact eta, but City Living at the soonest.

    -SGMS
  • Options
    ZerbuZerbu Posts: 3,457 Member
    edited September 2016
    Thanks for letting me know! At least I'll have time to work on the features of the program and figure out other stuff!

    Is the highlight linked to the name of the .world file? I tested by renaming "SO_CactusBeach_01" to "SO_CactusBeach_02" and updating the 0xA680EA4B resource, as an experiment, and the world disappeared from the map. I assume this is related the above problem (and will be fixed when the code is patched) but I'm just making sure.
    Post edited by Zerbu on
  • Options
    synthwitchsynthwitch Posts: 40 Member
    I'm keeping my eye on this - I've been wanting to create a world in TS4 since it was released, and the usage of less lots and more deco buildings is perfect for it.
  • Options
    HarrisonHarrison Posts: 315 Member
    edited October 2016
    Hi simgurumodsqaud, I was wondering, If this is too difficult for a modder too do, how do your programers do it? Do they have some custom software they use? If so, Maybe you could release that.

    I also had a idea on if you didint, why not have things called "Blank worlds" So basicly all these worlds have are lots, and with a special tool you could add backdrops and stuff, and add more lots, you could also add more custom backdrops seprate from the ea lots by like drawing it and then inserting it into the world. Also due to the limitations of this, maybe the tool could come with like maybe 10 worlds, and you could download other peoples verison of this world, but due to the limits of making custom worlds, you could only have 10 custom worlds at any time.

    Thanks, and happy simming!
  • Options
    IngeJonesIngeJones Posts: 3,247 Member
    Maybe they used Unity lol.
  • Options
    GrijzePilionGrijzePilion Posts: 588 Member
    IngeJones wrote: »
    Maybe they used Unity lol.
    That would explain a lot...

    Look out for BRIDGEPORT'88!
    (oh, and follow me on my Tumblr)
    i5-6600K • 16GB • 2x GTX 1070 • 2x 500GB 850 EVO
  • Options
    SimGuruModSquadSimGuruModSquad Posts: 597 Member
    @Zerbu, the highlight is tied to the world description ID not the file name. So in theory if you update the existing 0xA680EA4B resource to specify a a new filename it should still work so not sure why it did not for you. The fact that the world disappeared entirely is suspicious so maybe there was an issue with how the resource was modified. When this new code is available, it should be more robust - the highlight will just disappear when an unknown world is encountered, however hard to say if it will correct the issue you encountered here.

    @Harrison, I do feel that this is something modders can get working but it's definitely not a simple thing to do, so we'll see how it goes.

    -SGMS
  • Options
    HarrisonHarrison Posts: 315 Member
    @Zerbu, the highlight is tied to the world description ID not the file name. So in theory if you update the existing 0xA680EA4B resource to specify a a new filename it should still work so not sure why it did not for you. The fact that the world disappeared entirely is suspicious so maybe there was an issue with how the resource was modified. When this new code is available, it should be more robust - the highlight will just disappear when an unknown world is encountered, however hard to say if it will correct the issue you encountered here.

    @Harrison, I do feel that this is something modders can get working but it's definitely not a simple thing to do, so we'll see how it goes.

    -SGMS

    Oh, I meant like ea could add it in a optinal update, but ok.

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file
Return to top