2013年国家体育总局决定成立一支由17人组成的电子竞技国家队,第四届亚室会中国电竞代表队 出战第四届亚洲室内和武道运动会。
2014年1月13日CCTV5《体育人间》播放英雄联盟皇族战队的纪录片。
在2015到2019年间,我国电竞战队取得的无数值得骄傲的成绩,也表现出人们正在逐渐关注并正确认识电子游戏这一新兴事物,越来越多的人们开始接触并接受电子游戏。根据目前发展趋势,据专业人士推测,全民游戏的趋势势必会对游戏本身及其附属服务越来越全面。而电子游戏并不是一个人的游戏,大多时候大家都想和朋友开黑组队一起玩游戏并且大众并没有像职业选手一样高超的操作技术,难免会有游戏体验极差的情况发生,因此游戏服务业具有良好的发展前景。所以针对目前全民游戏发展的需求,我们看到了此类商机。
对于一款电子游戏,玩家的游戏水平良莠不齐。高端玩家上分吃鸡易如反掌却苦于一人独玩游戏的喜悦无人分享,而有的玩家却升星升段难如登天,心情不增反降,这就有违游戏设计的初衷。针对这一现状,本文设计实现了陪玩代练APP。该APP作为玩家之间的桥梁,把高玩和低玩的特点互补互助,使玩家都能获得自己的快乐又不至于沉溺其中。国内已经出现了一些此类的APP,但或多或少的存在一些弊端。比如过程繁琐,用户财产不安全等一系列问题。
“滴滴电竞”APP采用O2O模式,包括线上交流和支付,线上提供服务。对于用户来说“滴滴电竞”提供一个方便找到陪玩游戏或者带自己上分的“大神”的平台,对于陪玩和代练来说,他们可以在自己的闲暇之余利用自己玩游戏好的这方面特长赚一份外快。
用户方面:
人们对电子竞技的关注度不断提高,不同年龄段不同职业的游戏爱好者保证了我们的客户来源。这类用户对游戏体验的追求,内心虚荣的强烈需要是我们移动端开发的主要目标。能为用户提供:陪玩服务,代练服务以及交友等其他一些周边服务。他们既可以选择与打手一起游戏,也可以交于打手为自己上分升段。力求满足日益提高的消费者需求,提供更舒适、便捷的服务。
陪玩选手方面:
对于一些对自己游戏技术有自信或者聊天可以的人可以向平台提交自己的真实身份信息、所陪玩的游戏种类、可约玩时间以及自己的服务方面(代练,陪玩上分,陪玩聊天...),在玩游戏娱乐身心的时间,也可以有一笔收入。让打游戏成为一种变现技能。大神通过分享游戏技能,展开接单约玩服务,获取报酬。
本APP提供急速下单服务,用户可以根据自己的需求喜好选择自己中意的游戏陪练,平台根据及时算法大数据筛选出相关的在线陪练,使用户不至于处于无人可找的尴尬境地。
安全可靠。我们对每一笔交易实时监控,并暂为保管,直到用户与陪练达到双方需求时再结束交易。
公平公正。不管是用户还是陪练一旦出现违反平台规定的行为立即予以惩罚。对用户设置交易完成率显示,对陪练设置接单数和成功率显示,再交易开始前由平台明示双方的基本交易资料。
本平台自带语音系统。
经济方面:在现如今的社会中,电子游戏竞技被越来越多的人所接受,从孩子到成人,从手机到电脑,越来越多的游戏形式兴起,当然也会有相应的比赛,带动越来越多的人关注电子游戏竞技。所以也有越来越多的的周边产业被带动起来,游戏直播、代练、陪玩....而且现在的相关产业并没有达到饱和也没有太大的竞争力。所以提供良好的游戏服务可以为我们带来巨大的收益,所以我们的APP应运而生。我们的APP以为玩家服务为宗旨,让玩家在我们的服务下玩游戏玩的畅快,舒适,然后我们向玩家收取适量的服务费。当然我们的收入来源不止如此,还有玩家为喜欢的代练、主播、陪玩刷礼物,平台从中抽取提成.....
技术方面:我们的APP包括前端设计和数据库的连接,都由专业的技术人员进行设计。
组织方面:我们的小组为六人,而且每个人都有适合我们APP的技能,每个人都有责任心。
优劣势:我们APP的优势在于相比较于其他的同行APP我们的陪玩价钱更便宜更快速;劣势在于刚刚起步的时候可能没有太多的代练资源和客户资源。
对于一款电子游戏,玩家的游戏水平良莠不齐。高端玩家上分吃鸡易如反掌却苦于一人独玩游戏的喜悦无人分享,而有的玩家却升星升段难如登天,心情不增反降,这就有违游戏设计的初衷。针对这一现状,本文设计实现了陪玩代练APP。该APP作为玩家之间的桥梁,把高玩和低玩的特点互补互助,使玩家都能获得自己的快乐又不至于沉溺其中。国内已经出现了一些此类的APP,但或多或少的存在一些弊端。比如过程繁琐,用户财产不安全等一系列问题。
陪玩代练APP需要包含的功能大致有:推荐资讯消息、用户消息互动、用户注册登录与查询、用户信息管理和陪玩信息介绍与陪玩选择等等。
我们的app是一款以游戏代练等为主要功能,同时可以提供其他相关服务。客户体验是整个项目的开发的中心。我们将app的功能分为首页、发现、消息、我的等四大模块,并围绕这四大模块进行前端和后台的设计开发。模块划分如图1所示。

该模块可以细分为3个小功能,如图2所示。

首页的关注,推荐以算法推荐将大神动态推荐到更匹配的用户首页,让同类用户更容易找到自己感兴趣的内容和玩家。并且,App依托大数据,精准推送4个用户喜好的游戏品类在首页,并通过“更多”链接全品类。
在“发现”板块更有陪练的特色品类“聊天室”“五杀BGM”等,在游戏陪练之外提供更多有趣的内容。
用户将在这里完成在线沟通,除了常规的交流外,还可以赠送丰富的礼物种类,增加用户之间的亲密度。用户可以自己发布文字、图片、视频等动态,与其他用户评论、点赞等互动,让用户之间从技能交易成为技能社交。用户与陪练可在此模块进行实时语音交流,让游戏更愉快。

该模块细分为4个小功能
【个人主页】编辑丰富个人形象;
【认证技能】申请和查看”大神”资质;
【订单中心】查看接单记录,并显示”大神”的接单总收入等基础设置。
【个人福利】参与平台活动,帮助平台推广可获得代金券等福利商品。
前端的页面设计我们使用了APICloud进行设计
界面显示如图4所示:

部分代码如图5所示:

“我的”界面设计如图6所示:

“我的”部分代码如图7所示:

“登录”界面设计如图8所示:

“登录”部分代码如图9所示:

“发现”界面设计:

“发现”部分代码如图11所示:

次级界面分别如图12和13所示。


两个界面部分代码如图14和图15所示:


由于时间的关系,此次课程设计的后台部分仅实现了注册和登录模块。
(1)数据库设计
数据库中只有一张tb_users表,表的字段及主键如图16所示。

项目中创建了DbcpPool.java类实现了数据库连接池技术,部分代码如下:
public static void init() {
if(dataSource != null) {
try {
dataSource.close();
}catch(Exception e) {
e.printStackTrace();
}
dataSource = null;
}
try {
//使用Properties对象定义数据库库连接池信息
Properties p = new Properties();
p.setProperty("driverClassName", "com.mysql.cj.jdbc.Driver");
p.setProperty("url",
"jdbc:mysql://localhost:3306/dididata?user=root&password="
+ "&useUnicode=true&characterEncoding=utf-8"
+ "&serverTimezone=GMT%2B8&userSSL=false");
p.setProperty("maxActive", "30");
p.setProperty("maxIdle", "10");
p.setProperty("maxWait", "1000");
p.setProperty("removeAbandoned", "false");
p.setProperty("removeAbandonedTimeout", "120");
p.setProperty("testOnBorrow", "true");
p.setProperty("logAbandoned", "true");
//以指定信息创建数据源
dataSource = (BasicDataSource)BasicDataSourceFactory.createDataSource(p);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
/**
* 从连接池中获取连接
* @throws SQLException
*/
public static synchronized Connection getConnection() throws SQLException {
if(dataSource == null) {
init();
}
Connection conn = null;
if(dataSource != null) {
conn = dataSource.getConnection();
}
return conn;
}
项目中创建了DbUtil.java类提供对数据库访问,部分代码如下:
public static int executeUpdate(String sql) {
int result = 0;
try {
s = DbcpPool.getConnection().createStatement();
result = s.executeUpdate(sql);
} catch (SQLException e) {
// TODO: handle exception
e.printStackTrace();
}
return result;
}
/**
* 执行SELECT语句
* @param sql SQL语句,字符串类型
* @return ResultSet 结果集
*/
public static ResultSet executeQuery(String sql) {
try {
s = DbcpPool.getConnection().createStatement();
rs = s.executeQuery(sql);
} catch (SQLException e) {
// TODO: handle exception
e.printStackTrace();
}
return rs;
}
/**
* 执行动态SQL语句
* @param sql 含有参数的动态SQL语句
* @return 返回 PreparedStatement 对象
*/
public static PreparedStatement executePreparedStatement(String sql) {
PreparedStatement ps = null;
try {
ps = DbcpPool.getConnection().prepareStatement(sql);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return ps;
}
/**
* 事物回滚
*/
public static void rollback() {
try {
DbcpPool.getConnection().rollback();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 关闭数据库连接对象
*/
public static void close() {
try {
if(rs!=null)
rs.close();
if(s!=null)
s.close();
if(conn!=null)
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
(2)DAO模式设计
java源文件结构如图17所示,

项目中采用持久化对象类Users.java、工厂类DaoFactory.java、DAO接口类IUserDao.java和DAO实现类UserDaoImpl.java完成框架设计。其中持久化对象类完成了对对象的封装,接口类定义了一些对User的操作,实现类中实现了这些操作。工厂类和持久化对象类代码设计如图18和图19所示。


(3)注册模块
注册模块分为两步,一是用户数据的填写及提交,二是向数据库插入这些数据,第一步使用表单完成,第二步由UserAdd.java调用DAO的sava方法完成。
表单设计的代码如,效果图如图20所示。