[T.5] 团队项目:功能规格说明书

项目 内容
这个作业属于哪个课程 课程社区
这个作业的要求在哪里 作业要求
我在这个课程的目标是 凝聚整个团队通过一定的软件开发流程,在预计时间内发布"足够好"的符合用户需求的软件,并证明其是可维护和持续发展的,并在其中做出应有的贡献,提升进行软件工程开发的能力。
这个作业在哪个具体方面帮助我实现目标 通过实验作业,明确了平台需要实现的所有功能,并锚定了alpha和beta阶段所需要完成的不同阶段性任务,使项目工作流程化、阶段化,便于按时验收,保证项目如期上线。

一、概述

WildCard 是一个支持自定义规则的卡牌联机游戏平台,旨在通过可视化编程界面,降低用户开发自定义卡牌游戏规则的难度,丰富卡牌类游戏的玩法,提高用户自定义程度,并为玩家联机游玩自定义规则提供可能。

二、概念说明

概念名 含义
自定义规则 由用户在本项目所述“自定义规则构建系统”中设计得到的卡牌游戏规则。
规则开发者 指利用本平台提供的“自定义规则构建系统”进行逻辑设计与图形资产配置的用户。
游戏房间 承载特定自定义规则的联机逻辑实体,通过房间ID进行唯一标识。
房主 游戏房间的创建者,拥有开始游戏、踢出玩家、转让房主的权限。
游戏界面 对局进行时的交互界面,根据自定义规则动态加载图形资产、展示手牌及对局状态。
图形资产 由自定义规则定义的部分游戏界面显示效果,如背景、卡牌背面样式、卡面样式。
流程组件 规则构建系统中的逻辑单元(如“条件分支”、“循环”、“数值计算”),用户通过连线组合实现游戏逻辑。
对局 指在特定游戏房间内,由多名玩家,基于某单一选定的自定义规则,进行的一次完整的游戏过程。
对局回放 系统记录的对局操作序列,支持用户在对局结束后,通过此操作序列回顾对局流程。
平台管理员 本平台的管理用户,有权限进行规则审核,以及举报的审理。
规则发布 开发者将完成的规则提交至审核队列,申请上架规则市场的过程。
规则审核 平台管理员对提交规则的合规性(政治、暴力、色情等)进行的检查。
举报 玩家对违规用户行为、违规头像/用户名或违规规则内容发起的投诉流程。

三、典型用户与应用场景

用户类型 身份特征 潜在总量与占比 使用习惯与期望
规则开发者 资深卡牌玩家,具备一定的规则设计思路。 较少(约 10%) 习惯在 PC 端长时间停留;期望低门槛实现自定义卡牌规则。
普通玩家 轻度或中度玩家,热爱卡牌类游戏,寻求卡牌规则上的新鲜感。 极大(约 85%) 希望利用闲暇时间,体验多种新奇的卡牌规则,并联机游玩这些新奇的规则。
平台管理员 运营团队成员,负责平台内容的合规性审查。 极少(< 5%) 每日固定时段处理举报与审核;期望能够审核自定义规则的上架,以及用户举报请求。
场景一:自定义规则的开发
  • 背景:小A是一个重度斗地主爱好者,但他玩腻了传统的斗地主,他想设计一款“四人斗地主”,让斗地主游戏中出现两个地主!
  • 步骤
    • 打开自定义规则构建系统,创建一个新规则,并拖拽流程组件,完成自定义规则的构建。
    • 上传自己设计的卡面等图形资产
    • 规则开发完成后,规则开发者A选择将其发布至规则市场。在点按“发布”后,系统提示进入审核队列。在平台管理员完成审核后,这个规则将被上架到平台的规则市场,供平台上其他玩家联机游玩。
场景二:自定义规则的联机游玩 + 对局后回放
  • 背景:同样热爱斗地主的小B、小C、小D、小E,某日突然打听到,小A在一个自定义卡牌规则平台上,创建了一个“四人斗地主”规则,而且还能联机游玩!他们决定联机玩一玩小A开发的这个规则。
  • 步骤
  1. 小B进入游戏房间创建页面,完成了游戏房间的基本配置。
  2. 小B开始选择游戏房间要游玩的规则。他从房间创建页面,进入了规则市场,找到了小A开发的规则。
  3. 小B完成了房间的创建,获得了房间的ID,和一个记录了房间ID的二维码。此后,他把这些信息分享给了小C,小D和小E,并进入了游戏界面,等待剩下三人加入。
  4. 对于小C、小D、小E,在房间加入界面,他们或是扫描小B分享的二维码,或是直接输入了房间ID,成功进入了小B创建的房间,以及游戏界面。
  5. 四人开始游玩起了这款“四人斗地主”,玩得不亦乐乎。
  6. 对局结束后,四人惊奇地发现,这个平台居然还提供对局回放功能!正好,四人刚才有人险胜一场,于是他们进入对局历史界面,点击查看回放,回味起了刚才对局的精彩操作。

四、系统功能描述

用户系统

此部分功能进行常规的用户账户管理。具体包括:
  • 注册:用户在注册页,提供账户名,邮箱与密码;随后,点击“发送验证码”按钮,系统会向用户的邮箱发送一个验证码;在正确填写验证码与上述账户信息后,即可完成账户的创建。
  • 登录:用户在登录页,使用用户名或邮箱指定账户,并输入正确的密码后,即可登录账户,进入平台。
  • 密码修改:在用户信息管理页,用户给出原密码,以及想要修改的新密码。当用户输入的原密码与当前账户密码一致时,账户密码将被更新为用户指定的新密码。
  • 账户名修改:在用户信息管理页,用户可修改当前账户名。仅可使用未被其他用户使用过的账户名。
  • 头像修改:在用户信息管理页,用户可自行上传自定义图片,作为账户的头像。
  • 邮箱修改:在用户信息管理页,用户可修改当前绑定邮箱。指定新邮箱地址后,平台将向该地址发送一确认链接,仅在点击该链接后,更新生效。仅可使用未被其他用户使用过的邮箱。
  • 密码找回:用户在登录页,可通过点击“找回密码”进入找回密码页。在找回密码页输入账户绑定的邮箱,平台会向此邮箱发送密码更新界面的链接,用户在这一密码更新界面,给出新密码,完成密码的更新。若用户给出的邮箱无对应账户,则提示“账户不存在”。

自定义规则构建系统

此部分包含两个功能,包括图形化规则构建以及图形资产自定义
对于图形化规则构建,用户通过组合平台提供的“流程组件”,完成自定义规则有关逻辑的构建。
受限于篇幅,此处不详细阐述“流程组件”的具体设计,只对构建过程中用户需完成的功能操作进行介绍:
  • 构建对局流程图:用户通过组合平台提供的流程组件,完成对局流程逻辑的编写。
  • 构建牌型:用户通过组合平台提供的流程组件,完成牌型判断逻辑,以及牌型内部优先级比较逻辑的编写。
  • 构建牌型间比较关系:用户以牌型为节点,构建有向无环图,描述牌型之间的优先级次序。
  • 构建类:用户可视自定义规则需要,自行创建类,并定义与修改类中包含的属性及方法。
  • 构建类中方法:用户通过组合平台提供的流程组件,完成自定义规则中类的方法的编写。
对于图形资产自定义功能,包含以下内容:
  • 设定背景:设定用户游玩此自定义规则时,在游戏界面中看到的背景样式。
  • 设定卡牌背面:设定用户游玩此自定义规则时,在游戏过程中看到的卡牌背面样式。
  • 设定卡面:指定图形化规则构建中,卡牌属性的一组取值对应的卡面样式。

功能可能带来的问题与副作用

  1. 用户创建的自定义规则,可能使用侵权/违法有关法律法规的图形资产。自定义规则描述的游戏背景,可能违反有关法律法规。 解决方案:引入规则审核机制,仅在审核通过后,才可上架规则市场,供用户游玩。同时设置举报机制,允许用户对违规内容进行举报。
  2. 用户使用的图形资产,可能质量较高(如 4K 卡面),可能导致加载缓慢。 解决方案:加入素材预压缩机制

联机系统

本部分旨在为在本平台上开发的自定义规则,提供多人联机游玩功能。
联机游玩以“游戏房间”为单位进行。游戏房间由唯一的房间ID确定,其类型是一个字符串。
在“自定义规则市场”功能实现后,为了保证用户自行创建的自定义规则符合有关法律法规规定,我们规定:自定义规则只有经过平台审核,上架自定义规则市场之后,才可以联机游玩
对于用户加入游戏房间前的使用情景,本部分包括以下功能:
  • 创建房间:在创建房间页面,用户可选定游戏房间的公开/私密属性(决定是否在规则市场的房间搜索中可见),游玩的自定义规则,以及游戏房间是否需要密码。在创建完成后,用户将被告知房间ID与含房间ID字符串信息的二维码,并作为房主,自动进入该游戏房间的游戏界面。
  • 加入房间:在加入房间页面,用户可通过输入ID,加入游戏房间。如果游戏房间带有密码,则还需需要正确输入房间密码,才可加入。用户也可扫描房主提供的二维码,直接加入游戏房间,但在房间设有密码时仍需输入密码。
对于用户加入游戏房间后的使用情景,本部分包括以下功能:
  • 游戏界面:展示自定义规则的游戏界面,允许用户在游戏开始,进入对局后,执行自定义规则规定的游戏操作:出牌、执行动作。
  • 对局状态显示:在游戏开始,进入对局后,显示对局有关的状态信息:用户名称以及其在对局中身份,用户上次出牌结果,用户上次选择的动作,其他用户剩余牌数,用户所有持有的牌(仅明牌时)
  • 玩家列表:列出当前游戏房间内所有用户的简略信息,包括头像、名称、是否为房主。此界面亦允许选择列表中用户,对其进行举报、转让房主(仅房主)、踢出房间(仅房主)的操作。
  • 房主的默认转让:在房主选择退出游戏房间后,房主将自动转让给除房主外最先进入该房间的用户。

自定义规则市场

本部分旨在让用户在平台上,共享自己开发完成的自定义规则。
主要包含以下页面:
市场主页
  • 列出规则市场上,由用户发布的所有自定义规则。
  • 用户可按照类型,筛选规则市场中的规则。
  • 用户可以点击规则市场中列出的规则,进入规则详情页。
  • 提供搜索栏,按关键字搜索某一规则。
规则详情页
  • 展示自定义规则的玩法截图,以及文字介绍。
  • 允许用户对规则给出五分制评价,并附有图文评论。
  • 提供连接到规则开发者详情页的入口。
  • 提供连接到房间搜索页,搜索正在游玩这一规则的房间的入口。
  • 提供快速使用此规则,创建房间的入口。点击后,用户自动进入房间创建页面,其中规则被选定为先前规则详情页对应的规则。
开发者详情页
  • 展示规则开发者的用户头像/名称
  • 列出由本规则开发者创建的所有自定义规则,及各规则的平均用户五分制评价。
  • 提供搜索栏,按关键字搜索某一规则。
房间搜索页
  • 列出当前正游玩此规则的房间
  • 展示各房间的状态:房间人数,房主,房间号,是否需要密码,是否正在游戏

对局回放功能

本部分旨在让用户在对局以后,查看自己的历史对局,以及对局回放记录。
本部分包含以下功能:
  • 一个对局历史页,用户可在其中看到自己的所有对局记录,以及对局有关信息:胜负,一同游玩的玩家,对局开始时间
  • 每个对局记录,均提供一个 “查看回放”按钮;点击该按钮后,用户即可进入对局回放界面,其基于联机系统的游戏界面进一步开发,允许查看对局中不同时间,局内所有人持有的牌,以及选择出的牌等动作信息。

审核与举报系统

为防止平台中出现的用户自定义内容,出现违反相关法律法规的内容,本平台设计了一套审核与举报系统。
审核部分:
  • 在用户选择发布自己设计的自定义规则后,平台需要对这一这一自定义规则包含的文字内容,图形资产是否符合有关法律法规进行审查。仅在审查通过后,其规则才可在自定义规则市场上发布。
  • 对于平台管理员,平台提供一审核页面。审核页面列出所有待审核的规则,管理员可选中某一规则,查看其设计与图形资产内容。
举报部分,支持用户对以下内容进行举报:
  • 用户名、头像:在房间的玩家列表,规则开发者详情页,提供举报入口。
  • 规则:对于规则名,或其使用的自定义图形资产,出现侵权/不符合有关法律法规的情况。在规则详情页提供举报入口。
  • 图文评价的举报:在规则详情页,每条图文评价处提供举报入口
  • 对局中玩家行为(如作弊):在房间的玩家列表提供举报入口。
  • 对于平台管理员,平台提供一举报管理页面。举报页面列出所有待处理的举报,管理员可选中某一举报,查看具体举报内容,并对举报对应的用户,或自定义规则进行封禁处理。

五、界面原型设计

平台主界面

提供导航栏,导向以下几个功能页面:
  • 主页:默认显示的页面。提供创建/加入房间两个选项,点按后进入房间创建/加入页面
  • 规则市场。
  • 创作中心:列出用户已创建的自定义规则,点按其中某个规则,即可进入图形化规则构建界面
  • 历史对局:列出用户的对局历史信息。选中某条对局历史,选择“查看回放”,即可进入回放界面。
  • 用户信息管理界面:允许用户对账户信息进行更改
  • 管理界面(对于平台管理员):列出待处理的规则审核,以及举报请求。平台管理员可对应进行处理操作。

房间创建/加入页面

对于房间创建界面:
  • 允许用户对房间各属性进行配置
  • 在选取要游玩的自定义规则时,使用弹窗弹出规则市场界面,供用户进行规则选择
对于房间加入界面:
  • 允许用户输入房间ID,加入房间
  • 如果房间需要密码,则弹出一个窗口,提示用户输入密码。

规则市场界面

  • 列出已上架的所有自定义规则
  • 左侧给出规则种类,用户可以选取之,进行规则的筛选
  • 提供搜索框,允许用户按关键字搜索规则

游戏界面

从上至下,分为三块区域:
  • 其他玩家状态区域
  • 牌桌区域
  • 手牌区域
其他玩家状态部分,展示玩家在对局中的状态属性。在玩家数超出显示范围时,通过滑动该区域,切换可见的玩家状态。
牌桌区域,记录上一次出牌结果。
手牌区域,展示用户对局期间拥有的牌,以及用户可选的对局操作,如出牌、不出等。

回放界面

在游戏界面的基础上,添加“回放控制面板”:
  • 其形式为一个进度条,每拖动一个刻度,表示玩家进行一次对局动作,牌桌区域与其他玩家状态区域对应更新
  • 可以选取“当前视角”,视角为谁,手牌区域即显示选中用户的手牌状态。

图形化规则构建界面

从左至右,分别由组件栏、流程栏、属性编辑栏构成。
  • 组件栏,提供当前规则构建工作流中,可用的流程组件。
  • 流程栏提供用户进行流程绘制的画布。
  • 属性编辑栏,允许用户对于类、属性、方法等进行创建与编辑。

用户信息管理界面

本界面应支持以下内容:
  • 用户名称的更新
  • 用户头像的更新
  • 用户邮箱的更新
  • 用户密码的更新

六、验收标准

Alpha 阶段的工作

在 Alpha 阶段,我们预计完成以下部分的基础功能开发:
  • 用户系统
  • 自定义规则构建系统
  • 联机功能

用户系统

在 Alpha 阶段,本项目的用户系统应支持以下功能:
  • 注册。
  • 登录。
  • 密码修改。
  • 账户名修改。

自定义规则构建系统

在 Alpha 阶段,本项目的自定义规则构建系统应支持以下功能:
  • 图形化规则构建部分的所有功能。

联机系统

在 Alpha 阶段,本项目预期完成前述联机系统中,除用户举报功能外所有功能的开发。

Beta 阶段的工作

用户系统

  • 头像修改。
  • 邮箱修改。
  • 密码找回。

规则市场

完成前文所述所有功能。

对局回放功能

完成前文所述所有功能。

审核与举报系统

完成前文所述全部功能,并将举报入口嵌入到对应界面的位置。

七、项目的风险与副作用

  1. 项目冷启动:项目初步上线运营时,已构建好的自定义规则数量较少,难以留存用户。 解决方法:由开发团队,在项目开发完成后,在平台上构建常见卡牌游戏(如21点,斗地主)的规则。
  2. 用户规模的扩张:随着项目上线,用户逐步积累,现有的服务基础设施,难以支撑较大规模用户的服务需求。 解决方法:开发易于迁移、部署的服务后端,在发现服务基础设施资源不足时,适时升级基础设施。
  3. 内容质量:用户创作的自定义规则质量参差不齐 解决方法:在规则市场中引入评价机制,利用其激励作者创作出高质量自定义规则。
 
posted @ 2026-04-21 20:08  ISET  阅读(26)  评论(0)    收藏  举报