3DMGAME论坛

标题: PapyrusUtil SE - MOD制作者脚本工具函数(2026-08-30更新) [打印本页]

作者: 鼓掌之间    时间: 2025-11-26 10:59
标题: PapyrusUtil SE - MOD制作者脚本工具函数(2026-08-30更新)
本帖最后由 鼓掌之间 于 2026-8-30 18:16 编辑

转自:https://www.nexusmods.com/skyrimspecialedition/mods/13048

一款SKSE插件,新增多个含原生函数的脚本,为脚本编写者/MOD制作者提供数据存储及其他各类便捷功能。

本版本适用于《上古卷轴5:特别版》(Skyrim Special Edition)
原版MOD下载地址:[此处](Get the original version here)

重要提示
若你使用的《天际》版本为1.6及以上,**必须**安装PapyrusUtil的周年纪念版(AE)及对应版本的地址库(Address Library)。无论你是否拥有周年纪念版(AE)DLC,只要游戏版本高于1.5.97,均视为AE版本。

请确保你的地址库(Address Library)和SKSE64已更新至最新版本。

一如既往,请避免其他MOD用旧版本覆盖本MOD的最新版本(例如Simply Knock、Campfire、Wearable Lanterns等知名MOD可能存在此问题)。

若仍出现报错,尝试从Steam或直接运行默认《天际》启动器(主目录下的SkyrimSELauncher.exe)一次,之后再通过SKSE或MOD管理器启动游戏。

最新版本仅兼容Steam平台最新游戏版本(当前为v1.6.1170),其他版本暂不支持,需下载与你游戏版本匹配的旧版PapyrusUtil。

若你使用的是GOG版本《天际》(版本号1.6.1179),请安装GOG专属版本。

---

目录
1. MOD描述
2. 前置需求
3. 安装说明
4. 卸载说明
5. 更新说明
6. 兼容性与问题
7. 致谢名单
8. 更新日志

---

1. MOD描述
一款SKSE插件,支持通过Papyrus脚本在任意表单(form)或全局范围内存储任意数量的整数(int)、浮点数(float)、表单(form)和字符串(string)数据,同时支持上述数据类型的列表(lists)存储。这些数据可被任意MOD调用,实现便捷的动态兼容性。

核心脚本文件功能:
- PapyrusUtil.psc:版本检测与变量初始化数组功能
- StorageUtil.psc:在表单上存储变量及数据列表,可通过“表单+变量名”作为键值读取数据(详见脚本文件内文档说明)
- JsonUtil.psc:功能与StorageUtil.psc类似,但数据存储至自定义外部.json文件(而非表单),支持游戏外自定义修改,且与用户存档文件独立存储
- MiscUtil.psc:提供各类杂项命令
- ActorUtil.psc:角色行为包(Actor package)覆盖功能

---

2. 前置需求
- SKSE特别版/周年纪念版(SKSE SE/AE)2.2.6及以上:http://skse.silverlock.org/
- SKSE插件地址库(Address Library for SKSE Plugins):https://bbs.3dmgame.com/thread-6549645-1-1.html


---

3. 安装说明
使用MOD管理器安装,或手动解压文件至对应目录。

---

4. 卸载说明
删除安装步骤中添加的所有文件。

---

5. 更新说明
直接覆盖所有旧文件即可。

---

6. 兼容性与问题
理论上兼容所有MOD。

---

7. 致谢名单
- exiledviper:原版插件的持续维护与代码重构
- meh321:原版作者、创意提出者、地址库适配
- SKSE开发团队:插件实现的核心基础支持
- milzschnitte:功能建议提供
- eventHandler、Expired、aers、arha、ianpatt:SKSE64适配与更新协助

---

8. 更新日志
4.6 AE/SE - 2024年1月18日
- 适配SKSE64 AE/SE 2.2.6及《天际》1.6.1170版本

4.5 AE/SE - 2023年12月5日
- 适配SKSE64 AE/SE 2.2.4及《天际》1.6.1130版本

4.4 AE/SE - 2022年1月7日
- 适配SKSE AE 2.2.2版本
- 在StorageUtil和JsonUtil中新增ListRandom()函数
- 修复部分漏洞

4.3 AE/SE - 2022年1月7日
- 适配SKSE AE 2.1.5版本

4.2 AE/SE - 2021年12月14日
- 适配SKSE AE 2.1.4版本

4.1 AE/SE - 2021年11月23日
- 适配SKSE AE 2.1.3版本
- 适配最新版地址库

4.0 AE/SE - 2021年11月19日
- 适配SKSE AE 2.1.2版本
- 在PapyrusUtil.psc中新增RemoveDupe()、GetDiff()、GetMatching()函数
- 修复JsonUtil在关联插件卸载时返回错误表单值的问题

3.9 SE - 2020年2月4日
- 修复从协同存档(co-save)加载FF分配表单的问题
- 将日志文件路径变更为:我的文档/我的游戏/天际特别版/SKSE/PapyrusUtilDev.log

3.8 SE - 2019年11月22日
- 适配SKSE 2.0.17版本
- 修复ESL文件表单处理逻辑

3.7b SE - 2019年6月17日
- 适配SKSE64 SE 2.0.16版本

3.7 SE - 2019年3月19日
- 适配SKSE 2.0.13-15版本
- 在MiscUtil中新增FoldersInFolder()函数

3.6b SE - 2018年9月10日
- 适配SKSE64 SE 2.0.11版本

3.6 SE - 2018年9月10日
- 适配SKSE64 SE 2.0.9/2.0.10版本

3.5 SE - 2018年9月10日
- 适配SKSE64 SE 2.0.8版本
- 修复MiscUtil的单元格扫描(Scan Cell)函数

3.4b SE - 2018年4月5日
- 适配SKSE64 SE 2.0.7版本
- 将脚本复制至Creation Kit路径 /source/scripts

3.4 SE - 2018年1月5日
- 恢复与TFC(自由摄像机模式)相关的函数
- 恢复ActorUtil的行为包覆盖函数
- 修复加载顺序中启用ESL文件时,表单偶尔存储/返回错误数据的问题

3.3c SE 热修复 - 2017年12月4日
- 适配SKSE64 SE 2.0.6版本

3.3b SE 热修复 - 2017年11月12日
- 适配SKSE64 SE 2.0.5版本
- 在MiscUtil中恢复SetMenus()函数

3.3 SE - 2017年10月21日
- SKSE64版本首次发布

3.3 - 2016年9月15日
- 修复多个导致崩溃退出(CTD)和性能问题的漏洞
- JsonUtil新增功能:
  - 新增自定义路径函数,支持自定义JSON格式
  - 新增JsonInFolder(string folder)函数,获取指定文件夹中的JSON文件数组
- MiscUtil新增功能:
  - 新增ScanCellNPCsByFaction()函数,扫描单元格中属于指定派系的角色
- PapyrusUtil新增功能:
  - 新增GetScriptVersion()函数,获取当前安装的脚本版本(可能与GetVersion()返回的DLL版本不一致,适用于MOD安装异常场景)
- 其他修复:
  - 修复JsonUtil的文件处理逻辑和缺失值问题
  - 修复其他若干记不清的漏洞

3.2 - 2016年1月4日
- 修复多个导致崩溃退出(CTD)和性能问题的漏洞
- JsonUtil新增功能:
  - Unload():从内存中卸载JsonUtil使用过的文件(可选先保存修改)
  - IsPendingSave():检查指定JSON文件自上次加载/保存后是否被修改
  - IsGood():检查指定JSON文件是否已加载且无错误
  - GetErrors():返回JSON解析错误的格式化字符串(若有)
  - JsonInFolder():返回指定目录下的所有JSON文件数组
- StorageUtil新增功能:
  - CountObj<type>Prefix():统计指定对象上以特定字符串开头的键值数量
  - ClearObj<type>Prefix():删除指定对象上所有以特定字符串开头的键值
- MiscUtil新增功能:
  - FilesInFolder():返回指定文件夹中的所有文件(或指定扩展名的文件)数组
  - ScanCellActors():获取单元格中符合条件的附近角色数组
  - ScanCellObjects():获取单元格中符合条件的特定表单类型的附近对象数组
  - WriteToFile():恢复上一版本移除的函数
  - ReadFromFile():恢复上一版本移除的函数

3.1 - 2015年9月1日
- 修复部分用户存档加载时崩溃的漏洞
- 在StorageUtil和JsonUtil中新增Count<type>Prefix()函数:统计以特定字符串开头的键值数量
- 在StorageUtil中新增Clear<type>Prefix()函数:删除所有以特定字符串开头的键值
- 在StorageUtil中新增Pluck<type>()函数:获取并返回值,随后从存储中删除该值
- 在StorageUtil中新增Shift<type>List()函数:获取列表第一个值,随后从列表中删除该值
- 在StorageUtil中新增Pop<type>List()函数:获取列表最后一个值,随后从列表中删除该值

3.0 - 2015年8月21日
- 需SKSE 1.7.3版本支持
- StorageUtil与JsonUtil新增Int/Float/String/FormListToArray()函数
- PapyrusUtil.psc中新增多个工具函数和数组函数
- 新增若干记不清的功能(主要与数组处理和返回相关)
- 修复多个崩溃相关漏洞
- 优化多个函数性能
- 移除功能:
  - 移除MiscUtil.WriteToFile()、ReadFromFile()、ExecuteBat()函数(使用率低、存在安全风险,且有更优替代方案)

2.8 - 2014年10月3日
- 修复StringListRemove函数功能反向的严重漏洞
- 修复部分用户加载外部JSON文件时崩溃退出的问题
- 在PapyrusUtil.psc中新增Papyrus数组初始化函数

2.7 - 2014年9月9日
- 恢复行为包覆盖保存功能
- 在StorageUtil和JsonUtil中新增AdjustInt/FloatValue()和Int/FloatListAdjust()函数:便捷调整现有值(增减指定数值)
- 在JsonUtil中新增ClearAll()函数:清空外部JSON文件内容
- 优化多个原生函数的参数校验逻辑,防止潜在崩溃

2.6 - 2014年8月11日
- 修复尝试加载不存在的外部文件时导致崩溃/卡死的漏洞

2.5 - 2014年8月8日
- 需SKSE 1.7.1版本支持
- 重构插件源代码
- 新增JsonUtil脚本
- 新增ListSlice()函数:将列表复制至Papyrus数组
- 新增ListCopy()函数:将Papyrus数组复制至列表
- 新增ListResize()函数:修改列表长度
- 修复其他若干漏洞并新增部分小功能

---

下载地址:




作者: 懵圈懵笔    时间: 2025-11-26 11:49
水水水水水水水

作者: 2.5牛    时间: 2025-11-29 00:33
感谢分享

作者: gu4399    时间: 2025-11-29 20:11
感谢分享

作者: zczbzbz    时间: 2025-11-30 20:37
66666666666666

作者: uudd_love    时间: 2025-12-2 09:07
111111111111111111

作者: 和谐你妹    时间: 2025-12-2 12:40
谢谢分享

作者: 3dm_29239696    时间: 2025-12-3 23:08
66666666666666666666666666666

作者: tang22222    时间: 2025-12-16 22:21
111111111111111111111
作者: qq413306    时间: 2025-12-18 00:47
6666666666

作者: you0038    时间: 2025-12-24 16:22
66666666666666

作者: liuchenyu222    时间: 2025-12-29 12:54
感谢楼主分享

作者: 刀锋的圆舞曲    时间: 2025-12-30 18:35
111111111111111

作者: bao12345    时间: 2026-1-2 18:26
PapyrusUtil.dllPapyrusUtil.dll

作者: QWE123RTQ    时间: 2026-1-3 13:56
感谢分享


作者: [浮云]    时间: 2026-1-10 02:33
dsfa dfsadfsdaf

作者: haotian0909    时间: 2026-1-15 16:07
6666666666

作者: 3dm_29287582    时间: 2026-1-19 16:25
111111111

作者: hldcyj    时间: 2026-1-20 03:04
DDDDDDDDDDDDDDDDDDDD
作者: 3dmbop_35326552    时间: 2026-1-31 23:27
6666666666666

作者: qq1597486    时间: 2026-2-1 17:51
666666666666

作者: qcyizhan    时间: 2026-2-1 18:50
感谢分享,官网没下载下来

作者: 方方方了    时间: 2026-2-17 22:43
66666666666666

作者: 3dm_22946337    时间: 2026-2-18 11:25
666666666666666666666666666

作者: hesirao518    时间: 2026-2-24 14:35
DFGHDFGJHGHJGHJFGHJ

作者: T138789123456    时间: 2026-2-27 20:22
6666666666

作者: zhaojunyan    时间: 2026-3-5 21:43
厉害了我的哥

作者: h6674893    时间: 2026-3-10 09:36
66666666666

作者: 莫离鱼    时间: 2026-3-13 00:17
666666666666666666666666666

作者: 我ijhgf    时间: 2026-3-13 06:15
666666666666

作者: Zactory    时间: 2026-3-18 20:05
无敌了作者大大666

作者: 3dmj5e_35348767    时间: 2026-3-25 12:38
777888999666

作者: 钰言    时间: 2026-3-25 18:50
感谢分享!

作者: mazine    时间: 2026-4-9 12:28
6666666666666666

作者: gbg1624    时间: 2026-4-14 20:34
感谢分享

作者: 全て远き理想郷    时间: 2026-4-14 22:41
感谢分享
作者: 不要记住哦    时间: 2026-4-15 20:26
66666666666

作者: 你为什么不放大    时间: 2026-4-21 22:58
感谢分享
作者: xiayk121    时间: 2026-4-24 14:35
试一试,好用就推荐

作者: 3dmj_36218635    时间: 2026-4-30 19:50
!!!

作者: szhg    时间: 2026-5-6 01:38
行业体验

作者: dwxz12    时间: 2026-5-9 06:55
6666666666666666666666666666666

作者: q380515336    时间: 2026-5-11 23:43
4萨芬士大夫岁的法国岁的法国岁的法国

作者: maso    时间: 2026-5-20 21:11
快快快快快快

作者: 山河图    时间: 2026-5-26 20:48
11111111111111111111111111111

作者: 3dm_21706817    时间: 2026-5-31 16:11
感谢大佬分享

作者: 达提亚    时间: 2026-6-3 06:42
感谢分享

作者: 3dmfo_36496677    时间: 2026-6-18 08:28
666666666666666

作者: zzlaq1    时间: 2026-6-21 13:45
谢谢分享

作者: mmyyuuhh    时间: 2026-6-21 23:14
666666666666

作者: lxh2011    时间: 2026-6-22 18:05
6666666666666666

作者: txyqw02    时间: 2026-7-1 12:19


作者: MAKE43    时间: 2026-7-1 18:05
456547654365465465

作者: Aa513944728    时间: 2026-7-2 00:27
699999999999999999999999999

作者: yj12636    时间: 2026-7-4 00:17
感谢分享

作者: ninbin09876    时间: 2026-7-4 01:04
6666666666666666

作者: hyy177714    时间: 2026-7-7 14:46
666666666666666

作者: luo198649    时间: 2026-7-10 16:17
111111111111111

作者: btben    时间: 2026-7-10 21:02
学习学习了

作者: 特天黑个    时间: 2026-7-12 12:12
感谢分享
作者: 990366016    时间: 2026-7-14 17:31
1111111111111111
作者: guyn    时间: 2026-7-17 22:53
好太好了

作者: mutou55    时间: 2026-7-18 19:45
感谢分享


作者: 328716502    时间: 2026-7-18 23:56
感谢分享
作者: 8987001    时间: 2026-7-21 22:11
感谢分享

作者: xisfjkbkj    时间: 2026-7-23 21:02
6666666666666666666

作者: crazywuwei    时间: 2026-7-24 18:20
666666666666666

作者: cz封雪    时间: 2026-7-26 09:45
谢谢分享!

作者: qq1473156946    时间: 2026-7-28 17:58
!!!!!!!!!

作者: jujjj29299282    时间: 2026-7-28 23:14
666666666666

作者: 泪湿伊人伤、    时间: 2026-7-29 01:44
6666666666666666

作者: 3dm4k2_36652959    时间: 2026-7-30 14:59
感谢分享


作者: 3dms_35554672    时间: 2026-8-7 01:25
1111111111111111

作者: 魔仙王者    时间: 2026-8-9 00:07
6666666666
作者: lczxsq    时间: 2026-8-9 03:07
感谢分享

作者: 邓太阿7777    时间: 2026-8-13 13:29
asfasfjmals

作者: 旺思    时间: 2026-8-13 22:39
谢谢,下载看看


作者: 123456789qqee    时间: 2026-8-20 21:55
6666666666

作者: 3dm_34454502    时间: 2026-8-21 00:10
1111111111111111

作者: ewwerewrwe    时间: 2026-8-22 10:21
3213213131313313

作者: 3dm_24740265    时间: 2026-8-22 15:37
1111111111111111111

作者: yunnan1100    时间: 2026-8-22 19:52
666666666666666666

作者: zhou2713    时间: 2026-8-24 00:46
6666666666666666666666

作者: 鼓掌之间    时间: 2026-8-26 11:42
2026-08-26更新

作者: 大段人j客    时间: 2026-8-27 13:46
感谢大佬分享

作者: lrxc12    时间: 2026-8-28 10:02
感谢分享


作者: 鼓掌之间    时间: 2026-8-30 18:16
2026-08-30更新

作者: 3dm_27382952    时间: 2026-8-30 19:30
66666666666666666666

作者: zxc5408    时间: 2026-8-31 18:44
感谢大佬分享

作者: qazx3333    时间: 2026-9-3 20:24
666666666666666666

作者: yzxadsa    时间: 2026-9-5 01:21
6666666666


作者: luoqw    时间: 2026-9-5 11:21
drfytfhjdxfcghg

作者: 山楂老    时间: 2026-9-5 23:49
333333333333333333333333333

作者: 火柴人の差2    时间: 2026-9-6 12:51
66666666666

作者: 3dm_24014049    时间: 2026-9-8 22:31
感谢分享

作者: 老滚和老滚    时间: 2026-9-13 09:17
感谢分享

作者: CHKWS    时间: 2026-9-13 19:40
66666666666666
作者: 3dm_25389935    时间: 2026-9-14 15:09
66666666666666

作者: 风之源    时间: 2026-9-15 15:19
66666666666666666666

作者: 123666g    时间: 2026-9-15 16:15
666666666666





欢迎光临 3DMGAME论坛 (https://bbs.3dmgame.com/) Powered by Discuz! X3.2