小程序需求文档


# 小程序需求文档

# 需求概述

# 需求总体概述

小程序包含单词对战词汇挑战两种核心玩法功能。

  • 其中单词对战包含好友对战、随机匹配、人机对战三种模式,对战模式中,双方根据单词选择释义,选择正确率越高且速度越快的一方获胜。

  • 词汇挑战模式,进入挑战后,根据单词选择释义,提供n条生命值,选择错误扣除一次机会,当生命值归零挑战结束。

另外,含有多个辅助功能,完成整个项目业务闭环。

  • 用户机制:用户有词力值当前选择学习的单词书头像昵称提示卡数目对战局数胜利局数挑战模式最高分数等字段属性。
  • 词力值:每局对战模式结束,可以根据本局得分计算获得相应词力值的增长,挑战模式以最高分挑战分数作为词力值的其中一部分构成。
  • 单词书:小程序包含多本单词书可供选择学习,对战、挑战模式从用户所选取的单词本随机抽取单词。
  • 生词本:对战、挑战过程中,错误的单词将加入生词本,用于用户复习,再之后的学习过程中从生词本中抽一定比例对应单词本的词汇。
  • 提示卡:在对战模式和挑战模式中,提示卡可用于单词释义提示。
  • 排行榜:根据词力值挑战分数降序进行排名展示。
  • 功能设置:可设置对战模式每局的对战词数、单词发音类型、是否开发对战背景音乐、错词/开始时手机是否震动等。
  • 头像和昵称:用于对战模式和排行榜的信息显示。

# 需求概述图

总体功能如下所示:

需求概述

# 需求详细设计

# 对战模式

  • 对战模式含好友对战、随机匹配、人机对战三种模式。
  • 对战双方根据单词选择释义,选择正确率越高且速度越快的一方获胜。
  • 对战过程交互一致,主要区别在于对战双方如何加入到一个对战房间,将从不同模式解析加入房间的交互,然后再整体解析对战过程。
  • 对战过程为一个单词搭配四个中文释义的选择题形式,抽取n个单词,将抽取4n个中文释义,每题四个选项中仅有一个正确答案。

# 好友对战

用户A从首页点击好友对战,根据当前所选取的单词书和每局对战词数随机抽取n个单词创建房间,成为房主,加入房间。

房主可以分享房间给微信用户B,用户B通过房主的邀请加入到房间,点击加入房间进行对战准备。

当用户B加入房间后,房主可点击开始对战开始本局对局。

好友对战

# 随机匹配

首页点击随机匹配,根据当前所选择的单词书进行查找有无房间可加入,若有则加入匹配房间,双方显示匹配成功,然后开始对局。

没有满足条件的房间则根据当前所选取的单词书和每局对战词数随机抽取n个单词创建房间,成为房主,加入房间。

可加入房间需满足以下条件:1. 房主在线; 2. 选择的单词书和房主一致; 3. 当前房间为匹配中状态,仅有房主一个人在房间内。

随机匹配

# 人机对战

通过随机匹配加入房间成为房主,在等待匹配过程中,可以点击开始人机对战,进行对局。

人机使用数据库指定用户用于机器人信息展示,人机选择正确率为80%,选择时间在2 ~ 6秒。

当用户选择选项后,机器人若还没答题则无需等待2~6s,直接进行答题。

人机对战

# 对战过程

房主信息显示在左侧,右侧为普通用户,信息包含:用户头像、用户昵称、本局当前分数、本题答题得分、本题选择状态(错误/正确/未选择)。

倒计时机制:每题选择时间有10s倒计时,如果到10s还没选择,则判定为错误。

每道题有四个选项,其中仅有一个为正确答案,选择完成之后,在选项选择状态处显示本题答题是否正确。

对战过程

# 对战结算

# 挑战模式

# 其他

# 单词书选择

# 排行榜

# 生词本

# 功能设置

# 用户机制