District Styles Plus

If you liked this item, please rate it up on Steam Workshop page.

Author: meda22

Last revision: 25 Jan, 2023 at 00:44 UTC (4)

File size: 331.78 KB

On Steam Workshop

Description:
BE AWARE – THIS IS STILL WORK-IN-PROGRESS
… and progress is super slow due my job workload and real life matters 🙂

Complatible with game version 1.15.1 (Free Patch)
Description

Heavily inspired by Building Themes mod by Boformer (well, GUI is basically dissected from his mod). All the credit is going to Boformer as he came up with the main idea of Building Themes mod.

Many modders will probably find snippets of their code in source of DSP – so I would like to thank them for a great inspiration and I hope they don’t mind 🙂

You can check code at GitHub and write your notes, founded bugs, ideas there too. But be aware – I am not a C# dev and code is super unpolished (aka messy as hell).
GitHub[github.com]

HOW TO Import Building Themes

It is possible to import Building Themes now (though implementation is rather crude). It can be done by following steps (illustrated guide can be found here ):

  • unsub Building Themes and sub this mod
  • run C:S and go to the mod options in MAIN MENU (import is not possible from loaded game)
  • Fill up path to BuildingThemes.xml and click on import button
  • WAIT … this depends on number of your assets and size of configuration in xml file… you may need wait well over minute…
  • When it is done, you can check new styles in content manager. You can even use content manager to sub all missing assets (any in-game asset will be always marked as missing though)
  • Load your game and assign styles to the districts (that needs to be done manually, sorry)
  • Save game to a NEW save – that is always a good practise

If you want go back to Building Themes just delete newly created styles, unsub this mod, sub Building Themes mod and load OLD save – which you haven’t overwrite previously, right?

Several notes to import:

  • default themes like International etc will be imported only if you made any change in them (otherwise they are not included in BuildingThemes.xml)
  • import can be used even for importing Building Themes mods… you just subscribe that theme mod you like, then you will fill up path to BuildingThemes.xml file in that given mod directory. After that, you can use content manager to download assets to newly created style – or you can download assets from collection which is usually mentioned in theme mod description.
  • Building themes cloning feature is not supported and it won’t ever be

Current Features
  • added DSE (District Style Editor) panel which can be open by "DSE" button
  • it is possible to create or delete district styles – this will create/delete the style package file. So far tested only with local styles.
  • it is possible to add vanilla buildings to style but to load these styles properly, this mod is needed (they won’t work without this mod)
  • it is possible to filter buildings in DSE
  • it is possible to set if DSP (District Styles Plus) should restrict building variations based on zone type only or zone type and level (vanilla behaviour)
  • it is possible to set styles for whole city so it will behave like a default style for un-districted parts of
  • all the zoning stuff is vanilla (the way how buildings are chosen for given zoning block etc.)
  • it is possible to pick multiple styles for a district

IMPORTANT NOTES

Mod is working fine but it still need quite some polishing – hence still in "alpha". Here is a list of known shortcomings…

  • when using District Style Editor, it can sometimes freeze for a few seconds (especially when creating/editing style first time after game load). Just wait it out 🙂 It is nothing game breaking but I want to investigate why it’s happening.
  • I recommend to pause game when you working with styles in the Editor because all the changes have effect immediately! (I am planning to improve Editor to be more user friendly in this part)
  • If you are using Ploppable RICO Revisited mod, you can use its option "Prevent styles from deleting building" to prevent district styles functionality from deleting unfitting buildings automatically. Then they will change appearance according style only on level change.
  • If you are using Find It 2, newly created styles will be available in its filter only after next game load. That is because Find It mod does not count with possibility that new style can be created during a running game.
  • If you are using Loading Order Mod and its profiling functionality, do remember to save profile in LOM app when you create a new style in the game! Otherwise that style won’t be included in load order if you re-load profile in LOM app. (It is same like when new mod or asset is subscribed)
  • If you run to some issue, please provide an output.log file! And if you reproduce issue with a debug logging enabled, you are my hero! …
  • … but do not have debug logging enabled all the time – it writes out quite a lot of data to log
  • It is not compatible with Building Themes mod which – I suppose – is pretty clear 🙂

ZONING AND BUILDING SPAWNING (simplified)

I see a lot of questions and comments that buildings are not spawning on zoned lots so I’ve decided to put together a (simplified) description how spawning works in vanilla game in few points.

  • First and most important – this mod does not change any zoning and spawning logic of game. This mod is only about district styles and their in-game configuration
  • There are some specific rules for corner buildings but basically, game tries to spawn a biggest building as possible. Game is processing zoned blocks for each 8u width (I think).
  • if there is a free zoned lot of width from 6u to 8u, game will try to spawn 4u wide building or 2u wide building AND NOTHING ELSE.
  • if there is a free zoned lot of width 5u, game will try to spawn 3u wide building or 2u wide building AND NOTHING ELSE.
  • if there is a free zoned lot of width 4u, game will try to spawn 4u wide building or 2u wide building AND NOTHING ELSE.
  • if there is a free zoned lot of width 3u, game will try to spawn 3u wide building or 2u wide building AND NOTHING ELSE.
  • if there is a free zoned lot of width 2u, game will try to spawn 2u wide building AND NOTHING ELSE.
  • and finally – ONLY when free zoned lot is of width 1u, game will try to spawn 1u wide building.
  • also – building CANNOT change its width on level up.

It is important to these spawn rules when working with styles, which are "incomplete" (does not contain buildings of all sizes and levels). Also remember that some corner buildings won’t grow anywhere else than corner lots only.

Other notes

I haven’t tested it properly with styles downloaded from steam – only few basic cases. But it is something I want to focus in next step of development.

It can be added / removed any time. When removed, styles which contains a vanilla buildings (including CCP) won’t load. Also districts will be set to use a "default" style.

Some information about picked styles for districts is saved into save game but if mod is removed, it will be just ignored.

As written in the header – work is going super slow… and same can be with my answers – so sorry for that in advance 😀

Download
Required items:

Click the title to search on this site.


Harmony 2.2.2-0 (Mod Dependency) [1.16.0-f3 compatible] — Steam Workshop
Revisions:

Old revisions of this mod are available below. Click the link to download.