游戏装备如何设计
A. 游戏装备设计中为何特别注重肩甲的设计
因为肩甲的设计非常的重要,它能够让人物的整体看起来非常的猛乱亏帅气,然后也能够明确人物的角色,能陪档够更加凸显人物枝神的性格设定,外观特别的重要。
B. 绿色征途天界套制作流程
绿色征途是一款游戏,而天界套是扮宽其中的一种装备。以下是绿色征途天界套的制作流程:
1. 收集材料:制作天界套需要收集多种不同的材料,包括但不限于龙鳞、狮鬃、朱雀羽等。
2. 升级装备:为了制作天界套,你需要先升级自己的装备,使之达到一定的等级要求。
3. 找到合适的NPC:在游戏中寻找专门制作天界套的NPC,与其对话并选择制作天界套。
4. 提供材料和金币:向NPC提供所需的材料和一定数量的金币,即可开始制作天界套。
5. 等待制作完成厅搏亮:等待一定时间后,制作完成,天银消界套就会出现在你的背包中。
需要注意的是,制作天界套是一个比较复杂的过程,需要玩家在游戏中不断探索和积累经验才能顺利完成。
C. 在魔兽世界之类的游戏中,设计很多无用的白装甚至灰色装备是为何
在魔兽世界之类的游戏中设计很多无用的白色品质装备或灰色品质装备原因有4:
咱们就来拿拿“魔兽世界”比喻
1:为了让玩家获得更高品质的装备获得一种成就感。
白色或者灰色装备设计的目的不是为了让玩家装备的,是为了衬托出紫色装备,橙色装备等更高品质的装备更有收藏价值,装备更强大,更加难以获得,更加珍贵,玩家获得更高品质的装备后会有一种成就感,喜悦感。
所以游戏内无明贺用的白装甚至灰色装备都是有游戏内相关的价值,如果你有更多知道的原因,欢迎留言补充!
D. 《王者荣耀》装备设置具体操作方法
王者荣耀是如何修改装备的,下面讲解调节装备的技巧,那么设计师究弊含穗竟把这个功能藏到了哪里呢,下面就给大家带来《王者荣耀》出装调整的详细老码步骤。
1.进入大厅后点击下租卜方菜单栏中的备战
2.然后点击局内道具
3.这里面就可以修改游戏内出装的配置,点击修改按钮即可随意更换装备的种类以及顺序
4.即使不知道怎么给角色搭配装备的玩家,也可以点击界面右下角的推荐出装。这里面有热门方案,系统推荐,大神方案以及职业选手的出装推荐。
手机用户可以通过微信公众号搜索软件帝获取更多游戏攻略。
E. 如何设计游戏中道具功能
#ifndef _OBJECT_DEFINE_H
#define _OBJECT_DEFINE_H
//所有乎仔物品所需要的类型都在这里定义
//add by freeeyes
#include <stdio.h>
#include "stdint.h"
#include <WinSock2.h>
typedef uint8_t uint8;
typedef uint16_t uint16;
typedef uint32_t uint32;
typedef uint64_t uint64;
#define MAX_ITEM_NAME 200 //对象名称最大长岁判汪度
#define MAX_ITEM_DESC 1024 //对象描述最大长度
#define MAX_ITEM_ATTRIBUTE 51 //对象属性个数最大大小
#ifdef WIN32
#define MEMCOPY_SAFE(x, y, len) memcpy_s(x, len, y, len);
#else
#define MEMCOPY_SAFE(x, y, len) memcpy(x, y, len);
#endif
inline uint64_t htonll(uint64 v) {
union { uint32 lv[2]; uint64 llv; } u;
u.lv[0] = htonl(v >>冲败 32);
u.lv[1] = htonl(v & 0xFFFFFFFFULL);
return u.llv;
}
inline uint64_t ntohll(uint64 v) {
union { uint32 lv[2]; uint64 llv; } u;
u.llv = v;
return ((uint64_t)ntohl(u.lv[0]) << 32) | (uint64_t)ntohl(u.lv[1]);
}
#define HTONS(x, y) y = htons(x);
#define HTONL(x, y) y = htonl(x);
#define HTON64(x, y) y = htonll(x);
#define NTOHS(x) x = ntohs(x);
#define NTOHL(x) x = ntohl(x);
#define NTOH64(x) x = ntohll(x);
//定义一个函数,可以支持内存越界检查
inline void sprintf_safe(char* szText, int nLen, const char* fmt ...)
{
if(szText == NULL)
{
return;
}
va_list ap;
va_start(ap, fmt);
#ifdef WIN32
vsnprintf_s(szText, nLen, nLen, fmt, ap);
#else
vsnprintf(szText, nLen, fmt, ap);
#endif
va_end(ap);
};
enum ENUM_OBJECT_TYPE:uint16 //对象类型
{
OBJECT_UNKNOW = 0x00, //未知
OBJECT_ITEM = 0x01, //道具
OBJECT_MAIL = 0x02, //邮件
};
enum ENUM_OBJECT_STATE:uint8 //对象状态
{
OBJECT_UNKNOW_STATE = 0x00, //未知
OBJECT_DISPLAY_STATE = 0x01, //可视
OBJECT_INVALID_STATE = 0x02, //无效
};
enum ENUM_ITEM_ATTRIBUTE:uint8
{
ITEM_ATTRIBUTE_MIN_ATTACK = 0x00, //最小攻击
ITEM_ATTRIBUTE_MAX_ATTACK = 0x01, //最大攻击
ITEM_ATTRIBUTE_PHYSICS_DEFENCE = 0x02, //物理防御
ITEM_ATTRIBUTE_MAGIC_DEFENCE = 0x03, //魔法防御
ITEM_ATTRIBUTE_LIFE = 0x04, //生命
ITEM_ATTRIBUTE_MAGIC = 0x05, //魔法
ITEM_ATTRIBUTE_POWER = 0x06, //精力
ITEM_ATTRIBUTE_CRIT = 0x07, //暴击
ITEM_ATTRIBUTE_ATTACKSPEED = 0x08, //攻速
ITEM_ATTRIBUTE_HIT = 0x09, //命中
ITEM_ATTRIBUTE_DODGE = 0x0A, //躲闪
ITEM_ATTRIBUTE_RECOVER_LIFE = 0x0B, //生命回复
ITEM_ATTRIBUTE_RECOVER_MAGIC = 0x0C, //魔法回复
ITEM_ATTRIBUTE_SKILL_ATTACK = 0x0D, //攻击技能
ITEM_ATTRIBUTE_SKILL_P_DEFENCE = 0x0E, //物防技能
ITEM_ATTRIBUTE_SKILL_M_DEFENCE = 0x0F, //魔防技能
ITEM_ATTRIBUTE_SKILL_CRIT = 0x10, //暴击技能
ITEM_ATTRIBUTE_SKILL_HIT = 0x11, //命中技能
ITEM_ATTRIBUTE_SKILL_A_SPEED = 0x12, //攻速技能
ITEM_ATTRIBUTE_SKILL_DODGE = 0x13, //躲闪技能
ITEM_ATTRIBUTE_POSITION = 0x14, //位置
ITEM_ATTRIBUTE_CLASS = 0x15, //物品类型
ITEM_ATTRIBUTE_PHOTOID = 0x16, //图片ID
ITEM_ATTRIBUTE_BASEID = 0x17, //物品基础ID
ITEM_ATTRIBUTE_JEWEL_COUNT = 0x18, //孔槽个数
ITEM_ATTRIBUTE_JEWEL_1 = 0x19, //孔槽1
ITEM_ATTRIBUTE_JEWEL_2 = 0x1A, //孔槽2
ITEM_ATTRIBUTE_JEWEL_3 = 0x1B, //孔槽3
ITEM_ATTRIBUTE_JEWEL_4 = 0x1C, //孔槽4
ITEM_ATTRIBUTE_JEWEL_5 = 0x1D, //孔槽5
ITEM_ATTRIBUTE_VERSION = 0x1E, //道具版本号
ITEM_ATTRIBUTE_USE_LEVEL = 0x1F, //使用等级
ITEM_ATTRIBUTE_LEVEL = 0x20, //道具等级
ITEM_ATTRIBUTE_SYNTHETIC_COUNT = 0x21, //合成所需道具数量(图纸专属)
ITEM_ATTRIBUTE_SYN_BASEID_1 = 0x22, //合成道具1的BaseID(图纸专属)
ITEM_ATTRIBUTE_SYN_BASEID_2 = 0x23, //合成道具2的BaseID(图纸专属)
ITEM_ATTRIBUTE_SYN_BASEID_3 = 0x24, //合成道具3的BaseID(图纸专属)
ITEM_ATTRIBUTE_SYN_BASEID_4 = 0x25, //合成道具4的BaseID(图纸专属)
ITEM_ATTRIBUTE_SYN_BASEID_5 = 0x26, //合成道具5的BaseID(图纸专属)
ITEM_ATTRIBUTE_SYN_BID_1_COUNT = 0x27, //合成道具1的BID数量(图纸专属)
ITEM_ATTRIBUTE_SYN_BID_2_COUNT = 0x28, //合成道具2的BID数量(图纸专属)
ITEM_ATTRIBUTE_SYN_BID_3_COUNT = 0x29, //合成道具3的BID数量(图纸专属)
ITEM_ATTRIBUTE_SYN_BID_4_COUNT = 0x2A, //合成道具4的BID数量(图纸专属)
ITEM_ATTRIBUTE_SYN_BID_5_COUNT = 0x2B, //合成道具5的BID数量(图纸专属)
ITEM_ATTRIBUTE_SYN_NEWID_COUNT = 0x2C, //合成新道具BaseID的数量
ITEM_ATTRIBUTE_SYN_NEWID_1 = 0x2D, //新BaseID1
ITEM_ATTRIBUTE_SYN_NEWID_2 = 0x2E, //新BaseID2
ITEM_ATTRIBUTE_SYN_NEWID_3 = 0x2F, //新BaseID3
ITEM_ATTRIBUTE_SYN_NEWID_C_1 = 0x30, //新BaseID1数量
ITEM_ATTRIBUTE_SYN_NEWID_C_2 = 0x31, //新BaseID2数量
ITEM_ATTRIBUTE_SYN_NEWID_C_3 = 0x32, //新BaseID3数量
};
enum ENUM_ITEM_CLASS:uint8
{
ITEM_CLASS_SKILL_BOOK = 0x00, //技能书
ITEM_CLASS_BOX = 0x01, //盒子(容器)
ITEM_CLASS_EQUIPMENT = 0x02, //装备
ITEM_CLASS_RESOURCE = 0x03, //材料
ITEM_CLASS_JEWEL = 0x04, //宝石
ITEM_CLASS_RUNE = 0x05, //符文
ITEM_CLASS_STONE = 0x06, //石头
ITEM_CLASS_TASK = 0x07, //任务道具
ITEM_CLASS_DRAW = 0x08, //图纸
};
#endif
F. 搭建一个游戏系统,如何做好数值设计
作者:草田
一、系统定位
这一步主要是确定好系统在整个 游戏 架构中属于什么位置,是核心,还是辅助,还是边缘小玩法,不同的定位会影响系统的属性总量、性价比、每日属性成长等。
二、属性规划
属性规划就是设计好系统每个部分、每个等级的具体属性种类和具体数值。例如装备系统,就是每个级别的装备,每个部位分别是什么类型的属性,通常武器就是投攻击属性,铠甲就是投防御属性,然后每个等级武器,具体攻击数值是多少。如果是强化系统,就确定好武器每强化一级,提升多少属性。
这部分的关键是:
1. 属性总量,就是整个系统投放多少属性总值。
2. 属性成长比例,就是每级应该分到多少属性,每级属性的成长幅度是多少。
例如我们做一个装备系统,因为装备是 游戏 的核心系统,属性总量先取 游戏 总属性占比的30%。
接着确定好每个等级的装备的属性比例,这里主要考量的是属性成长比例,装备的属性成长比例是会影响整个 游戏 的成长感受的,其他非核心的系统反应没这么大的影响。
首先确定好 游戏 有多少套装备,例如10级一套,满级60级就是6套。然后使用权重的方式设定好每一套的属性权重。属性权重主要是衡量每一套的成长幅度,调到一个觉得合适的成长曲线。
成长幅度太小,换装备的动力就不足,怪物难度也很难拉开差距。例如10级装备是100点生命,20级装备才105点生命,这样即使不换装备,穿10级装备,加上走位、闪避因素,都能轻松越级打怪了,这样玩家就不会觉得非要穿高级装备。我们需要做到玩家必须穿对应等级的装备,才能挑战过对应难度的BOSS。
成长幅度太大也不行,数值膨胀得太快了,难度体验也会脱节。我们希望穿10级装备的玩家打20级的怪时,只是差了一些,所以打不过,而不是走近就被怪秒,这样体验太差了。
需要找一个适当的中间值,如果不懂就去玩其他 游戏 ,去总结一个你觉得合适的值出来。
有了属性总量和每一级装备的属性占比,每一套装备的属性就出来了,然后再根据部位对属性进行细分,就可以得到每件装备的具体属性数值了。
三、节奏
节奏的核心概念就是时间节点,每个时间节点这个系统成长到什么程度。
如果是装备,就是收集节奏,简单说就是多少天可以集齐一套装备。例如10级装备是3天,20级装备是1周,30级装备是3周。
如果是升级类的系统,就是多少天可以升到多少级。例如坐骑1天到5级,3天到20级等。
把时间节点都定好了,就可以拉出每一级的升级所需时长了。
节奏是系统的核心点,影响整个系统的 游戏 体验。节奏的时间点跟属性的成长幅度,两者是有关联的,他们结合起来就是多少天涨了多少战力,这是数值最核心的部分了。但是什么是合理的节奏,这个没有范式可以直接代入,没有公式可以直接推出来。经过大量玩家用脚投票后,目前市面上还活得不错的 游戏 都是玩家喜欢的节奏。所以要得到一个可用的值,需要自己去大量玩 游戏 ,去体验,去反推,才能得到一个差不多的值,最后上线测试后根据玩家的反馈进行调整。
四、产出
产出的关键是定好产出途径和计算每日的产出数量,最后观察一下日产出总值。
设定好系统的产出途径,然后给每个途径设定好合适的产出数量。这个适合的值,需要根据不同途径去设定。例如副本,每天才1次,一次副本里打3个BOSS,每个BOSS掉个5、6件装备差不多了,这样这个副本一天掉多少装备也就出来了。如果是参加战场活动,那么就是1天获得1次奖励,1次奖励也不可能产出几十上百件装备,这个根据体验走。
产出的关键就是每个途经的产出体验,就是奖励要给够。奖励少了,玩家就不会去玩。最好是能给到一个满足玩家心理底线的最少数量,让玩家都会去玩,但是又不会产出泛滥,因为东西产多了就贬值,不值钱了。
所有途径的平均日产出数量加起来,就是系统的日产出了。
日产出总值就是这个系统每日产出的材料的总价值,价值可以使用 游戏 中的标准货币来衡量,也可以是人民币。这个指标是用来看产出是否合理,产出总值过高,会影响玩家付费。例如这个系统日产出价值1千元,那么玩家付费100元,只相当于多了10%的材料,会感觉不是太划算。如果日产出价值10元,玩家付费100元直接拿到10倍日产出的材料,那么非R玩家可能就不想玩了。具体怎么才是一个合适的值,需要自己去研究消费者心理了,但是底线还是保证绝大多数玩家有比较好的 游戏 体验。
五、消耗
升级类的系统都会需要消耗材料。直接用日产出乘以升级所需天数就能推出每级的消耗了。
消耗做完后,这个系统数值就基本完成了,接下来需要根据几个指标进行调整。
六、性价比
性价比就是(战力/花费的钱),主要看单系统的曲线走势和全局各系统的定位。
首先要给系统升级所需的材料定价,每个材料多少钱,这个可以用 游戏 中的标准货币来定,也可以是人民币。定价后就可以得到系统每级的性价比和整体的性价比曲线了。
单系统的曲线走势一般是先高后低,性价比降低的幅度平滑一点,不能是过山车式的。
全局定位就是看目前这个系统的性价比是不是符合它的定位。核心系统性价比高,边缘系统性价比低,这是因为玩家最关注都是性价比高的成长方式。
如果系统性价比整体高了,可以提高定价、增加消耗,或者削减属性来调整。
七、日成长战力
日成长战力是计算出单系统每天可以给玩家带来多少的战力提升。它是一个参考指标,主要是从全局来看系统定位方面是否合理。系统如果每日加不了多少属性,这就是很边缘的鸡肋系统,如果原本定位是核心系统,那肯定是不合理的。如果定位是边缘系统,结果每日加的战力比核心系统还多,这需要马上削弱。
整个系统的数值设计流程到这里就结束了。
专栏地址:
https://zhuanlan.hu.com/p/148307293