User:Matrethewey!9776/Sprite Management System: Difference between revisions

From ALttPR Wiki
Jump to navigation Jump to search
No edit summary
 
(8 intermediate revisions by 2 users not shown)
Line 14: Line 14:


= Roles Hierarchy =
= Roles Hierarchy =
* {{checkbox}} <code>sprite-manager</code> ("Delegator", "Core Development Team") ''- Implemented as "Manager" role ''
* {{checkbox}} <code>Admin</code> ("Delegator", "Core Development Team") ''- Implemented as "Admin" role ''
** {{checkbox|no}} <code>sprite-tester-guild</code> ("Guild Member", "Community Development Team")
** {{checkbox}} <code>Manager</code> ("Guild Member", "Community Development Team") ''- Implemented as "Manager" role''
*** {{checkbox}} <code>sprite-tester</code> ("Tester") ''- Implemented as "Tester" role''
*** {{checkbox}} <code>Tester</code> ("Tester") ''- Implemented as "Tester" role''
*** {{checkbox}} <code>sprite-submitter</code> ("Artist") ''- Implemented as "Artist" role''
*** {{checkbox}} <code>Artist</code> ("Artist") ''- Implemented as "Artist" role''
*** {{checkbox}} <code>visitor</code> ("Visitor") ''Can see sprites list/progress and submit requests.''  
*** {{checkbox}} <code>Visitor</code> ("Visitor") ''Can see sprites list/progress and submit requests.''  


<code>sprite-tester</code> & <code>sprite-submitter</code> are on the same level and a single user may have both roles. ''- Implemented as Tester higher than Artist''
<s><code>Tester</code> & <code>Artist</code> are on the same level and a single user may have both roles.</s> ''- Implemented as Tester higher than Artist''


A higher role assumes the rights of all lower roles.
A higher role assumes the rights of all lower roles.


Blue & Green Names on ALttPR's Discord will probably be auto-added as <code>sprite-tester-guild</code>
Blue & Green Names on ALttPR's Discord will probably be auto-added as <code>Manager</code>


= Sprite Management Team =
= Sprite Management Team - ''Admin Role'' =
Consists of {{Userlink|miketrethewey!9776}}, {{Userlink|ibazly!6484}}, {{Userlink|fish!2396}}
Consists of {{Userlink|miketrethewey!9776}}, {{Userlink|ibazly!6484}}, {{Userlink|fish!2396}}
* {{checkbox}}Log in, <code>sprite-manager</code> role
* {{checkbox}} Log in, <code>Admin</code> role
* {{checkbox}}User Management
* {{checkbox}} User Management
** Approve accounts
** Approve accounts
** {{checkbox}}Adjust roles
** {{checkbox}} Adjust roles
** {{checkbox}}Adjust account enabledness
** {{checkbox}} Adjust account enabledness
* Sprite Submission Management
* {{checkbox}} Sprite Submission Management
** {{checkbox}}Edit unique sprite filenames
** {{checkbox}} Edit unique sprite filenames
** {{checkbox}}Edit sprite submission
** {{checkbox}} Edit sprite submission
** Delete submission (mark as invalid in db but keep info for history purposes)
** Delete submission (mark as invalid in db but keep info for history purposes)
* Sprite Feedback Management
* {{checkbox |no }} Sprite Feedback Management
** Edit feedback
** {{checkbox |no }} Edit feedback
** Delete feedback
** {{checkbox |no }} Delete feedback


= Sprite Submissions =
= Sprite Submissions - ''Artist Role'' =
* Log in, <code>sprite-submitter</code> role  
* Log in, <code>Artist</code> role  
=== Submission Form ===
=== Submission Form ===
==== New Sprite Submission ====
==== New Sprite Submission ====
* Submission #1
* {{checkbox}} Submission #1
* Sprite Name
* {{checkbox}} Sprite Name
* Sprite Author (original creator of sprite file) (auto-detect from login)
* {{checkbox}} Sprite Author (original creator of sprite file) (auto-detect from login)
** Sprite Author's Discord Username (<code>exampleusername#1234</code>) (auto-detect from user profile)
** Sprite Author's Discord Username (<code>exampleusername#1234</code>) (auto-detect from user profile)
==== Not-New Sprite Submission ====
==== Not-New Sprite Submission ====
# {{checkbox}} Select Sprite from existing list - ''Currently only available to author''
# {{checkbox}} Select Sprite from existing list - ''Currently only available to author, Implemented as "Update Sprite"''
# {{checkbox}} Increment submission number - ''executed after submission''
# {{checkbox}} Increment submission number - ''executed after submission''
# {{checkbox}} Display current sprite information
# {{checkbox}} Display current sprite information
Line 57: Line 57:
#** Sprite Author's Discord Username
#** Sprite Author's Discord Username
#* VT Version
#* VT Version
#* Submission Version
#* {{checkbox}} Submission Version ''executed after submission''
* Sprite Modifier (if someone else is making a bugfix) (auto-detect from login)
* Sprite Modifier (if someone else is making a bugfix) (auto-detect from login)
** Sprite Modifier's Discord Username (auto-detect from user profile)
** Sprite Modifier's Discord Username (auto-detect from user profile)
==== All Submissions ====
==== All Submissions ====
* {{checkbox}} File Upload (only accepting <code>[https://docs.google.com/spreadsheets/d/1oNx8IvLcugva0lCqP_VfdalsUppuMiVyFjwBrSGCTiE .zspr]</code>)
* {{checkbox}} File Upload (only accepting <code>[https://docs.google.com/spreadsheets/d/1oNx8IvLcugva0lCqP_VfdalsUppuMiVyFjwBrSGCTiE .zspr]</code>)
* {{checkbox|no}} Source material URL (optional) ''- Implemented as "Sprite References"''
* {{checkbox}} Source material URL (optional) ''- Implemented as "Sprite References"''
* Category list (needs more brainstorming on how to do this)
* Category list (needs more brainstorming on how to do this)
* {{checkbox}} Generate filename; <code>sprite-name.vt-version.submission-version.zspr</code> ''Implemented as URL safe filename, VT/Sub is appended on download''
* {{checkbox}} Generate filename; <code>sprite-name.vt-version.submission-version.zspr</code> ''Implemented as URL safe filename, VT/Sub is appended on download''
** Where <code>sprite-name</code> is unique
** Where <code>sprite-name</code> is unique
*** If there's a collision, flag it for <code>sprite-manager</code> and slap a timestamp on the end for now to force it to be unique
*** If there's a collision, flag it for <code>Admin</code> and slap a timestamp on the end for now to force it to be unique
** {{checkbox}} Where <code>vt-version</code> is the version currently on the site, <code>0</code> if brand new
** {{checkbox}} Where <code>vt-version</code> is the version currently on the site, <code>0</code> if brand new
** {{checkbox}} Where <code>submission-version</code> is the number of times this sprite has been submitted for this VT version
** {{checkbox}} Where <code>submission-version</code> is the number of times this sprite has been submitted for this VT version
==== Example ====
==== Example ====
* Cucco (as of VT Generator Version 29) is a brand new sprite
* Cucco (as of VT Generator Version 29) is a brand new sprite
Line 79: Line 80:
** A new one being <code>mikejones.3.zspr</code> when submitted to VT
** A new one being <code>mikejones.3.zspr</code> when submitted to VT


= Sprite Testers Guild =
= Sprite Testers Guild - ''Manager Role'' =
Would consist of: Achy, Beef-chan, EmoSaru, Espeon, Glan, PlaguedOne, TWRoxas
Would consist of: Achy, Beef-chan, EmoSaru, Espeon, Glan, PlaguedOne, TWRoxas


* Log in, <code>sprite-tester-guild</code> role
* Log in, <code>Manager</code> role
* Can manage Sprite Feedback
* Can manage Sprite Feedback
* Can elevate to Sprite Management Team for preparation to send to VT
* Can elevate to Sprite Management Team for preparation to send to VT
Line 88: Line 89:
* View feedback history for each sprite
* View feedback history for each sprite


= Sprite Testing =
= Sprite Testing - ''Tester Role'' =
Would consist of: All-in-one Mighty, Ferelheart, Jighart, Nakuri, OrangeNova, Seraphin Eveles, SirCzah
Would consist of: All-in-one Mighty, Ferelheart, Jighart, Nakuri, OrangeNova, Seraphin Eveles, SirCzah


Sprite Checkout System - ''Implemented as "Evaluations"''
{{checkbox}} Sprite Checkout System - ''Implemented as "Evaluations"''
* Log in, <code>sprite-tester</code> role
* {{checkbox}} Log in, <code>Tester</code> role
* Can see current list of sprites to be tested
* {{checkbox}} Can see current list of sprites to be tested
* Can see how many tests have been submitted
* {{checkbox}} Can see how many tests have been submitted
* Can download most up-to-date sprite version for testing following the file format above from submissions
* {{checkbox}} Can download most up-to-date sprite version for testing following the file format above from submissions


= Sprite Feedback =
= Sprite Feedback =
* Log in, <code>sprite-tester</code> role
* Log in, <code>Tester</code> role
=== Feedback Form ===
=== Feedback Form ===
''May be incorporated into "Evaluation"''
# Select Sprite from existing list
# Select Sprite from existing list
# Display current sprite information
# Display current sprite information
Line 119: Line 121:


= My Sprites =
= My Sprites =
* {{checkbox}}Log in, all users
* {{checkbox}} Log in, all users
* {{checkbox}}Show list of sprites with viewer as author or modifier
* {{checkbox}} Show list of sprites with viewer as author or modifier
* Can access feedback for each of these sprites
* {{checkbox|no}} Can access feedback for each of these sprites

Latest revision as of 00:44, 26 July 2023

Create Account

  • Checkbox yes.gif Discord Username (exampleusername#1234) - possible API with Discord at a later date
  • Checkbox yes.gif Password
  • Checkbox yes.gif Email address
    • Account verification
    • Admin communication if necessary
  • Checkbox no.gif Role requested
    • Testers Guild
    • Sprite Submitter
    • Sprite Tester
  • Checkbox no.gif Default to Non-Approved
  • Checkbox yes.gif Non-Approved: Can't access any part of the site
  • Checkbox yes.gif Approved: Can perform authorized tasks

Roles Hierarchy

  • Checkbox yes.gif Admin ("Delegator", "Core Development Team") - Implemented as "Admin" role
    • Checkbox yes.gif Manager ("Guild Member", "Community Development Team") - Implemented as "Manager" role
      • Checkbox yes.gif Tester ("Tester") - Implemented as "Tester" role
      • Checkbox yes.gif Artist ("Artist") - Implemented as "Artist" role
      • Checkbox yes.gif Visitor ("Visitor") Can see sprites list/progress and submit requests.

Tester & Artist are on the same level and a single user may have both roles. - Implemented as Tester higher than Artist

A higher role assumes the rights of all lower roles.

Blue & Green Names on ALttPR's Discord will probably be auto-added as Manager

Sprite Management Team - Admin Role

Consists of miketrethewey#9776R/C/SC/SM, ibazly#6484R/C/SC/SM, fish#2396R/C/SC/SM

  • Checkbox yes.gif Log in, Admin role
  • Checkbox yes.gif User Management
    • Approve accounts
    • Checkbox yes.gif Adjust roles
    • Checkbox yes.gif Adjust account enabledness
  • Checkbox yes.gif Sprite Submission Management
    • Checkbox yes.gif Edit unique sprite filenames
    • Checkbox yes.gif Edit sprite submission
    • Delete submission (mark as invalid in db but keep info for history purposes)
  • Checkbox no.gif Sprite Feedback Management
    • Checkbox no.gif Edit feedback
    • Checkbox no.gif Delete feedback

Sprite Submissions - Artist Role

  • Log in, Artist role

Submission Form

New Sprite Submission

  • Checkbox yes.gif Submission #1
  • Checkbox yes.gif Sprite Name
  • Checkbox yes.gif Sprite Author (original creator of sprite file) (auto-detect from login)
    • Sprite Author's Discord Username (exampleusername#1234) (auto-detect from user profile)

Not-New Sprite Submission

  1. Checkbox yes.gif Select Sprite from existing list - Currently only available to author, Implemented as "Update Sprite"
  2. Checkbox yes.gif Increment submission number - executed after submission
  3. Checkbox yes.gif Display current sprite information
    • Sprite Name
    • Sprite Author
      • Sprite Author's Discord Username
    • VT Version
    • Checkbox yes.gif Submission Version executed after submission
  • Sprite Modifier (if someone else is making a bugfix) (auto-detect from login)
    • Sprite Modifier's Discord Username (auto-detect from user profile)

All Submissions

  • Checkbox yes.gif File Upload (only accepting .zspr)
  • Checkbox yes.gif Source material URL (optional) - Implemented as "Sprite References"
  • Category list (needs more brainstorming on how to do this)
  • Checkbox yes.gif Generate filename; sprite-name.vt-version.submission-version.zspr Implemented as URL safe filename, VT/Sub is appended on download
    • Where sprite-name is unique
      • If there's a collision, flag it for Admin and slap a timestamp on the end for now to force it to be unique
    • Checkbox yes.gif Where vt-version is the version currently on the site, 0 if brand new
    • Checkbox yes.gif Where submission-version is the number of times this sprite has been submitted for this VT version

Example

  • Cucco (as of VT Generator Version 29) is a brand new sprite
    • The current Live filename doesn't exist
    • A submission for testing would result in a filename of cucco.0.1.zspr
    • A new one being cucco.1.zspr when submitted to VT
  • Mike Jones (as of VT Generator Version 29) has had two versions submitted to VT's site
    • The current Live filename is mikejones.2.zspr
    • A submission for testing would result in a filename of mikejones.2.1.zspr
    • A new one being mikejones.3.zspr when submitted to VT

Sprite Testers Guild - Manager Role

Would consist of: Achy, Beef-chan, EmoSaru, Espeon, Glan, PlaguedOne, TWRoxas

  • Log in, Manager role
  • Can manage Sprite Feedback
  • Can elevate to Sprite Management Team for preparation to send to VT
  • Can escalate issues to Sprite Management Team
  • View feedback history for each sprite

Sprite Testing - Tester Role

Would consist of: All-in-one Mighty, Ferelheart, Jighart, Nakuri, OrangeNova, Seraphin Eveles, SirCzah

Checkbox yes.gif Sprite Checkout System - Implemented as "Evaluations"

  • Checkbox yes.gif Log in, Tester role
  • Checkbox yes.gif Can see current list of sprites to be tested
  • Checkbox yes.gif Can see how many tests have been submitted
  • Checkbox yes.gif Can download most up-to-date sprite version for testing following the file format above from submissions

Sprite Feedback

  • Log in, Tester role

Feedback Form

May be incorporated into "Evaluation"

  1. Select Sprite from existing list
  2. Display current sprite information
    • Sprite Name
    • Sprite Author
      • Sprite Author's Discord Username
    • Sprite Modifier
      • Sprite Modifier's Discord Username
    • VT Version
  3. Select Submission version number
  4. Provide Feedback
    • Tester Name (auto-detect from login)
      • Tester Discord Username (auto-detect from user profile)
    • Ok?
      • Y: Yes, I approve this sprite for submission to Sprite Management Team
      • N: No, I don't approve this sprite for submission to Sprite Management Team and will provide feedback to author/modifier
    • VOD Link, if provided
    • Feedback text

My Sprites

  • Checkbox yes.gif Log in, all users
  • Checkbox yes.gif Show list of sprites with viewer as author or modifier
  • Checkbox no.gif Can access feedback for each of these sprites