魔兽国家地理

时间:2024-03-22 23:51:05编辑:分享君

魔兽世界用的什么数据库?

引用自cnblogs@Zealic:
最近几天重温了一下WOW,结合最近学习的数据库知识和自己的了解,对WOW的大概体系做了分析。当然,我仅仅只是窥豹见斑而已,希望对WOW有所了解的大侠能给我和向了解WOW的人指点;让世人更加了解WOW,让中国的游戏能够学习(不是抄袭)并超越WOW。

不知道哪来的想法,就想到了WOW的数据库的结构以及程序实现,那么,就来了解一下吧。
首先想到:Game Server 使用的是什么OS和Database
起初猜测为 : Unix/BSD ,数据库为 Oracle
这样比较适合WOW这样的大型网络游戏,因为其存储和数据量极大
网上查到的一些关键资料,可以证明我的猜想和实际相差不大
1.9C在一次服务器故障中的说明,下面只列出关键部分
08:29 收到EVA存储报警邮件,联系数据中心工程师,联系惠普工程师.
08:35 故障应急流程启动,相关人员包括THE9/HP/Blizzard US .
15:33 Oracle专家加入故障应急流程
15:50 暴雪数据库工程师开始与Oracle专家继续分析故障情况.
17:15 暴雪表示暂时还未从他们的admin以及DBA处获得任何有新的消息,他们仍然在研究此故障。
2.Blizzard的数据库管理员招聘要求
Oracle Database Administrator
The World of Warcraft development team is looking for a self-motivated and knowledgeable IT professional to help administer the WoW databases. As the person responsible for handling the database-side of WoW pushes and patches, our Live Team Oracle DBA's job duties would include designing, configuring, maintaining, monitoring, benchmarking and troubleshooting Oracle databases.
Blizzard offers a fun, creative, and technically challenging environment with excellent compensation and a full range of benefits.
Responsibilities:
Provide production on-call support.
Maintain and enhance existing databases.
Perform routine database maintenance.
Work with end users to ensure smooth production rollouts and pushes.
Assist in training other employees.
Requirements:
3+ years professional Oracle DBA experience, including Oracle 9i.
Extensive experience with database performance tuning.
Experience working with large databases (>1TB).
Experience with Oracle RAC and Partitioning features.
Proficiency in Linux/Unix environments including shell scripting.
Plusses:
Strong knowledge of SQL & PL/SQL.
Familiarity with UNIX tools and shell scripting
Familiarity with HP EVA's and Data Protector.
Passion for video games, including MMORPG's

因此WOW的服务器应该为 : HPUNIX + ORACLE
那么我就对WOW的数据库做一些猜想,至于正确与否或者符合程度集合,就无从而知了
主要分为以下几块
-游戏服务器:
这里说的是游戏中的服务器,而非上面提到的物理意义上的服务器,比如,七区的恶魔之魂、黑铁、加基森就是游戏服务器。
-游戏区:
游戏大区,一个大区是由许多个游戏服务器构成的。之所以分大区,我认为完全是因为物理原因,每个区都其物理构成应应该是一个服务器群集,而在这群集上,有许多的数据库实例,每一个数据库实例都对应一个游戏服务器。
-验证系统:
游戏中的登录、排队、验证身份应该都是又这一部分完成的。
-聊天频道:
聊天频道是一个独立的服务器,这一点可以从游戏中人物、地图都很卡而聊天却完全不受影响的情况分析出来,聊天不可以离线发送消息,因此我可以武断的认为,聊天服务器基本不操作数据库,至多在当前无法处理或者玩家暂时接收不到的情况下,使用一些临时的表来保存消息;或者服务器将聊天数据全部保存到数据库中,以方便对玩家的行为查询。
另外,聊天服务器是独立于所有服务器的,每个区的所有游戏服务器都是使用对应于该区的聊天服务器。这样,可以专门针对聊天服务器的特性,对服务器的系统和数据库进行专门的优化
-副本&战场:
副本&战场(以下简称副本)我觉得也应该和聊天服务器相同,是个独立的服务器,不过他与普通游戏服务器不同,并没有保存其他的地图数据,仅仅保存了副本地图的数据。
至于如何实现跨服战场,我以为,应该是将需要的角色数据做拷贝到副本服务器中,并且锁定原本服务器中的数据(表或行),在退出战场时,用副本服务器的数据更新原来的数据。我们可以把战场看做数据库中的临时表,做了处理以后更新到需要保存的地方。
通过上述解释,也可以理解为什么在进入战场时需要加载画面了,加载画面并不仅仅是作为一个过渡画面,它还承载了加载客户端资源,与服务端通信进行处理;显示加载画面时,副本服务器应该是如上所说游戏服务器交换了角色数据。
大型副本与普通副本不同的地方,我觉得仅仅是重置时间和副本策略做了改变而已。
-地图
地图的定义是在客户端的资源中的,为防止用户篡改,BLZ对定义地图的资源文件和DBC进行使用了混淆命名以及检查校验;之所以这么认为,是因为中国WOW公测的时候,出现一些加速外挂,可以让角色直接穿越墙壁、地表等看起来不可能穿越的物体,这便验证了BLZ为了减轻服务器负担,直接在客户端进行了大部分的碰撞检测。
WOW的的实际地图结构和游戏中我们所见到的不一样,他是把一块大陆分成N个小块的地图数据,客户端仅仅需要加载玩家角色所在位置附近的所有地图块就可以了。其技术细节就不做详细分析了。
-东西大陆:
每个大陆都应该是一个独立的数据库,之所以出现加载画面,我认为是因为两个大陆的地形材质大不相同,客户端需要先释放出发大陆的所有资源,加载目的大陆的必要资源,同时转移角色的数据到目的大陆。
-角色:
游戏中的角色应该是被分离成数个表,包括玩家的属性,任务,包裹,邮箱,银行等。一些重要的,比如物品包裹、邮箱、银行,服务器会在很短(相对其他数据而言)的时间内将内存中的缓存数据写入提交到数据库中;而一些相较以上数据不是很重要的数据,则需要很长时间才会提交到数据库。这也解释了为什么服务器回档时,角色的位置和任务等都回档了,而物品却没有回档,这也造成了传说中的双手痛击。
-怪物:
世界中的怪物生成应该是使用了Prototype模式,那么保存怪物的数据其实之需要保存其会变化的值就即可。
-其他:
游戏中总是有一些事件发生,比如:暗月马戏团的来访,万圣节的活动,情人节的活动等等,这些东西应该都是具有伸缩性的,可以想象,为了方便BLZ自WOW的管理和扩展,在服务器或服务器群集管理中心中,应该有BLZ为自己和代理商提供的工具或者说脚本使用指南。至于WOW采用的脚本是什么,这个我就猜不到了,可能是Perl\Python\SH吧,反正不会是LUA。
-行为与技能:
为什么WOW玩起来感觉这么流畅,没有其他网络游戏看起来或感觉起来反应迟钝,WOW并没有每时每刻都与客户端进行通信;其主要工作原理是,客户端首先处理用户的输入,并执行相应的开始动画或处理,而实际显示结果要等待服务端处理并返回后才会显现出来,这就是为什么在掉线后,玩家还做操作角色,但是却无法获得操作结果。
技能和行为差不多,其实很多游戏中的限制都是在客户端进行的,这都是BLZ为了减轻服务端的负担、减少通信量而造成的。那么,我在这里大胆的猜测,只要分析出内存地址或相应代码,WOW是有很多地方可以被篡改的;因为据我所知,目前WOW的所有外挂都是通过暴力修改客户端的内存实现的,而非常见的修改网络封包,BLZ加密还是做的很不错的 :)。

基本上就分析了这么多了,我试图从自己的脑子里挖出更多的东西,可惜所了解的东西仍然太少,没办法,现这样吧。
----------------------------------------------

PS:大芒果单机版WOW采用的MySQL


艾泽拉斯国家地理

艾泽拉斯国家地理:大陆艾泽拉斯世界最初只有一块大陆,在上古之战末期,永恒之井的爆炸使他分裂为数个大陆,包括东部王国、卡利姆多、诺森德和潘达利亚。翡翠梦境翡翠梦境是这个星球潜在的蓝图,翡翠梦境是一个繁盛而原始的森林。泰坦们创造了他与艾泽拉斯连接在一起,泰坦们最初设计如果没有智慧种族的干扰(例如技术开发、资源开采、战争、人为灾难等),那么艾泽拉斯就应该发展成为这样一个世界。海洋我们无从得知海洋有多么宽广,但是我们知道海洋中心有一个巨大的混乱的不断翻滚的漩涡——曾经的永恒之井。

魔兽世界专业术语

GKP (以讹传讹的一种叫法,不过现在很多团队都用的一种大型boss分赃方法.G表示gold,金币,代替DKP的Dragon--即超级boss.也就是团队玩家得到boss掉落物品分赃的时候,用金币买,谁出的买价最高,谁得到,然后把钱分给同队伍其他玩家.)
G团; 金团 (就是类似GKP, 花钱买大型副本超级boss掉落的物品,谁出价格高谁买到,之后他买掉落的钱分给每个队员)
MT (main tank,一般由战士担当,主坦克,表示主力顶住近战敌人的队伍成员)
Ninja (忍者。特指做了一些见不得人的坏事的人,在魔兽世界中通常把那些拾取了属于别人的装备的等不正当行为的玩家称为Ninja,比如那个装备明显是加敏捷的,猎人想要,拾取时候点了需求,结果一个牧师也非要点需求,又不提前说好.)
NJ (就是ninja行为)
OT (Over taunted,过度嘲讽,表示一个队伍里,MT保持仇恨第一,这样敌人只是攻击MT,不会骚扰其他不抗打的玩家,可是其他玩家伤害量过度集中,或者使用了高仇恨技能,导致仇恨第一的位置从MT身上转移,后果就是怪不再攻击MT,而攻击那个新的仇恨第一的角色,严重的会导致全员死亡.)
oom (out of mana,一般布衣职业没有蓝了,用这个命令告诉全队你没有蓝了.比如法师,牧师这类比较重要的布衣,它们没有蓝可能意味着灭团)
roll (扔点,扔股子一样出随机点数,范围1-100.小型团队物品掉落时候分赃手段.谁扔的点高,谁得到物品.)
Raid (就是团队,由2个或者更多5人队伍组成,组成1个raid需要一般至少6个人,少于6人没有太大意义)
RL (Raid leader,团队队长,这个人管全团,不听他的,一般就是灭团.); RL (Roll leader,专门管分赃怪物掉落物品的,也叫Master Loot,由他一人决定掉落分给谁,得罪了这个leader......白打工了...)
tank; 坦克 (顶怪的角色的别称,tank就是抗打,tank也就是去顶boss,吸引boss注意,保护其他玩家)
TS (TS1,第一语音平台,类似"新浪UC Talk",一个在线语音交流工具,方便大型团队的玩家在线配合,及时指挥应对多变的情形)
UT (UTalk,现在名字是"新浪UC Talk",在线语音聊天工具,魔兽世界的玩家使用它主要是为了在大型副本中指挥团队队员用,因为大型副本战况多变,及时发布命令指挥很重要,打字来不及,所以就用语音工具)
AP; 攻强 (attack power,攻击强度,影响伤害量的一个数值)
AH (拍卖行,英文auction house,和哀嚎的简称"ai hao"="AH"重复了,不过根据语境应该不会出太大问题)
AoE; A; 群 (area of effect,效果范围,大陆服务器的玩家一般指那些能对范围区域产生效果的法术,而不是,玩家-怪物,这种点对点的法术.比如法师的奥暴术.现在也特别指区域范围伤害性质的法术,但和同时攻击2个或者多个身旁的目标的那种招数还是有区别.有时为了简单也写作"A",或者说"群")
AFK (away from keyboard,暂离,一段时间在线但是却不进行操作,自动变成这个状态.不过大陆玩家现在也管长期不玩这个游戏的玩家叫afk了.)
buff (增益效果,比如,牧师的真言术_韧,可以帮助其他玩家半小时内增加耐力若干,这时玩家就多了一个同名的buff,就是这个了.很多职业都能给其他的玩家加buff,渺似盗贼的这方面能力最弱)
BB (宝宝, bao bao, 常指猎人的宠物,或者术士召唤的奴仆,还有通过其他方式召唤出来处于玩家角色宠物地位的角色)
BG (BattleGround,战场)bug (程序漏洞,比如游戏有漏洞,比如我上船的时候卡在一个地方,无法动弹)
debuff (减益效果,比如,战士的断筋,可以让怪物移动速度减慢,这时敌人的头像下边就多了一个断筋的debuff标识.一些debuff可以被驱散,比如中毒,诅咒,魔法,疾病)
BoE; 装绑 (Bind on equipped,指装备的灵魂绑定方式,装备后绑定,装备后无法送别人用)
BoP; 拾绑 (Bind on Pick-up,指装备的灵魂绑定方式,拾取后绑定,拾取后无法送别人用)
CD (Cool Down,技能冷却时间,有些技能的冷却时间超级长,从1个小时到长达4天不等)
crit; cri; CR (critical rate,指暴击率)
DD (direct damage,直接伤害)
DMG (damage,伤害)
DoT (Damage over time,在一段时间内不断对目标造成伤害的招数,比如术士的献祭什么的)
DPH (damage per hit, 单次攻击的伤害量)
D1,D2,D3...(D表示dungeon,就是地下城,可以理解成副本.类似T系列,D系列也是套装,相同D系列的套装,名称都有相同部分,这些套装比如盗贼的D1套,就是迅影,迅影手套,迅影腰带,迅影护腕,迅影这,迅影那...总之一套,叫迅影套.盗贼D2套装就叫暗幕,D3套装就叫Assassination.这类套装都划分在dungeon set里)
FM (附魔, fu mo,拼音,一种商业技能,可以强化装备.)
FD (first down, 指世界这么多魔兽世界服务器,副本进度第一的那个,比如欧洲服务器的nihilum工会第一个放倒了大boss,伊利丹,世界第一)
farm (不停打怪,一般都是打一个地区的很少几种甚至只是1种怪,为了某种掉落,中文有时可以叫做"刷")
HP (health point; hit point,玩家角色的生命值.)
HoT (Heal over time,持续加血的法术,比如德鲁伊的回春术)
IAS (increased attack speed,攻击速度加成)
JS (奸商,jian shang,一般指在游戏内倒买倒卖发财的人,比如掌控拍卖行的行情,一些财力雄厚的可以垄断一个服务器内的若干物品的买卖.注意,这个词现在大多时候已经是中性词了,一种游戏玩法,不要认为是贬义.)
JY (精英,Jing ying,能力一般相当于在他级别基础上+10的怪的能力,头像图标周围有黄金龙围绕)

JJ (肌腱,ji jian,一般指[成年蓝龙的肌腱],猎人史诗任务物品)
loot (捡取怪物掉落物品) Mana (那些会法术的角色的魔法值)
MP (Mana point,那些会法术的角色的魔法值)
MM (美眉,妹妹,Mei mei,对游戏中女性角色,女性人物,或者女性的其他生物,或者女性玩家的称呼)
MIN; m (minute,分钟,大多用来指冷却时间,比如1min,1分钟;小时是h,hr,hour;分钟是m;秒是s,sec,second;日是D,或者d,day.比如1D22hr8min,就是1天22小时8分钟)
miss (未击中,攻击时候没有打中)
NPC (Non-Player-Controlled Character,非玩家控制的角色。这种角色通常被服务器控制。也就是一名“电脑”角色。)
NERF (削弱,来自这个游戏,一般指某些boss或者角色的能力被游戏设计人员削弱了.比如原来一些副本夸张的500级的boss,现在不过40+级别...f-_-)
no buff (不加任何buff的情况下)
PFU (play for uber,这个指为了在魔兽世界中成为高阶玩家,在pve方面,副本进度,或者团体pvp等方面领先,一般指工会组织,他们玩家在线时间多,热衷于游戏,追求目标很高,投入很大,成绩令人瞩目)
PFF (play for fun,这个指休闲玩家,一般指这样的玩家组成的群体,一般此类玩家注意pve交互细节,加级速度较慢,高阶副本进度不是很快,以乐趣体验为主)
PK (player kill,对决,结果是杀死对方,和duel有区别,就是duel不杀死对方)
pvp (players vs players,不同阵营玩家互相打)
pve (players vs environment,玩家对环境,野外对立阵营pk需要开pvp,在中国大陆被称作普通服务器)
QF (祈福,qi fu,牧师史诗任务,给史诗奖励双手法杖"祈福",难度极高)


求魔兽世界有关的所有英文简称

  袄。。忘了你是要我们说了。。:
  首先从FB名称开始。。:地狱火半岛的城墙-CQ 地狱火半岛的鲜血熔炉-XX 地狱火半岛的破碎-PS 泰罗卡森林的副本里的迷宫-MG 赛泰克-STK 法力陵墓-FL
  赞加沼泽的奴隶围栏-WL 沼泽-ZZ 蒸汽-ZQ 毒蛇没有简称 刀锋山的格鲁尔-GRL(也又叫GLR 反正看你们F的叫法吧。基本就这两种了。) 虚空风暴的能源-NY 其他几个木有... 风暴要塞-FB(有的地方直接叫风暴。也有的直接喊杀王子) 然后就是 卡拉赞-KLZ里面有个2B王子。。。 祖阿曼-ZAM里面有个叫ZJ(祖金)的是以前巨魔的“首领” 这两个副本是10人副本 然后是25人副本:海加尔山-HS 杀阿克蒙德的地方 黑暗神殿 也就是所谓的-BT 杀伊利丹的地方。这个你明白吧 然后就是太阳井叫-SW 杀基尔加丹的地方
  再说说以前的老副本。先说5人小副本: NY是怒焰裂谷 AH是哀嚎洞穴 YY是影牙城堡 XS是血色修道院 ZUL是祖尔法拉克 STSM是斯坦索姆(其他还有很多小副本就不说了 因为基本不会有人提到) 大副本的话:ZUG是祖尔格拉布 MC是熔火之心 BWL是黑翼之巢 FX是安其拉废墟 TAQ是安其拉神庙 NAXX是纳克萨玛斯
  以上是副本简称 再说说G团一般会说的简称:T6是套装代号一样的称谓,也可以理解为套装的等级.. 现在70级的套装分 T4 T5 T6. T4和T5是5件套装 是比较低级的套装. T6是现在大街上主流的套装名称. 是8件套. 也就是你身上 头 肩 胸 手腕 手 腰带 腿 鞋 这8个部位的系列装备叫T6套装 HS会掉手和头 BT会掉 肩 胸 腿 SW会掉 手腕 腰带 鞋 . 这三个大副本的T6虽然都叫T6但是他们的等级也不一样。 HS的最低 BT高一点 SW的最好。..跑题了。.
  G团一般会说BOSS的名称时 说简称..但不是所有的。.一般会用英语简称的有 DD- 也就是BT的伊利丹 JD- 也就是SW的基尔加丹 AK- 也就是HS的阿克蒙德 还有什么没了吧.... 装备方面也没什么简称 什么蛋刀啦 风剑啦 蛋盾啦 蛋花啦 袄对了。.. 太阳井SW的最后BOSS-JD基尔加丹会掉一把双手剑简称AB叫奥博XXXXXXXX名字比较长。.还有CG 就是橙弓的意思。.
  没了。这回真想不起来了。.队也排差不多了。说这些吧
  FS SS ZS DZ LR XD MS QS 这些对职业的简称我就不用说了吧..都是汉字的拼音开头俩字拼起来的。.
  G团有的解释过了。..
  突然想起来还有好多。.
  比如 JJC 是 竞技场的意思 这里是两队人PK的地方...袄~~PK的意思就是 决斗.. 所以JJC的意思可以理解为古代的那中角斗场..
  PVE 是人对怪 也就是以探索和冲击副本进度而主理念的服务器. 如果聊天中有人提到 PVE装备之类的可以理解是 在副本里掉落的装备。
  PVP 是人对人。. 也就是以玩家们之见角斗为主理念的服务器 如果聊天中有人提到 PVP装备之类的可以理解为 战场里或者竞技场中获得的荣誉换取的装备叫PVP装。...
  ZC是战场的意思 战场里的ZG是战歌的意思.是10人对10人的战场。
  AS是奥特兰克山谷的意思.. 是40人对40人的大战场的简称.
  不行了。..头疼。.总之就像楼上说的 很多简称都是汉字的拼音..

  看到你问题补充我再帮你回答一下关于FS的问题。
  首先FS很好玩.这是公认的.
  其次FS很强大.这也是公认的
  最后FS很风骚.这应该也算是公认的.
  FS无论是伤害 还是保命还是抗怪还是干什么..无论在哪里都可以看到FS的身影 FS的影响力不是单纯的强大可以形容的.FS的作用很多很多 基本上每个地方都需要FS的存在。
  FS还可以带小副本赚钱. 可以自己对抗很多的怪 只要你手法好。
  所以坚持玩下去吧..不会后悔的。


求所有魔兽世界里的英文简称

楼上那个照搬的简称太多了,还只有60年代的东西。而且很多很多都没有用,看样子楼主是新玩魔兽。我给楼主说些主要的。
WOW-魔兽世界+_+
LR猎人ZS战士FS法师SS术士QS骑士(NQ奶骑FQ防骑CJQ惩戒骑)MS牧师(AM暗牧)SM萨满DLY德鲁伊(ND奶德YD野德)DK死亡骑士
常用简写
PVE
打怪
PVP
打人
JJC
竞技场
AFK
不玩了。。。可以去喝杯水,也可以AFK几个月。
ADD
引到不该引得怪了
OT
仇恨太大怪物开始打你了
AOE
范围攻击
最典型
“暴风雪”
AP
攻强
BUG
游戏出错-(好东西)
BLZ
暴雪
Buff给你的有益魔法
3.22国服目前FB(副本)简称(说几个常去重要的)
TOC
十字军试炼
HSL勇气试炼(英雄模式)PTSL(普通模式)别的副本请融汇贯通
ULD
奥杜尔
NAXX
纳克萨玛斯
TBC70团队FB
SW
太阳井高地
BT
黑暗神殿
HS海加尔山
ZAM祖阿曼
KLZ
卡拉赞
60年代团队FB
NAXX
纳克萨玛斯
BWL
黑翼之巢
TAQ安其拉神庙
MC
熔火之心
其实WOW里大部分为拼音简写极个别为英文缩写慢慢了解吧。一口气记不住的。在游戏里有人说了如果你不知道可以问没什么丢人的。


上一篇:珠江人才

下一篇:摩托罗拉手机xt316