Documentation

nMule User Manual

Centralized muling server that receives items from your farming bots and can chain to parent mules for hierarchical wealth management.

Links: TRiBot Store | Forum Thread | Discord


Table of Contents


Quick Start

  1. Position your mule account at a safe, tradeable location (near a bank is recommended if using banking features)
  2. Log in to the account that will act as the mule
  3. Start the script and select a Mule ID (1-99)
  4. Configure your bots to connect to this mule using the IP address and Mule ID
  5. Click Start - the mule will log out and wait for trade requests

The mule stays logged out until a bot signals it's ready to trade, then logs in, completes the trade, and logs back out.

Script Arguments

Load a saved settings profile by passing the profile name as a script argument:

MyProfile

This loads .tribot/nScripts/nMule/settings/MyProfile.ini and starts immediately without showing the GUI. Useful for automation and automatically starting scripts on clients.

Additional options:

  • last - Load the most recently used settings
  • Profiles saved to nScripting.com Settings Storage can also be loaded by name

Requirements

Items/GP Needed

  • No special requirements - just have the items you want to give to bots in your inventory or bank
  • If using Platinum Token conversion, start at a bank
  • If using GE offer collection, position the mule at the Grand Exchange

Connecting Bots to the Mule

Same Machine (Easiest)

When your bots run on the same computer as the mule:

  • IP Address: 127.0.0.1 (localhost)
  • Mule ID: The ID you selected (1-99)
  • No port forwarding required

This is the simplest setup and requires no network configuration.

Different Machines (Requires Port Forwarding)

When your bots run on different computers than the mule:

  1. Find your public IP: The script displays this when it starts, or use a site like whatismyip.com
  2. Calculate the port: 45000 + Mule ID (e.g., Mule ID 5 = port 45005)
  3. Forward the port on your router to the machine running the mule
  4. Configure firewall to allow incoming connections on that port

Bot configuration:

  • IP Address: Your public IP (e.g., 203.0.113.45)
  • Mule ID: The ID you selected (1-99)

Note: If you have multiple mules on the same machine, each uses a different port based on its ID. You'll need to forward each port separately.

VPS/Cloud Setup

If running on a VPS or cloud server:

  • Use the server's public IP
  • Ensure the security group/firewall allows inbound TCP on port 45000 + Mule ID
  • No router port forwarding needed (the server is already publicly accessible)

How It Works

nMule operates as a server that connected bots communicate with:

  1. Idle State: The mule stays logged out, listening for connections
  2. Trade Request: A bot signals it wants to trade
  3. Login: The mule logs in and moves to the mule tile (if configured)
  4. Trade Execution: Accepts the trade from the known bot, offers/accepts items as configured
  5. Post-Trade: Optionally banks items, converts gold to platinum tokens, or stays logged in briefly
  6. Logout: Returns to idle state

The mule only accepts trades from bots that have properly connected and requested a trade through the socket connection - random players cannot trade with it.


Settings Reference

Main Settings

Mule ID

  • A number 1-99 that identifies this mule
  • Bots use this ID (along with your IP) to connect
  • Each mule on the same machine must have a unique ID

Advanced Preferences

Stay Logged In

  • Stay logged in after trade for a period of time: Keeps the account logged in after each trade for a configurable duration
  • Useful when multiple bots trade in quick succession but not simultaneously
  • Configure the time range and unit (seconds, minutes, etc.)

Banking

  • Bank items: Automatically deposits received items to the bank
  • Item IDs to ignore: Comma-separated list of item IDs to keep in inventory (not deposit)
  • Start near a bank if using this feature

Mule Tile

  • Use specific mule tile: Forces the mule to return to a specific location
  • Stay within x tiles distance: How far the mule can stray before returning
  • Set Current Tile: Captures your current in-game position
  • Useful for keeping the mule in a safe, predictable location

Other

  • Disable membership failsafe: By default, the script stops when membership runs out. Enable this to continue operating on F2P worlds

GE Offers

  • Collect pending GE offers when logged in: When at the Grand Exchange, collects completed offers before trading
  • Skipped if inventory is full

World Hopping

  • Allow world hopping ingame: By default, world hops only occur while logged out
  • Ignore connected bots in nearby player count: Don't count your own bots as "nearby players"
  • World hop to F2P bots when in members world: Automatically hop to F2P when trading F2P bots
  • World hop to members when trading members items in F2P: Hop to members world to trade members-only items
  • Time-based world hopping: Hop worlds on a schedule
  • Player-based world hopping: Hop when too many players are nearby or when someone talks
  • World hop after x trades: Hop worlds after completing a certain number of trades

Discord Webhooks - Trades

  • Send a discord webhook message after each trade: Get notifications for every trade
  • Include overall totals: Add cumulative incoming/outgoing totals to each message
  • Include screenshot of game: Attach a screenshot to the webhook

Platinum Tokens

  • Convert extra gold to platinum tokens: Automatically exchange excess coins at the bank
  • Convert when over: Only trigger conversion when gold exceeds this amount
  • Keep amount as gold: Always keep this much gold after conversion
  • Start at a bank if using this feature

Export Trade Log

  • Export trade log to tsv file on script end: Saves a detailed trade history to .tribot/nScripts/nMule/data/
  • File includes: timestamp, username, incoming/outgoing values and items

Stop Conditions

  • Stop after no bots connected for x time: Automatically stops the script if no bots have been connected for a specified duration
  • Standard stop conditions (runtime, level, etc.) are also available

Standard settings for antiban, AFK behavior, utility options, and Discord notifications are also available - hover over options for details.


Runtime Control Panel

Click "View Control Panel" on the paint overlay to access runtime controls.

Connected Bots Tab

Shows all bots currently connected to this mule with columns for:

  • Checkbox: Select bots for commands
  • Account: The bot's username
  • Script: What script the bot is running

Commands (dropdown menu):

  • View session info
  • Stop script / Force stop script
  • Pause script / Resume script
  • Mule items (remotely trigger a mule)
  • Run script
  • Shutdown client
  • Kill connection
  • Minimize/Maximize client
  • Enable/Disable graphics

Execute command: Run immediately on selected bots Schedule command: Run at a specific time

Context menu:

  • Select all from...: Select all bots running a specific script
  • Copy Selected Names: Copy usernames to clipboard

Scheduled Commands Tab

Lists commands scheduled for future execution. Right-click options:

  • View bots: See which bots will be affected
  • Cancel command: Remove the scheduled command
  • Repeat: Toggle repeating execution

Trade Log Tab

Searchable list of all completed trades showing:

  • Timestamp
  • Username traded
  • Items received/given
  • GP values

Right-click to copy all trades to clipboard.


Parent Mule Chaining

nMule can trade its accumulated items to a "parent mule" - another nMule instance higher in the chain.

Setting Up Parent Mule Connection

Under Advanced Preferences > Parent Mule > Mule Connection:

  • IP Address: The parent mule's IP
  • Mule ID: The parent mule's ID

Mule Trades (Trigger-Based)

Configure when this mule should trade to its parent using Mule Trades:

Trigger Types:

  • Time-based frequency: Trade every X minutes/hours
  • Time of day: Trade at specific times
  • Above/below item quantity: Trade when inventory reaches a threshold
  • Every x trades: Trade after receiving X trades from bots

Each trigger set can have its own items to trade. Supports "all match" (all conditions must be met) or "any match" (any condition triggers).

Don't Trigger While Trading

  • Don't trigger muling to parent if bots are trying to trade this mule: Prevents interrupting active bot trades
  • Threshold: How many pending bot trades block parent muling

Scheduled Mule (Legacy)

Alternative time-based parent muling:

  • Mule to/from parent mule: Enable scheduled trading
  • Perform initial mule on start: Trade immediately when script starts
  • Time unit and frequency range: How often to trade
  • Configure Items: What to send/receive from parent

Troubleshooting

"Failed to create mule server. Ensure you have an id 1-99 selected."

Cause: Invalid Mule ID or the ID is already in use.

Fix:

  • Choose an ID between 1 and 99
  • If you just restarted the script, wait a moment for the previous server to close
  • Ensure no other mule is using the same ID on this machine

"Server has been killed"

Cause: The internal mule server stopped unexpectedly.

Fix: Restart the script. Check if the port is blocked by a firewall or another application.

"Failed to find bank"

Cause: The platinum token conversion or banking action couldn't locate a bank.

Fix: Start the mule near a bank, or disable banking/platinum token features if not needed.

Bots can't connect to the mule

Fix:

  • Same machine: Use IP 127.0.0.1
  • Different machine:
    • Forward port 45000 + Mule ID (e.g., ID 5 = port 45005)
    • Use your public IP address
    • Check firewall settings
  • See the Connecting Bots to the Mule section for detailed setup instructions

Getting Help

If you run into issues not covered in Troubleshooting:

  1. Generate a bug report - In TRiBot: Dev Tab → Generate Bug Report (includes logs, settings, and screenshot)
  2. Post on Discord - Share the zip and describe what happened vs. what you expected at discord.gg/BFtypSSbjp

For issues that are hard to capture in a screenshot, a short screen recording helps.


Tips

  • Start near a bank if using banking, platinum token conversion, or GE collection features
  • Use the "Stay logged in" option if you have bots that trade in bursts rather than continuously - saves repeated logins
  • Set up Discord webhooks to monitor mule activity remotely
  • Export trade logs for record-keeping and debugging
  • Use parent mule chains for high-volume operations where a single mule would accumulate too much wealth
  • Configure world hopping after X trades to reduce the chance of being reported by the same players repeatedly
  • Use the "Stop after no bots connected" condition to automatically shut down mules when your bot farm finishes