BF2_LoginEmulator 是由Wilson212网友创建的Official Bf2 statistics provided 开源项目下的作品之一,它可以实现在本地离线模拟BF2的账号伺服器。不过需要特别注意的是它只是账号伺服器模拟实现,并不提供BF2战网体系架构下的其他部分,如 列表伺服器、CDK伺服器、BFHQ等。
 

使用方法:

下载后的这款工具,包含解压后我们打开Config.ini这个配置文件,默认情况下,采用的是Sqlite类型的本地轻型数据库,当然也可以更换为mysql数据库以获得更多强大的支持。

准备工作:
a,如果你使用的是默认的数据库Sqlite,那么该配置文件基本上不需要做任何修改;
b,如果采用MySQL数据库,那么需要在配置文件配置数据库的地址、账号、库名、密码等,同时,还需要MySQL.CreateTables.sql这个初始数据文件导入到我们的数据库中;

运行工作:
1,打开BF2_LoginEmulator文件夹并运行Bf2LoginEmulator.exe ,此时账号服务器应用已经正式启动
2,将玩家的登录器BF2.exe的账号服务器和账号验证服务器分别指向自己的服务器IP或域名即可(BF2.exe联机登录器制作教程详细请看:)
3,玩家使用我们提供的BF2.exe(此登录器已指向到我们的服务器IP,或采用hosts修改方法指向)就能够正常登陆、注册

命令行操作:
由于这款软件是一款命令行控制工具,所以如果需要手动增加用户,需要在调试台输入命令(注意空格,和不包含中文): create nanfei 123456 hello@qq.com
其中nanfei为创建的账号,123456为密码,hello@qq.com为该账号绑定的邮箱。

命令行中文对照列表:

    create beiji test123 bf2@fpsace.com 创建一个玩家名称为beiji密码test123邮箱为bf2@fpsace.com玩家
    stop/quit/exit 停止服务器命令,三条命令任意可选
    connections 显示当前服务器上的客户端连接数
    accounts 显示当前服务器的用户总数
    delete beiji 删除一个名字为beiji的玩家
    fetch beiji 显示玩家beiji的账户信息
    setpid beiji 980001 设置玩家beiji的PID为980001,如果新增的第一个用户PID被修改的话,紧挨着的第二个会跟着ID数字进行累加


注意:如果你使用Sqlite类型数据库,当用户注册账号的时候会在你的账号模拟器文件夹下会多出一个gamespy.sqlite3,这里面纪录着所有申请者的帐号、密码和Email。而如果你改变了数据库类型,使用mysql,则通过mysql数据库后台可以进行管理。

那么,软件提供了数据库,就可以采用数据库管理工具或者定制开发对其数据进行批量化管理。


实施化部署:
软件本身只是提供BF2的账号私服模拟,那么需要部署到实际用户环境则需要用户通过hosts以下域名指向到当前运行模拟器的服务器中(或通过反编译程序实现):

    gpcm.gamespy.com
    gpsp.gamespy.com
    battlefield2.available.gamespy.com