简单世界·起源
故事背景
起源 讲述了简单世界系列的诞生。
开发平台:Android
compileSdkVersion 23
buildToolsVersion "23.0.3"
applicationId "com.chendong.game.origin"
minSdkVersion 19
targetSdkVersion 22
versionCode 1
versionName "1.0"
名词
基础属性
-
初始属性
-
力量
-
智力
-
敏捷
-
衍生属性
由基础属性计算而来的属性
-
生命值
- 计算公式(备注,Lv=等级 ,STR =力量,INT=智力,DEX=敏捷)
战士:HP=(Lv2)+(STR * 10)+(INT2)+(DEX3); //10级最佳数据 345
法师:HP=(Lv)+(STR * 7)+(INT4)+(DEX1.2);//10级最佳数据 171
刺客:HP=(Lv1.5)+(STR * 8)+(INT1.5)+(DEX5);//10级最佳数据 242
- 计算公式(备注,Lv=等级 ,STR =力量,INT=智力,DEX=敏捷)
-
魔法值
- 计算公式(备注,Lv=等级 ,STR =力量,INT=智力,DEX=敏捷)
战士:MP=(Lv1.2)+(STR * 2)+(INT5)+(DEX3); //10级最佳数据 112
法师:MP=(Lv2)+(STR * 2)+(INT10)+(DEX3);//10级最佳数据 345
刺客:MP=(Lv)+(STR * 3)+(INT6)+(DEX3);//10级最佳数据 145
- 计算公式(备注,Lv=等级 ,STR =力量,INT=智力,DEX=敏捷)
-
生命恢复
-
魔法恢复
-
攻击速度
-
攻击力
- 计算公式(备注,Lv=等级 ,STR =力量,INT=智力,DEX=敏捷)
战士:ATK=(Lv0.5)+(STR * 2.5)+(INT0.2)+(DEX0.6); //10级最佳数据 99
法师:ATK=(Lv)+(STR)+(INT0.7)+(DEX0.8);//10级最佳数据 40
刺客:ATK=(Lv0.5)+(STR * 1.3)+(INT0.8)+(DEX1.9);//10级最佳数据 66
- 计算公式(备注,Lv=等级 ,STR =力量,INT=智力,DEX=敏捷)
-
防御力
- 计算公式(备注,Lv=等级 ,STR =力量,INT=智力,DEX=敏捷)
战士:HP=(Lv2)+(STR * 10)+(INT2)+(DEX3); //10级最佳数据 345
法师:HP=(Lv)+(STR * 7)+(INT4)+(DEX1.2);//10级最佳数据 171
刺客:HP=(Lv1.5)+(STR * 8)+(INT1.5)+(DEX5);//10级最佳数据 242
- 计算公式(备注,Lv=等级 ,STR =力量,INT=智力,DEX=敏捷)
-
法术强度
-
法术防御
-
物理暴击
-
物理闪避
-
魔法暴击
-
魔法闪避
-
特殊属性
由非基础属性(道具、装备加成等)计算而来的属性
-
物品掉率
-
经验获取率
-
死亡损失率
-
TODO
额外属性
言灵
言灵是本作特色系统,也是核心玩法之一,战斗时采用的语音念咒语的方式来控制角色释放独特的技能
- 预设言灵
系统将预设若干言灵、越强大的技能咒语也相对复杂,当玩家念出相应咒语通过语音识别来匹配咒语文字
(语音识别会有延迟,越长的语音解析起来也相对耗时,此处解决方案为设置为技能吟唱时间,吟唱时间越长的技能会根据相应公式提高伤害,如匹配文字失败,则施法失败。)
*自定义言灵
高等级的特殊【符灵】可以让玩家自行设置【言灵】的释放咒语。
职业
-
战士
·战士拥有独当一面的能力,输出稳定、血量厚、防御高、上手难度低,十分适合新手
佩戴盔甲类型:钢甲
输出 ★★★★☆
生存 ★★★★★
防御 ★★★★★
言灵 ★★☆☆☆
难度 ★☆☆☆☆ (站撸型) -
法师
·法师做为通慧者,拥有强大的魔法伤害以及对言灵的控制有与生俱来的天赋,但在战场上如何存活得更久成了所有选择法师的玩家共同面对的难题
佩戴盔甲类型:布甲
输出 ★★★★★
生存 ★★★☆☆
防御 ★★★☆☆
言灵 ★★★★☆
难度 ★★★★☆ (主要在于能及时且准确的释放言灵) -
刺客
·刺客做为最危险的职业,各方面的能力都不凡, 超高的爆发及灵活的身躯成了战场上的梦魇
佩戴盔甲类型:皮甲
输出 ★★★★★
生存 ★★★★☆
防御 ★★★★☆
言灵 ★★★☆☆
难度 ★★★☆☆ (装备、技能、言灵的搭配)
系统
用户系统
登录
保存用户名、保存密码(加密)
注册
用户名、邮箱、手机注册
账户管理
修改、找回密码
角色系统
即为游戏角色,最多可创建6个游戏角色
创建角色
角色名称:不能超过14个字符 (112字节) 且不能与其他角色名字重复
角色头像:
- 本地上传
打开相机选择图片-剪裁图片-本地保存一份、服务器上传一份、优先获取本地图片、图片命名为("head"+用户id),保存路径为root目录/icon - 预设头像
将提供6种默认头像供选择
角色初始天赋:
采用随机生成(掷色子)三种初始属性,每个参数都不会超过10点,可无限重置
选择角色
角色列表,展示头像、名称、职业、等级
删除角色
角色删除是危险操作,不删除后台数据,但将角色标记为不可用 (life="end")
装备系统
装备分为4类(1. 武器 2. 盔甲 3. 饰品 4. 符灵)
物品评分(0.浅黑色 1.绿色 2.蓝色 3.紫色 4.橙色 5.粉色 6.红色)从低到高
-
武器
提供基础属性:三围、攻击力、法术强度、物理暴击、魔法暴击
-
巨剑
-
板斧
-
魔杖
-
法杖
-
匕首
-
镰刀
-
盔甲
提供基础属性:三围、生命值、防御力、法术防御
-
钢甲
-
布甲
-
皮甲
-
首饰
提供基础属性:三围、魔法值、物理闪避、魔法闪避
-
符灵
提供基础属性:元素属性加成(1:火系 2:水系 3:风系 4:雷系 5:光系 6:暗系)
符灵是释放言灵的媒介,佩戴不同属性不同等级的符灵可以释放相应的言灵,言灵的强度跟符灵的优劣成正比
锻造
除了普通装备,所有的装备都可以通过锻造来强化,一共从低到高6个评分等级
0.普通 1.精良 2.优秀 3.史诗 4.传奇 5.神魔 6.神器 -分别对应颜色
0.浅黑色 1.绿色 2.蓝色 3.紫色 4.橙色 5.粉色 6.红色-
每个等级所需要的强化材料数量各不相同
材料消耗数量公式如下:(装备携带等级/10+已强化次数)X 装备评分等级int materialNum = (equip.getLevel()/10+equip.getForge().getEnhance())*equip.getGrade()
例:强化20级的优秀(评分2)装备,已结强化成功了3次
则需要对应装备的强化材料 (20/10+3)* 2=10个 强化次数有上限(maxForgeNum),无论成功与否,超过此强化次数的装备无法再次强化()
强化成功的最高值是20,强化成功超过20次也无法再次强化
强化失败几率公式
装备已强化次数 X (4+装备评分等级/10)
例:强化任意等级的优秀(评分2)装备,已结强化成功了3次
则失败几率为 3(4+2/10)= 12.6 %
战斗系统
PVP
-
竞技场
PVE
-
副本
-
地下城
言灵系统
物品系统
社交系统
商城系统
出售游戏道具
-
装备类(武器、盔甲、饰品、符灵)
出售各个等级的白色基本装备和限时供应装备(获取数据库值)
-
道具(药水和卷轴)
药水最多买10个
对象
-
角色 - AVPartBean
- String - objectId:角色唯一标识,创建角色后台产生的随机ID
- int - clazz : 职业 (0:无职业,1:战士。2:法师,3:刺客)
- String - name :角色的名称
- int - level:等级
- int - bINT :基础智力值
- int - bDEX :基础敏捷值
- int - exp :当前经验值
- int - maxExp:最大经验值(升级所需经验值)
- int - hon:当前经验值
- int - exp :当前经验值
- int - honor:荣誉值
- int - money:金币
- int - sp:剩余技能点
- int - stats:剩余属性点
- int - money:当前经验值
- int - money:当前经验值
- Owner- owner :所有者
- Date - createdAt; //创建时间
- Date - updatedAt; //上次保存时间
-
物品 - ItemsBean
- int - iconId; //图标id
- int - level;//物品等级
- int - clazz;//物品适用职业(0:无职业,1:战士。2:法师,3:刺客)
- int - price; //物品售价
- int - itemType; //物品的种类 ( 1.装备 2.道具 3.材料 4.杂货 5. 特殊物品)
- int - grade;//物品评分(0.浅黑色 1.绿色 2.蓝色 3.紫色 4.橙色 5.粉色 6.红色)从低到高
- boolean - bind; //物品是否绑定
- boolean - wear; //是否可以佩戴
- Owner - owner; //拥有者
- String - id; //物品id
- String - name; //物品名称
- String - depict; //物品描述
- List<EquipAttribute> - equipAttributes //物品属性列表
-
装备 - EquipBean extends ItemsBean
(1. 武器 2. 盔甲 3. 饰品 4. 符灵)
Forge - forge;//锻造相关
int - equipType;//装备类别
-
武器- WeaponBean extends EquipBean
- int - weaponType; //武器种类 (1.巨剑 2.板斧 2.魔杖 4.法杖 5.匕首 6.镰刀)
-
-
盔甲- ArmorBeanextends EquipBean
- int - armorType; //盔甲种类 (1.铁甲 2.布甲 3.皮甲 )
-
-
饰品- OrnaBeanextends EquipBean
- int - ornaType; //饰品种类 (1.戒指 2项链 3.手环 4.吊坠)
-
-
符灵- RuneBean extends EquipBean
- int - runeType; //符灵种类 (1:火系 2:水系 3:风系 4:雷系 5:光系 6:暗系)
-
-
道具- PropBean extends ItemsBean
道具分为4类(1.药剂 2.卷轴 3....)
int - propType;//道具类别
-
药剂 - DrugBean extends PropBean
TODO
-
-
卷轴 - ReelBean extends PropBean
TODO
-
-
材料 - MaterialBean extends ItemsBean
TODO
-
杂货 - ExtraBean extends ItemsBean
TODO
-
特殊物品- SpecialBean extends ItemsBean
TODO
-
装备属性- EquipAttribute
1.基础属性:装备的基础模板属性,每件装备都是一个固定范围的基础属性
2.额外属性:由锻造、加强、等升级装备增加的额外数值
3.特殊属性:特殊装备属性,装备突破融合等
- String name; //属性名称
- int type; //属性类别
- int nexus; //影响何种属性关联
- String depict; //属性描述
- int value; //数值
- String source; //属性来源
//构建示例
new EquipAttribute("力量", EquipAttribute.普通属性, AttributeFormat.力量, "增加基础力量属性", 6, "基础");
new EquipAttribute("力量", EquipAttribute.额外属性, AttributeFormat.力量, "增加基础力量属性", 10, "强化");
new EquipAttribute("炙热", EquipAttribute.特殊属性, AttributeFormat.火系伤害, "这把武器被火焰包裹着,增加火系伤害", 20, "融合")
-
锻造(强化)对象- Forge
- int enhance; //强化成功的次数 决定显示武器 +几
- int forgeNum; //锻造次数
- int maxForgeNum;//最大锻造次数