图书介绍

大型多人在线游戏开发PDF|Epub|txt|kindle电子书版本网盘下载

大型多人在线游戏开发
  • (美)亚历山大编;史晓明译 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:7115152675
  • 出版时间:2006
  • 标注页数:386页
  • 文件大小:27MB
  • 文件页数:421页
  • 主题词:计算机网络-游戏-应用程序-程序设计-文集

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

大型多人在线游戏开发PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 MMP设计技术2

1.1 《卡通城在线》:面向大众的大型多人游戏2

Mike Goslin2

1.1.1 游戏设计问题2

1.1.2 社会性问题10

1.1.3 总结13

1.2 每个人都需要某个人:怎样让在线游戏玩家进行合作15

Derek Sanderson16

1.2.1 玩家不会进行合作,除非他们必须合作16

1.2.3 提供功能:预先定义还是通过能力定义17

1.2.2 角色扮演是主流:玩家间的合作在玩家可以提供独特的功能时最为有效17

1.2.4 为游戏角色提供挑战18

1.2.5 保持功能的完整性19

1.2.6 帮助玩家彼此找到对方20

1.2.7 帮助玩家进行交流21

1.2.8 总结21

1.2.9 参考文献22

1.3 MMP游戏中的游戏平衡23

Ben Hanson23

1.3.1 为游戏中的数值建立基线(baseline)23

1.3.2 为数值编写模拟程序24

1.3.4 内部和外部测试26

1.3.3 建立游戏中的度量(Metric)26

1.3.5 在发布后对游戏进行平衡27

1.3.6 对新功能进行平衡28

1.3.7 总结28

1.4 使用支付矩阵来设计游戏平衡和AI29

John M.Olsen29

1.4.1 什么是支付矩阵?29

1.4.2 “War”纸牌游戏30

1.4.3 囚徒困境(Prisoner's Dilemma)31

1.4.4 简单的格斗游戏31

1.4.5 不对称的能力33

1.4.7 自动化34

1.4.6 延迟和停止34

1.4.8 总结36

1.4.9 参考文献37

1.5 使用用例来描述游戏行为38

Matthew Walker38

1.5.1 什么是用例?38

1.5.2 为什么要使用用例来开发MMP游戏?38

1.5.3 怎样编写用例?39

1.5.4 如何识别用例?39

1.5.5 用例中的元素:一个标准模版40

1.5.6 漂亮的图表45

1.5.7 开始实现46

1.5.8 用例的指导方针50

1.5.9 总结54

1.5.10 参考文献54

1.6 使用生命值来设计转换因子55

John M.Olsen55

1.6.1 武器的价值55

1.6.2 治疗、防具和减轻伤害58

1.6.3 从NPC获得的战利品59

1.6.4 制造业60

1.6.7 总结61

1.6.6 检验61

1.6.5 无关物品61

1.7 在MMP游戏设计中加入故事情节62

Paul Mclnnes62

1.7.1 为了一个更有意义的MMP62

1.7.2 游戏与故事情节:尴尬的结合63

1.7.3 故事情节在计算机游戏中的功能63

1.7.4 挑战更多的认知能力64

1.7.5 使用有意义行动的最佳场所65

1.7.6 为MMP游戏模式加入故事情节66

1.7.7 公共目标68

1.7.9 参考文献69

1.7.8 总结69

1.8 客户服务和玩家声望:一切都和信任有关70

Paul D.Sage70

1.8.1 捣乱(grief)70

1.8.2 规则只是工具71

1.8.3 意图72

1.8.4 当前的服务部门正在这样做,或许他们还没有意识到72

1.8.5 声望73

1.8.6 正当行为73

1.8.7 恶意行为74

1.8.9 当前使用的行为模式跟踪方法75

1.8.8 多样性导致了所有的差异75

1.8.10 更多的问题76

1.8.11 使用声望76

1.8.12 总结76

第2章 MMP体系结构80

2.1 为MMP游戏制作仿真框架,第一部分:结构建模80

Thor Alexander80

2.1.1 体系结构纵览80

2.1.2 支持类81

2.1.3 核心类83

2.1.4 管理器类和工厂类87

2.1.5 仿真类88

2.1.6 总结89

2.1.7 参考文献89

2.2 为MMP游戏制作仿真框架,第二部分:行为建模90

Thor Alexander90

2.2.1 把用户和行动者关联起来90

2.2.2 动作请求90

2.2.3 动作调度92

2.2.4 事件广播和处理92

2.2.5 服务端事件处理93

2.2.7 客户端代理94

2.2.6 客户端事件处理94

2.2.8 仿真与表示分离95

2.2.9 总结96

2.3 为游戏脚本创建一个“安全沙盘”97

Matthew Walker97

2.3.1 脚本语言与MMP开发97

2.3.2 使用沙盘的理由98

2.3.3 安全沙盘的设计99

2.3.4 在安全沙盘中编写游戏代码106

2.3.5 总结108

2.3.6 参考文献108

2.4.1 为什么MMP游戏需要单元测试110

Matthew Walker110

2.4 大型多人游戏中的单元测试110

2.4.2 单元测试的定义111

2.4.3 单元测试框架114

2.4.4 测试先行的设计117

2.4.5 实用因素118

2.4.6 总结121

2.4.7 参考文献121

2.5 使用Twisted框架进行MMP服务整合123

2.5.1 DIY(Do It Yourself)所带米的问题124

2.5.2 付费找别人来做带来的问题124

Glyph Lefkowitz124

2.5.3 问题小结125

2.5.4 构造一个解决方案125

2.5.5 简介:通用的延迟执行机制125

2.5.6 高层网络服务:全景代理127

2.5.7 基于Web的工具135

2.5.8 整合独立对象137

2.5.9 底层整合:协议与网络139

2.5.10 开发社区141

2.5.11 总结141

2.5.12 参考文献142

2.6.1 纵览143

Jason Asbahr143

2.6 Beyond 2:构建虚拟世界的开源平台143

2.6.2 服务端架构144

2.6.3 客户端架构146

2.6.4 仿真模型146

2.6.5 总结148

2.6.6 参考文献149

2.7 使用并行状态机来创建可信的角色150

Thor Alexander151

2.7.1 状态模式(State Pattern)151

2.7.2 并行(Parallel)状态层152

2.7.3 状态管理器158

2.7.4 跨层阻止(Cross-Layer Blocking)159

2.7.5 总结160

2.7.6 参考文献160

2.8 在MMP服务中使用观察者/可观察者设计模式161

Javier F.Otaegui161

2.8.1 观察者/可观察者设计模式161

2.8.2 基本架构162

2.8.3 服务端架构162

2.8.4 客户端架构166

2.8.5 增强170

2.8.7 参考文献171

2.8.6 总结171

第3章 服务端开发174

3.1 无缝服务器:优点和缺点174

Jason Beardsley174

3.1.1 杀死怪物不止一个方法174

3.1.2 无缝世界模式的原型176

3.1.3 无缝世界模式的优点178

3.1.4 无缝世界的缺点179

3.1.5 总结184

John M.Olsen186

3.2.1 视觉连贯性与精确度186

3.2 服务端对象的更新频率186

3.2.2 需要发送哪些数据187

3.2.3 带宽限制187

3.2.4 每个用户在服务端需要的数据188

3.2.5 管理数据大小188

3.2.6 更新队列189

3.2.7 缺省的更新频率190

3.2.8 计算范围190

3.2.9 调整优先级190

3.2.10 调整队列191

3.2.11 总结192

3.3.1 基本问题193

3.3 MMP服务器开发和维护193

William Dalton193

3.3.2 对复杂度进行管理196

3.3.3 总结199

3.4 小型入口:使用手持设备来接入MMP游戏世界200

David Fox200

3.4.1 无线设备和网络200

3.4.2 J2ME201

3.4.3 BREW(二进制的无线运行时环境)202

3.4.4 无线界面和游戏设计总览202

3.4.5 对象设计203

3.4.6 网络设计:使用代理服务器208

3.4.7 总结208

3.4.8 参考文献208

3.5 使用Python进行精确的游戏事件广播209

Matthew Walker209

3.5.1 事件驱动编程209

3.5.2 延迟调用211

3.5.3 事件广播215

3.5.4 精确的事件广播220

3.5.6 参考文献226

3.5.5 总结226

3.6 在MMP游戏中实现移动和物理模块的注意事项228

Jay Lee228

3.6.1 我们可以发布这个游戏了吗?228

3.6.2 这是一场战争229

3.6.3 服务端永远是对的229

3.6.4 移动的代价230

3.6.5 移动速度232

3.6.6 玩家可以从这里到那里吗?232

3.6.7 碰撞检测234

3.6.8 物品放置236

3.6.9 侵入检测(Hack Detection)237

3.6.10 总结238

3.6.11 参考文献238

第4章 客户端开发240

4.1 客户端移动预测240

Mark Brockington240

4.1.1 游戏的开发需要良好的移动预测240

4.1.2 命令时间同步241

4.1.3 合并路点242

4.1.4 插值和推导244

4.1.5 为瞄准延迟使用反向仿真246

4.1.7 参考文献247

4.1.6 总结247

4.2 保持流畅:异步客户和时空穿梭249

Jay Patterson250

4.2.1 共享状态的基本问题250

4.2.2 航位推测法:时空探索者会做得更好251

4.2.3 仿真时间表示:为时空穿梭建立通道252

4.2.4 直接操纵时间253

4.2.5 总结255

4.2.6 参考文献256

4.3.1 运行时生成的优点257

Sean O'Neil257

4.3 使用程序生成游戏世界:避免数据激增257

4.3.2 运行时生成的缺点258

4.3.3 地形生成算法的分类259

4.3.4 修改程序生成的地形261

4.3.5 高效地渲染程序生成的地形264

4.3.6 生成贴图266

4.3.7 在程序生成的地形进行碰撞检测267

4.3.8 大型游戏世界中的比例问题267

4.3.9 总结270

4.3.10 参考文献270

4.4.1 C++中的内存分配272

Tom Gambill272

4.4 为固定大小的对象编写一个高速有效的分配器272

4.4.2 一个简单的向量分配器273

4.4.3 用户友好的分配器模板275

4.4.4 降低分配器的内存开销277

4.4.5 总结279

4.5 使用贴图定制三维角色280

Todd Hayes280

4.5.1 角色定制的类型280

4.5.2 贴图合成简介282

4.5.3 分层283

4.5.4 贴图定制模版和样本284

4.5.5 样本集合285

4.5.6 总体实现286

4.5.7 对定制系统的进一步改进288

4.5.8 系统的局限性289

4.5.9 总结289

4.6 游戏机平台上MMP游戏的独特挑战290

John M.Olsen290

4.6.1 环境290

4.6.2 登录291

4.6.3 分辨率291

4.6.4 聊天频道291

4.6.6 菜单293

4.6.5 选择目标293

4.6.7 背囊管理和交易294

4.6.8 持久化存储空间的问题295

4.6.9 补充界面295

4.6.10 总结296

Jay Lee298

5.1.1 表298

5.1.2 数据查询和关联298

5.1 关系数据库管理系统入门298

第5章 数据库技术298

5.1.3 关系类型300

5.1.4 属性301

5.1.5 正规化302

5.1.6 操纵数据302

5.1.7 总结303

5.1.8 参考文献303

5.2 使用关系数据库管理系统来编写数据驱动的MMP游戏304

Jay Lee304

5.2.1 最明显的方法——为什么它不可行304

5.2.2 可行的方法305

5.2.4 常量模块306

5.2.3 获取数据306

5.2.5 查找表308

5.2.6 字符串表310

5.2.7 向客户发送数据311

5.2.8 本地化312

5.2.9 总结313

5.2.10 参考文献313

5.3 MMP游戏中的数据驱动系统314

Sean Riley314

5.3.1 在MMP游戏中使用数据驱动系统的优点314

5.3.3 不同类型的数据源316

5.3.2 在MMP游戏中使用数据驱动系统316

5.3.4 由数据驱动的游戏架构的类型319

5.3.5 总结323

5.3.6 参考文献323

5.4 使用数据库来管理游戏状态数据324

Christian Lange324

5.4.1 模型(schema)设计324

5.4.2 数据326

5.4.3 注意事项328

5.4.4 其他方法329

5.4.5 总结331

5.4.6 参考文献331

6.1 从原料到成品:社会经济中的职业生涯334

第6章 游戏系统334

Artie Rogers335

6.1.1 原料获取和加工335

6.1.2 社会经济中的合作制造337

6.1.3 物品制造在社会经济中起到的作用339

6.1.4 总结342

6.2 玩家房屋供给:我的房屋就是你的房屋343

Paul D.Sage344

6.2.1 成长之路344

6.2.2 商业方法344

6.2.4 应该把戟放在哪里?345

6.2.3 地段、地段、地段!345

6.2.5 经验与教训346

6.2.6 总结347

6.3 社会游戏系统:促进玩家社会化及提供游戏回报的另一个途径348

Patricia Pizer348

6.3.1 什么是社会游戏系统?348

6.3.2 为什么要让玩家社会化?350

6.3.3 目前使用的社会系统352

6.3.4 回报社会性游戏的创新方法355

6.3.5 总结358

6.3.6 参考文献359

6.4 为创建和管理行会设计灵活的命令集360

6.4.1 创建361

6.4.2 领导361

John M.Olsen361

6.4.3 标识362

6.4.4 行会维护364

6.4.5 财产365

6.4.6 专用区域366

6.4.7 交流366

6.4.8 总结368

Mark Brockington369

6.5.1 友谊和仇恨的实现369

6.5 创建声望系统:《无冬城之夜》中的仇恨、宽恕和投降369

6.5.2 宽恕372

6.5.3 投降375

6.5.4 玩家对战的设置376

6.5.5 总结377

6.5.6 参考文献377

6.6 城邦政府在在线社区中的作用378

4rtie Rogers379

6.6.1 公民生涯379

6.6.2 参与城邦工作381

6.6.3 定义政治过程384

6.6.4 总结386

热门推荐