求可以有多种变量分别累加的插件

效果描述:假设有变量A和占位符%A% ,A的默认初始值是0。玩家打开1次菜单,A的值就会加1。就可以理解为判断玩家打开过几次菜单。同样的,任务需要提交物品,提交后,执行语句里让A值加1,就可以理解为玩家提交过几次物品。通过表达,可以告诉玩家“你已经打开了菜单%A%次”。


需求:
0.最好可以自行添加变量数量,假设默认只有变量A,执行指令/plugs create A1,就可以产生一个新的"A1"变量。产生一个新的占位符%A1%。
1.如果上一条0的自行添加变量无法实现。我请求可以自带200个变量和占位符,A1、A2、A3…A200。原因后续描述。
2.变量A可以通过指令累加:/plugs add A ,效果是A的值加1。假设A值是3,执行后A值就是4
通过指令累减:/plugs remove A,效果是A的值减1。假设A值是4,执行后A值是3
清空:/plugs clear A,效果是A的值直接变成0
3.%A%占位符的结果应该是数值型。不要是字符串类型。
4.每个玩家独立拥有一整套变量。甲的A为0,乙的A为5,这种分开独立的。通过玩家ID和UUID双重匹配变量,安全点。

插件作用:
这个插件是一个条件性功能工具,本身累加累减没有任何实质性的作用。但它可以非常灵活的满足服务器设计者的“进度条件”需求。
目前海绵有很多优秀的开发者,他们的插件都是独立运行的。这个插件可以帮助服设计者把众多插件以"进度条件"的形式结合起来。

假设签到插件没有对外的累加次数表达,通过菜单,执行签到时可以自行A+1,可以帮助服设计者告知用户签到了几次,满足次数才能打开GTS。

可以用于VC菜单自制任务系统。A值为0,说明任务还在第一步,当A值为1的时候,可以判断出当前任务在第二步。

可以用于奖惩系统。假设随机结果是没有保底功能的,每次的随机都会让A+1,通过判断,A达到5玩家还没有出高等奖励,就可以执行保底奖励。


结语:
这种功能插件我早期请求朋友开发出来了1个版本。但是朋友不是玩MC的,对于海绵和游戏本身一些开发环境的理解也不是非常透彻。它的插件无法做到“本地存储”,就是不能存在config里,需要在服务器环境里架设mysql,通过IP地址实时传递数据。开过服的应该会清楚,IP地址多半是会变的,每次调整IP就需要我朋友重新打包jar,次数多了也非常不方便。而且还会遇到数据库被挂起,未能长时间处于“激活”状态,导致服进行数据调用时完全没效果而报错,直接影响了后续功能的稳定性。专业术语不知道,就这么个意思。所以想请海绵圈里的编程大佬,能给一个较为完善的版本。
也因为我已经用过这种插件,我当时就要求做了60个变量。但在我使用的结果看来,100个变量可能还满足不了任务系统的需求(主要是我自己的过于复杂…)。何况还有其他插件可以配套使用。所以请求200个。如果考虑到技术层面弊端实在不行,100个也行吧。

我希望我表达的够清楚了。也希望能有编程大佬空了给做一个。

Sponge API 版本……

其实就是给玩家添加自定义数据,但是我感觉这种插件做出来可能只有你会用,建议找人定制
不具备泛用性,因为不同的任务可能控制进度的数据格式不一样,无法只用简单的整数类型来表示。同时这也意味着说其实是需要腐竹去手动配置这些变量的,大多数腐竹并玩不明白
如果你不用bc只开单端,写在玩家的数据里面就行了,可以不用数据库

确实没什么泛用性,虽然看起来抽象层级高可以实现很多,但是反而复杂化问题

再配置过程中确实会出现非常繁琐的逻辑判断问题。但真的是灵活…
所以这类的是不能做,是吗?

可能是吧,工具也不是谁都可以理解并使用。

MC1.12.2的 API啥版本合适,这我就不懂了。

不是不能做,如上面所说,没有泛用性,建议你找人定制,这个版块是发一些大家都可用的请求,无偿做出来发布的

1.12 API7

明白