How to Create Orb Bundles

Orb is a tool for automatically installing bundles of add-ons. We create bundles by writing an orb recipe. Here's a simple recipe to download and install the wonderful XR2 Ravenstar by dbeachy and Coolhand and the Soundbridge addon from Face:

# This is a comment! It is ignored by orb
# You can use comments to share links and explain stuff

def main(orb):
    orb.download_zip('https://www.alteaaerospace.com/ccount/click.php?id=3', 'XR2 Ravenstar.zip')
    orb.install_zip('XR2 Ravenstar.zip')
    orb.download_from_of('https://www.orbiter-forum.com/resources/soundbridge.204/download', 'SoundBridge1.1.zip')
    orb.install_zip('SoundBridge1.1.zip')
def requires_fresh_install():
    return False

You can use download_zip to download any file (not just zips) and install_zip to extract the zip into the Orbiter root. Due to Orbiter Forum's Cloudflare protection, use the special download_from_of to download files from Orbiter Forum. Pay special attention to the filename — for files downloaded using download_from_of, it must match the actual file name on OF.

Orb API Reference

Orb exposes functions to help you install Orbiter mods. Here's the complete list of available functions.

Download Functions

📥 Download

These can be used to download files — zips, rars, exes, and more.

download_zip
download_from_of

Install Functions

📦 Install

These functions install rars, zips, exes, and other Orb bundles (you can install other bundles from your bundle).

install_rar
install_zip
install_exe
install_orbiter_mods_experience

Configuration Functions

⚙️ Config

These functions edit Orbiter's many cfg files.

enable_modules
edit_cfg_file_section
edit_cfg_file_add_line
edit_cfg_file_remove_line

Scenario Functions

🎯 Scenarios

Orb copies all scenarios installed from mods in a bundle to a new sub-directory for easy access. These two functions allow you to modify this behavior.

set_scn_blacklist   # Prevent specific scenarios from being copied into the new scenario sub-directory
set_scn_dir         # Override name of the scenario sub-directory (default is name of the bundle)

Take a look at the official bundles created by orbiter-mods to see these functions in action: Browse Orb bundles →