Jump to content
simmaster07

Revisiting Prop Pox and Prop Theory

98 posts in this topic Last Reply

Highlighted Posts

@simmaster07 Thanks for this revisit, amazing work indeed, finally I started to understand what is going on. My limited english and understanding the game processes still give me a lot of black hole, but at least not everything is black now... :D:D
I will send a PM with my latest Prop Pox-ish issues and the city save files. In the meantime, I have experienced prop pox-ish shymptones three times so far, and in only one case was the actuall guilty the BDK resource kit and its modified props. Second time I messed with some RTK4 properties, which I didn't understand at that time, third time (this happened last september and the a returning problem after Christmas) the somehow already damaged save file (which didn't show any singn about this) was triggered by a bunch of broken lots - there was a essential file update which accidently didn't contain the necessary prop family examplars which caused that the props disappeared from the lots, after that this essential was fixed but I started to demolish and rebuild the lots again, and that bulldozing process triggered the Prop Pox. But only in one affected city  by the broken lots, the other city thanks it's fine in a way.

But in this last two cases I didn't have the BDK kit at all installed or near to my plugin folder (and never was).

But the other question is, what is about the disabled props? It was told, that disabled prop can cause the Prop Pox too and they are hand-in-hand, but on your picture and what was my experience in the last case, there wasn't any disabled props. Also I have a city (which had the above mentioned broken lots, but bulldozing them hasn't caused any trouble) which has 4-5 disabled props, as I understand probably because once I made a huge rebuilding and redesigning project in the city and bulldozed most of the existing buildings and rezoned the half city. So how about this city, when it reach a point, because of the disabled props the Prop Pox is inevitable? Because according to the current understanding, this is the case...

- Tyberius

Share this post


Link to post
Share on other sites

A truly fascinating insight into arguably the single biggest mystery clouding SimCity 4 over the past 15 years. Existing theories can be difficult to challenge, especially when there's been so long since they were established and last discussed. But until confirmed or dismissed, any given theory can only at best be accepted as a plausible hypothesis. Research can be cumulative over a number of attempts, but it's really only until finding a proven solution where an idea is acceptable as fact.

Your findings not only provide a clear and detailed analysis of the issue, but already delve into a brand new perspective on the technicalities within. The mechanism how the save process operates, and conditions required to reproduce the bug. Since you've found it's possible to trigger from the steps described, I begin to wonder whether Prop Pox is as rare as we may have previously thought. Could it potentially be more widespread? By being able to initiate the process of corruption relatively easily, I feel it opens the door for additional testing. Perhaps there are differences between the CD and various digital versions of the game?

Right here and now, the fact there's mention of a possible cure is incredible to think. Beyond words in fact. Because up until this point, there was very little hope left. Instead just mere speculation surrounded by cluttered confusion. A case of reducing risk factors without fully understanding what the risks are. What you've done here is turned a faint glimmer into a brighter radiant light. Whichever way and whatever may happen next, unbelievably you've given us renewed hope.

For that the entire SC4 community (already) couldn't be more thankful for your efforts. *:)

I've featured this topic and shall be following it with great interest...

Share this post


Link to post
Share on other sites

In theory it could happen to any type of subfile stored in the savefile, that stores overrideable objects, at decompression time.

Would it happen in practice? I don't know. It largely depends on the subfile structure and how the game loads it. It was assumed some time ago that the Flora subfile (That stores Flora objects on lots) would likely also be susceptible to this bug. Since nobody has really ever done anything with Lot Flora (Pretty much every flora pack (trees, shrubs, flowers, etc) I know of adds flora as props instead of as Lot Flora), it was considered dismissable.

Share this post


Link to post
Share on other sites
3 hours ago, Flat Raver said:

Is it possible there's a Texture Pox, as well?

Good question, but I honestly doubt that. Props are basically lot objects that refer to a pre-rendered model, which is identified by a "Resource Key Type n" property, where n can have different values for static props or props that appear/disappear over time. Depending on this, the "Resource Key Type" property has different lengths (timed props require more information!), and confusion with lengths causes this save file corruption.

Textures, however, don't have such a property AFAIK. Therefore, I don't think they are susceptible to the problem that is at the root of prop pox. The texture itself is identified by an instance ID (IID) that is a static, 8-digit hexadecimal value. Other parameters such as orientation or position on the lot are stored in the lot file. Inside the lot file, each object on the lot is assigned one line that defines at what position (X/Y/Z axis, Z axis (height) being a moot point for textures) and in what orientation (N/E/S/W) that object is placed. These lines have a default number of entries, but the number of entries can vary. Since the lines are specific to each lot and don't override a conflicting Maxis default, they shouldn't be able to cause save file corruption.

Why do you ask, though? Do you experience texture problems in game? Or just curiosity?

Share this post


Link to post
Share on other sites

Trying to follow along here...

giphy.gif

Is it possible to completely avoid prop pox by not using dependencies that modify original Maxis prop exemplars?
And if that's the case, is it a matter of identifying said dependencies and either a) avoid using them, or b) modify them such that they use custom props with the intended modified properties, instead of with the original (though modified) Maxis props?  Ie., does prop pox happen with custom props, too?

Share this post


Link to post
Share on other sites

I think that by now we should be measuring time in terms of before and after the SC4fix, don't you think? It has changed and has the ability to change so much about the game that anything else would be an understatement!


About the possibility of a texture pox, it cannot happen for the same reason you can 'hot-swap' texture replacements without having to demolish or obliterate anything. On the other hand, the need to demolish the lots using props or buildings one is about to delete from the plugins folder spans from the same issue: to avoid keeping information on the savefile which has no relation to the plugins whatsoever, to avoid file corruption.

23 minutes ago, madhatter106 said:

Is it possible to completely avoid prop pox by not using dependencies that modify original Maxis prop exemplars?

 

24 minutes ago, madhatter106 said:

does prop pox happen with custom props, too?

Prop pox ocurrs when there is a property mismatch between existing and new props, so it can happen both between Maxis' and Maxis modified props or between custom props and custom modified props (for example, a custom static car prop replaced by a timed car prop with the same ID).

In principle (and this has been the main palliative method used), you can avoid the prop by not using modified props that share their IDs with the original ones, but if Simmaster's findings are consistent, a change in the way the game saves city tiles can make those cautions irrelevant, by fixing the way the city tile file gets corrupted.

Share this post


Link to post
Share on other sites
1 hour ago, matias93 said:

Prop pox ocurrs when there is a property mismatch between existing and new props, so it can happen both between Maxis' and Maxis modified props or between custom props and custom modified props (for example, a custom static car prop replaced by a timed car prop with the same ID).

 

yep I can attest to this as I induced prop pox in a region with solely custom content of my own making - so I had only myself to blame. . *:rofl:

Share this post


Link to post
Share on other sites
8 hours ago, T Wrecks said:

Good question, but I honestly doubt that. Props are basically lot objects that refer to a pre-rendered model, which is identified by a "Resource Key Type n" property, where n can have different values for static props or props that appear/disappear over time. Depending on this, the "Resource Key Type" property has different lengths (timed props require more information!), and confusion with lengths causes this save file corruption.

Textures, however, don't have such a property AFAIK. Therefore, I don't think they are susceptible to the problem that is at the root of prop pox. The texture itself is identified by an instance ID (IID) that is a static, 8-digit hexadecimal value. Other parameters such as orientation or position on the lot are stored in the lot file. Inside the lot file, each object on the lot is assigned one line that defines at what position (X/Y/Z axis, Z axis (height) being a moot point for textures) and in what orientation (N/E/S/W) that object is placed. These lines have a default number of entries, but the number of entries can vary. Since the lines are specific to each lot and don't override a conflicting Maxis default, they shouldn't be able to cause save file corruption.

Why do you ask, though? Do you experience texture problems in game? Or just curiosity?

Because I've been experiencing industrial lots having squares that don't have any texture at all, but instead just leaves a gaping hole down to the abyss

Share this post


Link to post
Share on other sites

Ah, okay. Good thing you asked. Do you have some screenshots and/or some links to the lots in question, or at least their names and a description of what's missing?

Chances are it's as simple as a missing, broken/damaged or outdated dependency. Might take a while to figure out, but it should be able to be fixed, and the worst case is that you'll have to demolish and re-grow/plop the affected lots, but you won't have to fear the effect spreading over to other stuff and permamently corrupting anything. *:)

Share this post


Link to post
Share on other sites

@simmaster07

Oh man!!!! Sorry I couldn't send the file, lack of time of so, but I tested your attached fix, with the above described/mentioned damaged city tile of mine (with that one where if I bulldoze certain lots, I got poxed, but if I'm not touching those lots, nothing special really happens). I bulldozed and rebuilt some all of those lots which usually triggering the prop pox in that city and...

I HASN'T GOT ****ING PROP POX!!! :rofl::party:

I saved a couple of times and while I finished the bulldozing rebuilding process I ended up with 16 disabled props according to the SC4 Save program, but that's it, I can't see visable missing props/wiped out city parts, I don't see any filesize dropping on the save file, rather it was increase a bit (from 44,2 to 44,3 and I only made the replopping stuff of these used to be Prop Pox triggering lots)

So, I'm actually can't say anything... First I realized, that your "fix" in this particular case is working it brought some teardrop into my eyes... Really... it's awesome... I can't actually belive... :D :D :D

Thank you very much, I can't be gratefull enough...

- Tyberius

 

Share this post


Link to post
Share on other sites

I have a tile that has disabled props - but no pox. I've destroyed the lots -  but its still disabled (unlike the other neighbouring tile I sent which is fully pox'ed). I would like to see what would happen if we could re-enable disabled props in a non pox city. As in a pox city - the ID's are all 0 for the disabled props, but with no pox the ID's remain and its a simple flag that needs to be reflipped.

Share this post


Link to post
Share on other sites
11 hours ago, simmaster07 said:

I still have absolutely no idea how my DLL is more stable than the game's normal implementation.

Perhaps yours succeeds because you instinctively used correct as-modded prop-size values instead of whatever pre-mod short value that the original code assumed was still valid.

Share this post


Link to post
Share on other sites

huh, this whole time when people mentioned "Prop Pox" I thought they were referring to when seemingly random props replaced other props... i.e. a prop of some sort is visible, but is the completely incorrect one.   Somehow until now I never caught that it was actually when props disappeared from view.*  Thanks for the excellent opening explanation that included a basic definition for those of us who have heard the term plenty of times but never encountered its real meaning!

Is the situation I describe with random prop substitutes just a possible variation on the "Prop Pox" theme?
An example I have, which annoys me to no end, is that whenever I newly plop one of the Maxis default City Halls, I get a random selection of very incorrect props on that lot that are replacing Maxis originals:
- for flora, I end up with *HUGE* redwood and cedar trees that seem to correspond to a MMP pack I installed long ago... that's not so bad... but...
- for other "lot junk" I mostly end up with some of the ACB 747 airplane props... obviously a city hall with a British Airways 747 hanging off the lot looks, oh, a bit *odd* maybe?
This started happening quite a while after I installed the relevant content that's now showing up out of place, so things were fine for a while--until things went all haywire one day and have never been the same since.

I've never really been sure how to resolve this without just deleting those prop + MMP packs... which I don't want to do since I actually really like them in their appropriate use situations (My region's airports would be bereft of 747s for their many prestigious international connections! :))

Has anyone had experience with this sort of problem? ...and how to possibly fix it, short of deleting lots of content?

(* notably I have run into the "real" Pox as well, but didn't know what it was at the time... though the one or two times it ever occurred for me in 10+ years of play very clearly corresponded with other problems, like a crash near the end of the save game process).

Share this post


Link to post
Share on other sites

Ok, maybe I wasn't following the logic thoroughly because I simply assumed that the solution provided, even if it were proved effective on preventing prop pox, wouldn't be able to fix already poxed cities...

This is not only a game changer, is an outright MIRACLE!!!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an Account  

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

Register a New Account

Sign In  

Already have an account? Sign in here.

Sign In Now


  • Similar Content

    • By etg-nc2nyc
      My apologies if this has been covered - I've searched extensively and can't find the answer and would like some help, please. 
      All of the trees and MMPs have disappeared from my latest city. I gather this is a result of "prop pox." So I read each of the following carefully: 
      https://community.simtropolis.com/forums/topic/74667-revisiting-prop-pox-and-prop-theory/
      https://community.simtropolis.com/files/file/32047-sc4macinjector-a-dynamic-code-plugin-loader-for-mac/
      https://community.simtropolis.com/files/file/30883-sc4fix-third-party-patches-for-sc4/
      https://community.simtropolis.com/forums/topic/70495-game-framework-compatible-dll-loading-and-other-modding-discoveries/
      I downloaded the sc4macinjector and ran it. All seems unchanged - no harm done. (I backed up plugins and regions just in case.)
      I downloaded sc4fix - which seems to be doing wonders for our Windows friends - YAY!!! It is a .dll file. I have no clue what to do with it. My VERY basic computer knowledge is that .dll files can't run on Mac. Regarding the sc4macinjector it says the following on its page:
      "What does this do
      SC4MacInjector allows the Mac equivalent of .dll mods to be loaded on Aspyr's port of SimCity 4 for Intel Macs.
      Note: you will not be able to use Windows .dll mods directly. They need to be targeted specifically for Macs as .so files."
      OK. I comprehend those words, but haven't a clue as to what that means in action - or if there is something I can do to target a .dll file as an .so file. <insert very confused llama, perhaps >
      1. Do I actually have prop pox? Have I made the correct assumption that the pox caused my MMPs and props on small residentials to disappear?
      2. Can someone guide on what, if anything, there is to be done about it? I feel clueless and in way over my head from a technological standpoint. Like... I understand technology better than your 90 year old grandma who just made you those amazing cookies*, but ... sometimes... not much.
      *A hypothetical grandma. Now I want cookies.
    • By simmaster07
      What does this do
      Fixes a serialization bug that could corrupt the savegame, particularly when mods are installed that modify existing exemplars (i.e. prop pox). Resolves a crash-to-desktop when hovering NAM puzzle pieces over transit-enabled lots. Allows other DLLs to load into SC4's memory without a GZCOM framework. Requirements
      This fix is made for versions 640 and 641 of SimCity 4 on Windows. Version 640 is a fully-patched SC4 retail copy, and version 641 is a fully-patched digital distribution version (i.e. Steam, Origin, GOG). Although v641 is supported, it has only been officially tested on Steam.
      Installation
      Unzip to Documents\SimCity 4\Plugins.
      To see if SC4Fix is working properly, check the title of your game window. If you are playing in fullscreen mode, alt-tab out and hover over the SimCity taskbar icon. The titlebar will show "SC4Fix (version #)" if loaded properly.
      Repairing cities already affected by prop pox
      Thanks to kingofsimcity for these instructions:
      In the region view, open the graphics settings and change City Detail to Low. Close and relaunch SC4. Open the offending city tile and save immediately. Exit to region without saving and change City Detail back to High. Close and relaunch SC4. Open the offending city tile and save again. Demonstration
      Click here for a video showing the ability to hover puzzle pieces over transit-enabled lots with this DLL.
      Development Thread and Source Code
      Development Thread
      Source Code
    • By Tyberius06
      Hi!
      1. So I ran into a little problem after a longer hiatus from the game. I started to change a coulple of lot which were redone during the last couple of months, when I so the phenomena on the first picture. The diagonal roads which has any plopped item next to it reverts US style double yellow line road instead of the white dashed  european stlye, which is my NAM setting. The funny thing is, that the zones are not affecting to the road, only the plopables. My question is: could it be a NAM issue OR maybe one of @rsc204 or @rivit mod does this. I'm using NAM 36 with rsc/mgb204's No Grass NAM (NGN), with the Side Walk NAM 1.0 PSS (SWN) and rivit's Tarsealed Streets and the latest RUM for RRW v5. I used the same mods before NAM36 and I didn't experience any problem like this.
      2. I ran into this problem now I think the 2nd or 3rd times (first was sometimes end of summer, than today now 2 times.) I have a back-up from 8th october, and I didn't have any problem with that save file, however when I started to play and saved the city and quit, I don't know what happened, but the SC4 Save says I have Prop Pox. It used to come out (with a different map) when my save file reached the 12-ish MB, but now my save file is 43,2 MB and when I save the city it drops back to 42 MB, and the props from the right side of the map are completely wiped out. I brought back the file from the back up and import it into the map replacing the "damaged" file, but after little modification and saving the city I got the same result. It can't be the typical Prop Pox, since I don't have the BDK kit, and never was non of my cities, since I started to play with this map, and I don't remember I've ever met with this offset buffer error, but I don't really remeber either what is the standard prop pox error message. And the funny thing, that I don't have disabled props... So what the...?
      Any help or advise would be appreciated! 
      Thanks in advance!
      - Tyberius
    • By nRVOUS
      its only in one tile so should I wipe It and just move on to another region or do more? So far i deleted all my peg lots since they seem to be considered a problem so should I do anything else?
    • By TekindusT
      I've read a bit about prop pox at SC4D and one thing is sure: this picture got me very worried:




      As you may see, I lack a bunch of props of that side of the city. In this moment, it seems to be the only "poxed" district, but I'm truly afraid of a pox expansion to other places. It is my capital city and the last thing I want is to lose it.

      What can I do? Is any way to fix this? Can I avoid the expansion? Should I keep playing with this city? Please, help me.

      Some useful data about the city:
      - About a 85-90% of its landmass has been constructed.
      - My game is fully updated.
      - This city file size is 9.43 MB.
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Thank You for the Continued Support!

Simtropolis relies mainly on member donations to continue operating. Without your support, we just would not be able to be entering our 15th year online!  You've really help make this a great community.

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, so that we can help keep bringing SimCity players together to share our creations.

Make a Donation, Get a Gift!

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

stexcollection-header.png

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