- Doc site UI improvements and fixes - Added Discord widget - Fixed some styling issues - Added command docs briefs and details - Briefs are shown in the right-hand panel - Details can be shown by clicking `Open full details` - Added ShaiWatchers' logo as the site favicon - Moved HTML template to static file for responsiveness improvements
73 lines
3.4 KiB
HTML
73 lines
3.4 KiB
HTML
<h1>/spicepay — Guided payout</h1>
|
||
<p>Calculate a fair split for a spice run. The wizard keeps things simple and transparent for the team.</p>
|
||
|
||
<h2>Start</h2>
|
||
<pre>/spicepay [participants] [force_new]</pre>
|
||
<ul>
|
||
<li>If <code>participants</code> is omitted, you set it in the first modal (1–25).</li>
|
||
<li>Use <code>force_new: true</code> to discard an existing session and start clean.</li>
|
||
</ul>
|
||
|
||
<h2>Setup modal</h2>
|
||
<ul>
|
||
<li><strong>Total spice yield (sand)</strong> — integer ≥ 0.</li>
|
||
<li><strong>Participants</strong> — include <em>owners</em> (Refiner/Carrier/Crawler). People only; vehicles/refinery are <em>owned</em> by people.</li>
|
||
</ul>
|
||
|
||
<h2>Editing participants</h2>
|
||
<p>For each slot:</p>
|
||
<ul>
|
||
<li><strong>Name</strong> — free text (mention text is fine).</li>
|
||
<li><strong>Active %</strong> — 0–100. <em>0% = owner-only</em> (didn’t actively join).</li>
|
||
<li><strong>Owner of</strong> (optional) — any of: <code>refiner</code>, <code>carrier</code>, <code>crawler</code>. Flexible input (e.g. “lsr”, “refinery”, “car”, “cr”).</li>
|
||
</ul>
|
||
<p>Use <em>Add / Edit participant</em>, <em>Previous/Next</em> to navigate. The preview shows filled vs. empty slots and highlights “owner-only”.</p>
|
||
|
||
<h2>Payout type</h2>
|
||
<ul>
|
||
<li><strong>Sand</strong> — no refinery cut; 0 or 1 Refiner owner allowed.</li>
|
||
<li><strong>Melange</strong> — <em>requires exactly one</em> Refiner owner. First a refinery cut % is taken and paid to the Refiner, then the rest is split.</li>
|
||
</ul>
|
||
<p>When switching to <strong>Melange</strong>, set the refinery yield (integer) in the modal.</p>
|
||
|
||
<h2>Weighting (the math, simplified)</h2>
|
||
<ul>
|
||
<li>Each person gets a <em>weight</em>: <strong>Base × Active%</strong> + bonuses for owning <strong>Carrier</strong>/<strong>Crawler</strong>.</li>
|
||
<li>We split the pot <em>proportionally</em> by weights (they’re normalized; only ratios matter).</li>
|
||
<li>Melange only: take <strong>Refinery cut %</strong> first → Refiner. Any rounding leftovers go to Refiner (Melange) or top earner (Sand).</li>
|
||
</ul>
|
||
|
||
<h3>Controls</h3>
|
||
<ul>
|
||
<li><em>Toggle payout: Sand/Melange</em> — switches mode (prompts for refinery yield on Melange).</li>
|
||
<li><em>Adjust weighting factors</em> — change:
|
||
<ul>
|
||
<li><strong>Base × active %</strong> (default <em>server setting</em>)</li>
|
||
<li><strong>Carrier bonus</strong> ( + )</li>
|
||
<li><strong>Crawler bonus</strong> ( + )</li>
|
||
<li><strong>Refinery cut %</strong> (Melange only)</li>
|
||
</ul>
|
||
</li>
|
||
<li><em>Weights help</em> — short explanation inline.</li>
|
||
<li><em>Presets</em> — Owner-heavy / Participation-heavy / Fair (server defaults) / Even split.</li>
|
||
<li><em>Save as my defaults</em> — stores your weights for future runs (per user).</li>
|
||
<li><em>Finish</em> — shows a neat preview (table) and lets you <em>Post to channel</em>.</li>
|
||
</ul>
|
||
|
||
<h2>Validation & limits</h2>
|
||
<ul>
|
||
<li>Participants: 1–25.</li>
|
||
<li>Active %: 0–100.</li>
|
||
<li>Melange: exactly one Refiner owner required; Sand: 0 or 1 allowed.</li>
|
||
<li>No duplicate names (duplicates are auto-disambiguated in preview).</li>
|
||
</ul>
|
||
|
||
<h2>Posting</h2>
|
||
<p>The post includes:</p>
|
||
<ul>
|
||
<li>Header (Sand or Melange) with the chosen emoji.</li>
|
||
<li>Weighting summary (Base, bonuses, and refinery cut if Melange).</li>
|
||
<li>A clean monospace table: Name · Active% · Owner of/Role · Amount.</li>
|
||
</ul>
|
||
<p><em>Footnote:</em> “0% = owner only”.</p>
|