Jump to content
CasperVg

Advanced Lot Plop - new GUIs with DLLs

153 posts in this topic Last Reply

Highlighted Posts

Posted:
Last Online:  
 

 

4 hours ago, Ernestmaxis said:

You’re not wrong — normally RUN_CACHE_BUILDER.ps1 should generate lot_configs.cbor and props.cbor. If they don’t appear, the script probably didn’t actually run or stopped with an error.

You could try the following:

  1. Run PowerShell manually (recommended)

    • Open PowerShell as Administrator

    • How? Press shift +  right click on a blanc space in your plugin folder and open Manuely the powershell 

    • Navigate to the Pluginfolder with RUN_CACHE_BUILDER.ps1

    • Run:

    
    .\RUN_CACHE_BUILDER.ps1
    

    This way you can see if any errors appear.

  2. Check PowerShell execution policy (Windows often blocks scripts):

    
    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
    

    Then try again: .\RUN_CACHE_BUILDER.ps1

  3. Make sure you’re running the script in the correct folder
    The cache files will be created in the working directory, so if the path is wrong they won’t show up where you expert.

If the script runs correctly, the .cbor files should be generated automatically.

i have been tried but got some error like this:

 

Screenshot 2026-02-26 175431.png

Share this post


Link to post
Share on other sites
Posted:
Last Online:  
 
10 minutes ago, akazak189 said:

 

i have been tried but got some error like this:

 

Screenshot 2026-02-26 175431.png

sorry, i mistake its run like this:
but still no  the .cbor files

Screenshot 2026-02-26 180544.png

Share this post


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

@akazak189 Follow step by step here!

Quote

Game Root = Location of SimCity program (Default:- C:\Program Files (x86)\Maxis\SimCity Deluxe Edition)
User Plugin = Location of your plugins (Default:- C:\Users\<<your account name since install windows>>\Documents\SimCity 4\Plugins)
Locale Under Game Root = English, UK English, Dutch, German etc (Default:- English)
Render 3D thumbnails = ??? (this one I don't know... Make programs, display driver etc crashed)

I also stuck here, until change something.... Hmmmm.....  🤔


I loves SimCity 4 forever! *:thumb:

Share this post


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

    sorry, i mistake its run like this:
    but still no  the .cbor files

    Screenshot 2026-02-26 180544.png

    Hi @akazak189 Make sure to enter the correct paths during the setup phase in the Powershell script. Right now you entered "A" for all of them, which means that the cache builder will not properly find your plugins and therefore not generate output CBORs. If you agree with the default directories that it suggests, just press ENTER. 

    • Like 4

    Share this post


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

    @CasperVg The Powershell script could be made smarter by automatically grabbing the installation directory from the Windows Registry.

    Here is a Powershell script that implements that based on C# code I wrote to do the same thing:

    function Get-SC4-Installation-Folder {    
        $path = "$env:PROGRAMFILES(x86)\SimCity 4 Deluxe Edition"
    
        # We need to open the 32-bit registry view due to SC4 being a 32-bit application.
        $hklm = [Microsoft.Win32.RegistryKey]::OpenBaseKey([Microsoft.Win32.RegistryHive]::LocalMachine, [Microsoft.Win32.RegistryView]::Registry32)
    
        if ($hklm)
        {
            $key = $hklm.OpenSubKey("SOFTWARE\\Maxis\\SimCity 4")
    
            if ($key)
            {
                $value = $key.GetValue("Install Dir")
    
                if ($value)
                {
                    $path = $value
                }
            }
        }
    
        return $path
    }
    
    $sc4path = Get-SC4-Installation-Folder
    
    echo $sc4path

    Also, you can disable execution restrictions for a specific script by using the following in a command window:

    powershell -executionpolicy unrestricted -file <script path>

    This is more secure than disabling them globally for the current user.

    • Like 3
    • Thanks 2

    Share this post


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

    Also, you can disable execution restrictions for a specific script by using the following in a command window:

    How about if we restrict it again after execution? I'm afraid some malware will abuse this fact.

    Share this post


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

    Since the installation and cache building was clearly still quite a burden to everyone, I've now set up an NSIS installer that guides you through the process :)

    See the attached file below. Just unzip and run SC4PlopAndPaint-0.0.6-alpha-Setup.exe inside.
    The installer will also generate a directory in the parent directory of your Plugins folder (SC4PlopAndPaint) that contains an uninstaller, the log files of the last cache build, and a mini script to rerun the cache build when you update your plugins)

    Enjoy!

    image.png.6dd7887095746031909f014810687d0a.pngimage.png.22f1b6657200e89db5315c2ec673f5ed.pngimage.png.b42d1548d7ace8e3077aa3a5abfc16de.png

     

    SC4PlopAndPaint-0.0.6-alpha-Setup.zip


      Edited by CasperVg  

    minor adjustment to the setup installer
    • Like 5
    • Thanks 2

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     
    21 hours ago, CasperVg said:

    Hi @akazak189 Make sure to enter the correct paths during the setup phase in the Powershell script. Right now you entered "A" for all of them, which means that the cache builder will not properly find your plugins and therefore not generate output CBORs. If you agree with the default directories that it suggests, just press ENTER. 

    thx a lot! its worked, many thanks 

    • Like 3

    Share this post


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

    Hi Casper,

    After several evenings of testing, I wanted to share my observations.

    Stability (major improvement)
    The new update is extremely stable — honestly impressive with a plugin setup of around 50k props. I was able to play multiple evenings, sometimes up to 2 hours per session, without any crashes.

    However, for this to work I had to install the following runtimes from Microsoft:

    After installing these, everything became very stable. Also noticeable: no loading delays anymore a huge improvement. Really great work.

     

    Timed props ( @Girafe content)
    The reason I initially did not see prop previews is because I tested it only with Girafe content. Later, with more content when I made this unfortunaleted observation

    It appears many of (Girafe and VIP team) props are timed. You only receive a prop preview when the timing conditions are valid. Some cars are seasonal or time-based, and the preview only appears when the correct time/season is active.

    Some props never show a preview at all. There is also no warning that the prop will be placed directly — you only see that paint mode is active. Sometimes the prop still appears on the map, but often it does not. Since Girafe’s content (and team content) is very unique, this is a very very unfortunate!



    SC4PlopAndPaint-0.0.6-alpha cache builder
    I also downloaded SC4PlopAndPaint-0.0.6-alpha-Setup.

    One thing I noticed:
    _SC4PlopAndPaintCacheBuilder is not placed in the Plugins folder during installation. Because of this, running RUN_CACHE_BUILDER cannot retrieve data for the .cbor files.

    Should this file be placed in the Plugins folder?
    When I manually moved it there, it worked and the .cbor files were generated.

    Hope this feedback helps. The progress is amazing — I’m really looking forward to the next update!

    • Like 2

    Share this post


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

    Automated Notice Message

    All posts after 1 March, 2026 @ 01:37 GMT were lost in the site crash.

    We've added this message thread divider in every topic across all forums for what were then active threads. (We decided active is if the most recent extant post (from the backup) was on or after 1 January, 2026.)

    This divider serves as notice that the conversation was interrupted. Answers and further discussion which used to be here have been lost. Keep this in mind when replying. Our hope is to rebuild what is missing.

    • Like 2

    I am Lab Rat.

    Share this post


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

    Cant wait to give this ago! Hope a pre release soon. 

    • Like 2

    Share this post


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

    Hey @CasperVg,

    Been using and loving the Plop and Paint tool - it's as transformative as NAM. Thank you for investing your time and sharing this with us.

    I have a question. In the buildings and lots tab, I can only find about a quarter of the Maxis buildings. Not sure how the tool pulls this information, but here's a simple example. Below are four medium density apartments that basically have the same dimensions, growth stage, occupancy, and so on (first picture). The lots below happen to use the exact same lot configuration and the exact same "building" in the Plop and Paint interface, but each structure comes from a different tile set (New York, Chicago, Houston, Euro). Plop and Paint only lists one building: "Apartments." Plop and Paint lists the different lot sizes and configurations for this building, but neither the building nor lot list provides the different Maxis buildings from each tile set. Therefore, Plop and Paint only shows about a quarter of them. Is there some part of the Plop and Paint interface that shows this and I've just missed it? In researching this forum topic, I believe @Kel9509 noted this in an earlier post, too. 

    1. Same "building," but different tile sets. This building has 10 lot variants. However, with 4 building styles, we should have something like 40 lots - 10 for each building variant. 

    6.jpg.d0f957e850cf0b46ba20af5f14c47fa1.jpg

    2. When I use the Plop and Paint picking tool and hover over the lot, it shows the Chicago version of this building on this lot. However, this building is from the Houston tile set.

    5.jpg.f3e94811da01336799587f96f0b74cb5.jpg

    3. Advanced query data for Euro variant:

    4.jpg.30acb30d7fb090665035b9b694046c60.jpg

    4. Advanced query data for Houston variant:

    3.jpg.d54d1512716992c76d8484433a218919.jpg

    5. Advanced query data for Chicago variant:

    2.jpg.64a53f3fd1160bed43d7191e5e4e836b.jpg

    6. Advanced query data for New York variant:

    1.jpg.d9f0ae277a1a81e5f5189816e24619cd.jpg

    So, to recap, it looks like Plop and Paint only captures a portion of the total Maxis catalogue. Any advice on how to access the rest of the Maxis content?

    Thanks for your time!

    -Blade

    • Like 6

    Share this post


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

    I don't think this is a bug with Plop and Paint, more that weird bug with the Maxis buildings that have mixed up the building exemplars or something. 

    • Thanks 1

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     
    On 18/06/2026 at 9:08 AM, bladeberkman said:

    1. Same "building," but different tile sets. This building has 10 lot variants. However, with 4 building styles, we should have something like 40 lots - 10 for each building variant. 

    So your basic problem here is that a Building (or Buildings Exemplar), is NOT a model, it merely contains a link to one or more models. You can have Buildings Families, that is to say a bunch of Building Exemplars where the eventual one used is randomly chosen. You can also make ten lots and then randomly add one of four buildings of the same footprint, to make 40 variants in real terms, but you still only have 10 actual lots. Likewise due to these functions the actual number of Buildings Exemplars the tool can see, may be less than the potential variants that appear. Where families are used, random selections are kinda inevitable and very much by design, Maxis made huge use of such things, but you don't often see it used for 3rd Party Mods.

    • Like 2

    Head over to my Lot and Mod Shack to keep abreast of my latest developments.

    Do you like custom textures, but don't like all the work involved creating them?, take a look at the Texture Automation options here. Change the look and feel of your transit networks, with the minimum of effort, for example customised versions of my Sidewalk NAM (SWN) and Terrain Grass NAM (TGN) mods, and much more besides.

    New to the NAM? Check out my tutorials on YouTube. Latest upload: How to: RHW - MHO Roundabout Interchanges. (Nov 25).

    p.s. - I'm MGB over on SC4D and a member of the NAM team.

    Share this post


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

    @bladeberkman: Lazarou and rsc204 are mostly correct. It's not so much a bug in Plop-and-Paint per se, more of a lack of support for the sometimes very complex building family & parent cohorts that Maxis set up.

     

    Meanwhile I added some code to at least add filters for the lot/building painter on Building Styles and W2W, using the APIs provided by @Null 45's great Building Styles DLL. The Plop-and-Paint cache builder will cache all the typical Building Styles & W2W properties that were added by the DLL, and show their name & allow filtering by it if the DLL itself is installed. In this picture I have the DLL installed but don't actually use any custom styles, so it shows only the ones that are there by default (i.e. the vanilla styles). Thoughts or ideas on how to do this better?

    Untitled.jpg.cff8eda8ee2bd3fc4045bdfe009dc0af.jpg

     

    Allow More Building Styles - DLL Plugin - DLL Mods - Simtropolis

    • Like 8

    Share this post


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

    It's not so much a bug in Plop-and-Paint per se, more of a lack of support for the sometimes very complex building family & parent cohorts that Maxis set up.

    In your external parser? I had set up parent cohort resolving in my assign building styles tool, but I never did anything with the lot configurations.

    Share this post


    Link to post
    Share on other sites
  • Original Poster
  • Posted:
    Last Online:  
     
    4 hours ago, Null 45 said:

    In your external parser? I had set up parent cohort resolving in my assign building styles tool, but I never did anything with the lot configurations.

    Nope everything is a-ok with the building styles tool/DLL and with the external parser. It's just that there's no really good support atm in Plop-and-Paint for building families.

    As @rsc204 said, those four buildings (New York, Chicago, Houston, Euro) aren't four separate lots, they're one growable lot that points at a Maxis building family rather than a single building. At growth time, the game picks one member of that family based on your active tile sets. The four variants are all members of the same family, each tagged with its tile-set group.

    When the Plop-and-Paint cache tool builds its catalogue, it reads each lot and resolves which building sits on it. When a lot references a family, it currently keeps only the first member of that family and discards the rest. That's the "bug", and it's also why the picker reports "Chicago" while the placed structure is actually "Houston": the Plop-and-Paint cache only ever kept one variant, so it can't tell them apart in-game later.

    I'll need to think whether a solution to this is worth the extra code it would take to maintain the different variants somehow :idea:

     

    • Like 2

    Share this post


    Link to post
    Share on other sites
    Posted:
    Last Online:  
     
    17 minutes ago, CasperVg said:

    I'll need to think whether a solution to this is worth the extra code it would take to maintain the different variants somehow :idea:

    Your code can tell when this comes up? What about inserting "Random" as the text for the Building instead of the first instance encountered?

    • Like 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:  
     
    3 hours ago, CasperVg said:

    When the Plop-and-Paint cache tool builds its catalogue, it reads each lot and resolves which building sits on it. When a lot references a family, it currently keeps only the first member of that family and discards the rest. That's the "bug", and it's also why the picker reports "Chicago" while the placed structure is actually "Houston": the Plop-and-Paint cache only ever kept one variant, so it can't tell them apart in-game later.

    So your tool works like the Maxis LotPlop cheat, picking a lot and then letting the game fill in a potentially random building?

    AFAICT the BuildingPlop cheat works in two stages, effectively calling LotPlop with a restricted set of lots after the user picks a building. I also recently learned that the Navigator feature in Ilives Reader resolves building families and parent cohorts, it is a neat feature but the code is hard to decipher.

    The lot plop view input control can be made to select a specific lot and building variant using constructor parameters, which I use in my Lua Extensions DLL to allow for scripted lot plopping.

    • Like 2

    Share this post


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

    First of all - this tool is incredible, thank you for adding a gameplay element I've been desperate for for many years!

    I've been using it solidly for a few days now and thought I'd share my findings. You've probably already heard these and are aware, and I don't pretend to offer any solutions, but hopefully all of this feedback / testing helps to make incredible mod even better:

    - Have run on an tower with GTX 745, 8 ram, 3.5g i7. voodoo wrapper @2160p - some lag and ctds even with an empty plugins folder, especially on scroll / moving cursor too fast (could be a me thing)
    - Also run on a laptop with GTX 1050, 16 ram, 2.8g i7 voodoo wrapper @ 2160p - serious lag and many ctds, worse than above, unusable, but that's laptop world hey ho
    - HOWEVER both solved by dropping game resolution to 1080p - still slightly laggy, but I can live with a drop in resolution to build, then go back up for other gameplay

    - Couldn't get a ~6GB plugins folder to cache (see this is being optimised already), NAM and 5-6 big packs, maybe a few gb, was ok, took a while

    - Texture plopping has been quite buggy - textures often display above props, which remedies on a rotate or zoom change, but is persistent for me

    - A few instances of CTD after having GUI open for longer than 10 mins and multiple prop selections - fine after closing window each time, up to 2-3 hours gameplay following this method

    Other than that, the interface is pretty much perfect. the guides / grids / snapping is utter genius, and the fact you can change the preview window and tag items is just mind-bending. I wish I knew the first thing about coding to offer better input than above, but like any improvement strategy, the more data and feedback the better!

    • Like 3

    Share this post


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

    Hi - I recently started using the PlopnPaint DLL mod. So great - revoltionary really. I am having trouble with the cache though. The installer / cache builder seems to correctly load and cache everything in my plugins folder in the game install directory (in the C:\Program Files (x86)\GOG Galaxy\Games\SimCity 4 Deluxe Edition folder), but not everything in the plugins in my documents folder. Most things seem to be missing. The directory is correct and I can see that a few props from the [...]Documents\Plugins  folder did get cached... 

    Are there any obvious things that I might be missing that could be stopping all the other props and lots from being captured by the tool? 

    Share this post


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

    Hey Casper,

    Is it also possible to remove textures from lots, just like you can with props?
    I haven't been able to do it yet, or maybe I'm using the wrong keys...

    Some older lots have the parking lots not from SKH. I i could replace it does removing the older texture and give it a new one it would me awesome

    Share this post


    Link to post
    Share on other sites
  • Original Poster
  • Posted:
    Last Online:  
     
    On 22/06/2026 at 10:07 AM, Null 45 said:

    The lot plop view input control can be made to select a specific lot and building variant using constructor parameters, which I use in my Lua Extensions DLL to allow for scripted lot plopping.

    Cool! Plop-and-Paint actually just emits a game message with the Lot ID. But this method that allows to specify both the building & lot ID would be more suitable :) I will investigate further!

    ---

    For people suffering from crashes, it's advisable to install SC4 Graphics Options DLL and to ensure dgVoodoo2 is properly installed. For most configurations this helps a ton!

    ---

    @Ernestmaxis: I did try lot texture removal and got a proof of concept working (via the cSC4LotBaseTextureOccupant class and its texture specifications), but sadly this method did not persist in savegames. It seems like the lot texture occupants (both overlay and base, don't be confused by the name of the Occupant class) are regenerated on each load by the actual lot configurations. See the video below. However in this state I don't consider it to be very useful - hence why the stripper can only remove decal textures you've added yourself.

     

     

    • Like 9

    Share this post


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

    After some further testing, I've realised I'm having some trouble with performance after installing just SC4 Render Serivces - I'm using DgVoodoo and have got SC4 graphics configured correctly. The main issue is a major frame rate drop, buggy cursor (mouse cursor visible through SC4 cursor) and the odd CTD. I thought the issue was plop and paint, but actually it's the render service - any ideas?

    Share this post


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

    Hi i've installed the SC4 renderer as well as the SC4 plop and paint v 0.6.1 mod.

    But when I start up SC4, load a city and press O, nothing happens?

    Please help!

    Share this post


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

    I'm loving the new Plop and Paint!  Terrain decal painting is going to fill so many gaps.  One limitation I've noticed is that it only includes textures ending in 4, thus leaving out up to 2/3 of the textures in some sets, but it's nonetheless still a game-changer!  Good work!

     

    • Like 1

    Share this post


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

    I'm loving the new Plop and Paint!  Terrain decal painting is going to fill so many gaps.  One limitation I've noticed is that it only includes textures ending in 4, thus leaving out up to 2/3 of the textures in some sets, but it's nonetheless still a game-changer!  Good work!

     

    Very interesting! I had just looked at SimCity_2.dat for information on the IID system for textures, and there all textures' IIDs ended with 4 for the zoom 5 version. But I didn't check/know that most texture creators actually fill out their IID space much more densely, and therefore often also have textures with IIDs ending with for 9 or E for their zoom 5 versions :idea: Will fix!

     

    21 hours ago, Stavanger26 said:

    Hi i've installed the SC4 renderer as well as the SC4 plop and paint v 0.6.1 mod.

    But when I start up SC4, load a city and press O, nothing happens?

    Please help!

    Check what SC4PlopAndPaint.log and SC4RenderServices.log say in your <MyDocuments>/SimCity 4/ directory - hopefully there's some information there. Feel free to attach it here.

    On 28-6-2026 at 12:30 AM, Broonie said:

    After some further testing, I've realised I'm having some trouble with performance after installing just SC4 Render Serivces - I'm using DgVoodoo and have got SC4 graphics configured correctly. The main issue is a major frame rate drop, buggy cursor (mouse cursor visible through SC4 cursor) and the odd CTD. I thought the issue was plop and paint, but actually it's the render service - any ideas?

    What is your graphics setup? I.e. what graphics card, external or internal GPU etc.

    • Like 2

    Share this post


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

    Hi @CasperVg.

    I noticed that the new version of the Plop&Paint tool has the polygon painting functionality broken.

    When I hit "Enter" for the first time after making a polygon, all placements just disappear and nothing appears on the map.

    I could do all sorts of polygon painting in the previous version of your tool but now it just stubbornly refuses to build anything. A fix or advice would be welcome. Thank you!

    • Like 2

    The "SimCity 4" vanilla Opera House is the most evil thing in existence. Avoid.

     

    My city journals! *:read:
    - SimCity: Tribalism - seven urbanization concepts clashed together
    Saving Magnasanti... - the most depressing city in history being revitalized

    Also worth checking...
    - "TMC's Drawing Board" - my city designs and plans.
     

    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