Jump to content
smf_16

discovery Modifying .sc4 savegames: It IS possible!

smf_16

Information

For updating to the latest version package, remember to run the following command:

npm install -g sc4@latest

Message added by smf_16

230 posts in this topic Last Reply

Highlighted Posts

Posted:
Last Online:  
 

This thread is starting to look sticky -- it's laying the foundation for a long-term development arm. If it grows development branches, it might even warrant its own subforum to hold all of the discussions for various mods, how-to articles, Q&A, and research lines.

If I understand correctly, this new technique only runs on saved games while SC4 is not running, is that right? If so, then we're looking at mods that are little executable external programs rather than something added into SC4 itself.

I saw Node.js mentioned above as the author's personal favorite language. What other language(s) could implement this technique? Not all of us are equipped to use Node.js. For instance, I'd rather use Java (in the Eclipse IDE). I also wouldn't mind using C++. Would anyone else be interested in developing this tech in a language other than Node.js?

We should think about how to generalize and share some common functions so that multiple implementations of virtually the same thing do not end up being written into a bunch of different mods. Since these mods will be external to SC4, I think we'd stay out of SC4Fix.dll, creating a new library (or library per language) instead. Am I comprehending this rightly?

 

  • Like 5

-- Jeff Fisher ><> Vancouver WA
"I may be pissing into the wind, but if I keep my enemies behind me and aim carefully, I can still rain on their parade."

Share this post


Link to post
Share on other sites
Posted:
Last Online:  
 
4 hours ago, smf_16 said:

JavaScript is quick and easy to learn.

Tell that to the folks who won't hire me  :/

Hey wait a second... If I provably come up to speed on this for SC4, maybe you could tell them (if I use you as a reference after writing something that works).

  • Like 1

-- Jeff Fisher ><> Vancouver WA
"I may be pissing into the wind, but if I keep my enemies behind me and aim carefully, I can still rain on their parade."

Share this post


Link to post
Share on other sites
  • Original Poster
  • Posted:
    Last Online:  
     
    10 hours ago, jeffryfisher said:

    Hey wait a second... If I provably come up to speed on this for SC4, maybe you could tell them (if I use you as a reference after writing something that works).

    Would be happy to!

    In the meantime I've experimented a little more, this time with bridges. I started a city, made a bridge in it and plopped a lot right next to it. I exited the game, wrote some code that moves the lot

    let lot = lotFile.lots[0];
    lot.minZ -= 3;
    lot.maxZ -= 3;

    and opened up SimCity again. The city opened happily and this was the result:

    MFfV00W.png

    vYYUfG2.png

    Some interesting stuff to note here. The base textures and overlay textures are moved correctly and are displayed correctly even under the bridge. No conflicts here with any reserved tiles or something. Buildings and props didn't move though, but that seems logical because if you're editing props or buildings in the lot editor, the changes won't be reflected in the game before rebuilding the lot. This is not the case for textures (I guess a saw the term "hot reloading" somewhere). Apparently the game simply extracts any props from a lot and puts it in its own props list and no longer has the props linked to the parent lot, but I think that this behaviour was well known already.

    I also tried drawing a road over the  space that now should have become available, but this wasn't possible. It still tells me I can't place on top of reserved tiles, so I guess somewhere in the savegame is still a record of reserved tiles as well. I don't know if this has been figured out yet, but I don't see any reference to it in the wiki. This also made me think if the same thing happened with the ploppable residentials and indeed even though the ploppable residentials did have a green zone rectangle underneath, it was impossible to build roads over them as you are able to with "normal" growables. Not really an issue though because bulldozing those plopped residentials seems to work after all. I think we really have to figure out how these reserved tiles work.

    eF7AdPZ.png

    Some interesting stuff also happened when saving. Saving by Ctrl+S did not crash the game, however when I exited to region without saving, the game crashed. Still, when I opened up the city again, the changes that I made actually were persisted. This is rather interesting as you would expect that exiting to region without saving does not need the city anymore. Moreover, when I opened another city in the region and exited to region without saving here, the game did not crash and showed the region correctly. So it doesn't have something to do with building up the region view, it is actually related to the city itself, but the weird thing is that you'd expect "Exit to region without saving" to just leave everything alone.

    I decided to see what happens if I move back the lot to its old position using the same script. This is the result:

    sDVzqNO.png

    erJxtPG.png

    The base textures have been moved back into place, but interestingly the textures under the bridge that now fall outside of the lots boundaries are still there! I have absolutely no explanation for this. Are the textures being kept somewhere in the savegame after all? No clue.

    I tried to save again - which was successful - and then exited to region without saving. No crash this time, so the previous saves did not critically corrupt the savegame due to a lot being under a bridge.

    While putting lots under bridges is all fun and stuff, I think the real value here will lie in putting functional transport networks under bridges, but this will require some information about the network subfiles in a game. And even if we succeed to draw roads under bridges by modifying the savegame, the question still remains open whether the exit-to-region-without-saving crash would also occur in this case. While the city still seems to be functioning after normal saves, I think it's a no-go to have this exit-to-region crash as a side effect.

    As for @Wiimeiser's questions about bridges, I'm inclined to say that:

    • The game will probably be able to handle bridges that are adjacent.
    • Concerning crossing bridges I'm less sure, but personally I think it's possible.
    • It is unknown whether this "exit-to-region-crash" would be present as well. Unfortunately I'm inclined to say that it would.

     

    - Seba

    • Like 9

    Visit www.growifier.com for ploppable residentials

    Love playing hearts and other card games? Have a look at www.whisthub.com!

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     

    Testing adjacent and crossing bridges may require we find a way to spontaneously generate them rather than move existing ones.

     

    For the reserved tiles, are there any subfiles with unknown contents? Do these change at all when plopping a lot? That should be investigated.

    • Like 4

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     
    5 hours ago, smf_16 said:

    I think we really have to figure out how these reserved tiles work.

    Prior work on removing "immortal lots" might shed light

    • Like 2

    -- Jeff Fisher ><> Vancouver WA
    "I may be pissing into the wind, but if I keep my enemies behind me and aim carefully, I can still rain on their parade."

    Share this post


    Link to post
    Share on other sites
  • Original Poster
  • Posted:
    Last Online:  
     
    2 hours ago, carlosmarcelo said:

    First, I used historical, it works good! I thought that did works just in Residencials, but I saw it works in Commercial and Industrial Zones. Thats ok.

    That is correct, for the moment it simply sets historical for all lots (even parks and non-functional landmarks, although these don't show a "make historical" checkbox if you query them). It is definitely possible to allow some more fine-grained control here but I simply did not include it for the proof of concept.

    2 hours ago, carlosmarcelo said:

    When I use --force, the savegamefile was zero.

    I noticed this yesterday as well. This only seems to happen though if you put the --force in front of the city name. I did say you have to do it like that in my original post, but I modified it. The correct syntax would be

    sc4 growify --zone-type="R3" "path/to/city.sc4" --force

    where --force is at the back. I corrected my original post and also published an update of the module on npm that protects against zeroed savegames if you mistype it. You can update to the latest version running

    npm install -g sc4@latest

     

    2 hours ago, carlosmarcelo said:

    It does not matter if I choose R1 (R $?), R2 (R $$?) Or R3 (R $$$?), It does all 3 always.

    Perhaps the naming isn't too clear here, but this is the zone that it should put underneath the plopped residential, where R1 is Low Density, R2 Medium Density and R3 High Density. This is a bit confusing, I know.

    2 hours ago, carlosmarcelo said:

    The plop build growified, if abandoned, no matter what you do, it will never become "not abandoned" (here I have doubt if this is possible in "normal grow builds")

    I don't really understand what you mean here. Do you mean that if a building was abandoned and you "growify" it, it is still abandoned? In that case that is true, however I guess it should be possible to convert abandoned buildings back to normal as well. Haven't figured out how that would work though.

    2 hours ago, carlosmarcelo said:

    The plop build growified, if it is demolished, it does not allow another building to grow: it is necessary to rezone.

    I think this has something to do with the reserved zones as I mentioned in one of my posts above. I'm going to try if I can figure out how I can unset this. I thought that it might have something to do with the Building subfile here - meaning that if there's a building, you can't build over it, even if that building is now part of a lot. However, if you say that no new buildings would grow, there might be some other factors here too. Definitely needs some more research.

    Many thanks for testing and sharing some feedback! *:thumb:

    2 hours ago, Wiimeiser said:

    Testing adjacent and crossing bridges may require we find a way to spontaneously generate them rather than move existing ones.

    I think so too. The moving of the lots was simply to check if the game could handle this, or whether it would crash spontaneously. I couldn't do this with transport networks because I haven't figured out a way yet to generate them. I don't know if there's anyone - perhaps someone from the NAM team? - that has more info about this.

     

    - Seba

    • Like 8
    • Thanks 1

    Visit www.growifier.com for ploppable residentials

    Love playing hearts and other card games? Have a look at www.whisthub.com!

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     

    Just a tiny update atm: I've successfully run the historical option on a fully developed city and every building I checked is appropriately marked. *:)

    • Like 9

    Chance favors the prepared mind. ― Louis Pasteur  
    Remember, a few hours of trial and error can save you several minutes of looking at the README. -- I Am Devloper (on Twitter)

    Clickable ---> The Best of Cori's Posts  (scroll down a wee bit there)    Something fun: MySimtropolis - Invitation to become a SimCity 4 MySim

    Are you new here? Check out the Introduction and Guide to Simtropolis.

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     

    There must be something strange going on behind the scenes with lots... Hmm...

     

    Download and install the BSC Waterfronts (I think those are the ones) and put two parking lot segments next to each other facing an existing road. If you did this correctly the NAM workaround for FAR T-intersections should kick in and override the lots, making them immortal, and leaving the frame behind if you do manage to successfully demolish them. What is going on there, I wonder?

    • Like 1

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     

    I'm pleased to also report complete success with setting existingly built RCI buildings to historical. First of all I created an new region named "Saveland" for the general purpose of testing here. Then I made a new city on a small tile named Historical Hill.

    As follows:

    SC4 Save Editing - Historical Test-01.png

    (Of course, with such a name, there really is a small hill there too.)

     

    Sure enough, once I'd confirmed it worked on all RCI buildings:

    SC4 Save Editing - Historical Test-02.jpg

    :ooh:


    Even knowing how this would work, it was quite the amazement to see it actually transformed in front of my eyes. It's unbelievable!

    One thing I've discovered so far is how the historical preference applies to zones and not individual lots. This means how if bulldozing any RCI lot and they are still marked as historical when growing again with a new building. As @carlosmarcelo found earlier with needing to re-zone with the plopped residentials, this also applies to anything historical. Perhaps it's actually quite a useful feature thinking about it. Because then how the land is assigned to have the building preserved, and if wanting to redevelop a building then it'd save the need to toggle the checkbox each time, which might be easy to forget.

    As can be seen, my test was done using a mixture of custom and Maxis lots also, which proves how there's compatibility of the functions for custom content too. I thought about testing in plain vanilla, but figured how extra variables might actually prove everything is working. Now of course, I'm yet to test in a bigger city tile and running for an extended period. This initial proof though is very pleasing to see how it does work.

    Now to try some plopped residentials I think...

    • Like 6
    • Thanks 2

    Quick Links

    “SimCity 4 is not just a game, but a tool driven by our own imagination and creativity.”

    Buy me a coffee

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     

    @smf_16

    Ofc, I don't know what I'm doing having never coded in JavaScript, but I did tweak lines 29, 86, 162, and 262 in Cli.js and you are welcome to copy and paste them if you like what I've done. ( Or there's prolly a better way to accomplish this which I don't know. *:blush: )

    The sc4 --help looks like this with the changes:

    7010-0268.jpg

     

    Attached file: cli.zip

    Edit: I see I forgot the new line for --Block, but I'll leave it as-is since I don't know if you even want or need this. *:lol:
    (And it could use a description of Low, Medium, and High density after the R numbers.)

    • Like 4
    • Thanks 1

    Chance favors the prepared mind. ― Louis Pasteur  
    Remember, a few hours of trial and error can save you several minutes of looking at the README. -- I Am Devloper (on Twitter)

    Clickable ---> The Best of Cori's Posts  (scroll down a wee bit there)    Something fun: MySimtropolis - Invitation to become a SimCity 4 MySim

    Are you new here? Check out the Introduction and Guide to Simtropolis.

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     

    Disregard the above.

    I've since figured out one can use sc4 <the command name> --help to get the options list. *:blush:

    • Like 3

    Chance favors the prepared mind. ― Louis Pasteur  
    Remember, a few hours of trial and error can save you several minutes of looking at the README. -- I Am Devloper (on Twitter)

    Clickable ---> The Best of Cori's Posts  (scroll down a wee bit there)    Something fun: MySimtropolis - Invitation to become a SimCity 4 MySim

    Are you new here? Check out the Introduction and Guide to Simtropolis.

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     

    I was wondering if progress with deciphering the game save files could later help in figuring out the inner workings of tunnels and bridges, two areas in which the NAM has actually experienced more limited development compared to other transport networks.

    • Like 3

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     
    On 6/19/2019 at 10:33 PM, smf_16 said:

    I'm actually interested in the story behind how @simmaster07 found the checksum algorithm. From what I've read he uses the Mac version which is non-obfuscated or something. Still it's remarkable that it hasn't been noted that this could make editing savegames possible as well.

    Right. Specifically, the Mac version of SimCity 4 retains symbols, which means that the names of functions and classes are still embedded in the executable, unlike the PC version. This still requires some reverse engineering work, which is touchy to discuss on this forum since the legality of it depends on your jurisdiction. (Granted, the SimCity 4 EULA allows reverse engineering "to the extent permitted under applicable law.")

    • Like 3
    • Yes 2

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     

    So, back to testing. I created a ploppable residential lot and have it in the Rewards menu so it's not all cluttered up in with Landmarks.

    7010-0278.jpg

     

    And then creating some places to work, plopping the residential while the game was paused, running your Growify command, and then letting some time run after reloading the game:

    7010-0282.jpg

     

    I'm really hoping plopped Industrial can be Growified too so the freight trucks can get out of the lot. *;)

    • Like 6
    • Yes 2
    • Thanks 1

    Chance favors the prepared mind. ― Louis Pasteur  
    Remember, a few hours of trial and error can save you several minutes of looking at the README. -- I Am Devloper (on Twitter)

    Clickable ---> The Best of Cori's Posts  (scroll down a wee bit there)    Something fun: MySimtropolis - Invitation to become a SimCity 4 MySim

    Are you new here? Check out the Introduction and Guide to Simtropolis.

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     

    I did some testing forcing different hex values for the zone change and here's the list you prolly already know:

    0x01 = R - Low
    0x02 = R - Medium
    0x03 = R - High
    0x04 = C - Low
    0x05 = C - Medium
    0x06 = C- High
    0x07 = I - Low
    0x08 = I - Medium
    0x09 = I - High
    0x0A = Military
    0x0B = Airport
    0x0C = Seaport
    0x0D = Spaceport
    0x0E = Plopped Building
    0x0F = Plopped Building
     

    7010-0286.jpg


    Ofc, the ones at 10 and up aren't useful in anyway for this project.

    • Like 5
    • Thanks 1

    Chance favors the prepared mind. ― Louis Pasteur  
    Remember, a few hours of trial and error can save you several minutes of looking at the README. -- I Am Devloper (on Twitter)

    Clickable ---> The Best of Cori's Posts  (scroll down a wee bit there)    Something fun: MySimtropolis - Invitation to become a SimCity 4 MySim

    Are you new here? Check out the Introduction and Guide to Simtropolis.

    Share this post


    Link to post
    Share on other sites
  • Original Poster
  • Posted:
    Last Online:  
     

    Thanks! While I guessed it would be something like that, I didn't know for sure yet. Will certainly be helpful!

    How did you manage to show the hex values in the Savegame explorer instead of "R - Low" etc? I didn't find a function for this in the Savegame explorer.

    • Like 1

    Visit www.growifier.com for ploppable residentials

    Love playing hearts and other card games? Have a look at www.whisthub.com!

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     
    22 minutes ago, smf_16 said:

    How did you manage to show the hex values in the Savegame explorer instead of "R - Low" etc?

    I didn't. :O

    What I did do was plop my 4 x 4 residential lot in the game, save, and then edit this part of your source code:

    let zoneType = ({
        "R1": 0x01,
        "R2": 0x02,
        "R3": 0x03
    })[type] || 0x03;

    I changed each hex value to 0x04, ran it, and then peeked in Savegame explorer to see what it said the zoneType was. I did that up thru 0x10 and SGE did show a colored square, but said the description was 16 so I knew it didn't have a name. While I don't quite understand how the code knows if the lot.isPloppedResidential (or rather if it's not cause of the ! in front of it in line 123), I did check that changing all 4 of those hex values caused it to change the zoning of my lot in the game.

    • Like 4

    Chance favors the prepared mind. ― Louis Pasteur  
    Remember, a few hours of trial and error can save you several minutes of looking at the README. -- I Am Devloper (on Twitter)

    Clickable ---> The Best of Cori's Posts  (scroll down a wee bit there)    Something fun: MySimtropolis - Invitation to become a SimCity 4 MySim

    Are you new here? Check out the Introduction and Guide to Simtropolis.

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     
    2 hours ago, smf_16 said:

    If I'm not mistaken this is actually standard game behavior. If you were to make everything historical by hand, the same behaviour is observed that any lots that grow after you've demolished a historical building will be historical themselves as well.

    Cool. I didn't realise it works that way by default, as I'd never previously thought to bulldoze a historical lot. Thanks for pointing that out.

     

    33 minutes ago, smf_16 said:

    How did you manage to show the hex values in the Savegame explorer instead of "R - Low" etc? I didn't find a function for this in the Savegame explorer.

    If you're referring to the extra data in the right hand column, this would be from an update to the program to include newly decoded subfiles back in 2012. This package contains a Python script named external.py which is to be replaced with the existing file. Then as @CorinaMarie previewed above, upon startup and the extra data can be seen once navigating through the categories as listed. So maybe this could be useful for greater understanding of the saved file composition, including for comparison purposes.


    The description there goes on to say:

    Quote

    With this new information comes a slight update for the SC4 Savegame Explorer, which enables browsing all these newly decoded subfiles. However, none are editable because SC4 uses a certain checksum algorithm, voiding the entire subfile if anything is changed.

    As we know, times have changed since said statement was written. *;)


    Given SC4Devotion is currently experiencing technical issues, for the benefit of others I'll attach the small yet significant 15 kB file below:

    SC4SaveUpdate.zip

     

    • Like 6
    • Thanks 2

    Quick Links

    “SimCity 4 is not just a game, but a tool driven by our own imagination and creativity.”

    Buy me a coffee

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     
    19 hours ago, smf_16 said:

    I don't really understand what you mean here. Do you mean that if a building was abandoned and you "growify" it, it is still abandoned? In that case that is true, however I guess it should be possible to convert abandoned buildings back to normal as well. Haven't figured out how that would work though.

    When a build is abandoned, usually for demands and jobs problems, it can back if this problems was solved. I didn't reach to do this with this build, but I can't affirm that it happened because that is a plop "growificated".

     

    19 hours ago, smf_16 said:

    I think this has something to do with the reserved zones as I mentioned in one of my posts above. I'm going to try if I can figure out how I can unset this. I thought that it might have something to do with the Building subfile here - meaning that if there's a building, you can't build over it, even if that building is now part of a lot. However, if you say that no new buildings would grow, there might be some other factors here too. Definitely needs some more research.

    Well, if I put a especific build there, I don't see problem to re-zone or to re-plop other build that I want. But, after I saw all thread here, I noticed that the challenge is discover about this reserved tiles.

     

    4 hours ago, CorinaMarie said:

    I'm really hoping plopped Industrial can be Growified too so the freight trucks can get out of the lot. *;)

    YES!!! YES!!! I would like this. The same to the freight trains, correct? Both are out of the lot. *:thumb:

     

    3 hours ago, smf_16 said:

    I have no reason to believe that this wouldn't be possible as well. Planning to try this out in the coming days.

    Thanks! *:thumb: I'm not developer, I'm sorry can't help too.

     

    2 hours ago, CorinaMarie said:

    I did some testing forcing different hex values for the zone change and here's the list you prolly already know:

    0x01 = R - Low
    (...)
    0x0D = Spaceport
    0x0E = Plopped Building
    0x0F = Plopped Building

    Cora, using cheat ctrl+x and typing PlaceZone ID, Xi, Zi, Xf, Zf (ex: PlaceZone 1, 5, 5, 10, 10) you put this zones in your city with this area. But let me add informations in your list:

    0x00 = no-zone

    0x0E = landfill

    0x0F = city owned land

    And others informations can be help in researchs:

    cost to de-zone = (cost of "construct" no-zone + cost de-zone selected)

    cost to zone = (cost of "destruct" no-zone + cost zone selected).

    When you de-zone a place, the game, internally, do a zone of the no-zone, so it sum cost values of no-zone and de-zone selected. The same to when you to zone: the game sum cost of destruct a no-zone land with cost of zone seleceted.

    I discovered this playing with values of the plugin ReZonePlus.dat.

     


      Edited by carlosmarcelo  

    added informations about sums de-zone and re-zone
    • Like 7

    "Nenhum sucesso no mundo compensa o fracasso no lar." - "No other success can compensate for failure in the home."
    Como fazer da sua família um time de sucesso! - How to make your family a successful team!
     

    Share this post


    Link to post
    Share on other sites
  • Original Poster
  • Posted:
    Last Online:  
     
    2 hours ago, CorinaMarie said:

    While I don't quite understand how the code knows if the lot.isPloppedResidential (or rather if it's not cause of the ! in front of it in line 123), I did check that changing all 4 of those hex values caused it to change the zoning of my lot in the game.

    Have a look at line 195 in lib/lot-file.js. First of all it checks if the lot has it's zone type set to plopped (0x0f). If this is the case, it still has to check what type of plopped building it is. We don't want to "growify" our parks and non-functional landmarks as well obviously, so it looks at the jobCapacities entry, more specifically to the demandSourceIndices it finds here. If it finds either R§, R§§ or R§§§, it decides that it's a plopped residential. The full list of demand source indices is

    0x00001010 = R§
    0x00001020 = R§§
    0x00001030 = R§§§
    0x00003110 = CS§
    0x00003120 = CS§§
    0x00003130 = CS§§§
    0x00003320 = CO§§
    0x00003330 = CO§§§
    0x00004100 = IR
    0x00004200 = ID
    0x00004300 = IM
    0x00004400 = IHT

    We'll have to use a similar strategy if we want to growify Commercial and Industrial as well.

    2 hours ago, Cyclone Boom said:

    If you're referring to the extra data in the right hand column, this would be from an update to the program to include newly decoded subfiles back in 2012. This package contains a Python script named external.py which is to be replaced with the existing file. Then as @CorinaMarie previewed above, upon startup and the extra data can be seen once navigating through the categories as listed. So maybe this could be useful for greater understanding of the saved file composition, including for comparison purposes.

    I was referring to the fact that it seemed like she found a way to show the hex values instead of the textual zone types, but turns out she had to do it "the hard way" as well. *:) My savegame explorer looks pretty much the same, so I'm guessing I already have the latest update. Going to check just to be sure though.

    EDIT: @Cyclone Boom Turns out I didn't have the latest version. This indeed does provide a lot more information. Thanks a lot! *:thumb:

    2 hours ago, Cyclone Boom said:

    As we know, times have changed since said statement was written. *;)

    They did, they absolutely sure did... *:)

    • Like 7
    • Thanks 1

    Visit www.growifier.com for ploppable residentials

    Love playing hearts and other card games? Have a look at www.whisthub.com!

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     
    8 hours ago, simmaster07 said:

    This still requires some reverse engineering work, which is touchy to discuss on this forum since the legality of it depends on your jurisdiction. (Granted, the SimCity 4 EULA allows reverse engineering "to the extent permitted under applicable law.")

    Sorry if it to be a very dumb questions: someone already asked to EA about unknown parts in savegame file?🤔

    • Like 1

    "Nenhum sucesso no mundo compensa o fracasso no lar." - "No other success can compensate for failure in the home."
    Como fazer da sua família um time de sucesso! - How to make your family a successful team!
     

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     
    40 minutes ago, carlosmarcelo said:

    already asked to EA about unknown parts in savegame file?

    Oooh... Like connections. If we could reverse-engineer connections, then maybe we could cool-off infinite commuters, and create mods to deliver freight to neighbors, and - and - and...

    I can imagine a future in which a game-launcher automatically runs some save-game apps after the game exits (modifying any save-game files updated since the launcher started). Such a launcher / script would "save" us from having to remember (and fat-finger) the command lines every time.

    • Like 7

    -- Jeff Fisher ><> Vancouver WA
    "I may be pissing into the wind, but if I keep my enemies behind me and aim carefully, I can still rain on their parade."

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     
    6 hours ago, carlosmarcelo said:

    Cora, using cheat ctrl+x and typing PlaceZone ID, Xi, Zi, Xf, Zf (ex: PlaceZone 1, 5, 5, 10, 10) you put this zones in your city with this area. But let me add informations in your list:

    0x00 = no-zone

    0x0E = landfill

    0x0F = city owned land

    Seems it could very well be the difference between the data that the Savegame Explorer uses and the names in the game itself. It certainly makes sense that 0x0E would be the landfill cause otherwise it's not listed. And the 0x0F as city owned land makes sense cause that was the original intention Maxis would've had for the plopped buildings.

     

    5 hours ago, smf_16 said:

    Have a look at line 195 in lib/lot-file.js.

    Ah! Now it makes perfect sense starting there and then seeing what it does in lines 201 to 211. Thanks! *:)

     

    1 hour ago, smf_16 said:

    The historical and growify commands are now interactive. This means that you no longer need to use the flags such as --zone-type.

    I've tested and the interactiveness works. (I personally prefer passing the parameters since I create a separate .cmd file for what I want to do.)

     

    2 hours ago, smf_16 said:

    For those of you running v0.0.8-alpha, there was a bug where "force mode" didn't do anything when being used with the growify command.

    I installed the latest and I have 0.0.9alpha.

    Note to other peeps: The --force switch is no supported. There will be a y/N question instead for overwriting the city as the last step for both the historical and the growify.

     

    I did do a quick test for the historical and selected only residential and that worked fine in an existing city. The Ag, Industrial, and Commercial were left untouched as expected. I also did a growify with one plopped residential and that too  worked fine. (For the growify test I told it to growify all types and it figured out there was only one residential in that test to modify.)

    I've got another project to work on for a while today, but I'll be testing more as I have time.

     

    • Like 9

    Chance favors the prepared mind. ― Louis Pasteur  
    Remember, a few hours of trial and error can save you several minutes of looking at the README. -- I Am Devloper (on Twitter)

    Clickable ---> The Best of Cori's Posts  (scroll down a wee bit there)    Something fun: MySimtropolis - Invitation to become a SimCity 4 MySim

    Are you new here? Check out the Introduction and Guide to Simtropolis.

    Share this post


    Link to post
    Share on other sites

    Sign In or register to comment...

    To comment in reply, you must be a community member

    Sign In  

    Already have an account? Sign in here.

    Sign In Now

    Create an Account  

    Sign up to join our friendly community. It's easy!  

    Register a New Account


    ×

    Thank You for the Continued Support!

    Simtropolis depends on donations to fund site maintenance costs.
    Without your support, we just would not be in our 24th year online!  You really help make this a great community. *:thumb:

    But we still need your support to stay online. If you're able to, please consider a donation to help us stay up and running. This helps sustain a platform where we can share our community creations for years to come.

    Make a Donation, Get a Gift!

    Expand your city with the best from the Simtropolis Exchange.
    Make a Donation and get one or all three discs today!

    STEX Collections

    By way of a "Thank You" gift, we'd like to send you our STEX Collector's DVD. It's some of the best buildings, lots, maps and mods collected for you over the years. Check out the STEX Collections for more info.

    Each donation helps keep Simtropolis online, open and free!

    Thank you for reading and enjoy the site!

    More About STEX Collections