致曾经的老游戏天下霸图1——重写天下霸图计划

零、废话

从小学二年级接触电脑,到现在20年有余。游戏玩来玩去还是老游戏更得我心。本人就玩点帝国时代、信长之野望、文明这类,带有经济、策略、战略的游戏。当然,还有例外就是剑侠情缘三,因为是画风优美的武侠题材游戏。而天下霸图是目前我已知的唯一一款武侠经营类游戏。他集合了经营、养成、战略、策略、还是武侠题材,所以比较合我胃口。

然而天下霸图非常老了,大概是读初中的时候出来的,这款游戏为光谱所出,不知道什么原因游戏bug特别多,ai智商低下,游戏有些地方设计不合理。即便如此也挡不住很多老玩家对此游戏的热爱,有不少玩家去破解了这个游戏,去做游戏的mod,尝试去反编译修复一些bug。作为一枚程序员都知道这是多么困难的事情。我想与其去做mod去反编译修复,还不如重新开发。

在我之前曾有一个玩家重写这个游戏,据说用的wpf完成度在80%左右,之后因个人原因放弃了。代码就烂在他手里了。

本人从小学五年级玩QB、初中玩VB、大学玩ASP.NET和JAVA、工作用C++写医疗软件。虽然已经从研发岗位转为了项目管理,3年没怎么正式撸代码了,但是一直以来对撸代码的兴趣不减。为了让这个游戏能符合自己的一些预期玩法,我计划用c++和QT重写这个2D游戏。边学边做完成人生中正儿八经的第一个游戏(小时候写的军旗游戏这些就不算数了)。

一、目标

1.1.做到80%左右的相似度

1.2.美工部分尽量都从游戏里抓出来

1.3.在游戏经验部分的主体框架完成的差不多且相对稳定的时候,开放源码

此版本的源码在主体代码不会有更大改动的时候就可以开放源码了,否则可能因为本人游戏开发经验不足,以及代码写的太烂最终很难让玩家介入进来相互配合加快进度。

1.4.每个人心中都有一个属于自己的天下霸图

为了这个目标,除了开放源码,更重要的是开放mod制作的方式,如何让玩家能更好的参与到mod建设中来才是完成这一目标的关键。

1.5.拒绝此版本商业化

任何带着美好初衷的东西,商业化很容易变味儿,最终丧失了他原有设定的乐趣

1.6.完成时间3年

计划3年完成这个事情。平时自己工作上事情也很多,经常出差跑客户,搞招投标,又要管产品,还要经常给人擦屁股。回家还有不到2岁的女儿要带,所以时间不充裕。慢慢做,边做边学就是这样。目前已平均每天抽1-2小时断断续续做了些基础工作,唯有愚公移山了。

二、大致涵盖以下内容

2.1.需求整理、游戏调整需求收集(已整理部分,持续整理中)

2.2.大致的架构设计(已做大致的,没有细分)

2.3.几个大的工作量

2.3.1 地图

(1) 游戏地图坐标系转换(已完成)

使用矩阵,将窗体坐标转换为游戏地图中的栅格坐标、栅格坐标转换窗体渲染坐标

(2) 建立游戏地图规则(已完成)

地图存储、地图读取、地图栅格使用情况

(4) 地图渲染覆盖规则(已完成)

分层覆盖渲染,如何处理栅格和移动的人物关系

(5)建筑物导入画一批房子(已完成)

建立导入建筑物的规则、展现等琐碎 

(6) 完成一个地图编辑器

导入画好的地图后,用鼠标选择要修的一些基础建筑花花草草,在地图上绘制建筑保存等

(7) 完成一个小地图,可在地图上切换城市(已完成)

小地图上布局n个城市,城市关联帮派、点击可进行城市切换

(8)地图渲染覆盖问题(完成部分)

地图上建筑物相互遮盖的顺序,人物相互这个的渲染顺序

2d游戏地图渲染图层顺序(1)

《2d游戏地图渲染图层顺序(2)》

2.3.2 城市

(1)初始化城市(已完成)

城市的地图背景渲染、基础属性、帮派关联等

(2)城市基础属性json化改造

目前占时写死到程序里的,后面从json导入,这样方便mod玩家定制

2.3.3 帮派

(1)初始化帮派(已完成)

帮派的基础属性

(2)帮派基础属性json化改造

目前占时写死到程序里的,后面从json导入,这样方便mod玩家定制

2.3.4 人物

(1)人物动画研究(已完成)

逐帧动画播放

(2)人物基础属性(完成部分)

人物基础属性、行程、修炼武功等等

(2)人物在栅格地图上移动

小人可以原地播放动画走路后,需要在地图上完成移动,涉及到小人移动路径与窗体渲染位置的转换计算

(3)路径规划算法

采用A*算法做人物移动时的路径选择算法

(4)人物行程安排(完成部分)

计时器去定时处理人物的当前行程计划,包括人物移动、相应的动画变化、相应的声音变化、相应的数值变化、行程安排面板等

2.3.5 武学体系

(1)武学结构

考虑武学之间的关联性、玩家外部修改的易用性(有可能到时候提供一个UI编辑武学,直接撸json对mod玩家来说也很烦)、武学特效与人物武学动作匹配、武学的威力、武学的消耗、武学的特殊效果等

(2)武学文件存储读取

采用json存储复杂的武学结构

(3)武学体系的可视化编辑(占定)

编辑武学时可直选择小人的动作和武功特效做出绑定关系

2.3.6 物品体系

(1)物品属性

包括图片、名称、是否为某些特殊部位使用、使用效果、生产成本

2.3.7 建筑物体系

(1)建筑物属性(完成部分)

建筑物有什么功效、图片、名称、占位多少、价格多少、人物进来需要匹配哪种造型的动作

2.3.8 交易系统

(1)物品交易

基于装备和生产资料的交易,交易单为随机生成

2.3.9 战斗系统

(1)战斗地图

(2)战斗规则

(3)战斗AI

2.3.10 经营AI

(1)修建筑

(2)经营策略

生产计划、围绕习武的配套计划、发展策略

(3)养成AI

重点培养几个高手、武学修炼方向、日常活动计划

2.3.11 战略AI

(1)进攻策略的选择

(2)防守策略的选择

(3)战略要地的识别

(4)结盟关系处理

(5)出兵策略

猜你喜欢

转载自blog.csdn.net/chduguxue/article/details/82907824