diff --git a/migrations/users/mystery-items.js b/migrations/users/mystery-items.js index f633f3b80a..b1e0b818e6 100644 --- a/migrations/users/mystery-items.js +++ b/migrations/users/mystery-items.js @@ -1,15 +1,17 @@ -const migrationName = 'mystery-items-201805.js'; // Update per month +import monk from 'monk'; +import nconf from 'nconf'; + +const migrationName = 'mystery-items-201806.js'; // Update per month const authorName = 'Sabe'; // in case script author needs to know when their ... const authorUuid = '7f14ed62-5408-4e1b-be83-ada62d504931'; // ... own data is done /* * Award this month's mystery items to subscribers */ -const MYSTERY_ITEMS = ['back_mystery_201805', 'head_mystery_201805']; -const connectionString = 'mongodb://localhost:27017/habitrpg?auto_reconnect=true'; // FOR TEST DATABASE +const MYSTERY_ITEMS = ['armor_mystery_201806', 'head_mystery_201806']; +const CONNECTION_STRING = nconf.get('MIGRATION_CONNECT_STRING'); -let monk = require('monk'); -let dbUsers = monk(connectionString).get('users', { castIds: false }); +let dbUsers = monk(CONNECTION_STRING).get('users', { castIds: false }); let UserNotification = require('../../website/server/models/userNotification').model; function processUsers (lastId) { diff --git a/website/common/locales/en/gear.json b/website/common/locales/en/gear.json index 4761113e33..8659217e3e 100644 --- a/website/common/locales/en/gear.json +++ b/website/common/locales/en/gear.json @@ -709,6 +709,8 @@ "armorMystery201712Notes": "The heat and light generated by this magic armor will warm your heart but never burn your skin! Confers no benefit. December 2017 Subscriber Item.", "armorMystery201802Text": "Love Bug Armor", "armorMystery201802Notes": "This shiny armor reflects your strength of heart and infuses it into any Habiticans nearby who may need encouragement! Confers no benefit. February 2018 Subscriber Item.", + "armorMystery201806Text": "Alluring Anglerfish Tail", + "armorMystery201806Notes": "This sinuous tail features glowing spots to light your way through the deep. Confers no benefit. June 2018 Subscriber Item.", "armorMystery301404Text": "Steampunk Suit", "armorMystery301404Notes": "Dapper and dashing, wot! Confers no benefit. February 3015 Subscriber Item.", "armorMystery301703Text": "Steampunk Peacock Gown", @@ -1140,6 +1142,8 @@ "headMystery201803Notes": "Although its appearance is quite decorative, you can engage the wings on this circlet for extra lift! Confers no benefit. March 2018 Subscriber Item.", "headMystery201805Text": "Phenomenal Peacock Helm", "headMystery201805Notes": "This helm will make you the proudest and prettiest (possibly also the loudest) bird in town. Confers no benefit. May 2018 Subscriber Item.", + "headMystery201806Text": "Alluring Anglerfish Helm", + "headMystery201806Notes": "The mesmerizing light atop this helm will call all the creatures of the sea to your side. We urge you to use your glowy powers of attraction for good! Confers no benefit. June 2018 Subscriber Item.", "headMystery301404Text": "Fancy Top Hat", "headMystery301404Notes": "A fancy top hat for the finest of gentlefolk! January 3015 Subscriber Item. Confers no benefit.", "headMystery301405Text": "Basic Top Hat", diff --git a/website/common/locales/en/subscriber.json b/website/common/locales/en/subscriber.json index 5e4af1cf24..f2c5ba1c1b 100644 --- a/website/common/locales/en/subscriber.json +++ b/website/common/locales/en/subscriber.json @@ -145,6 +145,7 @@ "mysterySet201803": "Daring Dragonfly Set", "mysterySet201804": "Spiffy Squirrel Set", "mysterySet201805": "Phenomenal Peacock Set", + "mysterySet201806": "Alluring Anglerfish Set", "mysterySet301404": "Steampunk Standard Set", "mysterySet301405": "Steampunk Accessories Set", "mysterySet301703": "Peacock Steampunk Set", diff --git a/website/common/script/content/gear/sets/mystery.js b/website/common/script/content/gear/sets/mystery.js index 35527d643f..7f4d6b2a47 100644 --- a/website/common/script/content/gear/sets/mystery.js +++ b/website/common/script/content/gear/sets/mystery.js @@ -193,6 +193,12 @@ let armor = { mystery: '201802', value: 0, }, + 201806: { + text: t('armorMystery201806Text'), + notes: t('armorMystery201806Notes'), + mystery: '201806', + value: 0, + }, 301404: { text: t('armorMystery301404Text'), notes: t('armorMystery301404Notes'), @@ -583,6 +589,12 @@ let head = { mystery: '201805', value: 0, }, + 201806: { + text: t('headMystery201806Text'), + notes: t('headMystery201806Notes'), + mystery: '201806', + value: 0, + }, 301404: { text: t('headMystery301404Text'), notes: t('headMystery301404Notes'), diff --git a/website/common/script/content/mystery-sets.js b/website/common/script/content/mystery-sets.js index dacb2c59b8..b7b294f7b3 100644 --- a/website/common/script/content/mystery-sets.js +++ b/website/common/script/content/mystery-sets.js @@ -210,6 +210,10 @@ let mysterySets = { start: '2018-05-24', end: '2018-06-02', }, + 201806: { + start: '2018-06-21', + end: '2018-07-02', + }, 301404: { start: '3014-03-24', end: '3014-04-02', diff --git a/website/raw_sprites/spritesmith/gear/events/mystery_201806/broad_armor_mystery_201806.png b/website/raw_sprites/spritesmith/gear/events/mystery_201806/broad_armor_mystery_201806.png new file mode 100644 index 0000000000..6834abae2e Binary files /dev/null and b/website/raw_sprites/spritesmith/gear/events/mystery_201806/broad_armor_mystery_201806.png differ diff --git a/website/raw_sprites/spritesmith/gear/events/mystery_201806/head_mystery_201806.png b/website/raw_sprites/spritesmith/gear/events/mystery_201806/head_mystery_201806.png new file mode 100644 index 0000000000..17d7ae430b Binary files /dev/null and b/website/raw_sprites/spritesmith/gear/events/mystery_201806/head_mystery_201806.png differ diff --git a/website/raw_sprites/spritesmith/gear/events/mystery_201806/shop_armor_mystery_201806.png b/website/raw_sprites/spritesmith/gear/events/mystery_201806/shop_armor_mystery_201806.png new file mode 100644 index 0000000000..a62df10556 Binary files /dev/null and b/website/raw_sprites/spritesmith/gear/events/mystery_201806/shop_armor_mystery_201806.png differ diff --git a/website/raw_sprites/spritesmith/gear/events/mystery_201806/shop_head_mystery_201806.png b/website/raw_sprites/spritesmith/gear/events/mystery_201806/shop_head_mystery_201806.png new file mode 100644 index 0000000000..0b416de57b Binary files /dev/null and b/website/raw_sprites/spritesmith/gear/events/mystery_201806/shop_head_mystery_201806.png differ diff --git a/website/raw_sprites/spritesmith/gear/events/mystery_201806/shop_set_mystery_201806.png b/website/raw_sprites/spritesmith/gear/events/mystery_201806/shop_set_mystery_201806.png new file mode 100644 index 0000000000..d2d1fa14bc Binary files /dev/null and b/website/raw_sprites/spritesmith/gear/events/mystery_201806/shop_set_mystery_201806.png differ diff --git a/website/raw_sprites/spritesmith/gear/events/mystery_201806/slim_armor_mystery_201806.png b/website/raw_sprites/spritesmith/gear/events/mystery_201806/slim_armor_mystery_201806.png new file mode 100644 index 0000000000..4b282d45df Binary files /dev/null and b/website/raw_sprites/spritesmith/gear/events/mystery_201806/slim_armor_mystery_201806.png differ diff --git a/website/raw_sprites/spritesmith_large/promo_mystery_201806.png b/website/raw_sprites/spritesmith_large/promo_mystery_201806.png new file mode 100644 index 0000000000..4b6d6a12b7 Binary files /dev/null and b/website/raw_sprites/spritesmith_large/promo_mystery_201806.png differ diff --git a/website/raw_sprites/spritesmith_large/scene_families.png b/website/raw_sprites/spritesmith_large/scene_families.png new file mode 100644 index 0000000000..5dba3a6a9c Binary files /dev/null and b/website/raw_sprites/spritesmith_large/scene_families.png differ diff --git a/website/raw_sprites/spritesmith_large/scene_moderators.png b/website/raw_sprites/spritesmith_large/scene_moderators.png new file mode 100644 index 0000000000..df39b93119 Binary files /dev/null and b/website/raw_sprites/spritesmith_large/scene_moderators.png differ diff --git a/website/server/controllers/api-v3/news.js b/website/server/controllers/api-v3/news.js index a41d294618..34e0e9033d 100644 --- a/website/server/controllers/api-v3/news.js +++ b/website/server/controllers/api-v3/news.js @@ -3,7 +3,7 @@ import { authWithHeaders } from '../../middlewares/auth'; let api = {}; // @TODO export this const, cannot export it from here because only routes are exported from controllers -const LAST_ANNOUNCEMENT_TITLE = 'SUMMER SPLASH BEGINS: SUMMER CLASS OUTFITS, SEASONAL SHOP, AND NPC DECORATIONS!'; +const LAST_ANNOUNCEMENT_TITLE = 'JUNE SUBSCRIBER ITEMS AND HABIT HISTORY CHANGES'; const worldDmg = { // @TODO bailey: false, }; @@ -32,33 +32,24 @@ api.getNews = {

${res.t('newStuff')}

-

6/19/2018 - ${LAST_ANNOUNCEMENT_TITLE}

+

6/21/2018 - ${LAST_ANNOUNCEMENT_TITLE}


-

To escape the summer heat in Habit City, everyone's moved down to the undersea city of Dilatory. The Summer Splash event has begun!

-

Summer Class Outfits

-

From now until July 31st, limited edition outfits are available in the Rewards column. Depending on your class, you can be a Lionfish Mage, Fisher-Rogue, Betta Fish Warrior, or Merfolk Monarch Healer! You'd better get productive to earn enough gold before they disappear. Good luck!

-
by Vampitch, Vikte, TheDudeAbides, Lalaitha, and Beffymaroo
-
-
-
-

Seasonal Shop is Open!

-

The Seasonal Shop has opened! The Seasonal Sorceress is stocking the seasonal edition versions of previous summer outfits, now available for Gems instead of Gold. Plus, there will be more fun things in the shop as the event progresses. The Seasonal Shop will only be open until July 31st, so don't wait!

-
by SabreCat, Lemoness, AnnDeLune, Vampitch, nonight, tricksy.fox, Giu09, JaizakAripaik, Teto Forever, and Kai
-
-
-
-
-

NPC Costumes and Shop Decorations

-

Looks like the NPCs are really getting in to the cheery summer mood around the site. Who wouldn't? After all, there's plenty more celebration to come...

-
by Lemoness and Beffymaroo
-
-
-
+

June Subscriber Items Revealed!

+

The June Subscriber Item Set has been revealed: the Alluring Anglerfish Item Set! You only have until June 30 to receive the item set when you subscribe. If you're already an active subscriber, reload the site and then head to Inventory > Items to claim your gear!

-
+
+

Subscribers also receive the ability to buy Gems for Gold -- the longer you subscribe, the more Gems you can buy per month! There are other perks as well, such as longer access to uncompressed data and a cute Jackalope pet. Best of all, subscriptions let us keep Habitica running. Thank you very much for your support -- it means a lot to us.

+
by Beffymaroo
+

Habit History Changes

+

In a few days we're making a change to the way Habit history is stored in order to improve overall site performance and reduce errors and bugs for folks with lots of task activity.

+

If you view Habit history in a tool such as the Data Display Tool you will no longer be able to see timestamps showing when you clicked a Habit. You will still see how many times you clicked it in a given day.

+

So, if you are using your Habits for any tasks where the timestamps are critical, just a heads-up and a note to save your data elsewhere as timestamp data will be lost when the change goes live!

+

If you have developed a third-party tool or extension for Habitica, please check out these notes on GitHub so that you can update if needed.

+

Thanks for your understanding as we work to make Habitica better. <3

+
by Paglias
`, });