Scale Nodes
Scale: Biased
Hotkeys
Ctrl+Shift+Right Arrow, Ctrl+Shift+Left Arrow, Ctrl+Shift+Up Arrow, Ctrl+Shift+Down Arrow, Ctrl+Shift+Plus(+), Ctrl+Shift+Minus(-), Ctrl+Shift+Home
About
This script allows you to quickly scale nodes with a bias to one edge of the selection. The scale amount is based on your node graph zoom level, so if you are zoomed out a lot, it will scale a lot, and if you zoom in close, it will scale a little. The Bulldozer Physics engine will push neighbouring nodes out of the way. The bias can be changed by opening the settings
How It Works
Increase Width Biased: Select nodes and press Ctrl+Shift+Right Arrow to increase their width away from the left side of the selection
Decrease Width Biased: Select nodes and press Ctrl+Shift+Left Arrow to decrease their width towards the left side of the selection
Increase Height Biased: Select nodes and press Ctrl+Shift+Down Arrow to increase their height away from the top side of the selection
Decrease Height Biased: Select nodes and press Ctrl+Shift+Up Arrow to decrease their height towards the top side of the selection
Increase Width & Height Biased: Select nodes and press Ctrl+Shift+Plus(+) to increase their width and height away from the top left corner of the selection
Increase Width & Height Biased: Select nodes and press Ctrl+Shift+Minus(-) to decrease their width and height towards the top left corner of the selection
Open Settings: Press Ctrl+Shift+Home to change the side to bias to. Changing from left to right or top to bottom will invert the above hotkeys to maintain logical consistency. Change if scaling uses bulldozer physics or not (More on Bulldozer Physics below)
Don’t Change Nested Backdrops Scale: When enabled if you have smaller nested backdrops they will not change scale, and just move with the larger scaling backdrop
Demo Video
Scale: Center
Hotkeys
Shift+Right Arrow, Shift+Left Arrow, Shift+Up Arrow, Shift+Down Arrow, Shift+Plus(+), Shift+Minus(-)
About
This script allows you to quickly scale nodes from the center of the selection. The scale amount is based on your node graph zoom level, so if you are zoomed out a lot, it will scale a lot, and if you zoom in close, it will scale a little. The Bulldozer Physics engine will push neighbouring nodes out of the way
How It Works
Increase Width Center: Select nodes and press Shift+Right Arrow to increase their width away from the center of the selection
Decrease Width Center: Select nodes and press Shift+Left Arrow to decrease their width towards the center of the selection
Increase Height Center: Select nodes and press Shift+Up Arrow to increase their height away from the center of the selection
Decrease Height Center: Select nodes and press Shift+Down Arrow to decrease their height towards the center of the selection
Increase Width & Height Center: Select nodes and press Shift+Plus(+) to increase their width and height away from the center of the selection
Increase Width & Height Center: Select nodes and press Shift+Minus(-) to decrease their width and height towards the center of the selection
Open Settings: Press Shift+Home to change if scaling uses bulldozer physics or not (More on Bulldozer Physics below)
Don’t Change Nested Backdrops Scale: When enabled if you have smaller nested backdrops they will not change scale, and just move with the larger scaling backdrop
Demo Video
Bulldozer Physics
About
In BuddySystem 1.05 a new 2D sweep based continuous collision detection (CCD) physic engine was added called “Bulldozer,” which the scale and move scripts can now use to push neighbouring nodes out of the way, expand or contract backdrops based on padding. For scaling this is enabled by default because I ran out of hotkeys to bind a fast vs physics version to, like with the Move hotkeys. I think in most cases this has been fine, but if you find it slow to scale, or you don’t want the extra physics logic, you can disable the physics engine in the Settings menu, and it will go back to the older faster model
How It Works (Use the Open Settings Hotkeys mentioned above)
Enable Debug Mode: This will turn on debug mode for the physic engine. It draws the sweep area, primary/secondary movers with backdrops, and prints info for debugging
Purple BBox Bystanders: Draws additional backdrops around nodes that are seen by the simulation but are not part of it yet. This is slow
Verbose Debug: Prints a lot of extra debug info. This is very slow
Clean Up Debug Nodes: If the automatic clean up fails for some reason, you can use this to remove any lingering debug backdrops
Use Zoom Level For Size: When enabled, movement and scaling size dynamically adjusts based on the Node Graph zoom level
Zoom Multiplier: Base multiplier for the move/scale step distance
Max Iterations: Maximum number of collision passes allowed. Higher values resolve complex collisions better, but are slower
Max Step Size: Maximum distance nodes can move in a single sub step. When set to 15, if you move a node 150 pixels, the engine runs 10 sub steps
Treat Primary Movers As One: Groups selected nodes into one fast bounding box for the simulation. The same thing as if they were on a backdrop
Node Padding: Padding added around standard nodes to push bystanders away
Backdrop Padding: Padding added around backdrop nodes to push bystanders away
Group Loose Nodes: If nodes are within this distance, group them together to speed up physics calculations
Group Loose Backdrops: If backdrops are within this distance, group them together to speed up physics calculations
Side Padding: Side padding added to the sweep area
Rear Padding: Rear padding added to the sweep area
Forward Multiplier: The amount to expand the sweep area forward based on forward movement
Forward Base Pad: Base padding added to the front of the sweep area
Forward Min Pad: Minimum length for the forward sweep area. If this is set to 0 the Forward Multiplier determines the sweep area. If it’s not 0 the Forward Multiplier does nothing, unless it would have exceeded the min pad value anyways. The Forward Multiplier was the original sweep area logic, but in testing I found using a fixed min pad more predictable (for now)
Center Scale Min Pad: Minimum length for the center scale sweep area. Works the same as Forward Min Pad, but that value was too large when used in all directions, so I split it for optimization
Demo Video
Version History
-
Initial public release
This merged the old adjust nodes and scale nodes scripts into a new smart arrows script with added features
2026-05-24
More!
Download the full BuddySystem, including all the scripts & tools here!
Or read the Install Guide, Version History, Hotkey Cheat Sheet, FAQ/Bug Reporter & Coffee Button!
Buy Me A Coffee?
The BuddySystem is free!… but takes a lot of work… and work needs coffee