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 *****
水水水水水水水
感谢分享
感谢分享
66666666666666
111111111111111111
谢谢分享
66666666666666666666666666666
111111111111111111111 6666666666
66666666666666
感谢楼主分享
111111111111111
PapyrusUtil.dllPapyrusUtil.dll
感谢分享
dsfa dfsadfsdaf
6666666666
111111111
DDDDDDDDDDDDDDDDDDDD 6666666666666
666666666666
感谢分享,官网没下载下来
66666666666666
666666666666666666666666666
DFGHDFGJHGHJGHJFGHJ
6666666666
厉害了我的哥
66666666666
666666666666666666666666666
666666666666