Giter Site home page Giter Site logo

bob's People

Contributors

algernon-a avatar chameleon-tbn avatar jacekwolnicki avatar neinnew avatar shg166 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

bob's Issues

Error trying to add prop to a tower crane

I was initially able to select the crane, and add two instances of warning light prop, however after adding them they weren't showing in the list of 'in this building' props on the left panel.

They are definitely added, however as they can be seen under the building:

image

I suspect this error is related to the list not updating:

484,980ms | BOB - the tree and prop replacer: adding new prop for building 2087413270.tower crane CAL_Data at index 0.
NullReferenceException: Object reference not set to an instance of an object
  at BOB.AddedBuildingProps.IsAdded (.BuildingInfo building, Int32 index) [0x00000] in <filename unknown>:0 
  at BOB.BOBBuildingInfoPanel.TargetList () [0x00000] in <filename unknown>:0 
  at BOB.BOBBuildingInfoPanel.UpdateAddedPops () [0x00000] in <filename unknown>:0 
  at BOB.BOBBuildingInfoPanel.AddNew () [0x00000] in <filename unknown>:0 
  at BOB.BOBBuildingInfoPanel.<.ctor>b__28_0 (ColossalFramework.UI.UIComponent control, ColossalFramework.UI.UIMouseEventParameter clickEvent) [0x00000] in <filename unknown>:0 
  at ColossalFramework.UI.UIComponent.OnClick (ColossalFramework.UI.UIMouseEventParameter p) [0x00000] in <filename unknown>:0 
  at ColossalFramework.UI.UIButton.OnClick (ColossalFramework.UI.UIMouseEventParameter p) [0x00000] in <filename unknown>:0 
  at ColossalFramework.UI.UIInput+MouseHandler.ProcessInput (IInputTranslator translator, Ray ray, ColossalFramework.UI.UIComponent component, Boolean retainFocusSetting) [0x00000] in <filename unknown>:0 
  at ColossalFramework.UI.UIInput.ProcessMouseInput () [0x00000] in <filename unknown>:0 
  at ColossalFramework.UI.UIInput.FpsBoosterUpdate () [0x00000] in <filename unknown>:0 
  at BehaviourUpdater.UiInputUpdater.UpdateInput () [0x00000] in <filename unknown>:0 
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
BehaviourUpdater.UiInputUpdater:UpdateInput()
BehaviourUpdater.Updater:Update()

When subsequently trying to select the building for editing with BOB I also get this error:

518,472ms | BOB - the tree and prop replacer: exception creating InfoPanel
Exception: 
Object reference not set to an instance of an object
BOB
  at BOB.AddedBuildingProps.IsAdded (.BuildingInfo building, Int32 index) [0x00000] in <filename unknown>:0 
  at BOB.BOBBuildingInfoPanel.TargetList () [0x00000] in <filename unknown>:0 
  at BOB.BOBBuildingInfoPanel.SetTarget (.PrefabInfo targetPrefabInfo) [0x00000] in <filename unknown>:0 
  at BOB.InfoPanelManager.Create (.PrefabInfo selectedPrefab) [0x00000] in <filename unknown>:0 

Log spam re: replacement packs

Looks like the replacement pack feature is generating lots of log spam when it tries to find the props from each of the replacement packs, most of which I have never subscribed, for example:

BOB - the tree and prop replacer: couldn't find pack target prop.
Unknown prefab: 50 Speed Limit  [Serialization]

It's not a major issue, but would be nice if there was some way to turn it off.

UI tweak when prop/tree replaced with itself

In example below I've hidden a traffic light on a road by setting its probability to 0:

image

The panel on the right shows that it's replaced by itself [v] Traffic Light 01 Mirror; was [v] Traffic Light 01 Mirror

Would it be possible to replace the was... text with something more informative, for example:

  • If probability = 0, replace was... with disabled in red text?
  • If some other change (eg. rotation, position, non-zero proability change, etc), replace was... with adjusted in yellow text?

This would make it much clearer that existing prop is still in place but has been removed or it's settings adjusted.

Option to turn off, or diminish, vanilla network tree swap thing

When placing trees using landscaping tools, the game is way too eager to apply the tool to the nearest network - this makes placing trees close to roads, etc., a complete PITA.

Would it be possible to get an option slider to reduce the 'hit area' of networks when placing trees? 100% = whatever vanilla is, 0% = turn off entirely. Alternatively, a keyboard shortcut to toggle the vanilla tree replacer?

I assume you're also planning to do a prop version in which case it would be useful for that too.

Alternate way to 'show individual props'

If I need to replace a specific individual prop instance, currently I use the Show individual props checkbox which often generates a huge list of things to scroll though (eg. all the road arrow types, for each lane).

Would a better approach be, in the normal list (show individual props = unchecked), for props that have more than one instance, put a expand/collapse arrow (or whatever) next to them... This way I can find the thing I want to change in the normal list, click the arrow button next to it to 'expand' it showing all instances of that specific prop, change one, then click the button again to collapse the list of individual props.

When collapsed, the expand/collapse button color could maybe be changed to indicate that individual prop instances for that item have been altered?

Random prop/tree collections

Summary

Ability to create a collection of props or trees, and then be able to replace a prop or tree with that collection - one of the items would be chosen at random each replacement.

It's similar to replacement packs, but just defining a collection of replacements (rather than a specific mapping A -> B)

Example use case:

I want to customise the foilage along macwelshman's Rural Roads, of which there are several. By default these roads use deciduous trees, but those look out of place when the road is going through a huge pine tree (evergreen) forest.

So I want to replace the road's trees with various "scrub" trees from Pine Scrub Pack.

I could create a collection "Pine Scrub", add the trees from the scrub pack, set their probabilities, and then just use that collection as if it were a tree when defining replacemetns.

Note that it would be ideally be random per tree/prop, not per segment/building, otherwise repetition would be very obvious even within a single segment (based on my current testing). For example, see Klyte's "Prop Replacer" mod which allows "Fully Random" replacements as alternative to per-segment/building seed.

Another example is I could create a collection of map-themed trees to use in buildings, then not have to worry about choosing specific tree when replacing vanilla trees in my buildings. Same sort of thing with props, I could just bundle, for example, a load of residential garden props in to a collection and have low density residential buildings use those.

How it could work:

  • Create collection button - user specifies collection name and type (tree or prop)
  • Select which trees/props go in the collection
  • Save collection
  • Collections then appear in the replacements list alongside normal trees/props (as applicable)
    • Eg. if replacing a tree, the list in right panel would include collections ( maybe in different colour so they stand out )
    • Maybe even allow collections within collections (with recursion prevention)?
      • Eg. I could create small collections of trees, then bundle those in to a 'forest' collection
    • Could possibly make tree collections available for use in forest brush and vice versa?
  • Would need some way to edit collections (eg. if I want to add/remove trees to/from my pine scrub collection)
    • When collections are edited, refresh replacements using it city-wide
  • Note: Doesn't need to be called a "Collection", could be a "Asset Pack" or "Group" or whatever

Some notable benefits:

  • I can put assets from different authors / assets in to a collection
  • Saves time because I can now just say "replace with something from this collection"
  • Use in multiple assets (eg. there are about 12 rural roads where I want pine scrub)
  • I can edit the collection contents to propagate changes throughout my city wherever that collection is used
  • When replacing map trees, I could replace them with a collection - eg. if a map was filled with pine trees, I could create a collection with a mixture of deciduous trees and now I've got a much more interesting forest... and if I edit the collection, could potentially refresh my forest? (would need some way to remember original map trees which is likely painful tho?)

Removal of parking spaces is a bit flakey

Here's an Aldi supermarket that I've removed all parking spaces (set the various props, all three listed in screenshot, to 0% probability)... Each time the game starts, the parking spaces seem to be retained somehow:

image
https://steamcommunity.com/sharedfiles/filedetails/?id=447763113

If I reset them then put them back to 0% probability they stay gone for the remainder of the game, but will suddenly be back again on next session.

I noticed that Klyte's Prop Replacer mod that I used to use had similar issues with parking spaces. Maybe they get cached somewhere eg. a parking grid or something?

Ability to add props/trees to existing buildings/networks

Being able to add props, in particular, would be super useful for adding lights/signs to things like bridge pillars, power line pylons, tunnels, etc.

(could potentially allow some interesting opportunities with Adaptive Networks mod too; eg. I could add road sign props and have AN mod show/hide them based on TMPE settings)

Some way to see original x,y,z values?

In image below, I've got a specific instance of door marker selected in BOB:

image

Problem I'm having is I don't know which floor that marker is on. In the BOB UI, the x,y,z,angle are all 0 for that marker and also the marker on the front of the building, yet they are obviously in different positions on the building.

image

Would it be possible to get some way to see current x,y,z,a of a prop? Maybe as checkbox item tooltip when hovering the item in the list on the left?

Also, if there's some way to visually indicate the height of the prop more clearly that would be useful for props that have no visible form (eg. door markers, dust markers, parking spaces, etc).

Unable to replace prop for 'these buildings' when 'all buildings' already applied

I've made a global replacement of [v] Wall Light White with Pipeline Mounted Light - including setting angle, etc. Now my city has nice orange mood lighting everywhere instead of harsh white floodlights.

However, for some reason the light is buried on the Natural Disasters Earthquake Early Warning Sensor building:

image

So I'm trying to set a building-specific override to change the Y offset for that building (ie. keep same light, rotation, etc., just lift it up out of ground). I can set the Y offset and click These Buildings button, but nothing changes on the map.

Before change:

image

After change (the icon in list on right is now single building so it seems the override is present, but no change on map):

image

EDIT: Merry xmas (:

Thicker wires option

The thinner wires option is great, and what I would use normally, however it would be useful to have a thicker wires option to help make wires very clearly visible while detailing (eg. connecting 18+ 'wire' networks between 3 different size electricity pylons and a substation, which is a complete PITA). Having thicker wires just makes it easier to see where the wire ends are while endlessely tweaking their positions with Move It.

FYI, wire networks I use are:

Also, how does thinner wires interact with Railway Replacer mod which also has a thin wires option IIRC?

Alternatively, a mod to enable snapping (or somehow autowiring) wire networks to pylon wire connection points lol (:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.