Hacknet-Extension-Tutorial


commit
c92fcea
parent
678e4e3
author
FBIK
date
2023-01-18 06:05:28 +0000 UTC
Merge pull request #6 from Asgore-Dreemur/main

更新HackerScripts
4 files changed,  +79, -37
R Tutorial.md => Content/Actions.md
+10, -36
  1@@ -1,29 +1,4 @@
  2-# Hacknet-Extension-Tutorial-Content
  3-
  4-## 前言  
  5-Hacknet目前有很多的扩展,其中优秀的也有很多,也有一些比较烂的  
  6-但不管怎样,他们都尝试了编写自己的扩展,尝试为Hacknet社区出一份力  
  7-目前也有很多的人想要写扩展,可国内资料匮乏,国外缺少翻译,这是一大问题  
  8-为了解决这个问题,我们创建了这个仓库,用来尝试着完善教程,我们知道这会很难,但我们愿意尝试。
  9-
 10-## 正文 
 11-好,那么这里,我们就开始正式地开始此教程  
 12-本教程通过扩展目录结构分为11个部分,这些目录分别是:  
 13-- Actions 实现游戏中的各种操作,各种对话,各种特效等  
 14-- Factions 多个Action的集合,可实现比如CSEC任务数据库中最后一个任务的锁定  
 15-- Docs 一些文本内容,如el论坛的帖子  
 16-- HackerScripts 黑客脚本,用来实现例如原版中naix的反击等  
 17-- Missions 任务,在Hacknet中,每一个邮件都是一个任务  
 18-- Music 扩展的音乐资源
 19-- Nodes 扩展中存在的节点定义
 20-- People 人口,用于在通用医疗,国际学术数据库和死亡人员数据库中添加人员数据
 21-- Themes 扩展自定义的Theme,也就是x-server.sys
 22-- Web 用于Web服务器节点的html,css文件等  
 23-
 24-虽然存在11个文件夹,但实际上,只有Actions,Factions,Missions,HackerScripts和Nodes存在扩展代码,其余均为资源  
 25-Docs,Music,People,Themes,Web不会单独拿出来单独讲解,仅在其他的代码编写中需要时提及  
 26-
 27-### Actions
 28+# Actions  
 29 Actions可以实现例如DHS中的对话,DLC中Coel的破坏白名单等,它实现游戏的各种特效,是一个优秀的扩展不可或缺的一部分  
 30 Actions中可以有多个Action,使用相对路径调用  
 31 一个Action的结构大概如下:  
 32@@ -51,7 +26,7 @@ Actions中可以有多个Action,使用相对路径调用
 33 - DelayHost 因Hacknet的特性,Action延迟需要一个节点帮助,这个节点就是DelayHost,需要有FastActionHost守护线程,该属性为节点ID
 34 - Delay 延迟时间
 35 
 36-#### AddIRCMessage
 37+## AddIRCMessage
 38 作用:在指定IRC频道发送消息  
 39 属性:
 40 - Author 信息的发送人
 41@@ -60,7 +35,7 @@ Actions中可以有多个Action,使用相对路径调用
 42 
 43 两个标签中间是要发送的消息  
 44 
 45-#### LaunchHackScript
 46+## LaunchHackScript
 47 作用:启动黑客脚本  
 48 属性:
 49 - Filepath 黑客脚本位置
 50@@ -71,7 +46,7 @@ Actions中可以有多个Action,使用相对路径调用
 51 
 52 这是一个自闭合标签,可以被延迟  
 53 
 54-#### SwitchToTheme
 55+## SwitchToTheme
 56 作用:更改玩家的主题  
 57 属性:
 58 - ThemePathOrName 主题的路径或者是名字
 59@@ -79,14 +54,14 @@ Actions中可以有多个Action,使用相对路径调用
 60 
 61 这是一个自闭合标签
 62 
 63-#### AddConditionalActions
 64+## AddConditionalActions
 65 作用:在Action中执行另一个Action  
 66 属性:
 67 - Filepath Action文件路径
 68 
 69 这是一个自闭合标签
 70 
 71-#### AddAsset
 72+## AddAsset
 73 作用:向指定节点添加文件  
 74 属性:
 75 - FileName 要添加的文件名字
 76@@ -96,7 +71,7 @@ Actions中可以有多个Action,使用相对路径调用
 77 
 78 这是一个自闭合标签  
 79 
 80-#### StartScreenBleedEffect
 81+## StartScreenBleedEffect
 82 作用:开启红屏效果,也就是被追踪,要ISP改IP时的效果和最后删Entech文件的效果  
 83 属性:
 84 - AlertTitle 红屏标题
 85@@ -105,16 +80,15 @@ Actions中可以有多个Action,使用相对路径调用
 86 
 87 两个标签中的内容为红屏后左下角的提示,最多只能有三行,可以被延迟  
 88 
 89-#### CancelScreenBleedEffect
 90+## CancelScreenBleedEffect
 91 作用:关闭红屏效果  
 92 属性:无特殊属性  
 93 
 94 这是一个自闭合标签,可以被延迟  
 95 
 96-#### KillExe
 97+## KillExe
 98 作用:终止某个exe进程  
 99 属性:
100 - ExeName 要结束的exe名字  
101 
102-这是一个自闭合标签,可以被延迟  
103-
104+这是一个自闭合标签,可以被延迟  
A Content/HackerScripts.md
+44, -0
 1@@ -0,0 +1,44 @@
 2+# HackerScripts
 3+HackerScript用来模拟别的黑客的反击,如naix  
 4+这是一个HackerScript的例子:  
 5+```
 6+config playerComp advExamplePC 0.2 $#%#$
 7+connect $#%#$
 8+delay 3.3 $#%#$
 9+openPort 22 $#%#$
10+delay 1.3 $#%#$
11+openPort 21 $#%#$
12+delay 1.3 $#%#$
13+openPort 80 $#%#$
14+disconnect $#%#$
15+```   
16+在这个HackerScript中,第一行使用了```config playerComp advExamplePC 0.2 $#%#$```,它用来初始化这个HackerScript,这一行,指定了目标,源电脑,延迟,它的用法如下:  
17+`config [目标电脑ID] [源电脑ID] [每一行执行的延迟] $#%#$`  
18+ps:`$#%#$` 是必须的,用来在后面的代码中指定攻击属性,它必须为`$#%#$`,否则无效  
19+后面就可以使用代码来实现功能,但必须在每一行后加上`$#%#$`,参数之间用空格分隔  
20+目前可用的功能有:
21+- connect 不需要任何额外参数,表示从源电脑向目标电脑建立连接
22+- delay 用来延迟一段时间,有一个参数是延迟时间,单位为秒
23+- openPort 打开目标电脑的端口,有一个参数,指的是要开启的端口
24+- writel 在目标电脑终端中输出字符并换行,有一个参数,指的是要输出的字符串
25+- clearTerminal 清屏目标电脑终端,无额外参数
26+- hideNetMap 隐藏目标电脑的netmap网络地图,无额外参数
27+- hideRam 隐藏目标电脑的RAM区域,无额外参数
28+- hideDisplay 隐藏目标电脑的显示Display区域,无额外参数
29+- hideTerminal 隐藏目标电脑的终端,无额外参数
30+- showNetMap 显示目标电脑的netmap网络地图,无额外参数
31+- showRam 显示目标电脑的RAM区域,无额外参数
32+- showDisplay 显示目标电脑的显示Display区域,无额外参数
33+- showTerminal 显示目标电脑的终端,无额外参数
34+- trackseq 为目标电脑加flag,如果有CSEC flag并且没有防御成功forkbomb,则进入紧急恢复模式(不会启动forkbomb),无额外参数
35+- instanttrace 立即使目标电脑进入紧急恢复模式
36+- forkbomb 为目标电脑执行forkbomb
37+- flash 让目标电脑的UI闪烁一下,无额外参数
38+- delete 删除目标电脑上的文件,有两个参数,目标文件所在路径和目标文件名
39+- setAdminPass 设置目标电脑上的管理员密码,有一个参数,是要设定的新管理员密码
40+- makeFile 在目标电脑上新建一个文件,有三个参数:1.要创建的文件所在目录,要创建的文件名,文件内容
41+- openCDTray 打开目标电脑的光驱,无额外参数
42+- closeCDTray 关闭目标电脑上的光驱,无额外参数
43+- disconnect 断开目标电脑,无额外参数
44+- write 在目标电脑终端中输出字符,但不换行,有一个参数,指的是要输出的字符串
45+- writel_silent 在目标电脑终端中输出字符并换行,但不会使目标UI变红闪烁一下,有一个参数,指的是要输出的字符串
A Content/README.md
+24, -0
 1@@ -0,0 +1,24 @@
 2+# Hacknet-Extension-Tutorial-Content
 3+
 4+## 前言  
 5+Hacknet目前有很多的扩展,其中优秀的也有很多,也有一些比较烂的  
 6+但不管怎样,他们都尝试了编写自己的扩展,尝试为Hacknet社区出一份力  
 7+目前也有很多的人想要写扩展,可国内资料匮乏,国外缺少翻译,这是一大问题  
 8+为了解决这个问题,我们创建了这个仓库,用来尝试着完善教程,我们知道这会很难,但我们愿意尝试。
 9+
10+## Get Started  
11+好,那么这里,我们就正式地开始此教程  
12+本教程通过扩展目录结构分为11个部分,这些目录分别是:  
13+- [Actions](./Actions.md) 实现游戏中的各种操作,各种对话,各种特效等  
14+- Factions 多个Action的集合,可实现比如CSEC任务数据库中最后一个任务的锁定  
15+- Docs 一些文本内容,如el论坛的帖子  
16+- [HackerScripts](./HackerScripts.md) 黑客脚本,用来实现例如原版中naix的反击等  
17+- Missions 任务,在Hacknet中,每一个邮件都是一个任务  
18+- Music 扩展的音乐资源
19+- Nodes 扩展中存在的节点定义
20+- People 人口,用于在通用医疗,国际学术数据库和死亡人员数据库中添加人员数据
21+- Themes 扩展自定义的Theme,也就是x-server.sys
22+- Web 用于Web服务器节点的html,css文件等  
23+
24+虽然存在11个文件夹,但实际上,只有Actions,Factions,Missions,HackerScripts和Nodes存在扩展代码,其余均为资源  
25+Docs,Music,People,Themes,Web不会单独拿出来单独讲解,仅在其他的代码编写中需要时提及  
M README.md
+1, -1
1@@ -3,7 +3,7 @@
2 ## 介绍
3 这是一个Hacknet扩展教程仓库,我们的目标是完善目前的Hacknet扩展教程,做到不漏掉任何一个Hacknet特性  
4 目前的Hacknet扩展教程并不很完善,所以我们创建了这个项目,希望完成它  
5-正式教程在本仓库下的Tutorial.md  
6+正式教程在本仓库下的Content文件夹下  
7 ## 作者 & 特别鸣谢
8 目前此教程的作者都有:ZQG,Bit和FBIK  
9 特别鸣谢: