Giter Site home page Giter Site logo

smf-achievements's People

Contributors

arantor avatar

Stargazers

 avatar  avatar

Watchers

 avatar

smf-achievements's Issues

Retroactive achievements

Some achievements can apply retroactively, e.g. some of the more coarse achievements (total posts made, for example, seems like it wouldn't really matter when the posts were made)

But some should only be applicable once the achievement itself is made, and especially based on posting in a specific board, this should only be applicable once the achievement itself exists.

Therefore when creating an achievement this should be a checkbox.

Partial achievements

Achievements once unlocked on an account/character should show progress, e.g. '89% complete' with a coloured bar.

Triggered achievements: currency

When certain currency thresholds have been reached, allow for an achievement to be granted, e.g. xyz gold in account. Achievements should only be granted once if currency based as currency levels will naturally fluctuate.

Achievement should not be revoked if amount drops below (but this is kind of a given anyway)

Triggered achievements: topics started

Tracks number of topics started by an account/character combination (so that if a character is moved, it doesn't re-count towards achievements)

Should be filtered based on all boards, IC/OOC, select boards.

Currency separation

Currency should be able to be split into tiers, in the same way Guild Wars 2 (for example) has a total amount of coins, split into gold, silver, copper, where 100 copper = 1 silver, 100 silver = 1 gold. This should be available in the mod, in three tiers, where the tiers are configurable both in name and value.

Or, in a different context such as Harry Potter where there are 17 Sickles in a Galleon, and 29 Knuts in a Sickle (493 Knuts to a Galleon), even if the internal value is stored as a single master value, the display should represent this split.

Manually assigned achievements

Admin can create achievements flagged as manual, as in they cannot be awarded for any technically-driven reason, can be revoked once given and admin can update a user with an achievement from the user's profile.

Account achievements tab

Have an area in profile for account achievements. (Main character can link same place, and if characters mod not present, don't filter by character)

Currency gift on character creation

Should be configurable in admin area. There is also a cooldown preventing character spamming, gift max once per week (duration also configurable in admin area)

Achievement unlocks

Achievement tracks are not shown to users until unlocked for that user. A given achievement is unlocked once 5% of its requirement is fulfilled, and once 5% has been reached, the user should receive an alert to tell them so and then mark the achievement track unlocked on their profile. (Does not apply to manual, for meta achievements give the admin the option whether to show at 5% or whether to show only at completion)

Achievement receipt can grant board access

Receipt of an achievement should be able to grant an additional group (or groups) to account receiving achievement, e.g. buying access to group via purchasable achievement.

Purchasable achievements

Achievements should be allowed to be flagged as purchasable (with a max limit on number owned), e.g. a Nimbus 2000 achievement, paying the value out of currency.

Currency granting

On achievements being given/earned, the account could also receive a value of money.

Triggered achievement: posts

When an account/character combination makes a post, track it, and be able to award once an account/character combination has made x posts. Filtering should be on all boards, IC/OOC boards, set list of boards.

Deleting a post should cause this counter to decrement.

Achievement tiers

Some achievements - especially things like post based - will be tiered. These multiple achievements remain as separate achievements (e.g. a post count track issuing achievements at 100/250/500 posts) but for display purposes in the profile should be considered as a single set of achievements together.

Triggered achievements: meta

Meta achievements should be based on users having set achievements, e.g. a user has all the achievements of a given kind, this should trigger any meta achievements whose criteria are 'all of x achievements'.

Triggered achievement: membergroups

An achievement should be available if an account (or character) has a set of groups, for example an achievement might be available if across all characters in an account, a set list of three groups is matched. This should also be available as a per-character match.

For example, an achievement for having at least one character match in all four school houses across an account (by virtue of having one group per character that is relevant). Or an achievement for having one character match at least two groups.

Postbit trophy room

From the postbit, there should be a link to the achievements list, a.k.a. Trophy Room for the character in question.

Account/character can also pick up to two of the achievements, to fit in the 160px space under the profile picture/group names.

Triggered achievements: likes

Likes received for an account/character combination (so likes received before/after a character is transferred to another account don't contribute to achievements)

Should be able to filter on all boards, IC/OOC, select boards.

Probably should recount this once a day owing to likes granted/ungranted.

Currency system

System should be able to track a currency amount per account, various places can add to account, some achievements will be purchaseable, some achievements will gift currency on receipt.

System should also track in/out movements and have display for account.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.