Hacknet-Extension-Tutorial


commit
3a9914c
parent
2e2e96b
author
FBIK.
date
2025-10-18 03:33:36 +0000 UTC
Merge pull request #11 from maix2012/main

重新支持&ExtensionInfo
3 files changed,  +135, -8
M Content/Extension.md
+5, -2
 1@@ -1,6 +1,9 @@
 2 # Extension
 3 
 4-扩展内容通过类型可以大致分为10个部分, 这些部分别是:  
 5+
 6+
 7+扩展内容通过类型可以大致分为11个部分, 这些部分别是:  
 8+- [ExtensionInfo](./ExtensionInfo.md) (扩展信息)
 9 - [Actions](./Actions.md) (行为) 
10 - [Factions](./Faction.md) (阵营)
11 - [HackerScripts](./HackerScripts.md) 黑客脚本, 用于描述黑客行为 
12@@ -15,4 +18,4 @@
13 在编写扩展的过程中, 你还需要了解以下知识:
14 - HacknetOS 游戏中的不同状态以及部分运行逻辑
15 - Function (函数) 
16-- 自替换占位符 在扩展的执行时会自行替换为相应特殊内容的字符
17+- 自替换占位符(如:#SSH_CRACK# 在扩展的执行时会自行替换为相应特殊内容的字符)
A Content/ExtensionInfo.md
+124, -0
  1@@ -0,0 +1,124 @@
  2+# 新增 Hacknet ExtensionInfo.xml 使用文档
  3+
  4+## 概述
  5+
  6+ExtensionInfo.xml是Hacknet扩展的核心配置文件,定义了扩展的基本属性、启动设置、资源引用等关键信息。
  7+
  8+## 基本结构
  9+
 10+```xml
 11+<HacknetExtension>
 12+  <!-- 配置项 -->
 13+</HacknetExtension>
 14+```
 15+
 16+## 主要配置项详解
 17+
 18+### 1. 语言设置
 19+```xml
 20+<Language>zh-cn</Language>
 21+```
 22+- 设置扩展的语言
 23+- 支持的语言:英语(en-us)、德语(de-de)、法语(fr-be)、俄语(ru-ru)、西班牙语(es-ar)、韩语(ko-kr)、日语(ja-jp)、简体中文(zh-cn)
 24+
 25+### 2. 基本信息
 26+```xml
 27+<Name>IntroExtension</Name>
 28+<AllowSaves>true</AllowSaves>
 29+```
 30+- **Name**: 扩展名称(最大128字符)
 31+- **AllowSaves**: 是否允许保存游戏进度
 32+
 33+### 3. 启动设置
 34+```xml
 35+<StartingVisibleNodes>advExamplePC</StartingVisibleNodes>
 36+<StartingMission>Missions/Intro/IntroMission1.xml</StartingMission>
 37+<StartingActions>Actions/StartingActions.xml</StartingActions>
 38+```
 39+- **StartingVisibleNodes**: 初始可见节点(逗号分隔)
 40+- **StartingMission**: 玩家启动时加载的任务
 41+- **StartingActions**: 新会话创建时加载的条件动作集
 42+
 43+### 4. 描述信息
 44+```xml
 45+<Description>——介绍扩展——
 46+这个示例扩展将教授构建Hacknet扩展的基础知识。
 47+描述可以是多行,所以,我们已经在学习了!</Description>
 48+```
 49+- 在Hacknet中显示的扩展描述
 50+- 支持多行文本
 51+
 52+### 5. 派系设置
 53+```xml
 54+<Faction>Factions/ExampleFaction.xml</Faction>
 55+<Faction>Factions/IntroFaction.xml</Faction>
 56+```
 57+- 定义扩展中涉及的派系
 58+- 可以定义任意数量的派系
 59+
 60+### 6. 教程和启动设置
 61+```xml
 62+<StartsWithTutorial>False</StartsWithTutorial>
 63+<HasIntroStartup>true</HasIntroStartup>
 64+```
 65+- **StartsWithTutorial**: 是否以教程开始
 66+- **HasIntroStartup**: 是否使用标准重启启动序列
 67+
 68+### 7. 主题和音乐
 69+```xml
 70+<StartingTheme>Themes/ExampleTheme.xml</StartingTheme>
 71+<IntroStartupSong>The_Quickening</IntroStartupSong>
 72+```
 73+- **StartingTheme**: 初始主题文件路径
 74+- **IntroStartupSong**: 启动音乐(原版游戏歌曲名或自定义.ogg文件路径)
 75+
 76+### 8. 扩展序列器设置 (主线末尾的Sequencer.exe)
 77+```xml
 78+<SequencerTargetID>advExamplePC</SequencerTargetID>
 79+<SequencerSpinUpTime>10.5</SequencerSpinUpTime>
 80+<SequencerFlagRequiredForStart>testFlag</SequencerFlagRequiredForStart>
 81+<ActionsToRunOnSequencerStart>Actions/ThemeSwapActions.xml</ActionsToRunOnSequencerStart>
 82+```
 83+- **SequencerTargetID**: 序列器目标计算机ID
 84+- **SequencerSpinUpTime**: 序列器启动时间(秒)
 85+- **SequencerFlagRequiredForStart**: 启动序列器所需的Faction(派系,如:CSEC)等级
 86+- **ActionsToRunOnSequencerStart**: 序列器启动时运行的Action(动作)文件
 87+
 88+### 9. Steam Workshop设置
 89+```xml
 90+<WorkshopDescription>扩展描述(最多8000字符)</WorkshopDescription>
 91+<WorkshopLanguage>English</WorkshopLanguage>
 92+<WorkshopVisibility>2</WorkshopVisibility>
 93+<WorkshopTags>Extension</WorkshopTags>
 94+<WorkshopPreviewImagePath>WorkshopLogo.png</WorkshopPreviewImagePath>
 95+<WorkshopPublishID>NONE</WorkshopPublishID>
 96+```
 97+- **WorkshopDescription**: Steam Workshop描述
 98+- **WorkshopLanguage**: Workshop语言
 99+- **WorkshopVisibility**: 可见性(0=公开,1=仅好友,2=私有)
100+- **WorkshopTags**: 标签(逗号分隔)
101+- **WorkshopPreviewImagePath**: 预览图片路径(必须为正方形,小于1MB)
102+- **WorkshopPublishID**: 发布ID(首次发布后自动填充)
103+
104+## 使用建议
105+
106+1. **路径引用**: 所有文件路径都相对于扩展根目录
107+2. **音乐文件**: 可以引用原版游戏音乐或自定义.ogg文件
108+3. **主题文件**: 支持基础主题名称或自定义主题文件
109+4. **Workshop发布**: 首次发布前WorkshopPublishID应为"NONE"
110+
111+## 示例配置
112+
113+```xml
114+<HacknetExtension>
115+  <Language>zh-cn</Language>
116+  <Name>我的扩展</Name>
117+  <AllowSaves>true</AllowSaves>
118+  <StartingMission>Missions/MyMission.xml</StartingMission>
119+  <Description>这是我的第一个Hacknet扩展</Description>
120+  <Faction>Factions/MyFaction.xml</Faction>
121+  <StartingTheme>Themes/MyTheme.xml</StartingTheme>
122+</HacknetExtension>
123+```
124+
125+## 文件结构参考
M README.md
+6, -6
 1@@ -1,10 +1,10 @@
 2-# ~Hacknet-Extension-Tutorial~
 3+# Hacknet-Extension-Tutorial
 4 
 5-# ⚠已弃用。
 6+# ✅重新支持
 7 > [!WARNING]\
 8-> 此项目已弃用。这个教程混合了教程与规范。我打算将规范的工作交给一个标准,然后重新设计更引导式,更有互动的教程。
 9+> 此项目被弃用,但是由Vert重新支持。
10 >
11-> 如果你在阅读中发现内容有缺有误,是正常现象,欢迎创建 [issues](https://github.com/FBIKdot/Hacknet-Extension-Tutorial/issues)。
12+> 我们在此说明,由于仓库作者个人时间有限,目前该项目已进入低维护状态。我们深知这可能会影响您的使用体验,并对此表示诚挚的歉意。为确保您能顺利使用,建议您结合下方的官方文档和社区资源进行参考。感谢您的理解与支持。
13 > 
14 > 标准:[hnxml](https://hnxml.js.org)(开发中)
15 > 
16@@ -18,9 +18,9 @@
17 
18 如果你觉得这个文档有意义, 可以`Stars`一下.
19 
20-这个教程将持续维护, 如果你发现任何不足, 欢迎创建[`Issues`](https://github.com/BovineBeta/Hacknet-Extension-Tutorial/issues)或者[`Pull Request`](https://github.com/BovineBeta/Hacknet-Extension-Tutorial/pulls).
21 
22-文档编写进度表: [Github Projects](https://github.com/users/BovineBeta/projects/2)
23+
24+
25 
26 # Get Start
27