可爱月亮 发表于 2026-3-28 17:50:12

判断多开脚本

求大佬帮忙写一个脚本,需要完整脚本。。需求:玩家开启挂机时,判断当前IP下有几个角色正在挂机。
如果是双开的无影响
如果是3开的挂机,则爆率为80%
如果是4开的挂机,则爆率为70%
如果是5开的挂机,则爆率为60%
如果是6开的挂机,则爆率为50%
如果是7开的挂机,则爆率为40%
停止挂机后,当前角色爆率恢复正常。
;我主要是不会判断当前IP下有几个角色正在挂机。。求大佬指点
;KILLMONBURSTRATE 倍率(实际倍率除以100)有效时间(时间为0或者为空时表示在线一直有效) 参数3 为0时下线不保存 为1时下线保存爆率倍数 ,参数4:0或者留空为给予时候提示,1为给予时候不提示(普遍用于登录触发防止提示二次)
[@StartAutoOnline]
#IF
#ACT
StartAutoPlayGame
SENDMSG 6 开始挂机,使用快捷键“CTRL+ALT+X”停止挂机
[@StopAutoOnline]
#IF
#ACT
StopAutoPlayGame
SENDMSG 6 命令停止挂机,使用快捷键“CTRL+ALT+X”开始挂机
break

大方小兔 发表于 2026-3-28 17:50:12

[@StartAutoOnline]
#IF
#ACT
StartAutoPlayGame
SENDMSG 6 开始挂机,使用快捷键“CTRL+ALT+X”停止挂机
ReadCacheConfigFileItem ..\\QuestDiary\\IP记录.txt <$IPADDR> 登陆次数 N$IP次数
INC N$IP次数 1
WriteCacheConfigFileItem ..\\QuestDiary\\IP记录.txt <$IPADDR> 登陆次数 N$IP次数
#IF
EQUAL  N$IP次数 1
#ACT
SENDMSG 6 当前此IP有1个人在挂机
..
...
..
#IF
EQUAL  N$IP次数 10
#ACT
SENDMSG 6 当前此IP有10个人在挂机
[@StopAutoOnline]
#IF
#ACT
StopAutoPlayGame
SENDMSG 6 命令停止挂机,使用快捷键“CTRL+ALT+X”开始挂机
ReadCacheConfigFileItem ..\\QuestDiary\\IP记录.txt <$IPADDR> 登陆次数 N$IP次数
DEC N$IP次数 1
WriteCacheConfigFileItem ..\\QuestDiary\\IP记录.txt <$IPADDR> 登陆次数 N$IP次数

坚强小兔 发表于 2026-3-28 17:50:12

求吊大的帮忙指点指点。。

大方小兔 发表于 2026-3-28 17:50:12

真正的高端玩家,你搞啥脚本也没用!

机智小鹿 发表于 2026-3-28 17:50:12

ReadCacheConfigFileItem 可更换为 ReadConfigFileItem
WriteCacheConfigFileItem 可更换为 WriteConfigFileItem

机智小鹿 发表于 2026-3-28 17:50:12

这个要做完整,估计比你想像中的要复杂很多。因为同一个IP有几个人挂机都是动态的,同一IP有角色下线怎么减?有角色断网了怎么办?还有,同一个网吧用的同一IP怎么算?还有,假如现在5开,是5个角色全部暴率60%,还是第5个开的角色暴率60%?还有比如现在5开,然后第3个角色下线了,变成4开,在线的这些人暴率变吗?

快乐云朵 发表于 2026-3-28 17:50:12

实现的方法也不是没有,只是后期可能会出现很多莫名其妙的错误。
比如你可以这样:
1.建立一个 玩家IP列表 文件,里面记录所有登录过的玩家的IP地址及每个IP的挂机人数。
2.然后每个IP你都以IP号为文件名,建立一个挂机角色列表,一旦有增加或减少挂机的随时更新挂机列表名单,并调整暴率。
当然,搞不好很容易出乱子。
至于出1500分让人给你写完整的脚本,估计要么应付你一下,要么真没多少人愿意。

诚实小鸟 发表于 2026-3-28 17:50:12

czy7812 发表于 2022-1-5 09:16 实现的方法也不是没有,只是后期可能会出现很多莫名其妙的错误。
比如你可以这样:
1.建立一个 玩家IP列 ...
哈哈哈,我只要知道怎么判断别人是几开就行了。。
不应该加个要完整的。。
感谢大佬们的回复!

机智小猪 发表于 2026-3-28 17:50:12

求大佬帮忙写一个脚本,需要完整脚本。。需求:玩家开启挂机时,判断当前IP下有几个角色正在挂机。
如果是双开的无影响
如果是3开的挂机,则爆率为80%
如果是4开的挂机,则爆率为70%
如果是5开的挂机,则爆率为60%
如果是6开的挂机,则爆率为50%
如果是7开的挂机,则爆率为40%
停止挂机后,当前角色爆率恢复正常。
;我主要是不会判断当前IP下有几个角色正在挂机。。求大佬指点
;KILLMONBURSTRATE 倍率(实际倍率除以100)有效时间(时间为0或者为空时表示在线一直有效) 参数3 为0时下线不保存 为1时下线保存爆率倍数 ,参数4:0或者留空为给予时候提示,1为给予时候不提示(普遍用于登录触发防止提示二次)
[@StartAutoOnline]
#IF
#ACT
StartAutoPlayGame
SENDMSG 6 开始挂机,使用快捷键“CTRL+ALT+X”停止挂机
[@StopAutoOnline]
#IF
#ACT
StopAutoPlayGame
SENDMSG 6 命令停止挂机,使用快捷键“CTRL+ALT+X”开始挂机
break

坚强小鱼 发表于 2026-3-28 17:50:12

[@StartAutoOnline]
#IF
#ACT
StartAutoPlayGame
SENDMSG 6 开始挂机,使用快捷键“CTRL+ALT+X”停止挂机
ReadCacheConfigFileItem ..\\QuestDiary\\IP记录.txt <$IPADDR> 登陆次数 N$IP次数
INC N$IP次数 1
WriteCacheConfigFileItem ..\\QuestDiary\\IP记录.txt <$IPADDR> 登陆次数 N$IP次数
#IF
EQUAL  N$IP次数 1
#ACT
SENDMSG 6 当前此IP有1个人在挂机
..
...
..
#IF
EQUAL  N$IP次数 10
#ACT
SENDMSG 6 当前此IP有10个人在挂机
[@StopAutoOnline]
#IF
#ACT
StopAutoPlayGame
SENDMSG 6 命令停止挂机,使用快捷键“CTRL+ALT+X”开始挂机
ReadCacheConfigFileItem ..\\QuestDiary\\IP记录.txt <$IPADDR> 登陆次数 N$IP次数
DEC N$IP次数 1
WriteCacheConfigFileItem ..\\QuestDiary\\IP记录.txt <$IPADDR> 登陆次数 N$IP次数
页: [1] 2
查看完整版本: 判断多开脚本