The BuddySystem
Is a free suite of Nuke tools & scripts, designed to assist with some of the most common tasks a compositor runs into everyday
I’ve designed this system over the years, based on my experiences as a comp supervisor and HOD working in Animation. Each one targets a fundamental task, and tries to make doing that task intuitive, fast, and easy enough for anyone to pickup, while still being flexible enough for more advanced users
Features
- A shared design philosophy, which helps artists that learn to use one feature, quickly pick up the others 
- Easy to use at the base level, but also support advanced options for more involved tasks 
- Names are both descriptive and unique. Do you need to place a card in 3D? Use the CardBuddy! Can't remember the name of that tool? Tab search for "Buddy" and see the whole suite of tools 
- Quality of life features, that combine what would normally be done with many nodes, or multiple scripts, into one 
- Documentation outlining features, user tips and more 
- Scripts to boost pipeline and workflow 
- Calibratable per project/render env 
- Production tested 
Download the full BuddySystem, including all the scripts & tools here!
Or scroll down to find the docs, Install Guide, Version History, Hotkey Cheatsheet, FAQ/Bug Reporter & more!
Quick Doc Links
About
NodeGraphBuddy
Designed to make working in the Node Graph faster, easer and generally more fun!
- Manage Writes 
- Adjust Backdrops 
- Create Nodes 
- Have Fun! 
Features
- Scale Nodes 
- Align Nodes 
- Distribute Nodes 
- Mirror Nodes 
MaskBuddy
Create multiple masks with Position/PRef & Normal data, with a variety of 3D shapes
- 3D transform controls 
- Built in edge cleanup 
- Simplified AOV list 
- Calibration controls 
Features
- Multiple shapes at once 
- Preview image 
- Many shape types 
- Falloff options 
DepthBuddy
Create 3D ramps in any direction with Depth/Z & Position/PRef data
- Optional axis limits 
- Built in edge cleanup 
- Simplified AOV list 
- Calibration controls 
Features
- Preview image 
- Works for depth or pos 
- Falloff options 
- Transform controls 
CardBuddy
Place 3D cards in world position & automatically generate holdouts
- Point clouds 
- Other geo types 
- Simplified AOV list 
- Calibration controls 
Features
- Preview image 
- 2D to 3D placement 
- Holdout options 
- Camera projections 
ProjectionBuddy
Project images into World Position/PRef to replace textures, screens or create complex masks
- 3D transform controls 
- Built in edge cleanup 
- Simplified AOV list 
- Calibration controls 
Features
- Preview image 
- 2D to 3D placement 
- Masking options 
- Sticky projections 
ReflectionBuddy
Project images into Normals/NRef to place eye pings, textures, or create stylized reflections
- 3D transform controls 
- Built in edge cleanup 
- Simplified AOV list 
- Calibration controls 
Features
- Preview image 
- 2D to 3D placement 
- Masking options 
- Sticky projections 
AnimBuddy
Generate animated curves based on Random, Sine, Sawtooth, and many other types of mathematical patterns
- Mix Curves into Advanced ones 
- Find expression linked nodes 
- Make camera shakes 
- Drive random colours 
Features
- Multiple curves per node 
- Adjust curves easily 
- Many curve types 
- Animate in/out 
Setup / Installation
Install
For Personal Use
1) Download, extract and place the entire BuddySystem folder in your .nuke directory. This folder may be hidden, you can use the view options of your OS to unhide it
import nuke nuke.pluginAddPath('./BuddySystem')
For Pipeline Use
Always speak with your studios pipeline support staff before trying to install anything. Every studio is different, but you’ll likely need to ask them to place the file into a central tool repository so everyone can access it
Modifying Hotkeys
If you don’t like the default hotkeys, or they conflict with ones you already have, you can modify them in the BuddySystems menu.py file. Look for the hotkeys near the end of each buddySystem.addCommand() line
Removing Scripts
If you already have a similar script, or don’t need one of them, you can comment that part out in the BuddySystems menu.py file.
Hotkey Cheatsheet
Here is a list of all the BuddySystem hotkeys, their function, and if they match any default Nuke hotkeys
None = Not replacing any default hotkeys
(Viewer) = The viewer is using this hotkey as well, but it isn’t replacing it because this script is restricted to the Node Graph
(Modified) = The hotkey keeps its original function, but has new contextual functions as well
(Replaced) = The hotkeys original function was replaced
This is best viewed on PC due to table formatting
| Mode | Function | BuddySystem Hotkey | Nuke Hotkey | 
|---|---|---|---|
| Scale Biased | Increase width | Ctrl+Shift+Right Arrow | None | 
| Decrease width | Ctrl+Shift+Left Arrow | None | |
| Increase height | Ctrl+Shift+Up Arrow | None | |
| Decrease height | Ctrl+Shift+Down Arrow | None | |
| Increase width & height | Ctrl+Shift+Plus(+) | None | |
| Decrease width & height | Ctrl+Shift+Minus(-) | None | |
| Open settings | Ctrl+Shift+Home | None | |
| Mode | Function | BuddySystem Hotkey | Nuke Hotkey | 
| Scale Uniform | Increase width center | Shift+Right Arrow | Skip Playhead Forwards (Viewer) | 
| Decrease width center | Shift+Left Arrow | Skip Playhead Backwards (Viewer) | |
| Increase height center | Shift+Up Arrow | Next input for the B buffer (Viewer) | |
| Decrease height center | Shift+Down Arrow | Previous input for the B buffer (Viewer) | |
| Increase width & height center | Shift+Plus(+) | None | |
| Decrease width & height center | Shift+Minus(-) | None | |
| Mode | Function | BuddySystem Hotkey | Nuke Hotkey | 
| Backdrop Adjust | Increase Z order | Ctrl+Alt+Shift+Plus(+) | None | 
| Decrease Z order | Ctrl+Alt+Shift+Minus(-) | None | |
| Sort Backdrops by size/zorder | Ctrl+Alt+Shift+Z | None | |
| Increase Font Size | Ctrl+Alt+Shift+Page Up | None | |
| Decrease Font Size | Ctrl+Alt+Shift+Page Down | None | |
| Resize backdrop size to selected nodes | Ctrl+Alt+Shift+Asterisk(*) | None | |
| Mode | Function | BuddySystem Hotkey | Nuke Hotkey | 
| Node Adjust | Align/Stack/Match vertically | Right Arrow | Frame Forwards (Viewer) | 
| Align/Stack/Match vertically | Left Arrow | Frame Backwards (Viewer) | |
| Align/Stack/Match horizontally | Up Arrow | Previous node in tree (Replaced) | |
| Align/Stack/Match horizontally | Down Arrow | Next node in tree (Replaced) | |
| Distribute and align nodes | Asterisk(*) | None | |
| Distribute and align nodes by cluster | Shift+Asterisk(*) | None | |
| Align Upstream | Page Up | Previous layer (Viewer) | |
| Mirror nodes horizontally | Ctrl+M | None | |
| Mirror nodes vertically | Ctrl+Alt+M | None | |
| Mode | Function | BuddySystem Hotkey | Nuke Hotkey | 
| Create | Create Blur/Backdrop Node Quick | B | Create Blur (Modified) | 
| Create Blur/Backdrop Node Advanced | Shift+B | Create Blur node in a new branch (Modified) | |
| Mode | Function | BuddySystem Hotkey | Nuke Hotkey | 
| Utils | Label Node | A | View Alpha (Viewer) | 
| Smart Select All | Ctrl+A | Select All (Modified) | |
| Smart Select Backdrops | Ctrl+Shift+A | None | |
| Copy With Inputs | Ctrl+Alt+Shift+C | None | |
| Paste With Inputs | Ctrl+Alt+Shift+V | None | |
| Paste to Multiple | Shift+V | None | |
| Toggle Disabled | Shift+D | None | |
| Nodeoriety - Node Counter | None | None | |
| BBox Manager | None | None | |
| Write Node Manager | Ctrl+Shift+W | None | |
| Mode | Function | BuddySystem Hotkey | Nuke Hotkey | 
| Fun | Rotate Nodes | None | None | 
| Randomize Nodes | None | None | |
| Caesar Shift | None | None | |
| Mode | Function | BuddySystem Hotkey | Nuke Hotkey | 
| Tools | AnimBuddy | Alt+Shift+A | None | 
| CardBuddy | Alt+Shift+C | None | |
| DepthBuddy | Alt+Shift+Z | None | |
| MaskBuddy | Alt+Shift+M | None | |
| ProjectionBuddy | Alt+Shift+P | None | |
| ReflectionBuddy | Alt+Shift+R | None | 
Version History
- 
      
        
          
        
      
      - Added Create Big Text generator fun script to NodeGraphBuddy 
- Updated Align | Stack | Match scripts to fix frame navigation in curve editor/dopesheet 
- Added panel icons to NodeGraphBuddy 
- Caesar Shift labels script house cleaning 
- Updated ProjectionBuddy to v01.01 
 
- 
      
        
      
      - Updated 2025-09-21 
- Updated “BBox Manager” with bbox growth mode 
- Updated “Nodeoriety” with search bar 
 
- 
      
        
      
      - Updated 2025-09-01 
- Added new NodeGraphBuddy module “Smart Select All” 
- Added new NodeGraphBuddy module “BBox Manger” 
- NodeGraphBuddy - Nodeoriety Node Counter script house cleaning 
 
- 
      
        
      
      Initial public release 2025-07-16 
Development Goals
To-Do
Below are some of the things I still would like to do, if time permits. If there is something you think would be a nice addition, feel free to reach out!
- Add more scripts 
- Add more tools 
- Add more fun 
Contributors
Thanks!
Below are some of the people who helped develop this tool through direct support or indirectly via online resources
- Mark Rodziewicz 
- Sheldon Lisoy 
- Adam Dent 
- Chris Fourney 
FAQ / Bug Reporter
Report A Bug
For issues/bugs please provide the following information
 
                         
         
         
         
         
         
         
        