← Forums

⚔️ Triune AutoCombat — User Manual

MQ-Autocombat

⚔️ Triune AutoCombat — User Manual

Version 3.0

On Project Triune every character is three classes at once. Triune AutoCombat runs all three for you — casting, pulling, healing, pets and boxes — from one in-game window. No macros to write.

Requires MacroQuest (RoF2). Setup takes about ten minutes.


📥 Install

  1. Install MacroQuest for RoF2. Download the latest RoF2 build from MacroQuest releases and extract it somewhere simple, such as C:\MacroQuest.
  2. Download Triune AutoCombat from the releases page:
  3. TriuneAutocombat-full.zip — first install. Includes the MQ2Nav zone navmeshes.
  4. TriuneAutocombat-Update.zip — updating. Everything except the navmeshes, which rarely change.
  5. Extract into the root of your MacroQuest folder. It merges lua/, config/ and resources/ into place. Overwrite when asked — your own settings and loadouts are never touched.
  6. Launch. Start MacroQuest.exe, then log in. Triune opens by itself. If you close it, type /ac or /lua run triune.

⚠️ Before you run it: add your MacroQuest folder as an antivirus exception. Windows Defender and most AV products will quarantine MacroQuest otherwise, which looks exactly like a failed install.


🚀 First run

Three things to do the first time you log in on a character. Everything saves automatically and comes back next session.

  1. Check your three classes. The main window shows the classes it detected. If they are wrong, click Re-detect.
  2. Tell it what to cast. Work through the Spell Gems, Abilities, AAs, Disciplines and Clickies tabs. Each entry gets a rule for when to fire — Target HP < 90%, My HP < 40%, Missing Buff, Always — and a target (see Targeting rules). Import Bar fills the spell list from whatever you currently have memorised. It is the fastest way to start.
  3. Pick a mode and start. Choose a mode on the Control tab and click Start, or type /ac run.

💡 Bind a key. /triunerun starts and pauses the bot. Put it on a hotkey during your first session — it is the control you will reach for most.


⚔️ Combat modes

There are three primary modes. Puller and Assist each have submodes. That is six combinations in total.

Mode Command What it does
Manual /ac manual Fights your current or acquired target automatically. Does not roam.
Puller — Hunt /ac puller hunt Roams within your search radius looking for valid mobs and kills them on the spot.
Puller — Camp /ac puller camp Pulls mobs within radius back to your set camp location and fights them there.
Assist — Chase /ac assist chase Follows the Main Assist everywhere and assists on their target.
Assist — Camp /ac assist camp Holds your camp position and assists the MA, returning to camp when idle.
Assist — Backline /ac backline Ranged and caster support. Assists the MA without ever moving into melee range.

Set the Main Assist with /ac ma <name> or from the Control tab. Every Assist mode depends on it.

Upgrading from an older version

Earlier releases had eleven separate modes. They were consolidated into the three-plus-submodes layout above, and your saved loadout is migrated automatically on load. If you are following an older guide, this is how the names map:

Old mode Now
Manual Hunter Manual
Hunter Puller — Hunt
Pet Tank Puller — Hunt
Pull & Assist Puller — Camp
Chase Assist Assist — Chase
Garrison Assist — Camp
Tank Assist — Camp

You do not need to do anything — the migration runs by itself.


🗡️ Combat style & pulling

Style

Style decides how you fight, independently of mode. Set it in Settings or with /ac style melee|ranged|spell.

Style Behaviour
Melee Closes to melee range and swings.
Ranged Holds distance and shoots a bow.
Spell Stands back and only casts.

Pulling

Pulling options live on the Control tab.

  • Pull style — Melee, Spell, Pet or Ranged.
  • Include list — only pull mobs on this list.
  • Ignore list — never pull these.
  • Faction filter — choose the lowest con you are willing to pull, from Scowling, Threateningly, Dubious, Apprehensive, Indifferent, Amiably, Kindly, Warmly, Ally. Set this so you never pull a guard.
  • Waypoint routes — walk a path and add points with /ac wp add to patrol it. /ac wp clear resets the route.

Burn mode

/ac burn toggles Burn mode, which fires everything you marked Burn Only. Turn it on for named mobs and off again afterwards, so you are not spending long recasts on trash.


🎯 Targeting rules

Every spell, ability, AA and disc gets a target rule. Enemy rules begin E: and friendly rules begin F:. Getting these right matters more than anything else in your setup.

Enemy targets

Rule What it does
E: Current Target Casts on your active target. Does not switch targets on its own.
E: Assist Target Targets whatever your Main Assist is on. If the MA has no target and Assist Self-Defense is on, falls back to whatever is attacking you.
E: All Enemies Multi-target. For duration spells (DoTs, debuffs, snares, mez) it casts on each XTarget enemy missing the effect, then stops. For nukes it round-robins evenly across them. Honours per-mob cast caps and skips immune or locked-out mobs.
E: Nearest Add First hostile add on XTarget within the vertical height limit. If XTarget has no adds, falls back to the nearest hostile NPC inside your camp or hunt radius.
E: Unmezzed Add First XTarget add that is not mesmerised. This is the one for Enchanter, Bard and Necromancer mez rotations.

Friendly targets

Rule What it does
F: Myself Always you. Self-buffs, personal emergency heals, Feign Death.
F: Main Assist Your designated Main Assist — single-target buffs, heals and utility.
F: Tank Your designated Tank — targeted heals, protective buffs, mitigation.
F: Lowest-HP Ally Scans you and every group member and picks whoever is lowest. The default choice for reactive heals.
F: Whole Group Targets you, so group-wide spells land — group heals, group buffs, auras.
F: Pet Your pet. With several pets it prefers the one matching the spell's class, then the lowest-HP pet, then whichever is missing the buff.

💡 Disciplines fire in priority order. Combat discs share timer groups, so Triune evaluates them by the priority you assign. If a disc never seems to fire, check that nothing above it is holding its timer group.


🪟 Windows & tools

All of this ships with Triune. Open them from the buttons in the main window's header, or with the command shown. Each is a plugin — turn any of them off under Settings → Plugins.

Window Command What it is
Status main window tab Live view of what the bot is doing, your target, pets and XTarget threats.
Pets main window tab Control up to three pets: attack, back off, hold, taunt, plus the server's #petcmd verbs.
Target & Player HUD /ac hud Compact unit frames for you, your target and your pets.
Group /ac group Replacement group window with vitals, roles and click-to-target.
XTarget /ac xtar Replacement extended target window with HP, aggro and distance.
Effects & Songs /ac eff Your buffs and songs with time remaining.
Spell Gem Bar /ac gems Replacement spell bar with recast timers and spell sets.
Cooldowns /ac cd Every ability, AA and disc timer in one place.
Spellbook /ac spellbook Browse and search the spells of all three classes, and memorise to a gem from there.
Map /ac map 2D zone map, Norrath atlas and an NPC tracker (/ac track). Camp, waypoints and hazards are drawn on it.
Chat Windows /tacchat Chat replacement: tabs, filters, colours, highlights, a Tells window, item links and logging.
Game Database /ac db Offline copy of the server's item, NPC and spell data. Search with /ac item, /ac npc, /ac spell.
Inventory & Bank /ac inv Search, sort and move items, see every box's bags, hand items between boxes.
Hot Buttons /ac btn Button Master-style hotbars with cooldown overlays and share strings.
Box Network /ac net See and steer your other boxes on this PC.
NMS Loot /ac nms The server's #nms loot system as a window, shared across your boxes.
DPS Parser /dps Per-fight damage for you and your pets, plus a group meter over the Box Network.
Auto-Accept /ac autoaccept Auto-accepts group, trade and DZ invites by your rules.
Auto AA /ac aawin Spends AA points down a priority list; auto-buys and summons fireworks at the cap.
Buffbot /ac buffbot on A buff station: players /tell you for buffs and it casts them. Off unless you turn it on.
Cursor Manager /ac cursorui Clears whatever is stuck on your cursor.
Parcels /ac parcels Tells you when parcels arrive and collects them all at a parcel merchant.
Floating damage Settings → Plugins Big animated numbers for crits.
Update Checker /ac update Tells you when a newer release is out. Nothing is downloaded automatically.
Compact Mini HUD /ac compact The whole bot shrunk to a small strip.

⌨️ Commands

/ac help in game prints the full list. These are the ones you will actually use.

Command What it does
/ac Start or pause.
/ac run · /ac pause Start / pause explicitly.
/triunerun Start/pause — bind this to a key.
/ac ma <name> Set the Main Assist.
/ac burn Toggle Burn mode.
/ac style melee\|ranged\|spell Set combat style.
/ac memall Memorise any missing spells.
/ac importbar Build the spell list from your memorised gems.
/ac wp add · /ac wp clear Add a waypoint here / clear the route.
/ac pet attack\|back\|hold on Pet commands — any #petcmd verb works.
/ac net all <command> Run an /ac command on every box.
/ac scale 1.25 Make every Triune window bigger or smaller.
/ac status Print what the bot is currently doing.
/ac log on Start writing a diagnostic log to file.
/ac dump Write a diagnostic dump — attach this to bug reports.
/ac debug Print extra detail to chat.
/ac restart Reload the whole script.

🧰 Boxing

Triune finds your other boxes on the same PC and links them together.

  • Open the Box Network with /ac net to see and steer every box.
  • Run a command everywhere with /ac net all <command> — for example /ac net all burn on before a named mob.
  • Give one character the Main Assist role with /ac ma <name>, then put the others into an Assist mode. Melee take Assist — Chase; healers and casters take Assist — Backline so they never run into melee.
  • The DPS parser aggregates a group meter across the network, and the loot and inventory windows are shared, so you can move items between boxes without trading.

🔧 Troubleshooting

Not moving or pulling? Check the Status tab. It shows whether MQ2Nav and MQ2MoveUtils are loaded and whether the zone has a navmesh, with buttons to load or reload them.

Getting stuck on terrain? Triune remembers where it got stuck and routes around it next time. Clear those spots under Settings → Navigation.

The game feels slow with Lua scripts? Triune raises MQ2Lua's turboNum to 10000 on first start, because the default of 500 makes every Lua script crawl. If you have already set it higher yourself, Triune leaves it alone.

A plugin broke? Plugins are isolated. A broken one shows an error under Settings → Plugins and everything else keeps running. Fix or disable it there.

Reporting a bug Turn on /ac log on, reproduce the problem, then run /ac dump. Attach both files from your MacroQuest Logs/ folder: triune_<server>_<char>.log and triune_dump_….log. /ac debug prints extra detail to chat if you want to watch it live.


📁 Your files

All paths are inside your MacroQuest folder.

Path What it holds
config/triune_loadout_<server>_<char>.lua Each character's settings and loadouts. Never overwritten by updates.
config/triune_chat_<Name>.lua Chat Windows layout and colours, per character.
Logs/triune_*.log Diagnostic logs, when Log To File is on.
lua/triune.lua The bot itself.
lua/tac/*.lua The plugins listed above. Drop your own .lua plugin here and it loads.
resources/gamedb/ The offline game database. In both release zips.
resources/MQ2Nav/ Zone navmeshes. Full release only.

✅ Updating is safe. Your loadouts live in config/ and are never touched by an update. Extract a new release straight over the top.


🧩 Writing your own plugin

A plugin is a single Lua file in lua/tac/ that returns a table with an id, a name, and any of the hooks onInit(core), onTick(), onDrawUI(), onDrawSettings(), onCommand(cmd, args), onSaveSettings() and onLoadSettings(t).

core gives you mq, ImGui, the live ctrl config, core.log for logging, and core.delay(ms) instead of mq.delay.

Add plugin.window = { label = 'Mine', flag = 'show_mine' } and it gets a header button and a place in the window manager.

The shipped plugins are the best reference — cursor.lua is the smallest.


🔗 Links

Posted by aoezpz · last edited by eqemu · 2026-09-17

Replies

No replies yet.

Sign in with Discord to reply.