Skip to content

Mirdain Gearswap by Rahvin v 1.7.0

Choose a tag to compare

@RahvinCode RahvinCode released this 16 Aug 07:19
· 25 commits to master since this release
6f92b36

New in 1.7.0

The first public release since 1.6.5, and it carries the 1.6.6 work with it. Nothing here requires a change to your job files — every existing job file, custom command and keybind keeps working as-is.

Performance Simulation Results

Measured, not guessed: a simulated Dynamis Divergence alliance fight — a six-client multibox party inside an 18-player alliance with a full mob wave, every entity acting every one to three seconds — puts this engine and the original Mirdain-Include 1.5.12 side by side on identical timelines.

  • 1.7.0 runs at roughly 70% of 1.5.12's CPU cost and 72% of its allocation rate, with Hoxne, spell-received tracking, enchanted-item automation and the gear diagnostics all running. With every chat channel on, 1.7.0 costs what 1.5.12 costs running silent.
  • Frame rate is never at risk from the engine. The worst single frame in twenty minutes of simulated combat is about 1% of a 60 fps frame budget on 1.5.12, and about half that on 1.7.0. Both engines together, across all six clients, use under 0.03% of one CPU core.
  • Chat volume is the one load that scales with settings rather than engine: with every channel on, six clients emit about 1,400 lines a minute; with chat off, effectively none. For long fights, keep debug off — it is worth three orders of magnitude more rendered chat than any other choice.

The full write-up — per-cast costs, frame-budget analysis, allocation, chat volume, and methodology — is in the repository at https://github.com/RahvinCode/Gearswap/blob/master/Performance%20Impact%20Report.md

New Features and Optimizations

Enchanted items

  • gs c use <item> equips and uses any enchanted item — over five hundred are supported — handling the slot, the equip delay and the cooldown for you. Type the name in lower case, spaces and any +1 included: //gs c use prishe's boots +1.
  • Cooldowns are tracked and read live from the item, so they survive a reload or a relog. A use on cooldown is refused with the time remaining; an equip delay is waited out quietly. Every refusal names its reason — item missing, wrong job, level too low, on cooldown.
  • gs c cancel stops a use in progress, and issuing any new use command — gs c use, gs c warp and friends — takes over from the one already running. See Changing your mind.
  • gs c enchinfo <item> prints an item's live charges, equip delay and cooldown when the timing looks wrong.

Hoxne Ampulla

  • Two on states, cycled with //gs c hoxne. ON-Locked holds range and ammo outright. ON-Allow Critical stands aside for bard songs, Geomancy, Tomahawk and Angon, then takes the slot back — the one for Bards and Geomancers. See Hoxne.
  • Fully automatic use. While a mode is on, the Ampulla is kept equipped, used whenever its enchantment is down and it is ready, and put back when anything knocks it out. Switching a mode on during a cooldown reports the wait once, then uses the item when it is ready. Zoning turns the mode OFF.
  • It recovers itself after a reload. An Ampulla left stranded in your ammo slot is detected and released within a few seconds, with your normal gear restored.
  • gs c hoxneinfo prints everything the mode is acting on — a one-command health check.

Job abilities that need a thrown item

  • gs c tomahawk and gs c angon equip the throwing item, then use the ability on your target. Use these in macros in place of a raw /ja line, which the game refuses while the item is not worn. The ability's recast is checked before any gear moves.

Gear diagnostics

  • A cast that finds no gear says so, naming the set and why: [sets.Midcast.Cure] not found! if you never declared it, [sets.Midcast.Regen] is empty! if you declared it and left it bare.
  • gs c checksets audits a job file: how many sets carry gear, how many engine sets you never declared, and — named individually — any set you declared but left empty.
  • gs c gearreporting traces which set each cast actually used, and the whole fallback path when the set it reached for was bare. Off by default.

The status box

  • Clearer layout. The indicators run SR, TH, HOX; in the stacked layout the header spans the full box, evenly spaced, and each mode value sits between its chevrons with a single space on either side.
  • More legible. Mode status shows as a solid coloured square, and the text carries a dark outline so it reads against any background.
  • Chat notices were re-coloured so warnings, the gear trace and debug output are distinguishable at a glance.

Fixes

  • Treasure Hunter gear is merged at precast for weapon skills, ranged attacks and job abilities against untagged mobs. Spell precasts keep your fast-cast gear; the Treasure Hunter set arrives at midcast instead, which is when the tag lands.
  • Twilight Cape equips only for Cura and Curaga, so single-target cures keep the back piece your set specifies.
  • Item names that contain command words — gs c use hoxne ampulla — reach the right command.
  • A use that succeeds is not reported as "not accepted".
  • Slots left locked by a previous load are released at startup.
  • Sample job files for all 22 jobs are included.