[{"data":1,"prerenderedAt":1091},["ShallowReactive",2],{"docs-doc-en-packaging":3,"docs-list-en":994},{"doc":4,"locale":992,"available":993},{"id":5,"title":6,"body":7,"description":981,"extension":982,"group":983,"meta":984,"navigation":985,"order":264,"path":986,"section":987,"seo":988,"stem":989,"updated":990,"__hash__":991},"docs_zh\u002Fdocs\u002Fpackaging.md","打包安装包",{"type":8,"value":9,"toc":971},"minimark",[10,23,32,36,46,83,86,89,475,510,513,528,562,565,654,661,664,667,727,737,740,743,785,788,791,837,840,855,858,929,932,967],[11,12,13,14,18,19,22],"p",{},"星际枢纽把压缩包当作安装包处理：解压、校验清单、按清单把 ",[15,16,17],"code",{},"Maps\u002F","、",[15,20,21],{},"Mods\u002F"," 落到游戏目录。作者只需要把目录摆对、把清单写全，剩下的由应用自动完成。",[11,24,25,26,31],{},"本页讲怎么摆目录、怎么少踩坑。字段的完整定义在",[27,28,30],"a",{"href":29},"\u002Fdocs\u002Fscnexus-package","星际枢纽压缩包标准","，这里不重复列表。",[33,34,35],"h2",{"id":35},"目录结构",[37,38,44],"pre",{"className":39,"code":41,"language":42,"meta":43},[40],"language-text","MyProject.zip\n├─ package.json\n├─ Maps\u002F\n│  └─ MyProject\u002F\n│     ├─ Launcher.SC2Map      # 启动器地图\n│     ├─ Mission01.SC2Map\n│     └─ Mission02.SC2Map\n├─ Mods\u002F\n│  └─ MyProject.SC2Mod\n├─ images\u002F\n│  └─ cover.webp\n└─ docs\u002F\n   └─ README.md\n","text","",[15,45,41],{"__ignoreMap":43},[47,48,49,73,80],"ul",{},[50,51,52,53,56,57,59,60,63,64,67,68,72],"li",{},"清单固定叫 ",[15,54,55],{},"package.json","，放在压缩包根目录，且只能有一份。客户端只认 ",[15,58,55],{},"（星际枢纽标准）和 ",[15,61,62],{},"metadata.txt","（CCM 格式）两个名字，早年文档里的 ",[15,65,66],{},"metadata.json"," ",[69,70,71],"strong",{},"不会被读取","。",[50,74,75,18,77,79],{},[15,76,17],{},[15,78,21],{}," 是一组作品根目录，两者落在同一层。压缩包外面再套一层文件夹是可以的，应用会向下找到唯一那组；出现两套同级根目录时无法判断该装哪一套，直接判为不支持。",[50,81,82],{},"上传创意工坊时不要再套外层文件夹，根目录必须直接是清单。",[33,84,85],{"id":85},"清单最小写法",[11,87,88],{},"一个自制作品的最小完整清单如下，可以直接改字段名使用：",[37,90,94],{"className":91,"code":92,"language":93,"meta":43,"style":43},"language-json shiki shiki-themes material-theme-lighter github-light github-dark","{\n  \"name\": \"我的自制战役\",\n  \"description\": \"包含启动器和第一章的独立作品。\",\n  \"version\": \"1.0.0\",\n  \"author\": \"示例制作组\",\n  \"type\": \"customize\",\n  \"maps\": [\n    {\n      \"name\": \"Launcher.SC2Map\",\n      \"source_path\": \"\u002FMaps\u002FMyProject\u002FLauncher.SC2Map\"\n    },\n    {\n      \"name\": \"Mission01.SC2Map\",\n      \"source_path\": \"\u002FMaps\u002FMyProject\u002FMission01.SC2Map\"\n    }\n  ],\n  \"mods\": [\n    {\n      \"name\": \"MyProject.SC2Mod\",\n      \"source_path\": \"\u002FMods\u002FMyProject.SC2Mod\"\n    }\n  ],\n  \"launcher\": {\n    \"name\": \"Launcher.SC2Map\",\n    \"description\": \"作品主菜单\"\n  }\n}\n","json",[15,95,96,105,135,156,177,198,219,234,240,262,282,288,293,313,331,337,343,357,362,382,400,405,410,425,445,463,469],{"__ignoreMap":43},[97,98,101],"span",{"class":99,"line":100},"line",1,[97,102,104],{"class":103},"sP7_E","{\n",[97,106,108,112,116,119,122,126,130,132],{"class":99,"line":107},2,[97,109,111],{"class":110},"s39Yj","  \"",[97,113,115],{"class":114},"sseR_","name",[97,117,118],{"class":110},"\"",[97,120,121],{"class":103},":",[97,123,125],{"class":124},"sjJ54"," \"",[97,127,129],{"class":128},"s_sjI","我的自制战役",[97,131,118],{"class":124},[97,133,134],{"class":103},",\n",[97,136,138,140,143,145,147,149,152,154],{"class":99,"line":137},3,[97,139,111],{"class":110},[97,141,142],{"class":114},"description",[97,144,118],{"class":110},[97,146,121],{"class":103},[97,148,125],{"class":124},[97,150,151],{"class":128},"包含启动器和第一章的独立作品。",[97,153,118],{"class":124},[97,155,134],{"class":103},[97,157,159,161,164,166,168,170,173,175],{"class":99,"line":158},4,[97,160,111],{"class":110},[97,162,163],{"class":114},"version",[97,165,118],{"class":110},[97,167,121],{"class":103},[97,169,125],{"class":124},[97,171,172],{"class":128},"1.0.0",[97,174,118],{"class":124},[97,176,134],{"class":103},[97,178,180,182,185,187,189,191,194,196],{"class":99,"line":179},5,[97,181,111],{"class":110},[97,183,184],{"class":114},"author",[97,186,118],{"class":110},[97,188,121],{"class":103},[97,190,125],{"class":124},[97,192,193],{"class":128},"示例制作组",[97,195,118],{"class":124},[97,197,134],{"class":103},[97,199,201,203,206,208,210,212,215,217],{"class":99,"line":200},6,[97,202,111],{"class":110},[97,204,205],{"class":114},"type",[97,207,118],{"class":110},[97,209,121],{"class":103},[97,211,125],{"class":124},[97,213,214],{"class":128},"customize",[97,216,118],{"class":124},[97,218,134],{"class":103},[97,220,222,224,227,229,231],{"class":99,"line":221},7,[97,223,111],{"class":110},[97,225,226],{"class":114},"maps",[97,228,118],{"class":110},[97,230,121],{"class":103},[97,232,233],{"class":103}," [\n",[97,235,237],{"class":99,"line":236},8,[97,238,239],{"class":103},"    {\n",[97,241,243,246,249,251,253,255,258,260],{"class":99,"line":242},9,[97,244,245],{"class":110},"      \"",[97,247,115],{"class":248},"sZMiF",[97,250,118],{"class":110},[97,252,121],{"class":103},[97,254,125],{"class":124},[97,256,257],{"class":128},"Launcher.SC2Map",[97,259,118],{"class":124},[97,261,134],{"class":103},[97,263,265,267,270,272,274,276,279],{"class":99,"line":264},10,[97,266,245],{"class":110},[97,268,269],{"class":248},"source_path",[97,271,118],{"class":110},[97,273,121],{"class":103},[97,275,125],{"class":124},[97,277,278],{"class":128},"\u002FMaps\u002FMyProject\u002FLauncher.SC2Map",[97,280,281],{"class":124},"\"\n",[97,283,285],{"class":99,"line":284},11,[97,286,287],{"class":103},"    },\n",[97,289,291],{"class":99,"line":290},12,[97,292,239],{"class":103},[97,294,296,298,300,302,304,306,309,311],{"class":99,"line":295},13,[97,297,245],{"class":110},[97,299,115],{"class":248},[97,301,118],{"class":110},[97,303,121],{"class":103},[97,305,125],{"class":124},[97,307,308],{"class":128},"Mission01.SC2Map",[97,310,118],{"class":124},[97,312,134],{"class":103},[97,314,316,318,320,322,324,326,329],{"class":99,"line":315},14,[97,317,245],{"class":110},[97,319,269],{"class":248},[97,321,118],{"class":110},[97,323,121],{"class":103},[97,325,125],{"class":124},[97,327,328],{"class":128},"\u002FMaps\u002FMyProject\u002FMission01.SC2Map",[97,330,281],{"class":124},[97,332,334],{"class":99,"line":333},15,[97,335,336],{"class":103},"    }\n",[97,338,340],{"class":99,"line":339},16,[97,341,342],{"class":103},"  ],\n",[97,344,346,348,351,353,355],{"class":99,"line":345},17,[97,347,111],{"class":110},[97,349,350],{"class":114},"mods",[97,352,118],{"class":110},[97,354,121],{"class":103},[97,356,233],{"class":103},[97,358,360],{"class":99,"line":359},18,[97,361,239],{"class":103},[97,363,365,367,369,371,373,375,378,380],{"class":99,"line":364},19,[97,366,245],{"class":110},[97,368,115],{"class":248},[97,370,118],{"class":110},[97,372,121],{"class":103},[97,374,125],{"class":124},[97,376,377],{"class":128},"MyProject.SC2Mod",[97,379,118],{"class":124},[97,381,134],{"class":103},[97,383,385,387,389,391,393,395,398],{"class":99,"line":384},20,[97,386,245],{"class":110},[97,388,269],{"class":248},[97,390,118],{"class":110},[97,392,121],{"class":103},[97,394,125],{"class":124},[97,396,397],{"class":128},"\u002FMods\u002FMyProject.SC2Mod",[97,399,281],{"class":124},[97,401,403],{"class":99,"line":402},21,[97,404,336],{"class":103},[97,406,408],{"class":99,"line":407},22,[97,409,342],{"class":103},[97,411,413,415,418,420,422],{"class":99,"line":412},23,[97,414,111],{"class":110},[97,416,417],{"class":114},"launcher",[97,419,118],{"class":110},[97,421,121],{"class":103},[97,423,424],{"class":103}," {\n",[97,426,428,431,433,435,437,439,441,443],{"class":99,"line":427},24,[97,429,430],{"class":110},"    \"",[97,432,115],{"class":248},[97,434,118],{"class":110},[97,436,121],{"class":103},[97,438,125],{"class":124},[97,440,257],{"class":128},[97,442,118],{"class":124},[97,444,134],{"class":103},[97,446,448,450,452,454,456,458,461],{"class":99,"line":447},25,[97,449,430],{"class":110},[97,451,142],{"class":248},[97,453,118],{"class":110},[97,455,121],{"class":103},[97,457,125],{"class":124},[97,459,460],{"class":128},"作品主菜单",[97,462,281],{"class":124},[97,464,466],{"class":99,"line":465},26,[97,467,468],{"class":103},"  }\n",[97,470,472],{"class":99,"line":471},27,[97,473,474],{"class":103},"}\n",[47,476,477,495,500],{},[50,478,479,481,482,485,486,489,490,18,492,494],{},[15,480,269],{}," 是包内路径，以 ",[15,483,484],{},"\u002FMaps\u002F"," 或 ",[15,487,488],{},"\u002FMods\u002F"," 开头，对应压缩包里的 ",[15,491,17],{},[15,493,21],{}," 目录。",[50,496,497,499],{},[15,498,115],{}," 是带扩展名的资源名，启动器靠它引用地图，要和实际文件名大小写完全一致。",[50,501,502,503,506,507,509],{},"不写 ",[15,504,505],{},"target_path"," 时按 ",[15,508,269],{}," 落在游戏目录的同一位置；需要改名落地时才写。",[33,511,512],{"id":512},"用子目录隔开每个作品",[11,514,515,516,18,519,522,523,18,525,527],{},"把地图、模组都放进以作品命名的子目录（上例的 ",[15,517,518],{},"Maps\u002FMyProject\u002F",[15,520,521],{},"Mods\u002FMyProject.SC2Mod","），而不是直接摊在 ",[15,524,17],{},[15,526,21],{}," 根下。两个作品用了同名文件时，摊在根目录会互相覆盖，覆盖之后很难还原。",[11,529,530,531,534,535,538,539,534,542,538,545,534,548,551,552,538,555,534,558,561],{},"替换型战役反过来要放在官方识别的位置：",[15,532,533],{},"WOL"," 用 ",[15,536,537],{},"Maps\u002FCampaign\u002F","，",[15,540,541],{},"HOTS",[15,543,544],{},"Maps\u002FCampaign\u002Fswarm\u002F",[15,546,547],{},"LOTV",[15,549,550],{},"Maps\u002FCampaign\u002Fvoid\u002F"," 与 ",[15,553,554],{},"voidprologue\u002F",[15,556,557],{},"NCO",[15,559,560],{},"Maps\u002FCampaign\u002Fnova\u002F","。放错区域的地图不会被当成战役内容。",[33,563,564],{"id":564},"三种作品的差别",[566,567,568,584],"table",{},[569,570,571],"thead",{},[572,573,574,578,581],"tr",{},[575,576,577],"th",{},"类型",[575,579,580],{},"额外要求",[575,582,583],{},"典型内容",[585,586,587,614,632],"tbody",{},[572,588,589,595,611],{},[590,591,592],"td",{},[15,593,594],{},"campaign",[590,596,597,598,600,601,603,604,603,606,603,608,610],{},"必须填 ",[15,599,594],{},"（",[15,602,533],{}," \u002F ",[15,605,541],{},[15,607,547],{},[15,609,557],{},"），地图落在对应战役区域",[590,612,613],{},"覆盖官方战役的地图与模组",[572,615,616,620,629],{},[590,617,618],{},[15,619,214],{},[590,621,622,623,625,626,628],{},"建议声明 ",[15,624,417],{},"，指向 ",[15,627,226],{}," 里唯一一项",[590,630,631],{},"独立作品、单图、自定义战役",[572,633,634,639,651],{},[590,635,636],{},[15,637,638],{},"dependency",[590,640,641,642,18,644,18,646,18,648],{},"只写模组，不能写 ",[15,643,226],{},[15,645,594],{},[15,647,417],{},[15,649,650],{},"manager",[590,652,653],{},"多个作品共用的资源包",[11,655,656,657,660],{},"依赖包用于「先装一次、多个作品共用」的场景。它不会因为别的作品在 ",[15,658,659],{},"dependencies"," 里提到它就自动安装，玩家仍需单独导入安装。",[33,662,663],{"id":663},"图片与说明文档",[11,665,666],{},"封面、说明这类展示资料和安装无关，放在包根目录旁边即可：",[47,668,669,691,717],{},[50,670,671,672,675,676,679,680,683,684,683,687,690],{},"战役用 ",[15,673,674],{},"banner","，自制作品用 ",[15,677,678],{},"cover","；省略字段时客户端会按 ",[15,681,682],{},"cover.jpg"," → ",[15,685,686],{},"cover.png",[15,688,689],{},"cover.webp"," 的顺序在清单同级找。",[50,692,693,18,696,699,700,18,703,18,706,18,709,712,713,716],{},[15,694,695],{},"readme",[15,697,698],{},"changelog"," 省略时依次找 ",[15,701,702],{},"README.txt",[15,704,705],{},"README.md",[15,707,708],{},"readme.txt",[15,710,711],{},"readme.md"," 与对应的 ",[15,714,715],{},"CHANGELOG"," 名称。",[50,718,719,720,723,724,72],{},"文档里链接到的图片、另一个文档，必须写进 ",[15,721,722],{},"assets"," 白名单才会被保留，例如 ",[15,725,726],{},"\"assets\": [\"images\u002F**\", \"docs\u002F*.md\"]",[11,728,729,730,603,733,736],{},"图片接受 JPEG \u002F PNG \u002F WebP，单张不超过 8 MiB；文档只接受 UTF-8 的 ",[15,731,732],{},".md",[15,734,735],{},".txt","，单个不超过 1 MiB；附件合计不超过 256 个文件、64 MiB。",[33,738,739],{"id":739},"体积与路径",[11,741,742],{},"三条分发渠道的门槛不一样，先看清你要走哪条：",[566,744,745,755],{},[569,746,747],{},[572,748,749,752],{},[575,750,751],{},"渠道",[575,753,754],{},"体积",[585,756,757,769,777],{},[572,758,759,762],{},[590,760,761],{},"创意工坊",[590,763,764,765,768],{},"受",[69,766,767],{},"创作者额度","限制：默认每个版本包 ≤ 300 MB（300,000,000 字节），默认最多 5 个作品",[572,770,771,774],{},[590,772,773],{},"GitHub 安装源",[590,775,776],{},"不设体积上限，只要能推进仓库，客户端就照单取回",[572,778,779,782],{},[590,780,781],{},"本地导入",[590,783,784],{},"没有整体体积门槛，只看安装规划能不能算出来",[11,786,787],{},"额度是按创作者单独分配的，不是全站统一数值：需要更大空间可以向管理员申请，管理员会结合作品体积与存储压力酌情调整，实际数值以创作者中心显示为准。",[11,789,790],{},"结构调整检查对三条渠道一视同仁，都在解压前执行，且与作品大小无关：",[566,792,793,803],{},[569,794,795],{},[572,796,797,800],{},[575,798,799],{},"项目",[575,801,802],{},"上限",[585,804,805,813,821,829],{},[572,806,807,810],{},[590,808,809],{},"归档条目",[590,811,812],{},"≤ 50 000",[572,814,815,818],{},[590,816,817],{},"解压后总量",[590,819,820],{},"≤ 4 GiB",[572,822,823,826],{},[590,824,825],{},"单个路径层级",[590,827,828],{},"≤ 32 段",[572,830,831,834],{},[590,832,833],{},"清单文件",[590,835,836],{},"≤ 128 KiB",[11,838,839],{},"下面这些一律会被拒绝：",[47,841,842,849,852],{},[50,843,844,845,848],{},"绝对路径、盘符、",[15,846,847],{},"..","，以及越出安装目录的路径。",[50,850,851],{},"两个只差大小写的同名文件。",[50,853,854],{},"靠符号链接把包外文件带进安装范围。",[33,856,857],{"id":857},"常见问题",[566,859,860,870],{},[569,861,862],{},[572,863,864,867],{},[575,865,866],{},"现象",[575,868,869],{},"原因",[585,871,872,885,897,905,919],{},[572,873,874,877],{},[590,875,876],{},"提示清单不存在或不支持",[590,878,879,880,882,883],{},"清单不在根目录、文件名不是 ",[15,881,55],{},"，或误用了 ",[15,884,66],{},[572,886,887,890],{},[590,888,889],{},"提示资源缺失",[590,891,892,603,894,896],{},[15,893,226],{},[15,895,350],{}," 里声明的文件在包里找不到，或大小写、相对路径写错",[572,898,899,902],{},[590,900,901],{},"提示目标冲突",[590,903,904],{},"两个资源落到同一个目标，或文件与目录互相覆盖",[572,906,907,910],{},[590,908,909],{},"安装后启动不了",[590,911,912,915,916,918],{},[15,913,914],{},"launcher.name"," 没有精确匹配 ",[15,917,226],{}," 中唯一一项，或地图引用的模组没跟着装",[572,920,921,924],{},[590,922,923],{},"图片或说明不显示",[590,925,926,927],{},"显式路径写错时不会回退探测；文档链接到的附件没进 ",[15,928,722],{},[33,930,931],{"id":931},"自检清单",[933,934,935,946,955,958,964],"ol",{},[50,936,937,938,18,940,942,943,945],{},"压缩包里只有一组 ",[15,939,17],{},[15,941,21],{},"，且 ",[15,944,55],{}," 在根部。",[50,947,948,951,952,72],{},[15,949,950],{},"maps[].name"," 与实际文件名大小写完全一致，扩展名是 ",[15,953,954],{},".SC2Map",[50,956,957],{},"战役包的地图放在对应战役区域，没有混入别的战役目录。",[50,959,960,961,963],{},"依赖的模组要么在 ",[15,962,21],{}," 里，要么单独做成依赖包并在作品说明里告知玩家。",[50,965,966],{},"在「战役管理」或「自制作品」里导入自己打的包，核对分析结果、目标路径，再实际启动走一遍，然后对外发布。",[968,969,970],"style",{},"html pre.shiki code .sP7_E, html code.shiki .sP7_E{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s39Yj, html code.shiki .s39Yj{--shiki-light:#39ADB5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sseR_, html code.shiki .sseR_{--shiki-light:#9C3EDA;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sjJ54, html code.shiki .sjJ54{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .s_sjI, html code.shiki .s_sjI{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sZMiF, html code.shiki .sZMiF{--shiki-light:#E2931D;--shiki-default:#005CC5;--shiki-dark:#79B8FF}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);}",{"title":43,"searchDepth":137,"depth":137,"links":972},[973,974,975,976,977,978,979,980],{"id":35,"depth":107,"text":35},{"id":85,"depth":107,"text":85},{"id":512,"depth":107,"text":512},{"id":564,"depth":107,"text":564},{"id":663,"depth":107,"text":663},{"id":739,"depth":107,"text":739},{"id":857,"depth":107,"text":857},{"id":931,"depth":107,"text":931},"把编辑器产出的地图、模组与 package.json 组织成一个能被星际枢纽自动识别并安装的压缩包。","md","usage",{},true,"\u002Fdocs\u002Fpackaging","editor",{"title":6,"description":981},"docs\u002Fpackaging","2026-11-01","n5GIFSxsDBYP5h2ud3y-fXOolz-0Y4r7wuz7QRHzIJE","zh-CN",[992],[995,1000,1006,1011,1015,1016,1019,1023,1027,1031,1036,1040,1045,1050,1055,1060,1065,1070,1075,1080,1086],{"path":996,"title":997,"description":998,"order":100,"group":999,"section":987,"contentLocale":992},"\u002Fdocs\u002Feditor","创作流程概览","从在《星际争霸II》编辑器中制作，到打包、分发与更新，说明星际枢纽在创作流程里承担的环节。","start",{"path":1001,"title":1002,"description":1003,"order":100,"group":999,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Foverview","Getting started","SCNexus is a hub app built for the StarCraft community","app","en",{"path":1007,"title":1008,"description":1009,"order":100,"group":1010,"section":1010,"contentLocale":1005},"\u002Fdocs\u002Freference","Overview","The packaging and source conventions that importing, installing and distributing content depends on.","reference",{"path":1012,"title":1013,"description":1014,"order":264,"group":983,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Fcampaign","Campaign management","Import your own campaigns into the library, activate them in the game, and restore the official campaigns at any time",{"path":986,"title":6,"description":981,"order":264,"group":983,"section":987,"contentLocale":992},{"path":29,"title":1017,"description":1018,"order":264,"group":1010,"section":1010,"contentLocale":1005},"SCNexus package standard","Directory layout, package.json manifest fields, map and mod resource declarations, and how launchers and bundled documents are written for SCNexus work packages.",{"path":1020,"title":1021,"description":1022,"order":384,"group":1010,"section":1010,"contentLocale":1005},"\u002Fdocs\u002Fccm-package","CCM package standard","How CCM describes a campaign in metadata.txt, the key-value format, the directory layout and install targets, and how SCNexus reads these packages.",{"path":1024,"title":1025,"description":1026,"order":384,"group":983,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Fcustomize","Custom content","Install maps and mods straight into the game, then pick a launcher map and start in one click",{"path":1028,"title":1029,"description":1030,"order":384,"group":983,"section":987,"contentLocale":992},"\u002Fdocs\u002Ftoolbox","创作工具 · 编码转换","把中文等非 ASCII 文本转成 Galaxy 代码里可用的转义写法，可选直接转码、字符串、文本与触发调试四种输出。",{"path":1032,"title":1033,"description":1034,"order":1035,"group":1010,"section":1010,"contentLocale":1005},"\u002Fdocs\u002Fgithub-source","GitHub source standard","The manifest and structural requirements a public GitHub repository has to meet to serve as an install source, and how addresses and branches are written.",30,{"path":1037,"title":1038,"description":1039,"order":1035,"group":983,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Fweekly-mutations","Weekly mutations","This week's mutation map, mutators and community rating, plus the full mutator reference",{"path":1041,"title":1042,"description":1043,"order":1044,"group":983,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Freplays","Replays","Index replays by StarCraft profile and replay type, with duplicate detection, bulk export and match data",40,{"path":1046,"title":1047,"description":1048,"order":1049,"group":983,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Fworkshop","Workshop","Browse community works, open their details and download reviewed releases",50,{"path":1051,"title":1052,"description":1053,"order":1054,"group":983,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Fcreator","Creator center and uploads","Create works, maintain their details, upload new versions and track upload tasks",60,{"path":1056,"title":1057,"description":1058,"order":1059,"group":983,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Fdownloads","Downloads","Fetch content from GitHub or the Workshop, then install it once you have checked it",70,{"path":1061,"title":1062,"description":1063,"order":1064,"group":983,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Ftools","Creation tools","Local helpers such as the encoding converter; input is never uploaded or stored",80,{"path":1066,"title":1067,"description":1068,"order":1069,"group":983,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Fai-assistant","Smart Assistant","A controlled MCP service connecting local data to AI clients on the same machine",90,{"path":1071,"title":1072,"description":1073,"order":1074,"group":983,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Faccount","Account and personal center","Signing in, your profile and level progression, and setting up and maintaining two-step verification",100,{"path":1076,"title":1077,"description":1078,"order":1079,"group":983,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Fsettings","Settings","Language, game directories, feature switches and logging privacy, tab by tab",110,{"path":1081,"title":1082,"description":1083,"order":1084,"group":1085,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Fcontributing","Contributing","How to contribute to SCNexus: where the repositories live, how to set up a development environment, what to run before submitting, the code and documentation conventions, the code of conduct, and how to report security issues.",200,"contribute",{"path":1087,"title":1088,"description":1089,"order":1090,"group":1085,"section":1004,"contentLocale":1005},"\u002Fdocs\u002Flocalization","Translating the interface","Where the interface translation files live, how keys are named, how to submit changes, how to verify them locally, and what adding a language touches.",210,1793550744913]