鼓掌之间 发表于 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()函数:修改列表长度
- 修复其他若干漏洞并新增部分小功能

---

下载地址:

**** Hidden Message *****

懵圈懵笔 发表于 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
页: [1] 2 3
查看完整版本: PapyrusUtil SE - MOD制作者脚本工具函数(2026-08-30更新)