写的很棒!又学到了一点,蟹蟹大佬!

24 天 后
我怎么老在深夜更新

更新了:
漂流瓶重置支持@用户,在群聊内无需手动输入QQ号。
修复了漂流瓶重置指令填入数字以外的内容后会报错的状况。(原先版本仅会于0级窗口报错且不执行指令,不影响正常使用)

v13.zip
5kB

说起来这次更新挺有趣的
sion的用户群也被我用来当作待办更新备忘录群(全体群员监督的那种),然后我那次是嫌打QQ号太麻烦了,在群里讲了一句:漂流瓶重置支持@用户而非只能输入账号 用来顺手放进精华消息里
敏锐的捕捉到指令头的sion:sion读取lua文件DriftingBottles.lua失败!
我:老人 地铁 手机.jpg
另外我看的脚本手册属实是过时了十几个版本,今天才发现正则匹配什么的在网页版开发手册里有教

好奇怪啊为什么我后续的更新里梦境增强剂瓶这个东西就一直留在列表里面了,好嘛这下成夹带私货了
10 天 后
sion虽然即将停机,但我的更新还未止步。

由于之前曾经出现过sion被拉入政治敏感群的情况,而在我下载了一个4w3+个对象的敏感词库并努力阅读筛选了3000词并直呼自己是不是浪费了2小时的人生后,才想到的这个办法:

我直接开个监听不就好了?

我是不是傻???

于是推出了含有监听功能的1.4版,没有这个需求的可以不更新。监听相关内容全部在自定义中。

v14.zip
6kB

先占个坑,タブー術提醒我可以设置成通知窗口,等我去研究研究,就不发新版本了在1.4基础上改改就行
改好了

12 天 后

lanlijingxiang 你的Dice是不是放在中文路径
感谢タブー術,找到问题解决方法了,需要把所有脚本都转一遍码,等会全部重传,我尽快搞定
属于是之前卡了这么久的问题虽然知道是编码导致的但现在才搞明白具体怎么操作
不过心里没啥底,可能会导致问题……

把全部版本都改了一遍,能识别中文路径了

请问,我修改后的日上限监测脚本只能在一段时间内监测到上限(尤其是跳海程序)并返回已上限的回复,但是,同样的群,同样群成员等待一段时间后再次发送跳海指令,又是正常回复且重新计算跳海次数了。是否是代码出了什么问题?还是某些默认设置改错了?

-- 跳海,默认为“跳进海里”
drown_self_order = "跳进海里"
--限制跳海名单
banned_drawn_qq = "xxxxxxxxx"
--限制跳海名单的跳海上限
banned_everyday_max_drawn = 1
-- 跳海程序(会往海里添加一具尸体)
function bottle_num(msg)
	if ( msg.fromQQ == banned_drawn_qq ) then
		local letter = read_file(bottle_text_path)
		local letter_list = {}
		local today_drawn = getUserToday(msg.fromQQ,"DB_everyday_drown")
		letter_list = Split(letter,"c2xhc2g=") 
		if (today_drawn>= banned_everyday_max_drawn) then
			return "一位英俊的菲林少年注意到了{nick}近日的反常举动,并将其报告给了这片海域的监视者。\n警觉的监视者加强了海岸的安全防护,{nick}现在只能遥望着海面沉浮的".. #letter_list-1 .."个物体独自兴叹了。"
		else
			date=os.date("%Y-%m-%d %H:%M:%S")
			if ( msg.fromGroup == "0" ) then
			text_full = "[CQ:image,url=http://q1.qlogo.cn/g?b=qq&nk="..msg.fromQQ.."&s=640]\n海面飘来了"..getUserConf(msg.fromQQ,"nick","某人").."的浮尸。\nTA于"..date.."悄悄潜入海底……TA在泰拉的渊洄中望见了什么?唯有回望TA的深渊知晓。c2xhc2g="
			else
			text_full = "[CQ:image,url=http://q1.qlogo.cn/g?b=qq&nk="..msg.fromQQ.."&s=640]\n海面飘来了"..getUserConf(msg.fromQQ,"nick","某人").."的浮尸。\n他于"..date.."在"..getGroupConf(msg.fromGroup, "name", "获取群名参数错误!").."("..msg.fromGroup..")处的海边沉入深海——回归一切的起源,回归诞生的黑暗。c2xhc2g="
			end
			write_file(bottle_text_path,text_full)
			setUserToday(msg.fromQQ, "DB_everyday_drown", today_drawn+1)
			return "{nick}仿佛被某种声音——某种音乐——引向海岸,等{nick}回过神,波涛与黑暗已经卷挟着".. #letter_list-1 .."个物体一并汹涌而来。\n……\n它们吞噬了{nick},也将永远伴随TA。"
		end
	end
	local today_drawn = getUserToday(msg.fromQQ,"DB_everyday_drown")
	if ( today_drawn >= DB_everyday_max_drown ) then	
		local letter = read_file(bottle_text_path)
		local letter_list = {}
		letter_list = Split(letter,"c2xhc2g=") 
		reply_list = {
            "{nick}试图重温被海水与寒冷包围浸没的感觉;意识浮沉之际,".. #letter_list-1 .."道影子在视野中一晃而过。\n……\n眨眼间,{nick}在跃落的海岸醒来,一位英俊的菲林少年正疑惑又担忧地望着TA。{nick}不记得在海中看到的光景,唯有咸涩的海盐残留在皮肤上,仿佛音乐与求死的极乐都是一场幻梦。",
			"{nick}刚想再次跳入海里,却被一位英俊的菲林少年拉住了手腕。\n“请不要如此轻贱生命。”他蹙着眉说。\n{nick}只能依稀看见".. #letter_list-1 .."个物体在波浪中沉浮:那海水依旧深邃,却不再拥有吸引{nick}投身其中的魔力。TA跟随着少年的脚步,踉踉跄跄离开了海岸。"
        }  
        random_reply =  reply_list[math.random(#reply_list)]
        return random_reply 
	else
		local letter = read_file(bottle_text_path)
		local letter_list = {}
		letter_list = Split(letter,"c2xhc2g=") 
		date=os.date("%Y-%m-%d %H:%M:%S")
		if ( msg.fromGroup == "0" ) then
		text_full = "[CQ:image,url=http://q1.qlogo.cn/g?b=qq&nk="..msg.fromQQ.."&s=640]\n海面飘来了"..getUserConf(msg.fromQQ,"nick","某人").."的浮尸。\nTA于"..date.."悄悄潜入海底……TA在泰拉的渊洄中望见了什么?唯有回望TA的深渊知晓。c2xhc2g="
		else
		text_full = "[CQ:image,url=http://q1.qlogo.cn/g?b=qq&nk="..msg.fromQQ.."&s=640]\n海面飘来了"..getUserConf(msg.fromQQ,"nick","某人").."的浮尸。\n他于"..date.."在"..getGroupConf(msg.fromGroup, "name", "获取群名参数错误!").."("..msg.fromGroup..")处的海边沉入深海——回归一切的起源,回归诞生的黑暗。c2xhc2g="
		end
		write_file(bottle_text_path,text_full)
		setUserToday(msg.fromQQ, "DB_everyday_drown", today_drawn+1)
		return "{nick}仿佛被某种声音——某种音乐——引向海岸,等{nick}回过神,波涛与黑暗已经卷挟着".. #letter_list-1 .."个物体一并汹涌而来。\n……\n它们吞噬了{nick},也将永远伴随TA。"
	end
end
msg_order[drown_self_order] = "bottle_num"

    cyphoeris 通常来说setUserToday是计算用户单日数量的,会在0时重置(不过看你回复的时间应该不是这个问题)
    然后……我看代码感觉好像确实并没有逻辑上的错误,怪起来了——

      Lily Black 是的 🤣 而且因为我没用服务器,人又在国外,我不知道这是不是会影响,反正骰子的好感送礼程序也会时不时地重新计数,感觉国内和我这边的0点都会各清空一次?(再加上两边非零点的清空,就很混乱)

        扔漂流瓶图片,后台有显示但是实际没有反应,如果抽到也是一样,这个怎么整呀?

          Shan 这个是tx屏蔽了聊天中的缓存图片,我从一段时间之前就这样了,同理对骰娘发送“.r[图片]”这种东西也是显示不出来的(私聊倒是可以)
          如果要做到存图并重新发送的话就需要lua以外的插件了,可能隔壁有解决方法,不过我没试过
          我这里的解决方法是如果你需要的话我可以写个识别图片并拒收XD
          怀念以前能发图的时候群友往里面塞的色图和美食图了……

          • Shan 回复了此帖

            我输入 扔漂流瓶 漂流瓶功能上线后
            反馈为
            骰娘调用C:\Users\ADMINI1\Desktop\suhuitou\DICE311\plugin\DRIFTI1.LUA函数throw_bottle失败!
            …s\ADMINI1\Desktop\suhuitou\DICE311\plugin\DRIFTI1.LUA:88: attempt to index a nil value (global ‘file’)
            求教这是什么情况呢

              hjy 我也觉得很奇怪,因为复现问题时只有同时满足UTF-8编码含有非英文字符集路径才会导致这种情况,但是看你的脚本路径也不像是有中文路径的样子……要不然先把编码给换了再试试?