3GO模拟飞行网|3GO Cyber Air Force

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: Nokia5230

[提问] 触发规则之反作弊问题

[复制链接]
发表于 2011-4-21 20:06:17 | 显示全部楼层
回复  L0op8ack


   请问如何查看BAN的人的IP、UCID
Nokia5230 发表于 2011-4-21 20:01


\scripts\net\server.lua里面的
function on_connect(id, addr, port, name, ucid)
客户端连进服务器的时候,会带这些参数

在on_connect函数里面把客户端的id、IP地址(addr)、名字(name)、ucid(UCID)记录到lua的一个table(其实就是数组嘛)中即可
以后要查直接从这个table里面找
发表于 2011-4-21 20:07:30 | 显示全部楼层
L0op8ack强淫。。。。。
另外现在才注意到你的ID是什么意思。。。莫非也是搞网络的?
cohead 发表于 2011-4-21 19:58


嗯,嗯,十年前的事情了
loopback接口,与机器共存亡,或者说,永远不死
 楼主| 发表于 2011-4-21 20:08:16 | 显示全部楼层
自己建立主机的时候如何查询别人的ID、IP和UCID呢,麻烦了
发表于 2011-4-21 20:09:08 | 显示全部楼层
握个手,呃,跟十年前的你算是同行。。。。。
那现在去搞软件了?
 楼主| 发表于 2011-4-21 20:09:34 | 显示全部楼层
回复 17# L0op8ack

自己建立主机的时候如何查询别人的ID、IP和UCID呢,麻烦了
发表于 2011-4-21 20:11:57 | 显示全部楼层
本帖最后由 L0op8ack 于 2011-4-21 20:17 编辑
回复  L0op8ack

自己建立主机的时候如何查询别人的ID、IP和UCID呢,麻烦了
Nokia5230 发表于 2011-4-21 20:09


所以写代码要写一套嘛。。。。。。

要方便,需要再写个/playerlist命令处理,列出所有玩家信息......
然后再写个/kick playerid处理,/ban playerid [byip|byname|byucid]处理

麻烦着呢

直接上servman吧,人家已经实现ban_by_ip/ban_by_name/ban_by_ucid了
再写一个,就是重复劳动了,没必要啊
发表于 2011-4-21 20:12:46 | 显示全部楼层
握个手,呃,跟十年前的你算是同行。。。。。
那现在去搞软件了?
cohead 发表于 2011-4-21 20:09


是啊,写软件,还是干苦力啊
还好,不怎么写了,主要做架构规划
发表于 2011-4-22 09:08:51 | 显示全部楼层
传说中的架构师哇,NB 。。。。算是中层管理岗位了吧 -3-
发表于 2011-4-22 11:05:37 | 显示全部楼层
崇拜 L0op8ack 希望拜师。。。
发表于 2011-4-22 19:10:05 | 显示全部楼层
mrollien 发表于 2011-4-22 11:05
崇拜 L0op8ack 希望拜师。。。

别。。。。。

LOFC2里lua就是个壳,负责数据的加载、数据的组织、界面设计、界面点击的处理,
然后lua和模拟器核心simulator互动,通过readme.txt中的一些api接口,取得模拟器中的事件、单位属性
也提供有限几个on_xxx函数,供simulator调用,方便做一些相应处理

你看一下servman就大致清楚怎么做了

multiplay界面的点击事件处理 -> \scripts\net\main.lua,调用server.lua(当然同时也调用了client.lua)
server界面的点击事件处理 -> \scripts\net\server.lua,服务器端用的辅助函数、全局变量(服务器设置/ban表/玩家表等),功能实现(kick、vote等)函数都放在这里
服务器开启、用户联入等处理也放在这里,可以理解为网络层面事件(on_xxx)

server启动后的游戏事件处理 -> \scripts\net\events.lua,游戏运行中的服务器端事件(暂停/终止/加载任务文件/)和simulator中的玩家事件(加入/退出/起降/攻击),
可以理解为应用层面(on_xxx)

所有on_xxx函数名称都是simulator定死了的

ed默认的加载路径:main.lua -> server.lua -> events.lua
servman的加载路径为:main.lua -> addons\servman\servman-server.lua -> addons\servman\servman-events.lua
也就是说,servman重写了server.lua和events.lua

\scripts\net\events.lua是服务器模式和客户端模式共用的,这里所说的几乎所有功能都是给服务器端用的,
所以很多地方加了net.is_server()判断本机为服务器还是客户端
发表于 2011-4-22 19:20:49 | 显示全部楼层
话说我之前想研究一下把TEWS在另外一个窗口中显示出来的时候突然觉得,理论上似乎可以通过这些lua来作弊啊。。。。。比如获取敌机的高度方位距离什么的。。。。。
发表于 2011-4-23 00:29:51 | 显示全部楼层
对的,某些老美就开发出了ERI来给F15提供数据链功能“作弊”嘛

不过可以选择禁止服务器输出LUA数据,那么就无法作弊了,所有基于export.lua的都消失
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|3GO模拟飞行网|3GO Cyber Air Force ( 沪ICP备08002287号|沪ICP备14050587号 )

GMT+8, 2024-11-16 14:49

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表