魔兽世界(AzerothCore)机器人队友单机版服务端编译说明

vinci 发布于 13 天前 31 次阅读


网络游戏一个人玩太难了,下面我们增加机器人玩家来解决问题,机器人玩家就是和真人玩家一样的角色,你可以加好友、加公会、组队做任务,他们一样可以学技能、做任务、换装备……击杀对立阵营一样有荣誉,除了这些角色不是真实玩家控制,一切行为和功能和玩家角色没有区别。

也就是当你增加了足够多的机器人玩家后,哪怕是单机版,也感觉不到和网络游戏有太大的差异了,因为有一堆机器人玩家和你一起练级做任务下副本,在野外或城里还会不时的看到机器人玩家忙碌的身影,虽然现在和机器人玩家聊天还不太行,但是有了chatGPT聊天也不再是不可能实现的体验了。

同样先上图看效果:

v2-cadb564d0a0f6e27a346f3ba17664df4_1440w
v2-9ca2ef207ad9416d569819d2c0f7204c_1440w
v2-d2e809169a5f2433d6b8c9f1f2b7f380_1440w

因为前面详细介绍过编译教程,这里一切从简,增加机器人队友是使用module来实现,但是多数机器人module也需要动服务端源码,所以这里使用了第三方的AC端。其步骤为:

  1. 下载azerothcore服务端源码
  2. 下载playerbots模组到源码
  3. 编译azerothcore服务端
  4. 配置服务端并运行服务端初始化数据库
  5. 启动服务端开服游戏

也就是多了下载module的步骤,其他部分操作流程基本不变。

服务端源码下载

git clone https://github.com/liyunfan1223/azerothcore-wotlk.git --branch=Playerbot

安装机器人玩家模组

cd azerothcore-wotlk
cd module
git clone https://github.com/liyunfan1223/mod-playerbots.git --branch=master
v2-7b3df207ef56757550738607eb6d8fac_1440w

编译服务端

编译流程和以前教程完全一至,这里不再详细介绍,请直接看相关文章。

在cmake时会多一点内容,保持默认即可:

v2-69e7fa5522af56f3639f56b74b0e6886_1440w
v2-bad8bbcd14b82a6359297cf94b15adcc_1440w

特别需要注意的是因为机器人模组是国外英文版的,只支持enUS的DBC,所以在提取 vmaps、maps、dbc、cameras和mmaps这个环节,有所不同,必须从enUS客户端中提取,否则进游戏后会发现机器人全都没有技能

v2-7001330c31e4c9835c2d48b380f8efae_1440w

魔兽世界v3.3.5.12340 enUS客户端下载地址:

wowdl.net/client/World-

配置服务端

注意新编译的服务端配置文件多了modules目录,其中多了一个playerbots.conf.dist

v2-790b61702db0316bab803ad2b91a6b04_1440w

而原worldserver.conf.dist底部也多了以下内容:

##################################################################################
#                                                                                #
# Logging Stuff                                                                  #
#                                                                                #
##################################################################################

Appender.Playerbots=2,5,0,Playerbots.log,w
Logger.playerbots=5,Console Playerbots

所以我们需要把这部分内容增加到我们的worldserver.conf底部,并把modules目录中的playerbots.conf.dist改名为playerbots.conf,这个玩家机器人的配置文件保持默认即可,配置中会在游戏中增加200个机器人账号,同时会在线生成50个机器人玩家。

# Random bot count
AiPlayerbot.MinRandomBots = 50
AiPlayerbot.MaxRandomBots = 50
AiPlayerbot.RandomBotMinLevel = 1
AiPlayerbot.RandomBotMaxLevel = 80

# Enable/Disable rotation of bots (randomly select a bot from the bots pool to go online and rotate them periodically)
# default: 0 (disable, the online bots are fixed)
AiPlayerbot.EnableRotation = 0

# Bots pool size for rotation (should be less than RandomBotAccountCount * 10)
AiPlayerbot.RotationPoolSize = 500

# Accounts to create for random bots
AiPlayerbot.RandomBotAccountPrefix = "rndbot"
AiPlayerbot.RandomBotAccountCount = 200

以上配置修改好后,启动worldserver.exe会自动创建机器人玩家相关数据表,确认即可。

v2-e56297eeaa8bcbfdfaf8d8f6aa6b1f29_1440w
v2-14dd8f3c2e71ccbd47de53c9b4a2f7e5_1440w
v2-ce06d38d3857e732b151e51c48e67afb_1440w

其它部分直接参考以前的AC端编译教程,启动服务器,现在启动会提示机器人玩家自动登录,如下默认登录了50个角色在线:

v2-0be506daebe11a2e28416484ecd76396_1440w
v2-1add0f4ffbe08c9482dc018f22813fcb_1440w
v2-6f14941a417147aa1ef4745502e08fc8_1440w

进入游戏

现在客户端进游戏,在社交查询中刷新看看,是不是多了50位在线玩家?可以邀请他们为队友,一起下副本,所有机器人都会自动配合你。

v2-cadb564d0a0f6e27a346f3ba17664df4_1440w

因为建公会需要10名玩家,找不到另外9人签名?现在有机器人玩家了,直接让他们签名即可。

v2-9ca2ef207ad9416d569819d2c0f7204c_1440w
v2-deb8b2556978457f0f49f3e059a78074_1440w
v2-a8ba29a5f7d4493a136fe3de8acad3bd_1440w

在副本中机器人会主动捡尸体,但是会放弃装备,除非你主动给他们,你可以给机器人队友装备,如果给的装备比他现在的更好,会自动装备上。

哪怕你不在线了,这些机器人玩家也会在线游戏,看看我这边服务器上在线玩家排行榜(机器人都是英文名的角色):

v2-1b2d5240d308941caa11c7ac28571299_1440w

而且他们一样会参与PVP对战,就和面对真实玩家一样:

v2-20e8eafb2579583ef35137d781e3ec8c_1440w

机器人管理指令

ike3.github.io/mangosbo

游戏中可以有二种机器人队友,一种就是服务器自动随机生成的机器人玩家,他们的种族/职业/等级你不可控,你可以加好友也可以组队,还可以一起做任务,就把他们当真实的玩家一样,如果你下线了,他们只是离开你,自己在游戏中继续练级;另一种就是自己召唤的机器人,使用

.playerbot bot addclass warrior/paladin/dk/rogue/druid/hunter/shaman/mage/warlock/priest

指令增加指定职业机器人,你可以使用.playerbot bot init=auto *指令让他们自动初始化到你的等级,但你下线后他们也会自动下线,这就像是你的机器人小号一样,所以一定要加为好友,方便自己持续培养。

当然,你也可以直接把自己的小号以机器人的方式加到游戏中一起组队练级:

.playerbot bot add 角色名

RANDOM BOT

指令需要在队伍中或私聊发送

指令 说明
summon 传送队中机器人到你身边来
grind 机器人练机(全队机器人自动攻击附近能提升经验值的怪物)
follow 让机器人跟随自己
trainer learn 让机器人学习技能(要在技能NPC处并选中NPC)
release 让死亡的队友机器人释放灵魂
add all loot 让机器人扫荡尸体
flee 让机器人逃跑到你所在位置并跟随你
@tank/@dps/@heal/@melee/@ranged flee 让指定类型机器人逃跑
attack 让机器人攻击目标
@tank/@dps/@heal/@melee/@ranged attack 让指定类型机器人攻击目标
formation arrow/queue/near/melee/line/circle/chaos/shield 改变阵型
stay 让机器人原地不动
drink 让机器人喝水
stats 查看机器人当前状态
quests 查看机器人任务状态
talk 让机器人和选择的NPC对话(完成对话类任务)
spells 查看机器人法术列表
reset botAI 重置机器人AI
help 私聊机器人可以得到指令帮助

SUMMONED BOT

对自己召唤的机器人还可以使用以下.playerbots指令:

指令 说明
.playerbot bot init=auto 初始化队伍中选定的机器人
.playerbot bot init=auto * 初始化队伍中所有机器人
.playerbot bot add 让队伍中选定机器人上线
.playerbot bot add * 让队伍中所有机器人上线
.playerbot bot remove 让队伍中选定机器人下线
.playerbot bot remove * 让队伍中所有机器人下线
.playerbot bot addclass warrior/paladin/dk/rogue/druid/hunter/shaman/mage/warlock/priest 增加指定职业机器人

插件管理

除了以上指令的方式,还可以安装unbot插件来更方便的管理机器人队伍:

github.com/liyunfan1223

v2-1f23099f31422616325b1a2fa4afb2eb_1440w
v2-d8bfe89fc539cfddfbafacc727cb4f22_1440w
此作者没有提供个人介绍。
最后更新于 2025-05-19