219 lines
156 KiB
HTML

<!DOCTYPE html><html lang="en" dir="ltr"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><style id="nuxt-ui-colors">@layer theme {
:root, :host {
--ui-color-primary-50: var(--color-emerald-50, oklch(97.9% 0.021 166.113));
--ui-color-primary-100: var(--color-emerald-100, oklch(95% 0.052 163.051));
--ui-color-primary-200: var(--color-emerald-200, oklch(90.5% 0.093 164.15));
--ui-color-primary-300: var(--color-emerald-300, oklch(84.5% 0.143 164.978));
--ui-color-primary-400: var(--color-emerald-400, oklch(76.5% 0.177 163.223));
--ui-color-primary-500: var(--color-emerald-500, oklch(69.6% 0.17 162.48));
--ui-color-primary-600: var(--color-emerald-600, oklch(59.6% 0.145 163.225));
--ui-color-primary-700: var(--color-emerald-700, oklch(50.8% 0.118 165.612));
--ui-color-primary-800: var(--color-emerald-800, oklch(43.2% 0.095 166.913));
--ui-color-primary-900: var(--color-emerald-900, oklch(37.8% 0.077 168.94));
--ui-color-primary-950: var(--color-emerald-950, oklch(26.2% 0.051 172.552));
--ui-color-secondary-50: var(--color-blue-50, oklch(97% 0.014 254.604));
--ui-color-secondary-100: var(--color-blue-100, oklch(93.2% 0.032 255.585));
--ui-color-secondary-200: var(--color-blue-200, oklch(88.2% 0.059 254.128));
--ui-color-secondary-300: var(--color-blue-300, oklch(80.9% 0.105 251.813));
--ui-color-secondary-400: var(--color-blue-400, oklch(70.7% 0.165 254.624));
--ui-color-secondary-500: var(--color-blue-500, oklch(62.3% 0.214 259.815));
--ui-color-secondary-600: var(--color-blue-600, oklch(54.6% 0.245 262.881));
--ui-color-secondary-700: var(--color-blue-700, oklch(48.8% 0.243 264.376));
--ui-color-secondary-800: var(--color-blue-800, oklch(42.4% 0.199 265.638));
--ui-color-secondary-900: var(--color-blue-900, oklch(37.9% 0.146 265.522));
--ui-color-secondary-950: var(--color-blue-950, oklch(28.2% 0.091 267.935));
--ui-color-success-50: var(--color-green-50, oklch(98.2% 0.018 155.826));
--ui-color-success-100: var(--color-green-100, oklch(96.2% 0.044 156.743));
--ui-color-success-200: var(--color-green-200, oklch(92.5% 0.084 155.995));
--ui-color-success-300: var(--color-green-300, oklch(87.1% 0.15 154.449));
--ui-color-success-400: var(--color-green-400, oklch(79.2% 0.209 151.711));
--ui-color-success-500: var(--color-green-500, oklch(72.3% 0.219 149.579));
--ui-color-success-600: var(--color-green-600, oklch(62.7% 0.194 149.214));
--ui-color-success-700: var(--color-green-700, oklch(52.7% 0.154 150.069));
--ui-color-success-800: var(--color-green-800, oklch(44.8% 0.119 151.328));
--ui-color-success-900: var(--color-green-900, oklch(39.3% 0.095 152.535));
--ui-color-success-950: var(--color-green-950, oklch(26.6% 0.065 152.934));
--ui-color-info-50: var(--color-blue-50, oklch(97% 0.014 254.604));
--ui-color-info-100: var(--color-blue-100, oklch(93.2% 0.032 255.585));
--ui-color-info-200: var(--color-blue-200, oklch(88.2% 0.059 254.128));
--ui-color-info-300: var(--color-blue-300, oklch(80.9% 0.105 251.813));
--ui-color-info-400: var(--color-blue-400, oklch(70.7% 0.165 254.624));
--ui-color-info-500: var(--color-blue-500, oklch(62.3% 0.214 259.815));
--ui-color-info-600: var(--color-blue-600, oklch(54.6% 0.245 262.881));
--ui-color-info-700: var(--color-blue-700, oklch(48.8% 0.243 264.376));
--ui-color-info-800: var(--color-blue-800, oklch(42.4% 0.199 265.638));
--ui-color-info-900: var(--color-blue-900, oklch(37.9% 0.146 265.522));
--ui-color-info-950: var(--color-blue-950, oklch(28.2% 0.091 267.935));
--ui-color-warning-50: var(--color-yellow-50, oklch(98.7% 0.026 102.212));
--ui-color-warning-100: var(--color-yellow-100, oklch(97.3% 0.071 103.193));
--ui-color-warning-200: var(--color-yellow-200, oklch(94.5% 0.129 101.54));
--ui-color-warning-300: var(--color-yellow-300, oklch(90.5% 0.182 98.111));
--ui-color-warning-400: var(--color-yellow-400, oklch(85.2% 0.199 91.936));
--ui-color-warning-500: var(--color-yellow-500, oklch(79.5% 0.184 86.047));
--ui-color-warning-600: var(--color-yellow-600, oklch(68.1% 0.162 75.834));
--ui-color-warning-700: var(--color-yellow-700, oklch(55.4% 0.135 66.442));
--ui-color-warning-800: var(--color-yellow-800, oklch(47.6% 0.114 61.907));
--ui-color-warning-900: var(--color-yellow-900, oklch(42.1% 0.095 57.708));
--ui-color-warning-950: var(--color-yellow-950, oklch(28.6% 0.066 53.813));
--ui-color-error-50: var(--color-red-50, oklch(97.1% 0.013 17.38));
--ui-color-error-100: var(--color-red-100, oklch(93.6% 0.032 17.717));
--ui-color-error-200: var(--color-red-200, oklch(88.5% 0.062 18.334));
--ui-color-error-300: var(--color-red-300, oklch(80.8% 0.114 19.571));
--ui-color-error-400: var(--color-red-400, oklch(70.4% 0.191 22.216));
--ui-color-error-500: var(--color-red-500, oklch(63.7% 0.237 25.331));
--ui-color-error-600: var(--color-red-600, oklch(57.7% 0.245 27.325));
--ui-color-error-700: var(--color-red-700, oklch(50.5% 0.213 27.518));
--ui-color-error-800: var(--color-red-800, oklch(44.4% 0.177 26.899));
--ui-color-error-900: var(--color-red-900, oklch(39.6% 0.141 25.723));
--ui-color-error-950: var(--color-red-950, oklch(25.8% 0.092 26.042));
--ui-color-neutral-50: var(--color-zinc-50, oklch(98.5% 0 0));
--ui-color-neutral-100: var(--color-zinc-100, oklch(96.7% 0.001 286.375));
--ui-color-neutral-200: var(--color-zinc-200, oklch(92% 0.004 286.32));
--ui-color-neutral-300: var(--color-zinc-300, oklch(87.1% 0.006 286.286));
--ui-color-neutral-400: var(--color-zinc-400, oklch(70.5% 0.015 286.067));
--ui-color-neutral-500: var(--color-zinc-500, oklch(55.2% 0.016 285.938));
--ui-color-neutral-600: var(--color-zinc-600, oklch(44.2% 0.017 285.786));
--ui-color-neutral-700: var(--color-zinc-700, oklch(37% 0.013 285.805));
--ui-color-neutral-800: var(--color-zinc-800, oklch(27.4% 0.006 286.033));
--ui-color-neutral-900: var(--color-zinc-900, oklch(21% 0.006 285.885));
--ui-color-neutral-950: var(--color-zinc-950, oklch(14.1% 0.005 285.823));
}
:root, :host, .light {
--ui-primary: var(--ui-color-primary-500);
--ui-secondary: var(--ui-color-secondary-500);
--ui-success: var(--ui-color-success-500);
--ui-info: var(--ui-color-info-500);
--ui-warning: var(--ui-color-warning-500);
--ui-error: var(--ui-color-error-500);
}
.dark {
--ui-primary: var(--ui-color-primary-400);
--ui-secondary: var(--ui-color-secondary-400);
--ui-success: var(--ui-color-success-400);
--ui-info: var(--ui-color-info-400);
--ui-warning: var(--ui-color-warning-400);
--ui-error: var(--ui-color-error-400);
}
}</style><title>Task Usage Guide - forge-docus</title><meta property="og:image" content="https://innovativedevsolutions.github.io/forge/_og/s/o_msqvkp.png"><meta property="og:image:type" content="image/png"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:image" content="https://innovativedevsolutions.github.io/forge/_og/s/o_msqvkp.png"><meta name="twitter:image:src" content="https://innovativedevsolutions.github.io/forge/_og/s/o_msqvkp.png"><meta property="og:image:width" content="1200"><meta name="twitter:image:width" content="1200"><meta property="og:image:height" content="600"><meta name="twitter:image:height" content="600"><style>@media(min-width:1024px){.docus-sub-header{--ui-header-height:112px}}</style><link rel="stylesheet" href="/forge/_nuxt/entry.B0IIbxeE.css" crossorigin><style>@layer base {:where(.i-lucide\:alert-circle){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 8v4m0 4h.01'/%3E%3C/g%3E%3C/svg%3E")}:where(.i-lucide\:arrow-left){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m12 19l-7-7l7-7m7 7H5'/%3E%3C/svg%3E")}:where(.i-lucide\:arrow-right){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 12h14m-7-7l7 7l-7 7'/%3E%3C/svg%3E")}:where(.i-lucide\:chevron-down){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 9l6 6l6-6'/%3E%3C/svg%3E")}:where(.i-lucide\:copy){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='14' height='14' x='8' y='8' rx='2' ry='2'/%3E%3Cpath d='M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2'/%3E%3C/g%3E%3C/svg%3E")}:where(.i-lucide\:hash){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 9h16M4 15h16M10 3L8 21m8-18l-2 18'/%3E%3C/svg%3E")}:where(.i-lucide\:layers-3){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z'/%3E%3Cpath d='m6.08 9.5l-3.5 1.6a1 1 0 0 0 0 1.81l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9a1 1 0 0 0 0-1.83l-3.5-1.59'/%3E%3Cpath d='m6.08 14.5l-3.5 1.6a1 1 0 0 0 0 1.81l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9a1 1 0 0 0 0-1.83l-3.5-1.59'/%3E%3C/g%3E%3C/svg%3E")}:where(.i-lucide\:monitor-smartphone){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M18 8V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h8m-2 4v-3.96v3.15M7 19h5'/%3E%3Crect width='6' height='10' x='16' y='12' rx='2'/%3E%3C/g%3E%3C/svg%3E")}:where(.i-lucide\:moon){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401'/%3E%3C/svg%3E")}:where(.i-lucide\:pen){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z'/%3E%3C/svg%3E")}:where(.i-lucide\:rocket){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09'/%3E%3Cpath d='M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z'/%3E%3Cpath d='M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05'/%3E%3C/g%3E%3C/svg%3E")}:where(.i-lucide\:search){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m21 21l-4.34-4.34'/%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3C/g%3E%3C/svg%3E")}:where(.i-lucide\:sun){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/g%3E%3C/svg%3E")}:where(.i-simple-icons\:github){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M12 .297c-6.63 0-12 5.373-12 12c0 5.303 3.438 9.8 8.205 11.385c.6.113.82-.258.82-.577c0-.285-.01-1.04-.015-2.04c-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729c1.205.084 1.838 1.236 1.838 1.236c1.07 1.835 2.809 1.305 3.495.998c.108-.776.417-1.305.76-1.605c-2.665-.3-5.466-1.332-5.466-5.93c0-1.31.465-2.38 1.235-3.22c-.135-.303-.54-1.523.105-3.176c0 0 1.005-.322 3.3 1.23c.96-.267 1.98-.399 3-.405c1.02.006 2.04.138 3 .405c2.28-1.552 3.285-1.23 3.285-1.23c.645 1.653.24 2.873.12 3.176c.765.84 1.23 1.91 1.23 3.22c0 4.61-2.805 5.625-5.475 5.92c.42.36.81 1.096.81 2.22c0 1.606-.015 2.896-.015 3.286c0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E")}}</style><link rel="preload" as="fetch" crossorigin="anonymous" href="/forge/server-modules/task/_payload.json?3a1bf7b7-6f51-4d2c-9c98-142f71e69a9a"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/B3fabVUf.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/C0AA5UMg.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/Dq00p3Sb.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/DXQrCARz.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/AFG10c_a.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/DJxuwfoz.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/n8vERajx.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/BN_7HF1G.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/D5E4Znt1.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/DB_5vY_E.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/CamoC0EK.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/CFOqH6J8.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/B4xqMpdT.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/p9GVdgbx.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/B91fwRQf.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/C-sCiTCq.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/BKwruWNQ.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/CSnfmutH.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/DLv9Mxsp.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/D_gYX37v.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/C6Z5zZ8h.js"><link rel="modulepreload" as="script" crossorigin href="/forge/_nuxt/4YIHfatS.js"><script type="module" src="/forge/_nuxt/B3fabVUf.js" crossorigin></script><meta name="robots" content="index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1"><link rel="icon" href="/favicon.ico"><meta name="description" content="The task module stores transient mission task metadata for active server or
mission lifecycle workflows. SQF still owns Arma-only runtime state such as
objects and participants."><meta property="og:site_name" content="forge-docus"><meta property="og:title" content="Task Usage Guide"><meta property="og:description" content="The task module stores transient mission task metadata for active server or
mission lifecycle workflows. SQF still owns Arma-only runtime state such as
objects and participants."><meta property="og:type" content="article"><meta property="og:url" content="https://innovativedevsolutions.github.io/server-modules/task"><link rel="canonical" href="https://innovativedevsolutions.github.io/server-modules/task"><script type="application/ld+json">{"@context":"https://schema.org","@type":"Article","headline":"Task Usage Guide","description":"The task module stores transient mission task metadata for active server or\nmission lifecycle workflows. SQF still owns Arma-only runtime state such as\nobjects and participants.","url":"https://innovativedevsolutions.github.io/server-modules/task","mainEntityOfPage":{"@type":"WebPage","@id":"https://innovativedevsolutions.github.io/server-modules/task"},"publisher":{"@type":"Organization","name":"forge-docus"}}</script><script type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Server Modules","item":"https://innovativedevsolutions.github.io/server-modules"},{"@type":"ListItem","position":2,"name":"Task Usage Guide","item":"https://innovativedevsolutions.github.io/server-modules/task"}]}</script><script>"use strict";(()=>{const t=window,e=document.documentElement,c=["dark","light"],n=getStorageValue("localStorage","nuxt-color-mode")||"system";let i=n==="system"?u():n;const r=e.getAttribute("data-color-mode-forced");r&&(i=r),l(i),t["__NUXT_COLOR_MODE__"]={preference:n,value:i,getColorScheme:u,addColorScheme:l,removeColorScheme:d};function l(o){const s=""+o+"",a="";e.classList?e.classList.add(s):e.className+=" "+s,a&&e.setAttribute("data-"+a,o)}function d(o){const s=""+o+"",a="";e.classList?e.classList.remove(s):e.className=e.className.replace(new RegExp(s,"g"),""),a&&e.removeAttribute("data-"+a)}function f(o){return t.matchMedia("(prefers-color-scheme"+o+")")}function u(){if(t.matchMedia&&f("").media!=="not all"){for(const o of c)if(f(":"+o).matches)return o}return"light"}})();function getStorageValue(t,e){switch(t){case"localStorage":return window.localStorage.getItem(e);case"sessionStorage":return window.sessionStorage.getItem(e);case"cookie":return getCookie(e);default:return null}}function getCookie(t){const c=("; "+window.document.cookie).split("; "+t+"=");if(c.length===2)return c.pop()?.split(";").shift()}</script></head><body><div id="__nuxt" class="isolate"><!--[--><!--[--><!--[--><!--[--><!--[--><div class="nuxt-loading-indicator" style="position:fixed;top:0;right:0;left:0;pointer-events:none;width:auto;height:3px;opacity:0;background:var(--ui-primary);background-size:0% auto;transform:scaleX(0%);transform-origin:left;transition:transform 0.1s, height 0.4s, opacity 0.4s;z-index:999999;"></div><div class="transition-[margin-right] duration-200 ease-linear will-change-[margin-right]" style="margin-right:0;"><!--[--><!----><!----><!----><header data-slot="root" class="bg-default/75 backdrop-blur border-b border-default h-(--ui-header-height) sticky top-0 z-50"><!--[--><!--]--><div class="w-full max-w-(--ui-container) mx-auto px-4 sm:px-6 lg:px-8 flex items-center justify-between gap-3 h-full" data-slot="container"><!--[--><div data-slot="left" class="lg:flex-1 flex items-center gap-1.5"><!----><!--[--><a href="/forge/" class="" aria-label="forge-docus"><span class="h-6 w-auto shrink-0">forge-docus</span></a><!--]--></div><div data-slot="center" class="hidden lg:flex flex-1"><!--[--><!--[--><!----><!--[--><!--[--><button type="button" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors px-2.5 py-1.5 text-sm gap-1.5 text-default bg-elevated hover:bg-accented/75 active:bg-accented/75 focus:outline-none focus-visible:bg-accented/75 disabled:bg-elevated aria-disabled:bg-elevated w-full"><!--[--><!--[--><span class="iconify i-lucide:search shrink-0 size-4 mr-1" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><span data-slot="label" class="truncate">Search…</span><!--]--><!--[--><div data-slot="trailing" class="hidden lg:flex items-center gap-0.5 ms-auto"><!--[--><!--[--><kbd class="inline-flex items-center justify-center px-1 rounded-sm font-medium font-sans uppercase h-5 min-w-[20px] text-[11px] ring ring-inset ring-accented text-default bg-elevated"><!--[--> <!--]--></kbd><kbd class="inline-flex items-center justify-center px-1 rounded-sm font-medium font-sans uppercase h-5 min-w-[20px] text-[11px] ring ring-inset ring-accented text-default bg-elevated"><!--[-->k<!--]--></kbd><!--]--><!--]--></div><!--]--><!--]--></button><!--]--><!--]--><!--]--><!--]--></div><div data-slot="right" class="flex items-center justify-end lg:flex-1 gap-1.5"><!--[--><div></div><!----><!----><!--[--><!----><!--[--><!--[--><button type="button" aria-label="Search…" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-sm gap-1.5 text-default hover:bg-elevated active:bg-elevated focus:outline-none focus-visible:bg-elevated hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent p-1.5 lg:hidden"><!--[--><!--[--><span class="iconify i-lucide:search shrink-0 size-5" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><span data-slot="label" class="truncate hidden">Search…</span><!--]--><!--[--><div data-slot="trailing" class="hidden items-center gap-0.5 ms-auto lg:hidden"><!--[--><!--[--><kbd class="inline-flex items-center justify-center px-1 rounded-sm font-medium font-sans uppercase h-5 min-w-[20px] text-[11px] ring ring-inset ring-accented text-default bg-elevated"><!--[--> <!--]--></kbd><kbd class="inline-flex items-center justify-center px-1 rounded-sm font-medium font-sans uppercase h-5 min-w-[20px] text-[11px] ring ring-inset ring-accented text-default bg-elevated"><!--[-->k<!--]--></kbd><!--]--><!--]--></div><!--]--><!--]--></button><!--]--><!--]--><!--]--><!--[--><div class="h-8 w-8 animate-pulse bg-neutral-200 dark:bg-neutral-800 rounded-md"></div><!--]--><!--[--><!--[--><!--[--><a href="https://github.com/InnovativeDevSolutions/forge" rel="noopener noreferrer" target="_blank" aria-label="GitHub" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-sm gap-1.5 text-default hover:bg-elevated active:bg-elevated focus:outline-none focus-visible:bg-elevated hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent p-1.5"><!--[--><!--[--><span class="iconify i-simple-icons:github shrink-0 size-5" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></a><!--]--><!--]--><!--]--><!--]--><!--[--><!--[--><!--[--><button type="button" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-xs gap-1.5 text-default hover:bg-elevated active:bg-elevated focus:outline-none focus-visible:bg-elevated hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent p-1.5 -me-1.5 lg:hidden"><!--[--><!--[--><!----><!--]--><!--[--><svg xmlns="http://www.w3.org/2000/svg" class="size-5" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="4" y1="6" x2="20" y2="6" class="outline-none"></line><line x1="4" y1="12" x2="20" y2="12" class="outline-none"></line><line x1="4" y1="18" x2="20" y2="18" class="outline-none"></line></svg><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><!--]--></div><!--]--></div><!--[--><!--]--></header><!--[--><!----><!----><!--v-if--><!--]--><!--]--><main class="min-h-[calc(100vh-var(--ui-header-height))]"><!--[--><div class="w-full max-w-(--ui-container) mx-auto px-4 sm:px-6 lg:px-8"><!--[--><div data-slot="root" class="flex flex-col lg:grid lg:grid-cols-10 lg:gap-10"><aside data-slot="left" class="hidden overflow-y-auto lg:block lg:max-h-[calc(100vh-var(--ui-header-height))] lg:sticky lg:top-(--ui-header-height) py-8 lg:ps-4 lg:-ms-4 lg:pe-6.5 lg:col-span-2"><div data-slot="container" class="relative"><!----><!--[--><div></div><!--[--><!----><nav data-slot="root"><ul class="isolate -mx-2.5 -mt-1.5"><!--[--><!--[--><!--[--><li data-state="open" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5"><!--[--><!--[--><button type="button" aria-controls aria-expanded="true" data-state="open" id="reka-accordion-trigger-v-0-3-0" data-reka-collection-item data-orientation="vertical" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted hover:text-highlighted data-[state=open]:text-highlighted transition-colors font-semibold focus-visible:ring-primary"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-lucide:rocket shrink-0 size-4 mr-1 text-dimmed group-hover:text-default group-data-[state=open]:text-default transition-colors" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Getting Started<!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto gap-1.5 items-center hidden"><!--[--><!----><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-3-0" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-3-1"><!--[--><!--[--><!--[--><!----><ul data-slot="root" class="ms-5 border-s border-default"><!--[--><!--[--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/getting-started" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Getting Started<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/getting-started/architecture" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Framework Architecture<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/getting-started/module-reference" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Module Reference<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/getting-started/development" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Development Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/getting-started/surrealdb-setup" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->SurrealDB Setup<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--]--><!--]--></ul><!--]--><!--]--><!--]--></div><!--]--><!--]--></li><!--]--><!--[--><li data-state="open" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5"><!--[--><!--[--><button type="button" aria-controls aria-expanded="true" data-state="open" id="reka-accordion-trigger-v-0-3-2" data-reka-collection-item data-orientation="vertical" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted hover:text-highlighted data-[state=open]:text-highlighted transition-colors font-semibold focus-visible:ring-primary"><!--[--><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Forge Server Extension<!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto gap-1.5 items-center hidden"><!--[--><!----><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-3-2" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-3-3"><!--[--><!--[--><!--[--><!----><ul data-slot="root" class="ms-5 border-s border-default"><!--[--><!--[--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-extension" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Forge Server Extension<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-extension/api-reference" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Forge Server API Reference<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-extension/usage-examples" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Forge Server Usage Examples<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--]--><!--]--></ul><!--]--><!--]--><!--]--></div><!--]--><!--]--></li><!--]--><!--[--><li data-state="open" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5"><!--[--><!--[--><button type="button" aria-controls aria-expanded="true" data-state="open" id="reka-accordion-trigger-v-0-3-4" data-reka-collection-item data-orientation="vertical" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted hover:text-highlighted data-[state=open]:text-highlighted transition-colors font-semibold focus-visible:ring-primary"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-lucide:layers-3 shrink-0 size-4 mr-1 text-dimmed group-hover:text-default group-data-[state=open]:text-default transition-colors" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Server Modules<!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto gap-1.5 items-center hidden"><!--[--><!----><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-3-4" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-3-5"><!--[--><!--[--><!--[--><!----><ul data-slot="root" class="ms-5 border-s border-default"><!--[--><!--[--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Server Module Guides<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules/actor" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Actor Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules/store" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Store Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules/task" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary font-medium after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors text-primary after:bg-primary"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Task Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules/bank" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Bank Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules/cad" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->CAD Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules/economy" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Economy Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules/garage" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Garage Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules/locker" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Locker Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules/organization" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Organization Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules/owned-storage" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Owned Storage Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/server-modules/phone" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Phone Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--]--><!--]--></ul><!--]--><!--]--><!--]--></div><!--]--><!--]--></li><!--]--><!--[--><li data-state="open" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5"><!--[--><!--[--><button type="button" aria-controls aria-expanded="true" data-state="open" id="reka-accordion-trigger-v-0-3-6" data-reka-collection-item data-orientation="vertical" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted hover:text-highlighted data-[state=open]:text-highlighted transition-colors font-semibold focus-visible:ring-primary"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-lucide:monitor-smartphone shrink-0 size-4 mr-1 text-dimmed group-hover:text-default group-data-[state=open]:text-default transition-colors" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Addons<!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto gap-1.5 items-center hidden"><!--[--><!----><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-3-6" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-3-7"><!--[--><!--[--><!--[--><!----><ul data-slot="root" class="ms-5 border-s border-default"><!--[--><!--[--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons/main" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Main Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons/phone" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Phone Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons/store" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Store Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons/common" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Common Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons/actor" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Actor Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons/bank" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Bank Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons/cad" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client CAD Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons/garage" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Garage Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons/locker" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Locker Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons/notifications" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Notifications Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px"><!--[--><a href="/forge/client-addons/organization" data-slot="link" class="group relative w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:ring-inset focus-visible:before:ring-2 focus-visible:before:ring-primary text-muted after:absolute after:-left-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted data-[state=open]:text-highlighted transition-colors"><!--[--><!--[--><!--[--><!----><!--]--><span data-slot="linkTitle" class="truncate"><!--[-->Client Organization Usage Guide<!--]--><!----></span><!----><!--]--><!--]--></a><!--]--></li><!--]--><!--]--><!--]--></ul><!--]--><!--]--><!--]--></div><!--]--><!--]--></li><!--]--><!--]--><!--]--></ul></nav><!--]--><!--]--><!--[--><!--]--></div></aside><div data-slot="center" class="lg:col-span-8"><!--[--><!--[--><div data-slot="root" class="flex flex-col lg:grid lg:grid-cols-10 lg:gap-10"><!----><div data-slot="center" class="lg:col-span-8"><!--[--><div data-slot="root" class="relative border-b border-default py-8"><div data-slot="headline" class="mb-2.5 text-sm font-semibold text-primary flex items-center gap-1.5"><!--[-->Server Modules<!--]--></div><div data-slot="container" class=""><div data-slot="wrapper" class="flex lg:flex-row lg:items-center lg:justify-between gap-4 flex-row items-center flex-wrap justify-between"><h1 data-slot="title" class="text-3xl sm:text-4xl text-pretty font-bold text-highlighted"><!--[-->Task Usage Guide<!--]--></h1><div data-slot="links" class="flex flex-wrap items-center gap-1.5"><!--[--><!--[--><!--]--><div data-orientation="horizontal" class="relative inline-flex -space-x-px"><!--[--><!--[--><!--[--><button type="button" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors not-only:first:rounded-e-none not-only:last:rounded-s-none not-last:not-first:rounded-none focus-visible:z-[1] px-2.5 py-1.5 text-xs gap-1.5 text-default bg-elevated hover:bg-accented/75 active:bg-accented/75 focus:outline-none focus-visible:bg-accented/75 disabled:bg-elevated aria-disabled:bg-elevated"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 text-neutral size-3.5" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><span data-slot="label" class="truncate">Copy page</span><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><!--[--><!--[--><!--[--><!--[--><!--[--><button type="button" id="reka-dropdown-menu-trigger-v-0-3-7-0" aria-haspopup="menu" aria-expanded="false" data-state="closed" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors not-only:first:rounded-e-none not-only:last:rounded-s-none not-last:not-first:rounded-none focus-visible:z-[1] text-xs gap-1.5 text-default bg-elevated hover:bg-accented/75 active:bg-accented/75 focus:outline-none focus-visible:bg-accented/75 disabled:bg-elevated aria-disabled:bg-elevated p-1.5 border-l border-muted"><!--[--><!--[--><span class="iconify i-lucide:chevron-down shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><!--[--><!----><!--v-if--><!--]--><!--]--><!--]--><!--]--><!--]--></div><!--]--></div></div><div data-slot="description" class="text-lg text-pretty text-muted mt-4"><!--[-->The task module stores transient mission task metadata for active server or
mission lifecycle workflows. SQF still owns Arma-only runtime state such as
objects and participants.<!--]--></div><!--[--><!--]--></div></div><div class="mt-8 pb-24 space-y-12"><!--[--><div><h1 id="task-usage-guide" class="text-4xl text-highlighted font-bold mb-8 scroll-mt-[calc(45px+var(--ui-header-height))] lg:scroll-mt-(--ui-header-height)"><!--[-->Task Usage Guide<!--]--></h1><p class="my-5 leading-7 text-pretty"><!--[-->The task module stores transient mission task metadata for active server or
mission lifecycle workflows. SQF still owns Arma-only runtime state such as
objects and participants.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[-->The server addon at <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->arma/server/addons/task<!--]--></code> also owns task execution:
creating BIS tasks, registering task entities, tracking participants, binding
task ownership, applying player/org rewards, and clearing task state when a
task completes.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[-->Runtime dependencies:<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_extension<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_common<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_actor<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_bank<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_org<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_client_notifications<!--]--></code><!--]--></li><!--]--></ul><h2 id="data-model" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#data-model" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Data Model<!--]--></a></h2><p class="my-5 leading-7 text-pretty"><!--[-->Catalog entries are flexible JSON objects. The service normalizes these fields
when a catalog entry is inserted or ownership changes:<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->taskId<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->taskID<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->accepted<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->requesterUid<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->orgID<!--]--></code><!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[-->Ownership context:<!--]--></p><div class="relative my-5 group" style=""><!----><!--[--><!--[--><button type="button" aria-label="Copy code to clipboard" tabindex="-1" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default focus:outline-none focus-visible:ring-2 focus-visible:ring-inverted p-1.5 absolute top-[11px] right-[11px] lg:opacity-0 lg:group-hover:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap break-words overflow-x-auto focus:outline-none **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" style=""><!--[--><code><span class="line" line="1"><span class="sMK4o">{
</span></span><span class="line" line="2"><span class="sMK4o"> &quot;</span><span class="spNyl">requesterUid</span><span class="sMK4o">&quot;</span><span class="sMK4o">:</span><span class="sMK4o"> &quot;</span><span class="sfazB">76561198000000000</span><span class="sMK4o">&quot;</span><span class="sMK4o">,
</span></span><span class="line" line="3"><span class="sMK4o"> &quot;</span><span class="spNyl">orgId</span><span class="sMK4o">&quot;</span><span class="sMK4o">:</span><span class="sMK4o"> &quot;</span><span class="sfazB">default</span><span class="sMK4o">&quot;
</span></span><span class="line" line="4"><span class="sMK4o">}
</span></span></code><!--]--></pre></div><h2 id="commands" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#commands" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Commands<!--]--></a></h2><div class="relative my-5 overflow-x-auto"><table class="w-full border-separate border-spacing-0 rounded-md"><!--[--><thead class="bg-muted"><!--[--><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-left"><!--[-->Command<!--]--></th><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-left"><!--[-->Arguments<!--]--></th><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-left"><!--[-->Returns<!--]--></th><!--]--></tr><!--]--></thead><tbody><!--[--><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:reset<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->none<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->true<!--]--></code>.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:catalog:active<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->none<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->Active catalog entry array JSON.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:catalog:get<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->Catalog entry JSON or <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->null<!--]--></code>.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:catalog:upsert<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code>, <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->entry_json<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->Stored catalog entry JSON.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:catalog:delete<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->true<!--]--></code>.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:ownership:bind<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code>, <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->ownership_json<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->Ownership mutation result JSON.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:ownership:release<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->Ownership mutation result JSON.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:ownership:accept<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code>, <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->ownership_json<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->Ownership mutation result JSON.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:ownership:reward_context<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->Reward context JSON.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:status:set<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code>, <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->status<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->true<!--]--></code>.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:status:get<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->Status string JSON.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:status:clear<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->true<!--]--></code>.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:defuse:increment<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->New counter value JSON.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:defuse:get<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[-->Counter value JSON.<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-tl-md [&amp;:first-child&gt;th:last-child]:rounded-tr-md [&amp;:last-child&gt;td:first-child]:rounded-bl-md [&amp;:last-child&gt;td:last-child]:rounded-br-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:clear<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task_id<!--]--></code><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-left"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->true<!--]--></code>.<!--]--></td><!--]--></tr><!--]--></tbody><!--]--></table></div><h2 id="upsert-a-catalog-entry" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#upsert-a-catalog-entry" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Upsert a Catalog Entry<!--]--></a></h2><div class="relative my-5 group" style=""><!----><!--[--><!--[--><button type="button" aria-label="Copy code to clipboard" tabindex="-1" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default focus:outline-none focus-visible:ring-2 focus-visible:ring-inverted p-1.5 absolute top-[11px] right-[11px] lg:opacity-0 lg:group-hover:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap break-words overflow-x-auto focus:outline-none **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-sqf shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" style=""><!--[--><code><span class="line" line="1"><span>private _entry = createHashMapFromArray [
</span></span><span class="line" line="2"><span> [&quot;title&quot;, &quot;Destroy Cache&quot;],
</span></span><span class="line" line="3"><span> [&quot;description&quot;, &quot;Destroy the enemy supply cache.&quot;],
</span></span><span class="line" line="4"><span> [&quot;reward&quot;, 1500]
</span></span><span class="line" line="5"><span>];
</span></span><span class="line" line="6"><span emptylineplaceholder="true">
</span></span><span class="line" line="7"><span>private _result = &quot;forge_server&quot; callExtension [&quot;task:catalog:upsert&quot;, [
</span></span><span class="line" line="8"><span> &quot;task-cache-1&quot;,
</span></span><span class="line" line="9"><span> toJSON _entry
</span></span><span class="line" line="10"><span>]];
</span></span></code><!--]--></pre></div><h2 id="mark-a-task-active" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#mark-a-task-active" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Mark a Task Active<!--]--></a></h2><div class="relative my-5 group" style=""><!----><!--[--><!--[--><button type="button" aria-label="Copy code to clipboard" tabindex="-1" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default focus:outline-none focus-visible:ring-2 focus-visible:ring-inverted p-1.5 absolute top-[11px] right-[11px] lg:opacity-0 lg:group-hover:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap break-words overflow-x-auto focus:outline-none **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-sqf shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" style=""><!--[--><code><span class="line" line="1"><span>&quot;forge_server&quot; callExtension [&quot;task:status:set&quot;, [
</span></span><span class="line" line="2"><span> &quot;task-cache-1&quot;,
</span></span><span class="line" line="3"><span> &quot;active&quot;
</span></span><span class="line" line="4"><span>]];
</span></span><span class="line" line="5"><span emptylineplaceholder="true">
</span></span><span class="line" line="6"><span>private _active = &quot;forge_server&quot; callExtension [&quot;task:catalog:active&quot;, []];
</span></span></code><!--]--></pre></div><p class="my-5 leading-7 text-pretty"><!--[-->Completed statuses <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->succeeded<!--]--></code> and <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->failed<!--]--></code> are also stored as completed status
fallbacks. Clearing status removes active and completed state.<!--]--></p><h2 id="accept-a-task" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#accept-a-task" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Accept a Task<!--]--></a></h2><div class="relative my-5 group" style=""><!----><!--[--><!--[--><button type="button" aria-label="Copy code to clipboard" tabindex="-1" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default focus:outline-none focus-visible:ring-2 focus-visible:ring-inverted p-1.5 absolute top-[11px] right-[11px] lg:opacity-0 lg:group-hover:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap break-words overflow-x-auto focus:outline-none **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-sqf shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" style=""><!--[--><code><span class="line" line="1"><span>private _ownership = createHashMapFromArray [
</span></span><span class="line" line="2"><span> [&quot;requesterUid&quot;, getPlayerUID player],
</span></span><span class="line" line="3"><span> [&quot;orgId&quot;, &quot;default&quot;]
</span></span><span class="line" line="4"><span>];
</span></span><span class="line" line="5"><span emptylineplaceholder="true">
</span></span><span class="line" line="6"><span>private _result = &quot;forge_server&quot; callExtension [&quot;task:ownership:accept&quot;, [
</span></span><span class="line" line="7"><span> &quot;task-cache-1&quot;,
</span></span><span class="line" line="8"><span> toJSON _ownership
</span></span><span class="line" line="9"><span>]];
</span></span></code><!--]--></pre></div><p class="my-5 leading-7 text-pretty"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->task:ownership:accept<!--]--></code> fails if the task is not active or another requester
already accepted it.<!--]--></p><h2 id="rewards" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#rewards" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Rewards<!--]--></a></h2><div class="relative my-5 group" style=""><!----><!--[--><!--[--><button type="button" aria-label="Copy code to clipboard" tabindex="-1" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default focus:outline-none focus-visible:ring-2 focus-visible:ring-inverted p-1.5 absolute top-[11px] right-[11px] lg:opacity-0 lg:group-hover:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap break-words overflow-x-auto focus:outline-none **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-sqf shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" style=""><!--[--><code><span class="line" line="1"><span>private _result = &quot;forge_server&quot; callExtension [&quot;task:ownership:reward_context&quot;, [
</span></span><span class="line" line="2"><span> &quot;task-cache-1&quot;
</span></span><span class="line" line="3"><span>]];
</span></span><span class="line" line="4"><span emptylineplaceholder="true">
</span></span><span class="line" line="5"><span>private _context = fromJSON (_result select 0);
</span></span></code><!--]--></pre></div><p class="my-5 leading-7 text-pretty"><!--[-->The reward context contains <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->requesterUid<!--]--></code> and <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->orgId<!--]--></code>.<!--]--></p><h2 id="server-task-flows" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#server-task-flows" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Server Task Flows<!--]--></a></h2><p class="my-5 leading-7 text-pretty"><!--[-->The task addon provides these server-owned task flows:<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->attack<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->defend<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->defuse<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->delivery<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->destroy<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->hostage<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->hvt<!--]--></code><!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[-->Mission designers can create tasks in four ways:<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Eden modules for editor-authored tasks.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_startTask<!--]--></code> for script-authored tasks.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_handler<!--]--></code> for pre-registered entities with reputation
gating and ownership binding. This path expects the BIS task and catalog
entry to already exist if map-task and CAD visibility are required.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Direct task function calls for server-owned or mission-authored flows that
intentionally fall back to the <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->default<!--]--></code> org. This path expects the BIS task
to already exist if map-task visibility is required.<!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[-->The dynamic mission manager can also generate attack tasks from config. That is
system-generated content rather than a hand-authored task creation path.<!--]--></p><h2 id="cad-compatibility" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#cad-compatibility" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->CAD Compatibility<!--]--></a></h2><p class="my-5 leading-7 text-pretty"><!--[-->CAD hydrates assignable tasks from <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->TaskStore.getActiveTaskCatalog<!--]--></code>. A task must
have a catalog entry and active task status before CAD can show and assign it.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[-->CAD-compatible creation paths:<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Eden modules: compatible because they delegate to
<code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_startTask<!--]--></code>.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_startTask<!--]--></code>: compatible because it registers the
catalog entry, creates the BIS task, and dispatches through the handler.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Dynamic mission manager attack tasks: compatible because the mission manager
uses <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_startTask<!--]--></code>.<!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[-->Limited or incompatible paths:<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_handler<!--]--></code>: only compatible if a catalog entry was
already registered elsewhere. The handler sets active status and ownership,
but it does not create the BIS task shown in the map task tab or upsert the
catalog entry.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Direct task function calls: not CAD-compatible by default. They bypass
<code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->startTask<!--]--></code> and usually do not register the task catalog entry or active
status that CAD hydrates from. They also only call <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->BIS_fnc_taskSetState<!--]--></code> at
completion/failure; they do not create the BIS task first.<!--]--></li><!--]--></ul><h2 id="bis-map-task-prerequisite" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#bis-map-task-prerequisite" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->BIS Map Task Prerequisite<!--]--></a></h2><p class="my-5 leading-7 text-pretty"><!--[-->Only the Eden task modules and <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_startTask<!--]--></code> create the BIS
task automatically through <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->BIS_fnc_taskCreate<!--]--></code>.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[-->If a mission uses <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_handler<!--]--></code> directly or calls a task flow
function such as <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_attack<!--]--></code>, the mission must create a BIS
task with the same task ID before the Forge task completes. Otherwise the
success/failure <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->BIS_fnc_taskSetState<!--]--></code> call has no visible map task to update.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[-->That prerequisite can be satisfied with a vanilla Eden task creation module or
a scripted <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->BIS_fnc_taskCreate<!--]--></code> call. <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_startTask<!--]--></code> is the
preferred Forge path because it handles BIS task creation, Forge catalog
registration, entity registration, and handler dispatch together.<!--]--></p><h2 id="eden-modules" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#eden-modules" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Eden Modules<!--]--></a></h2><p class="my-5 leading-7 text-pretty"><!--[-->Eden task modules are the normal designer-facing path. Place the module,
configure its attributes, and sync it to the relevant entities or grouping
modules.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[-->Available task modules:<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_Attack<!--]--></code>: sync directly to target units or vehicles.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_Destroy<!--]--></code>: sync directly to objects, vehicles, or units.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_Defuse<!--]--></code>: sync to <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_Explosives<!--]--></code> and optionally
<code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_Protected<!--]--></code>.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_Delivery<!--]--></code>: sync to <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_Cargo<!--]--></code>; the cargo module syncs
to cargo objects.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_Hostage<!--]--></code>: sync to <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_Hostages<!--]--></code> and
<code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_Shooters<!--]--></code>.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_HVT<!--]--></code>: sync directly to HVT units.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->FORGE_Module_Defend<!--]--></code>: configure the defense marker and wave settings.<!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[-->These modules delegate to <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_startTask<!--]--></code>.<!--]--></p><h2 id="scripted-start-task" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#scripted-start-task" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Scripted Start Task<!--]--></a></h2><p class="my-5 leading-7 text-pretty"><!--[-->Use <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_startTask<!--]--></code> when creating tasks from modules,
mission scripts, or generated mission-manager content. It registers task
entities, creates the BIS task, stores the catalog entry, then dispatches
through <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_handler<!--]--></code>.<!--]--></p><div class="relative my-5 group" style=""><!----><!--[--><!--[--><button type="button" aria-label="Copy code to clipboard" tabindex="-1" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default focus:outline-none focus-visible:ring-2 focus-visible:ring-inverted p-1.5 absolute top-[11px] right-[11px] lg:opacity-0 lg:group-hover:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap break-words overflow-x-auto focus:outline-none **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-sqf shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" style=""><!--[--><code><span class="line" line="1"><span>[
</span></span><span class="line" line="2"><span> &quot;attack&quot;,
</span></span><span class="line" line="3"><span> &quot;compound_attack_01&quot;,
</span></span><span class="line" line="4"><span> getPosATL leader1,
</span></span><span class="line" line="5"><span> &quot;Attack: East Compound&quot;,
</span></span><span class="line" line="6"><span> &quot;Eliminate all hostile forces.&quot;,
</span></span><span class="line" line="7"><span> createHashMapFromArray [[&quot;targets&quot;, [unit1, unit2, unit3]]],
</span></span><span class="line" line="8"><span> createHashMapFromArray [
</span></span><span class="line" line="9"><span> [&quot;limitFail&quot;, 0],
</span></span><span class="line" line="10"><span> [&quot;limitSuccess&quot;, 3],
</span></span><span class="line" line="11"><span> [&quot;funds&quot;, 50000],
</span></span><span class="line" line="12"><span> [&quot;ratingFail&quot;, -10],
</span></span><span class="line" line="13"><span> [&quot;ratingSuccess&quot;, 20],
</span></span><span class="line" line="14"><span> [&quot;timeLimit&quot;, 900]
</span></span><span class="line" line="15"><span> ],
</span></span><span class="line" line="16"><span> 0,
</span></span><span class="line" line="17"><span> getPlayerUID player,
</span></span><span class="line" line="18"><span> &quot;script&quot;
</span></span><span class="line" line="19"><span>] call forge_server_task_fnc_startTask;
</span></span></code><!--]--></pre></div><h2 id="handler-calls" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#handler-calls" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Handler Calls<!--]--></a></h2><p class="my-5 leading-7 text-pretty"><!--[-->Use <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->forge_server_task_fnc_handler<!--]--></code> directly when the task entities are already
registered and you want reputation gating plus ownership binding. Create the
BIS task and catalog entry separately if this task should appear in the map
task tab or CAD:<!--]--></p><div class="relative my-5 group" style=""><!----><!--[--><!--[--><button type="button" aria-label="Copy code to clipboard" tabindex="-1" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default focus:outline-none focus-visible:ring-2 focus-visible:ring-inverted p-1.5 absolute top-[11px] right-[11px] lg:opacity-0 lg:group-hover:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap break-words overflow-x-auto focus:outline-none **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-sqf shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" style=""><!--[--><code><span class="line" line="1"><span>[
</span></span><span class="line" line="2"><span> &quot;delivery&quot;,
</span></span><span class="line" line="3"><span> [&quot;delivery_1&quot;, 1, 3, &quot;delivery_zone&quot;, 250000, -75, 300, false, false, 900],
</span></span><span class="line" line="4"><span> 250,
</span></span><span class="line" line="5"><span> getPlayerUID player
</span></span><span class="line" line="6"><span>] call forge_server_task_fnc_handler;
</span></span></code><!--]--></pre></div><h2 id="direct-task-calls" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#direct-task-calls" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Direct Task Calls<!--]--></a></h2><p class="my-5 leading-7 text-pretty"><!--[-->Direct task function calls still work for mission-authored or server-owned
tasks, but they do not provide a requester UID. Ownership falls back to the
<code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->default<!--]--></code> org. Create the BIS task separately if this task should appear in the
map task tab.<!--]--></p><h2 id="timer-semantics" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#timer-semantics" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Timer Semantics<!--]--></a></h2><p class="my-5 leading-7 text-pretty"><!--[-->Task time limits use <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->0<!--]--></code> for no limit:<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->attack <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->timeLimit<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->destroy <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->timeLimit<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->delivery <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->timeLimit<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->hostage <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->timeLimit<!--]--></code><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->HVT <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->timeLimit<!--]--></code><!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[-->Positive values are measured in seconds. Do not pass <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->-1<!--]--></code> as a no-limit value;
the task runtime treats any non-zero task time limit as active.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[-->Defuse IED timers are different. <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->iedTimer<!--]--></code> must be greater than <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->0<!--]--></code>, because
IEDs are expected to have an active countdown. The Eden defuse module defaults
to <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->300<!--]--></code> seconds.<!--]--></p><h2 id="defuse-counter" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#defuse-counter" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Defuse Counter<!--]--></a></h2><div class="relative my-5 group" style=""><!----><!--[--><!--[--><button type="button" aria-label="Copy code to clipboard" tabindex="-1" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default focus:outline-none focus-visible:ring-2 focus-visible:ring-inverted p-1.5 absolute top-[11px] right-[11px] lg:opacity-0 lg:group-hover:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap break-words overflow-x-auto focus:outline-none **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-sqf shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" style=""><!--[--><code><span class="line" line="1"><span>&quot;forge_server&quot; callExtension [&quot;task:defuse:increment&quot;, [&quot;task-cache-1&quot;]];
</span></span><span class="line" line="2"><span>private _count = &quot;forge_server&quot; callExtension [&quot;task:defuse:get&quot;, [&quot;task-cache-1&quot;]];
</span></span></code><!--]--></pre></div><h2 id="error-handling" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:focus-visible:outline-primary [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><a href="#error-handling" class="group lg:ps-2 lg:-ms-2"><span class="absolute -ms-8 top-1 opacity-0 group-hover:opacity-100 group-focus:opacity-100 p-1 bg-elevated hover:text-primary rounded-md hidden lg:flex text-muted transition"><span class="iconify i-lucide:hash size-4 shrink-0" aria-hidden="true" style=""></span></span><!--[-->Error Handling<!--]--></a></h2><div class="relative my-5 group" style=""><!----><!--[--><!--[--><button type="button" aria-label="Copy code to clipboard" tabindex="-1" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default focus:outline-none focus-visible:ring-2 focus-visible:ring-inverted p-1.5 absolute top-[11px] right-[11px] lg:opacity-0 lg:group-hover:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap break-words overflow-x-auto focus:outline-none **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-sqf shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" style=""><!--[--><code><span class="line" line="1"><span>private _payload = _result select 0;
</span></span><span class="line" line="2"><span>if (_payload find &quot;Error:&quot; == 0) exitWith {
</span></span><span class="line" line="3"><span> systemChat format [&quot;Task error: %1&quot;, _payload];
</span></span><span class="line" line="4"><span>};
</span></span></code><!--]--></pre></div><style>html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}</style></div><div data-orientation="horizontal" role="separator" data-slot="root" class="flex items-center align-center text-center w-full flex-row"><!--[--><!--[--><div data-slot="border" class="border-default w-full border-solid border-t"></div><!--[--><div data-slot="container" class="font-medium text-default flex mx-3 whitespace-nowrap"><!--[--><div class="flex items-center gap-2 text-sm text-muted"><!--[--><!--[--><a href="https://github.com/InnovativeDevSolutions/forge/edit/master/docus/content/3.server-modules/11.task.md" rel="noopener noreferrer" target="_blank" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors px-2.5 py-1.5 text-sm gap-1.5 text-muted hover:text-default active:text-default disabled:text-muted aria-disabled:text-muted focus:outline-none focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-inverted"><!--[--><!--[--><span class="iconify i-lucide:pen shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[-->Edit this page<!--]--><!--[--><!----><!--]--><!--]--></a><!--]--><!--]--><!--[--><span>or</span><!--[--><!--[--><a href="https://github.com/InnovativeDevSolutions/forge/issues/new/choose" rel="noopener noreferrer" target="_blank" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors px-2.5 py-1.5 text-sm gap-1.5 text-muted hover:text-default active:text-default disabled:text-muted aria-disabled:text-muted focus:outline-none focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-inverted"><!--[--><!--[--><span class="iconify i-lucide:alert-circle shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[-->Report an issue<!--]--><!--[--><!----><!--]--><!--]--></a><!--]--><!--]--><!--]--></div><!--]--></div><div data-slot="border" class="border-default w-full border-solid border-t"></div><!--]--><!--]--><!--]--></div><!--[--><!----><div data-slot="root" class="grid grid-cols-1 sm:grid-cols-2 gap-8"><a href="/forge/server-modules/store" data-slot="link" class="group block px-6 py-8 rounded-lg border border-default hover:bg-elevated/50 focus-visible:outline-primary transition-colors"><!--[--><!--[--><!--[--><div data-slot="linkLeading" class="inline-flex items-center rounded-full p-1.5 bg-elevated group-hover:bg-primary/10 ring ring-accented mb-4 group-hover:ring-primary/50 transition"><!--[--><span class="iconify i-lucide:arrow-left size-5 shrink-0 text-highlighted group-hover:text-primary transition-[color,translate] group-active:-translate-x-0.5" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--></div><p data-slot="linkTitle" class="font-medium text-[15px] text-highlighted mb-1 truncate"><!--[-->Store Usage Guide<!--]--></p><p data-slot="linkDescription" class="text-sm text-muted line-clamp-2"><!--[-->The store module processes checkout requests. It charges a payment source and
grants purchased items to the player locker, virtual arsenal locker, and
virtual garage unlocks.<!--]--></p><!--]--><!--]--><!--]--></a><a href="/forge/server-modules/bank" data-slot="link" class="group block px-6 py-8 rounded-lg border border-default hover:bg-elevated/50 focus-visible:outline-primary transition-colors text-end"><!--[--><!--[--><!--[--><div data-slot="linkLeading" class="inline-flex items-center rounded-full p-1.5 bg-elevated group-hover:bg-primary/10 ring ring-accented mb-4 group-hover:ring-primary/50 transition"><!--[--><span class="iconify i-lucide:arrow-right size-5 shrink-0 text-highlighted group-hover:text-primary transition-[color,translate] group-active:translate-x-0.5" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--></div><p data-slot="linkTitle" class="font-medium text-[15px] text-highlighted mb-1 truncate"><!--[-->Bank Usage Guide<!--]--></p><p data-slot="linkDescription" class="text-sm text-muted line-clamp-2"><!--[-->The bank module stores player account balances, earnings, PINs, and transaction
strings. The hot-state API also owns the active banking workflows used by the
UI: deposit, withdraw, transfer, checkout charge, and PIN validation.<!--]--></p><!--]--><!--]--><!--]--></a></div><!--]--><!--]--></div><!--]--></div><div data-slot="right" class="lg:col-span-2 order-first lg:order-last"><!--[--><!----><!----><!----><nav data-state="closed" data-slot="root" class="sticky top-(--ui-header-height) z-10 bg-default/75 lg:bg-[initial] backdrop-blur -mx-4 px-4 sm:px-6 sm:-mx-6 lg:ms-0 overflow-y-auto max-h-[calc(100vh-var(--ui-header-height))]"><!--[--><div data-slot="container" class="pt-4 sm:pt-6 pb-2.5 sm:pb-4.5 lg:py-8 border-b border-dashed border-default lg:border-0 flex flex-col"><!----><!--[--><button type="button" aria-controls aria-expanded="false" data-state="closed" data-slot="trigger" class="group text-sm font-semibold flex-1 flex items-center gap-1.5 py-1.5 -mt-1.5 focus-visible:outline-primary lg:hidden"><!--[--><!--[--><!--[--><!--]--><span data-slot="title" class="truncate"><!--[-->On this page<!--]--></span><span data-slot="trailing" class="ms-auto inline-flex gap-1.5 items-center"><!--[--><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180 lg:hidden" aria-hidden="true" style="" data-slot="trailingIcon"></span><!--]--></span><!--]--><!--]--></button><div data-slot="content" class="relative data-[state=open]:animate-[collapsible-down_200ms_ease-out] data-[state=closed]:animate-[collapsible-up_200ms_ease-out] overflow-hidden focus:outline-none lg:hidden" id="reka-collapsible-content-v-0-3-7-1" hidden data-state="closed" style="--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;"><!--v-if--></div><p data-slot="trigger" class="group text-sm font-semibold flex-1 items-center gap-1.5 py-1.5 -mt-1.5 focus-visible:outline-primary hidden lg:flex"><!--[--><!--[--><!--]--><span data-slot="title" class="truncate"><!--[-->On this page<!--]--></span><span data-slot="trailing" class="ms-auto inline-flex gap-1.5 items-center"><!--[--><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180 lg:hidden" aria-hidden="true" style="" data-slot="trailingIcon"></span><!--]--></span><!--]--></p><div data-slot="content" class="relative data-[state=open]:animate-[collapsible-down_200ms_ease-out] data-[state=closed]:animate-[collapsible-up_200ms_ease-out] overflow-hidden focus:outline-none hidden lg:flex"><!--[--><div data-slot="indicator" class="absolute ms-2.5 transition-[translate,height] duration-200 h-(--indicator-size) translate-y-(--indicator-position) w-px rounded-full" style=""><div data-slot="indicatorLine" class="hidden"></div><!----></div><!--[--><ul class="min-w-0 ms-2.5 ps-4 border-s border-default"><!--[--><li class="min-w-0 -ms-px"><a href="#data-model" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Data Model</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#commands" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Commands</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#upsert-a-catalog-entry" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Upsert a Catalog Entry</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#mark-a-task-active" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Mark a Task Active</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#accept-a-task" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Accept a Task</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#rewards" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Rewards</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#server-task-flows" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Server Task Flows</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#cad-compatibility" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">CAD Compatibility</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#bis-map-task-prerequisite" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">BIS Map Task Prerequisite</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#eden-modules" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Eden Modules</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#scripted-start-task" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Scripted Start Task</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#handler-calls" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Handler Calls</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#direct-task-calls" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Direct Task Calls</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#timer-semantics" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Timer Semantics</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#defuse-counter" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Defuse Counter</span><!--]--></a><!----></li><li class="min-w-0 -ms-px"><a href="#error-handling" data-slot="link" class="group relative text-sm flex items-center focus-visible:outline-primary py-1 text-muted hover:text-default transition-colors"><!--[--><span data-slot="linkText" class="truncate">Error Handling</span><!--]--></a><!----></li><!--]--></ul><!--]--><!--]--></div><!--]--><div data-slot="bottom" class="hidden lg:flex lg:flex-col gap-6 mt-6"><!--[--><!----><!--]--></div></div><!--]--></nav><!--]--><!----></div></div><!--]--><!--]--></div><!----></div><!--]--></div><!--]--></main><footer data-slot="root"><!----><div class="w-full max-w-(--ui-container) mx-auto px-4 sm:px-6 lg:px-8 py-8 lg:py-4 lg:flex lg:items-center lg:justify-between lg:gap-x-3" data-slot="container"><!--[--><div data-slot="right" class="lg:flex-1 flex items-center justify-center lg:justify-end gap-x-1.5 lg:order-3"><!--[--><!--[--><!--[--><!--[--><!--[--><a href="https://github.com/InnovativeDevSolutions/forge" rel="noopener noreferrer" target="_blank" aria-label="GitHub repository" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-xs gap-1.5 text-default hover:bg-elevated active:bg-elevated focus:outline-none focus-visible:bg-elevated hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent p-1.5"><!--[--><!--[--><span class="iconify i-simple-icons:github shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></a><!--]--><!--]--><!--]--><!--[--><!--[--><button type="button" aria-label="Switch to dark mode" data-slot="base" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-sm gap-1.5 text-default hover:bg-elevated active:bg-elevated focus:outline-none focus-visible:bg-elevated hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent p-1.5"><!--[--><!--[--><span class="iconify i-lucide:moon shrink-0 size-5 hidden dark:inline-block" aria-hidden="true" style=""></span><span class="iconify i-lucide:sun shrink-0 size-5 dark:hidden" aria-hidden="true" style=""></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--]--><!--]--><!--]--><!--]--></div><div data-slot="center" class="mt-3 lg:mt-0 lg:order-2 flex items-center justify-center"><!--[--><!--]--></div><div data-slot="left" class="flex items-center justify-center lg:justify-start lg:flex-1 gap-x-1.5 mt-3 lg:mt-0 lg:order-1"><!--[--><div class="text-sm text-muted"> Copyright © 2026</div><!--]--></div><!--]--></div><!----></footer></div><span></span><!--]--><!--]--><!--[--><!--]--><!--v-if--><!--]--><!--[--><!--]--><!--]--><!--]--></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{assistant:{enabled:false,apiPath:"/__docus__/assistant"},mdc:{components:{prose:true,map:{accordion:"ProseAccordion","accordion-item":"ProseAccordionItem",badge:"ProseBadge",callout:"ProseCallout",card:"ProseCard","card-group":"ProseCardGroup",caution:"ProseCaution","code-collapse":"ProseCodeCollapse","code-group":"ProseCodeGroup","code-icon":"ProseCodeIcon","code-preview":"ProseCodePreview","code-tree":"ProseCodeTree",collapsible:"ProseCollapsible",field:"ProseField","field-group":"ProseFieldGroup",icon:"ProseIcon",kbd:"ProseKbd",note:"ProseNote",steps:"ProseSteps",tabs:"ProseTabs","tabs-item":"ProseTabsItem",tip:"ProseTip",warning:"ProseWarning"},customElements:[]},headings:{anchorLinks:{h1:false,h2:true,h3:true,h4:true,h5:false,h6:false}},highlight:{noApiRoute:true,theme:{light:"material-theme-lighter",default:"material-theme",dark:"material-theme-palenight"},shikiEngine:"javascript",langs:["bash","diff","json","js","ts","html","css","vue","shell","mdc","md","yaml"],highlighter:"shiki"}},content:{wsUrl:""},"nuxt-robots":{version:"6.0.7",isNuxtContentV2:false,debug:false,credits:true,groups:[{userAgent:["*"],allow:["/"],disallow:[],contentUsage:[],contentSignal:[],_indexable:true,_rules:[{pattern:"/",allow:true}],_normalized:true}],sitemap:["/sitemap.xml"],header:true,robotsEnabledValue:"index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1",robotsDisabledValue:"noindex, nofollow",cacheControl:"max-age=14400, must-revalidate",botDetection:true,pageMetaRobots:{}},"nuxt-og-image":{defaults:{emojis:"noto",extension:"png",width:1200,height:600,cacheMaxAgeSeconds:259200},hasServerRuntime:true}},app:{baseURL:"/forge/",buildId:"3a1bf7b7-6f51-4d2c-9c98-142f71e69a9a",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="true" id="__NUXT_DATA__" data-src="/forge/server-modules/task/_payload.json?3a1bf7b7-6f51-4d2c-9c98-142f71e69a9a">[{"state":1,"once":16,"_errors":17,"serverRendered":5,"path":19,"prerenderedAt":20},["Reactive",2],{"$scolor-mode":3,"$sassistant-open":6,"$sassistant-expanded":6,"$sassistant-messages":7,"$sassistant-pending":-1,"$stoasts":8,"$ssite-config":9},{"preference":4,"value":4,"unknown":5,"forced":6},"system",true,false,[],[],{"_priority":10,"env":13,"name":14,"url":15},{"env":11,"url":12,"name":12},-15,-3,"production","forge-docus","https:\u002F\u002Finnovativedevsolutions.github.io",["Set"],["ShallowReactive",18],{"navigation_docs":-1,"search_docs":-1,"-server-modules-task":-1,"-server-modules-task-surround":-1},"\u002Fserver-modules\u002Ftask",1776806627742]</script></body></html>