Star-Spangled Rating

From ActiveWiki
Jump to: navigation, search
Star-Spangled Rating
Build

1338

Version

6.0

In honor and appreciation to long time citizens of ActiveWorlds.

Introduction

Star Spangled Rating shows the age of an account in-world. One to three stars are displayed next to the avatar's name in different colors.

Star-Sprangled-Rating-Image045.jpg

Details

The years are counted as the time since immigration, and an online time of at least 7 days for every counted year.

Years Count of Stars Color of Stars
1 1 Green
2 2 Green
3 3 Green
4 1 Blue
5 2 Blue
6 3 Blue
7 1 Red
8 2 Red
9 3 Red
10 1 Dark Gold / Orange
11 2 Dark Gold / Orange
12 3 Dark Gold / Orange
13 1 Bright Gold / Yellow
14 2 Bright Gold / Yellow
15 3 Bright Gold / Yellow
more than 15 1 Diamond / White

Changes to a higher rank are reflected in-world after a user logs-in the next time and comes close to your avatar.


Examples

For the current year 2014.

Illustrating that the account age is primary, secondary are the number of weeks spent online. Online time is considered if the value of account age is higher than the count of weeks spent online. This way an account's age is the determination, when weeks spent online reduce the count of displayed stars in case the minimum online time for the account's age has not been met.


An account created in 2008 with 30 days online time:

account age 6 years
online time 4 weeks
results in a value of 4, showing 1 blue star in world.

An account created in 2008 with 90 days online time:.

account age 6 years
online time 12 weeks
results in a value of 6, showing 3 blue stars in world.

An account created in 2000 with 25 days online time:.

account age 14 years
online time 3 weeks
results in a value of 3, showing 3 green stars in world.

An account created in 2000 with 200 days online time:

account age 14 years
online time 28 weeks
results in a value of 14, showing 1 yellow star in world.

An account created in 1998 with 50 days online time:

account age 16 years
online time 7 weeks
results in a value of 7, showing 1 red star in world.

An account created in 1998 with 300 days online time results:

account age 16 years
online time 42 weeks
results in a value of 16, showing 1 white star in world.


So, you see less stars as the account age would be capable of, if the number of online weeks is too low (1 online week per age-year minimum). You can spend more online time, to get all stars possible by the account's age.


Logic Used

  • Verbal description

When an account is older than 1 year, calculate the age of the account in full years. Calculate the count of weeks spent online. The result is the number of 'stars' (AW_CITIZEN_TITLE_STARS, sent to client browsers), as the lower value of account age in years and weeks online.

In other words, the number of 'stars' represents the years since immigration, or the weeks spent online, whatever is the smaller number.


  • Display in the client browser

The value of AW_CITIZEN_TITLE_STARS is broken into 5 colors, each color 1 to 3 stars (5 * 3 = 15). See list of colors above. Values higher than 15 are displayed as white star in world.


  • Code example for nerds
#define ONE_YEAR  31536000  // 1 year in seconds
#define ONE_WEEK  604800    // 1 week in seconds

uint32 calc_title_stars ()
{
    // span: time since account creation
    // total_time: time spent in-world (accumulated online time since 2001/2002)
    // weeks: online time in weeks
  
    uint32 stars      = 0;
    uint32 weeks      = 0;
    time_t span       = time(NULL) - aw_citizen_immigration();
    time_t total_time = aw_citizen_total_time();
  
    if (span >= ONE_YEAR) {
        stars = span / ONE_YEAR;
        if (total_time)
           weeks = total_time / ONE_WEEK;
        if (stars > weeks)
           stars = weeks;
    }
    // the value of 'stars' is sent to client browsers
    return stars;
}