Open dylwhich opened 1 year ago
Seems good! I'm a bit jaded this year, but I bet getting assets and text will be harder than spinning up the trophy system. Do you plan on trophy-ifying modes, or putting that onus on devs? It's a little lateish in the development cycle to scope creep everyone.
Summary This feature is a system that allows modes to easily unlock trophies that will apply across the whole swadge. These trophies could either be special ones that are unlocked by a specific mode/achievement, or they could be more generic ones that can be unlocked randomly. These trophies could also act like trading cards (and maybe we'd call them that instead too), and perhaps duplicates could be collected.
There would also be a mode, something like a "Trophy Room" that would let you see the total number of trophies, view the ones you have unlocked, and maybe even trade them with other swadges.
Each trophy would have:
Things that could be the subjects of of trophies / cards:
Technical Spec For modes wishing to unlock trophies, there would be a few simple functions:
bool unlockRandomTrophy(trophyInfo_t* trophy)
- Simply unlocks a random trophy and writes the info for the one that was unlocked to the given pointer. Returns true if this is the first time this trophy has been unlocked.bool unlockTrophy(trophyInfo_t* trophy, uint16_t trophyNumber)
- Unlocks a specific trophy by number, returning true if the trophyvoid drawTrophyUnlockScreen(const trophyInfo_t* trophy)
- Draws a screen that tells the user they just unlocked a trophy and shows which one.void getTrophyInfo(trophyInfo_t* trophy, uint16_t trophyNumber)
- Writes details about the requested trophy to the given pointervoid getTrophyStats(trophyStats_t* stats)
- Writes trophy statistics into the given pointer, detailing the total number of available and unlocked trophies.For the trophies themselves, they would be stored in a JSON asset, structured something like this:
UI What are the display screens & menus (if applicable)? What user inputs are there for each screen?
The main UI would just be a simple screen showing each trophy's information and model/image, where you can navigate left/right to go to the next unlocked trophy.
There could also be a main screen which shows basic info (number out of total unlocked) and shows a list-style overview of all the locked or unlocked trophies. And for trading, users would be able to select trophies to use for a trade here, which confirming would lead to another screen to connect and confirm an incoming offer.
Mockups Paste any mockups of screens or anything else here.
How to Test How can we verify the feature is working?