GithubHelp home page GithubHelp logo

postnamazu's Introduction

鲶鱼精邮差

鲶鱼精邮差是一个用于拓展ACT与相关插件的功能的插件。可以接收Triggernometry高级触发器等插件传递过来的游戏文本指令,并投递至游戏内执行。
仅限于最终幻想14自己支持的、可以在游戏内由宏或由文本聊天栏中输入并执行的指令。如/em(自定义情感动作) /greet(打招呼) /focustarget(显示焦点目标)等,不支持任何游戏本身不提供的文本指令。
可以用于解决目前游戏内现有宏指令系统的一些不便之处,例如复活喊话宏、翻页宏、死而不僵提醒宏等。

主要特性

  • 执行指令不会打断游戏内宏的运行,也不会污染聊天框历史记录。
  • 自动识别与支持国服与国际服最新版本的游戏客户端。在小版本更新后可以不受影响继续使用。
  • ACT插件形式,启动ACT时自动加载,无需单独启动其他程序。
  • 可以自动识别并切换当前解析插件对应的游戏进程。在退出、重启游戏后不需要手动操作即可自动完成切换。
  • 兼容PaisleyPark的标点指令,可以进行本地标点(不支持保存、导出标点等PaisleyPark的其他功能)

注意事项

插件自身不含有直接执行指令的能力,单独使用时无法行使任何功能,必须配合ACT与Triggernometry高级触发器等工具才可以发挥作用。
使用此工具需要对ACT、高级触发器以及游戏内的文本指令有较深的理解与使用基础,本文不提供相关教程,还请自行查阅相关资料。
使用此工具进行的任何操作皆需遵守相关规定,使用造成风险由您承担。
游戏大版本更新后可能导致游戏崩溃,需要等待更新后再使用。
需要至少.NET Framework 4.6.1版本的环境支持,仅支持DX11客户端。

安装方法

鲶鱼精邮差为ACT插件,需要使用ACT加载使用。
将下载后的压缩包解压后,通过ACT的插件列表页添加PostNamazu.dll插件并启用,即可在插件栏看到鲶鱼精邮差的面板。

2个dll文件需放在同一目录下。 不要放在ACT的根目录下。 只需要添加PostNamazu.dll一个文件即可。

使用方法(新·推荐)

鲶鱼精邮差本身不需要进行特别设置,只需在ACT中加载并启用即可。
需要注意其加载顺序必须位于解析插件Triggernometry之后。否则在初始化时将会提示错误。 在ACT的Triggernometry高级触发器中添加触发器,并将动作类型选择为最后一项“Named callback operation”,
第一项Callback name设置为DoTextCommandcommand
第二项Callback parameter 设置为你要执行的文本指令,例如/e 123。测试触发后如果在游戏内看到提示文字即为配置成功。

注意:随着Triggernometry的更新,选项的顺序、文字内容、翻译可能会发生变化,请以实际情况为准。

Triggernometry高级触发器设置
如果有多个FF14游戏进程存在,鲶鱼精邮差会自动匹配解析插件当前对应的游戏进程。可以在解析插件的面板中进行切换。
切换方式

使用方法(旧)

此方法已经过时,建议使用前面提到的callback方式进行调用,
但是此方法依然可用,可以用于配合Triggernometry以外的其他应用或 按照旧版本格式编写的触发器。 为避免和其他应用(例如PaisleyPark等)发生端口占用冲突,如无必要,则不建议再采用这种方式进行调用。

启动程序后,设置端口并点击“启动”开始在指定端口监听。
勾选自动启动选项后,每次启动ACT加载插件完毕后鲶鱼精邮差会自动启动监听。

鲶鱼精邮差设置

在ACT的Triggernometry高级触发器中添加触发器,并将动作类型选择为“通用JSON动作”,端点URL设置为http://127.0.0.1:你设置的端口/command
有效负载发送设置为你要执行的文本指令,例如/e 123。测试触发后如果在游戏内看到提示文字即为配置成功。

Triggernometry高级触发器设置

应用场景举例

翻页宏

当特定条件触发时执行/hotbar set/hotbar copy指令将指定键位设置为指定技能。

发动即刻咏唱后,将即刻的键位替换为复活

由于翻页的触发条件限定为即刻咏唱使用成功获得即刻咏唱状态,因此在即刻cd时、自身硬直中等情况下,即使激情连打,只要没有成功的用出即刻,就不会误触发翻页。
并且即刻与复活都为原本的技能而非宏实现,可以正常进入施法队列。

原 初 的 解 放!!!
同理,可以实现在成功召唤炽天使后将炽天使召唤替换为慰藉,黑魔在转状态后将火系技能栏替换为冰系技能栏,boss读条魔之符文时将暗影锋替换为至黑之夜等,原理基本相同,这里不多赘述。

喊话宏

当特定条件触发时执行/s(公频白字发言) /p(小队内发言) /linkshell2(第二个通讯贝内发言)等指令进行发言。

当触发死而不僵时,在小队频道内喊“用力奶我!<se.8>

由于触发条件为获得buff,因此在按下活死人后如果没有触发死而不僵,也就不会喊话。
由于喊话的时点为死而不僵的触发时点,相对来说也更加方便计时。
并且因为释放技能非宏实现,所以有效避免了无敌卡宏的情况。

复活喊话,由于死人不太好找这里就先用医术作例子了

同理,可以实现挑衅退避时队内发言,找到怪物后在部队频道内通报坐标,鱼王上钩时第一时间转发至通讯贝内等,原理基本相同,这里不多赘述。

更多进阶应用

按下超火流星后,点掉超火流星,并在小队频道发送:“?(倒置)”

收到来自特定玩家的组队邀请时自动发送/join指令接受邀请。
收到其他玩家发起的准备确认时自动发送/ready指令进行确认
……
实现方法非常简单,大家可以自行举一反三,这里不多赘述。

PaisleyPark兼容

鲶鱼精邮差兼容PaisleyPark的标点指令,可以接收触发器发送的坐标JSON字符串进行本地标点。
使用方式与原版PaisleyPark相同。将PaisleyPark适用的标点指令文本发送至http://127.0.0.1:你设置的端口/place即可。
文本指令与标点指令使用相同的端口,区别在于后面跟随的路径(/command /place)。 只要端口号正确对应,不需修改即可继续使用原版PaisleyPark的触发指令。
具体使用方式请参考PaisleyPark的相关教程。

此外,鲶鱼精邮差也支持通过前面的callback operation方式执行标点指令,只需要将Callback name设置为DoWaymarksplace即可。

如图所示
>使用callback operation方式执行标点指令时也不需要监听端口,可以和原版PaisleyPark共存。

标点暂存

save指令发送至鲶鱼精邮差的place方法可以令鲶鱼精邮差暂存当前场地标点。并可以在随后使用load指令恢复之前保存的场地标点。当你希望在某些特定的场合下进行本地标点,并在使用完毕后恢复原本的场地标点的场合,可以使用这组指令。
暂存的标点并不会本地保存,在ACT或鲶鱼精邮差退出后即会失效。

使用方法图例

冲突

在Triggernometry高级触发器中建立将指令发送给鲶鱼精邮差的非异步(没有勾选计划任务页的“异步执行,不会阻止执行其他操作”选项的)触发器时,点击主界面的Test Action将会造成ACT假死直至超时(持续数分钟)。
这是由于在Triggernometry中测试非异步触发器时,触发器将会使用ACT的当前主进程进行触发器的测试,并且在获得反馈结果之前将会冻结ACT主进程阻止后续操作。因此同为ACT插件的邮差也会被阻塞,无法接收到Triggernometry的触发指令并进行反馈,造成死锁。此状况将会一直持续直至Triggernometry的操作由于超时而被中断。
此情况仅会出现于手动点击Test Action进行触发器测试的场合。当触发器由游戏内日志行正常触发时,无论是同步还是异步执行的触发器都不会阻塞ACT的主线程,也不会发生上述的死锁现象。此外,对于异步触发器,即使通过在触发器页面手动点击Test Action进行触发器测试,Triggernometry也会在新建立的线程中执行触发器操作,而不会阻塞ACT主进程。因此同样不会造成死锁。
综上,此问题并不会影响鲶鱼精邮差与Triggernometry在游戏中的正常使用(无论是同步还是异步触发器操作)。但是在测试自己建立的触发器时,为了防止上述情况发生,建议尽量将与邮差进行交互的触发器操作设置为异步执行,或通过游戏内日志的触发方式对触发器进行测试。

感谢

感谢 @PrototypeSeiren@Bluefissure@DieMoe233各位大佬的付出与帮助。

postnamazu's People

Contributors

loskh avatar ceerrep avatar natsukage avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.