团队项目(第二周)—GG队
项目需求规格分析
队员信息
队员 |
学号 |
叶尚文(队长) |
3116008802 |
蔡晓晴 |
3216008808 |
杜婷萱 |
3216008809 |
龙剑初 |
3116004647 |
于泽浩 |
3116004661 |
项目背景:
近年来音乐游戏层出不穷,其中不乏创新性作品,我们产品将面向爱好音游及RPG游戏的玩家,结合两者的特点开发一款游戏。
真实性:
目前市场上还不停地有各种各样的音游出现,音游实际上是能
给玩家一种体验还没接触过的乐器,或者作为练习某种乐器的
一种途径。所以说音游具有市场的真实性
可行性:
该游戏在显示上主要有有钢琴的乐谱和冒险“跑酷”两部分,听
觉上是玩家通过按下琴键发出的旋律,两者结合后,玩家可在
钢琴跑酷这个游戏中通过“键盘式琴键”可以有很好的体验效果,
同时玩家可以通过乐谱和游戏中的主人公来更好地掌握节奏。
玩家可以在学习的同时体验游戏的乐趣,很大程度避免了学习
的枯燥和游戏的单一性。
价值性:
“游戏+教育”已经逐渐成为社会的发展趋势。游戏不再像以前那
样是为了玩乐的片面产品,很多游戏慢慢转向职业化、多功能化,
其中从游戏中学习是最大的市场趋势。钢琴跑酷这个游戏避免了
市场上很多体验效果较差和功能单一的产品,把游戏和学习较好
地结合在一起。市场上还不断有音游的产品出现,说明音游有一
定的市场。钢琴跑酷这个游戏的最大卖点就是很好地把学习和完
结合在一起,很好地做到了“游戏+教育”。
项目需求:
用户需求:
体验效果好同时模仿操作相似的钢琴音游
摆脱传统音游的单一操作和单一视觉效果
在体验过程可以借助乐谱音符外的动态效果提示
借助游戏闯关效果来更好让玩家保持兴趣
功能需求:
一般需求:
实现高音区乐谱控制主人公跳跃跑图;
实现乐谱的规格化及提高可读性和可编辑性;
实现游戏画面整体可动。
高级需求:
实现低音区控制主人公的行为及动作;
实现用户向游戏自行导入乐谱。音乐以及对地图进行构建;
设置BOSS,根据乐谱和节奏设置QTE(Quick Time Event)操作。
后期改进需求:
实现游戏联网;
支持用户的乐谱和地图上传服务器并分享;
支持导入音乐自动生成对应的规格化乐谱并完成地图构建;
支持用户自行修改游戏贴图,改变风格。
环境需求:
使用语言:
H5(HTML + CSS + JavaScript)
开发软件:
Webstorm 或 Dreamweaver 等前端开发软件
heX(用于将HTML项目转化为.exe的桌面应用程序)
Photoshop(设计页面及元素)
技术需求:
团队要熟悉HTML,CSS,JAVAScript等语言
需同时对多个开发软件的操作熟悉
根据乐谱的音符生成游戏中不同的动态地图地形及障碍物
监听键盘输入指示,游戏中的冒险主人公要作出相应行为
团队分工:
程序构建及设计:叶尚文
根据需求构建整个程序的对象及函数关系,设计界面,制定DOM树和对应的元素设计
动态界面:龙剑初,于泽浩
读取乐谱文件,根据乐谱动态生成地图中的地形及障碍,怪物等。
静态界面:杜婷宣,蔡晓晴
读取组成界面的图片文件,构建静态UI的界面,并实现除游戏主界面外的欢迎页、介绍页等静态页面。
主人公控制及响应:叶尚文
监听键盘动作,根据键盘动作控制主人公行为;读取文件,根据文件判断行为是否正确,并给出相对应的反馈。
测试:于泽浩
测试各个阶段程序是否达到预期目标,并保证程序不会因乐谱文档的错误及数据量而出现严重崩溃。
任务简述:
实现视图:
事前说明:
开发过程中的测试请以heX的显示界面效果为准。
文件读取方式请参考项目内的player.js
文件说明:音乐为欢乐颂
第一行是速率(现在是2秒四小节(8个字符)),第二行开始是简谱,1,2及以下对应高度1,3,4对应高度2,5,6对应高度3,7,8及以上对应高度4。
背景要求:
使用给定图片,在限定的div里通过指定的css及js文件,完成如图背景和前景;
要求五线谱中间的判定线位置可调(调节参数用备注标明);
背景每一张图片都可以独立循环向左移动播放,且移动速度可调(调节参数用备注标明)。
方块以及音符生成要求:
在限定的div里通过指定的css及js文件,读取给定的txt文件(规格化乐谱,路径:“../src/txt/test1.txt”),得出旋律和拍子时间,生成符合旋律高低的音符,字母以及方块,方块向上生成,然后向左移动,音符和字母从右渐显生成向左移动;
音符,字母及方块的移动速率可调,并可调节延迟(两者参数请备注说明);
方块的种类要根据旋律的种类创建:
0x0y:创建种类1的方块;
0x00000y:创建种类2,3的方块,并在中间的0处添加对应数量的种类4的方块;
0xy:循环创建种类5,6的方块。
实例效果:
动作及响应要求:
主人公还没画好,不放图了。。。。
在限定的div里通过指定的css及js文件,读取给定的txt文件(规格化乐谱,路径:“../src/txt/test1.txt”),得出旋律和拍子时间,根据时间及旋律计算得出当前状态;
判定区示意图:
编码规则:
命名:
尽量遵循驼峰原则命名,并在声明时备注作用(如必要)
用于循环、记录状态、暂存的变量请用loop,state, temp开头并加上编号(编号计算以函数为单位)或者说明(如必要)
括号:
大括号内为空前面和内部都不用换行,否则:
左大括号前不换行,后换行;
右大括号前换行,后除规定语句块(else, while等)外换行;
连续同种小括号间空格。
符号:
各类运算符或判断符前后都有空格;
逗号后带空格。
字数:
每行不超过(111 - 11)字符,如超过:
从100字符内的最后空格开始换行;
若是运算符的空格则从运算符前的空格开始换行;
换行后在上一行换行处备注 ”//next line“。
缩进:
用4个空格,tab键请设置为4个空格。
其他:
if/for/while/switch/do等保留字与左右括号之间都必须加空格;
除判断及for/while等外,一行一个语句;
函数中,实现不同小功能的语句块之间空行,语句块内不空行,如必要在语句块前加上备注说明,例:
int a;
int b;
int temp
for(。。。){
。。。
//交换a,b的值
temp = a;
a = b;
b = temp;
}
while 。。。
函数前请务必说明函数功能,若复杂请文档注释说明大概思路。
项目安排:
原安排表:
第6周 |
1.团队组队、团队博客(✔) |
|
2.团队介绍、成员展示、角色分配、选题确定(✔) |
3.制定团队计划安排(✔) |
|
第7周 |
1.需求规格说明书(✔) |
2.原型设计,队员估计任务难度并学习必要的技术(✔) |
|
3.编码规范完成、平台环境搭建完成、初步架构搭建(✔) |
|
第8周 |
1.原型改进(给目标用户展现原型,并进一步理解需求) |
2.架构设计,WBS, 团队成员估计各自任务所需时间 |
|
3.测试计划 |
|
第9周 |
1. 团队项目Alpha任务分配计划 |
2. 连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交 |
|
第10周 |
1.用户反馈+测试计划改进 |
2. 团队Alpha阶段个人总结 |
|
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 |
|
第11周 |
1. 团队项目Alpha博客:事后分析 |
2. 每个团队有一人必须离开,自己寻找下一个接纳自己的团队。团队发博客宣布离队和接纳的成员。 |
|
第12周 |
1. 团队项目Beta任务分配计划,介绍新成员 |
2. 连续7天的Beta敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交 |
|
第13周 |
1. 团队项目Beta博客:发布说明、测试报告、展示博客 |
2. 团队Beta阶段个人总结 |
|
第14周 |
1. 团队项目Beta博客:事后分析, 宣布每人的贡献分 |
第15周 |
1.团队整个阶段总结,分析用户数据,整理文档,保证以后的团队能接手。 |
校正后安排:
第8周 |
初步实现各个模块原始界面效果,合并代码后寻找不足并改进,以尽量避免后续功能实现的代码产生不兼容情况 |
第9周 |
制定Alpha计划,搭建整体框架,实现各模块功能并合并 |
第10周 |
对各个功能模块进行测试,让用户试用并通过反馈进行改进 |
第11周 |
总结收获和不足,团队调整 |
第12周~~ |
依情况从新规划 |
校正方法:
刚开始的规划还没有对项目进行深入的解剖和分析,很多安排都没能很好地按计划完成。
因为本次项目用到的编程语言并不是都会,所以经过分析后,主要的功能和测试放在了第
10和11周两周,在各模块功能完成时就可以进行初步的测试,等预期功能都实现的时候,
再进行统一的整体测试,这样就可以把最终测试出现的不足很好地锁定。
队员感想:
叶尚文:第一次开发自己创造的游戏,有点兴奋又有点紧张。第一次带领队伍,第一次5人的
团队合作,我希望能带领好这个团队。也希望在这个过程中提升自身的领导能力,同时
从中找到自己的不足。
蔡晓晴:这个星期还没有开始写代码,但是叶尚文大佬给了我们一个清晰的架构和代码标准,
十分利于我们后期打代码。这个星期我也学习了很多js的知识。
杜婷萱:感觉开发前的充分沟通,明确的任务分工很重要。我和晓晴共同完成静态背景的实现,
但js刚开始学接触的还不是很多(°ー°〃)因此要向团队多多请教,希望能通过这次的项
目学到更多的知识 (*^▽^*)
龙剑初:在这一周里,团队对项目进行了进一步的探索和理解,在队长尚文大佬的带领下,我
们把项目的主要功能模块和大致的架构做了初步的确定,同时进行了任务的分配。项
目要用到js和css等还没接触过的语言,这对于我来说是个极大的挑战。自知代码能力
不强,但也会尽力。接下来好好努力,跟着大佬们学习。
于泽浩:和同学一起团队协作,每个人都有每个人的长处,让我认识到了自己太多需要学习,
但是团队协作依靠的也不只是每个人的能力,清晰的统筹才能一步步将计划完成。非
常期待接下来一步步将计划完成。
团队项目(第二周)—GG队的更多相关文章
- 团队项目第二周spec设计
本系统针对局域网进行联机聊天.聊天室分为服务器端和和客户端俩部分,服务器端程序主要 负责侦听客户端发来的信息,客户端需要登录到服务器端才可以实现正常的聊天功能. 1.本软件是一款局域网聊天软件,不能进 ...
- bug终结者 团队作业第二周
bug终结者 团队作业第二周 我们小组选取游戏"开心消消乐",回答问题: 1. 此类软件是什么时候开始出现的, 这些软件是怎么说服你(陌生人)成为他们的用户的? 他们的目标都是盈利 ...
- 《团队作业第二周》五小福团队作业——UNO
<团队作业第二周>五小福团队作业--UNO 一.修改完善上周提交的需求规格说明书 THE FIRST改变 首先:我们组的博客无小组分工及占比,这是第一个问题,当时我们在写博客的时候由于很多 ...
- [团队项目]第二个冲刺 看板和燃尽图 Sprint2 6.8/6.9/6.10/6.11/6.12/6.13/6.14
1.开始一个新的冲刺: 起止:2016.6.1~2016.6.14 按照以下过程进行 ProductBacklog:继续向下细化 Sprint 计划会议:确定此次冲刺要完成的目标 Sprint Bac ...
- 团队项目-第二次Scrum 会议
时间:10.24 时长:30分钟 地点:线上 工作情况 团队成员 已完成任务 待完成任务 解小锐 学习官方样例 根据初步讨论结果编写初步的api文档 陈鑫 学习cocos creator基本使用 采用 ...
- 团队作业-第二周-SRS文档
移动课堂点名的用例图:
- 团队作业—第二周—SRS
一.系统整体用例图: 二.用户用例图: 三.医院用例图:
- DLNg[结构化ML项目]第二周迁移学习+多任务学习
1.迁移学习 比如要训练一个放射科图片识别系统,但是图片非常少,那么可以先在有大量其他图片的训练集上进行训练,比如猫狗植物等的图片,这样训练好模型之后就可以转移到放射科图片上,模型已经从其他图片中学习 ...
- 团队项目(HCL队)第二周
一.项目介绍 1.内容 我们队选择的题目是经典90坦克大战的java实现,后续会加入ai,以实现更丰富的体验. 2.预期使用数量 原版的经典90坦克大战拥有众多粉丝,我们在其上进行拓展,目前预计用户量 ...
随机推荐
- MySQL高级-索引
1.索引是什么 索引(Index)是帮助MySQL高效获取数据的数据结构.可以得到索引的本质:索引是数据结构. 可以理解为“排好序的快速查找数据结构” 在数据之外,数据库系统还维护着满足特定查找算法的 ...
- What is API Level?
[What is API Level?] 参考:http://android.xsoftlab.net/guide/topics/manifest/uses-sdk-element.html#ApiL ...
- 注册google账号 解决国内手机注册失败的问题
1. PC端下载夜神安卓模拟器.安装,启动. 2. 在模拟器里的市场应用里下载qq邮箱. 3. 启动邮箱,选择gmail,注册.后续一切顺利. 这是迄今为止,唯一注册顺利的方法.其他方法,手机验证一关 ...
- 122. Best Time to Buy and Sell Stock II (Array;Greedy)
Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...
- day4:vcp考试
Q61. Which two statements are true regarding Virtual SAN Fault Domains? (Choose two.)A. They enable ...
- JAVA 系统变量之System.getenv()和System.getProperty() 用法
Java提供了System类的静态方法getenv()和getProperty()用于返回系统相关的变量与属性,getenv方法返回的变量大多于系统相关,getProperty方法返回的变量大多与ja ...
- [leetcode]314. Binary Tree Vertical Order Traversal二叉树垂直遍历
Given a binary tree, return the vertical order traversal of its nodes' values. (ie, from top to bott ...
- [leetcode]403. Frog Jump青蛙过河
A frog is crossing a river. The river is divided into x units and at each unit there may or may not ...
- phython学习
Python 中文学习大本营 关于作者 赞助本站 The Python Tutorial (Python 2.7.X) 的中文翻译版本.Python Tutorial 为初学 Python 必备官方教 ...
- TPshop学习
笔记大纲: tpshop目录结构 功能模块 函数库 重要配置 助手函数 插件 模板 1.TPshop目录结构 目录结构(来自官方视频截图) 看这个图,目录结构一目了然.下面要讲的内容也是根据这个图展开 ...