From 930a869365b5c31b49bed2fc09645e47f39153e9 Mon Sep 17 00:00:00 2001 From: Sabe Jones Date: Tue, 31 Jan 2017 18:30:39 +0000 Subject: [PATCH] feat(event): Habit Birthday 2017 --- migrations/20170131_habit_birthday.js | 109 ++++++++++++++++++ .../broad_armor_special_birthday2017.png | Bin 0 -> 3457 bytes .../shop_armor_special_birthday2017.png | Bin 0 -> 3287 bytes .../slim_armor_special_birthday2017.png | Bin 0 -> 3421 bytes .../sprites/spritesmith/npcs/npc_alex.png | Bin 5020 -> 6674 bytes .../sprites/spritesmith/npcs/npc_bailey.png | Bin 3639 -> 4084 bytes .../sprites/spritesmith/npcs/npc_daniel.png | Bin 4205 -> 6302 bytes .../sprites/spritesmith/npcs/npc_ian.png | Bin 8296 -> 8988 bytes .../sprites/spritesmith/npcs/npc_justin.png | Bin 4364 -> 4525 bytes .../sprites/spritesmith/npcs/npc_matt.png | Bin 6173 -> 7262 bytes website/common/locales/en/content.json | 1 + website/common/script/content/constants.js | 2 +- .../script/content/gear/sets/special/index.js | 6 + website/common/script/content/index.js | 8 +- website/server/models/user/hooks.js | 13 +++ website/views/shared/new-stuff.jade | 57 +++++++-- 16 files changed, 182 insertions(+), 14 deletions(-) create mode 100644 migrations/20170131_habit_birthday.js create mode 100644 website/assets/sprites/spritesmith/gear/events/birthday/broad_armor_special_birthday2017.png create mode 100644 website/assets/sprites/spritesmith/gear/events/birthday/shop_armor_special_birthday2017.png create mode 100644 website/assets/sprites/spritesmith/gear/events/birthday/slim_armor_special_birthday2017.png diff --git a/migrations/20170131_habit_birthday.js b/migrations/20170131_habit_birthday.js new file mode 100644 index 0000000000..a038066508 --- /dev/null +++ b/migrations/20170131_habit_birthday.js @@ -0,0 +1,109 @@ +var migrationName = '20170131_habit_birthday.js'; +var authorName = 'Sabe'; // in case script author needs to know when their ... +var authorUuid = '7f14ed62-5408-4e1b-be83-ada62d504931'; //... own data is done + +/* + * Award 2017 party robes if user has 2016 robes, 2016 robes if they have the 2015 robes, + * 2015 robes if they have the 2014 robes, and 2014 robes otherwise. Also cake! + */ + +var monk = require('monk'); +var connectionString = 'mongodb://localhost:27017/habitrpg?auto_reconnect=true'; // FOR TEST DATABASE +var dbUsers = monk(connectionString).get('users', { castIds: false }); + +function processUsers(lastId) { + // specify a query to limit the affected users (empty for all users): + var query = { + 'migration':{$ne:migrationName}, +// 'auth.timestamps.loggedin':{$gt:new Date('2017-01-24')}, // remove after first run to cover remaining users + }; + + if (lastId) { + query._id = { + $gt: lastId + } + } + + dbUsers.find(query, { + sort: {_id: 1}, + limit: 250, + fields: [ // specify fields we are interested in to limit retrieved data (empty if we're not reading data) + 'items.gear.owned' + ], + }) + .then(updateUsers) + .catch(function (err) { + console.log(err); + return exiting(1, 'ERROR! ' + err); + }); +} + +var progressCount = 1000; +var count = 0; + +function updateUsers (users) { + if (!users || users.length === 0) { + console.warn('All appropriate users found and modified.'); + displayData(); + return; + } + + var userPromises = users.map(updateUser); + var lastUser = users[users.length - 1]; + + return Promise.all(userPromises) + .then(function () { + processUsers(lastUser._id); + }); +} + +function updateUser (user) { + count++; + + var set = {'migration':migrationName}; + if (user.items && user.items.gear && user.items.gear.owned && user.items.gear.owned.hasOwnProperty('armor_special_birthday2016')) { + set['items.gear.owned.armor_special_birthday2017'] = false; + } else if (user.items && user.items.gear && user.items.gear.owned && user.items.gear.owned.hasOwnProperty('armor_special_birthday2015')) { + set['items.gear.owned.armor_special_birthday2016'] = false; + } else if (user.items && user.items.gear && user.items.gear.owned && user.items.gear.owned.hasOwnProperty('armor_special_birthday')) { + set['items.gear.owned.armor_special_birthday2015'] = false; + } else { + set['items.gear.owned.armor_special_birthday'] = false; + } + + var inc = { + 'items.food.Cake_Skeleton':1, + 'items.food.Cake_Base':1, + 'items.food.Cake_CottonCandyBlue':1, + 'items.food.Cake_CottonCandyPink':1, + 'items.food.Cake_Shade':1, + 'items.food.Cake_White':1, + 'items.food.Cake_Golden':1, + 'items.food.Cake_Zombie':1, + 'items.food.Cake_Desert':1, + 'items.food.Cake_Red':1, + 'achievements.habitBirthdays':1 + }; + + dbUsers.update({_id: user._id}, {$set:set, $inc:inc}); + + if (count % progressCount == 0) console.warn(count + ' ' + user._id); + if (user._id == authorUuid) console.warn(authorName + ' processed'); +} + +function displayData() { + console.warn('\n' + count + ' users processed\n'); + return exiting(0); +} + +function exiting(code, msg) { + code = code || 0; // 0 = success + if (code && !msg) { msg = 'ERROR!'; } + if (msg) { + if (code) { console.error(msg); } + else { console.log( msg); } + } + process.exit(code); +} + +module.exports = processUsers; diff --git a/website/assets/sprites/spritesmith/gear/events/birthday/broad_armor_special_birthday2017.png b/website/assets/sprites/spritesmith/gear/events/birthday/broad_armor_special_birthday2017.png new file mode 100644 index 0000000000000000000000000000000000000000..2b8959f4d045a2a296ef8ee5dc6d132d1de92c9d GIT binary patch literal 3457 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 literal 0 HcmV?d00001 diff --git a/website/assets/sprites/spritesmith/gear/events/birthday/shop_armor_special_birthday2017.png b/website/assets/sprites/spritesmith/gear/events/birthday/shop_armor_special_birthday2017.png new file mode 100644 index 0000000000000000000000000000000000000000..7d3131ec4ef385ae40b709c90e4c98733233190c GIT binary patch literal 3287 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 V!2ozH2fF|O002ovPDHLkV1m>aKA!*p literal 0 HcmV?d00001 diff --git a/website/assets/sprites/spritesmith/gear/events/birthday/slim_armor_special_birthday2017.png b/website/assets/sprites/spritesmith/gear/events/birthday/slim_armor_special_birthday2017.png new file mode 100644 index 0000000000000000000000000000000000000000..f3f9ffa1ad1760039b367dd57e2abf7853abdd33 GIT binary patch literal 3421 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 J<=Md7{{ewPg$Muu diff --git a/website/assets/sprites/spritesmith/npcs/npc_bailey.png b/website/assets/sprites/spritesmith/npcs/npc_bailey.png index db86596503f37fb1e6c46c161d98bdf00af70984..cec18b6ef8c889d8e87c3fab74f2113cb2c0180f 100644 GIT binary patch literal 4084 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 diff --git a/website/assets/sprites/spritesmith/npcs/npc_daniel.png b/website/assets/sprites/spritesmith/npcs/npc_daniel.png index f28a922a1acbd4b89e5600f301c15ec220c3205f..c41467d6ab14f34c664744c0be964e1b3590c496 100644 GIT binary patch delta 3586 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 IM6N<$f=ngfC;$Ke delta 1473 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 delta 2234 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 IM6N<$f`%EEujukeg_%H@Z{*9{ zKY7oQ&gFR?e)Rgje9vEp>wWIM@7ej>bI-l^c{F`Kp8@GT34wnJU{Dwo28F<&FenTP zfk9zV7!(47!k{oH3<`lkVNe(p0)xV!Fen5Dg+XCZ2n-5?!k{oH1O|mcgI@;r+|D&Q{~%O zlsEjeeaFX^e#a42UbxF+!b5>PqI{2~6Xt#qj(PK*eX4(aH>*?4>eSTKAj$)IAm2SH z*}GTixmj6$!MybSddlU)#wdMC+j*s*UcFs>wzu$yhXVNkMZVLSJI8?z={9Uoh0)>R zhE!fuP~c;2itY3kZu^slDLo@BN9lDJ2>+I7uhMgj1b8Tr@6Wls?##XDqcSm?bIi}R zwu&7zT)2Or^wkR&8dmMw!Cx2I&pZ$#)*m}?n%vOl9fbc|369194+Zi88s+U=t#K+G z^Rt&OiFNpyKJVA*VtYbm1-02USFCd^>Y!MDDxX#bMiM*}$oGpVpPHI#h>LcHq3$*v zkN7&wiwX*qK6iSe()raLJ5iob1@*aw;*SZtYqWn@-Z*`VSY8@FSS;U?G_KnbA07(i z12mV{Va~7CXatd(x#^(gvo5cP{o#Kyr7`Pn62e1)e1JxIolEObotl}g^lLUc zwsZN`<#H*^U*FlN%3loGN;p5ZPJH&tu9qD3%j>_C+5OjHJB&uUl78bZ(W$uUq`@e0Zu@9vV*F-uB#jvCcJSD}ME8Y(xZt z5~6&6m_s?{cYBYLo;*b9#SDLr?K@A6H>}X+_;X!{|GW>XEu%co<$1o(G1v7~+0dZs z=&l&SLxKFwEj^0z9P{E@k68a{hW~&46Qh;B_(Qi?zthzqQTXBAg7%9_Z!1|TqRoX* z1!3$;&-OthmA-j$tf5)Jiz^vEMZiOWd=Nx=j`^IZpH%tC$Y_SMbvxgjIOk|^rAz7l zym1ey{EIh6_(&09orLAOM9gzq=@TCrZuu)Z{9GO$3gm+rc^=X7H4Ac`Tx@^-(@}l? zsSS=8fB*eU_b9@Xy)n1FtyDy~#ZBkzy0`6G-1Lgg%u&B6J@VOE;@Fr;;GsaizvS}& zr$lBGdJ}T#V(pLBbon+T{YepF9;rFzMm5#pujeF`%o4{?Ro(~>1@iqNm*-npuVhk` ze0ARyrSk*3sx{e`ZN64%9sPfKUava^@LavB^yMe$)t*i9F~%)}26ed)uyG>2hBIX7 zP|Ln}l;?X9$mM~25FpPnFJBzfE1lK4FIghbck($_9KF($_bPpM4B;6X8me?}N5_BK z9uN|8Lph%=Jo~>ER}>uo+~MSZC6_yZJdh98h5gB&DVoRK9_pwA{;YovZ7v-1l#~?8 z!K;2y`mv~H_Qc>WG3V0Nzn|T4Sm|}FubIx=Ken=EIy{LiG)N@&_CKSM9@=ENOSx}C4<@I3+kY}>MQ k%kgl`;h{i2aO9r>01PL!5CvDZv;Y7A07*qoM6N<$f;+dL_5c6? delta 1632 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 HeG>XVqU&jV;%Z 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 bIsk!PU8IoWlvS|HuI&Xgw=|=g+=}==)0xjA diff --git a/website/common/locales/en/content.json b/website/common/locales/en/content.json index 41c54b203c..842103363b 100644 --- a/website/common/locales/en/content.json +++ b/website/common/locales/en/content.json @@ -218,6 +218,7 @@ "hatchingPotionGhost": "Ghost", "hatchingPotionRoyalPurple": "Royal Purple", "hatchingPotionHolly": "Holly", + "hatchingPotionCupid": "Cupid", "hatchingPotionNotes": "Pour this on an egg, and it will hatch as a <%= potText(locale) %> pet.", "premiumPotionAddlNotes": "Not usable on quest pet eggs.", diff --git a/website/common/script/content/constants.js b/website/common/script/content/constants.js index 69a8aa7c31..fe4634ab94 100644 --- a/website/common/script/content/constants.js +++ b/website/common/script/content/constants.js @@ -13,7 +13,7 @@ export const CLASSES = [ export const EVENTS = { winter: { start: '2013-12-31', end: '2014-02-01' }, - birthday: { start: '2016-01-29', end: '2016-02-02' }, + birthday: { start: '2017-01-31', end: '2017-02-02' }, spring: { start: '2014-03-21', end: '2014-05-01' }, summer: { start: '2014-06-20', end: '2014-08-01' }, fall: { start: '2014-09-21', end: '2014-11-01' }, diff --git a/website/common/script/content/gear/sets/special/index.js b/website/common/script/content/gear/sets/special/index.js index 3b5e55eafc..aa51be7ddf 100644 --- a/website/common/script/content/gear/sets/special/index.js +++ b/website/common/script/content/gear/sets/special/index.js @@ -531,6 +531,12 @@ let armor = { value: 90, con: 15, }, + birthday2017: { + text: t('armorSpecialBirthday2017Text'), + notes: t('armorSpecialBirthday2017Notes'), + value: 0, + canOwn: ownsItem('armor_special_birthday2017'), + }, }; let back = { diff --git a/website/common/script/content/index.js b/website/common/script/content/index.js index c700f4817c..2a68b3c4e0 100644 --- a/website/common/script/content/index.js +++ b/website/common/script/content/index.js @@ -149,12 +149,12 @@ api.specialMounts = stable.specialMounts; api.mountInfo = stable.mountInfo; // For seasonal events, change these booleans: -let canBuyNormalFood = true; -let canDropNormalFood = true; +let canBuyNormalFood = false; +let canDropNormalFood = false; let canBuyCandyFood = false; let canDropCandyFood = false; -let canBuyCakeFood = false; -let canDropCakeFood = false; +let canBuyCakeFood = true; +let canDropCakeFood = true; api.food = { Meat: { diff --git a/website/server/models/user/hooks.js b/website/server/models/user/hooks.js index 5c15db3733..e7e2547707 100644 --- a/website/server/models/user/hooks.js +++ b/website/server/models/user/hooks.js @@ -85,6 +85,19 @@ function _setUpNewUser (user) { user._ABtests.checkInModals = '20161221_showCheckInPreviews'; // show 'preview' check-in modals } user.items.quests.dustbunnies = 1; + user.items.gear.owned.armor_special_birthday = false; + user.items.food = { + 'Cake_Base': 1, + 'Cake_CottonCandyBlue': 1, + 'Cake_CottonCandyPink': 1, + 'Cake_Desert': 1, + 'Cake_Golden': 1, + 'Cake_Red': 1, + 'Cake_Shade': 1, + 'Cake_Skeleton': 1, + 'Cake_White': 1, + 'Cake_Zombie': 1, + }; if (user.registeredThrough === 'habitica-web' || user.registeredThrough === 'habitica-android') { taskTypes = ['habit', 'daily', 'todo', 'reward', 'tag']; diff --git a/website/views/shared/new-stuff.jade b/website/views/shared/new-stuff.jade index 4fdcf34700..eab7f2098e 100644 --- a/website/views/shared/new-stuff.jade +++ b/website/views/shared/new-stuff.jade @@ -1,23 +1,62 @@ -h2 1/26/2017 - BEFFYMAROO JOINS HABITICA STAFF; GUILD SPOTLIGHT ON HEALTH AND FITNESS +h2 1/31/2017 - HABITICA BIRTHDAY PARTY AND LAST CHANCE FOR MANY SPECIAL ITEMS hr tr td - .promo_contrib_spotlight_beffymaroo.pull-right - h3 New Staff Member: Beffymaroo! - p We're thrilled to announce that our long-time moderator and pixel artist Beffymaroo will be coming onboard as a staff member! She's been a major part of our community for a long time, and we couldn't be happier to welcome her aboard. Go congratulate her in the Tavern! - p.small.muted by the Habitica Team + h3 Habitica Birthday Bash + p January 31st is Habitica's Birthday! Thank you so much for being a part of our community - it means a lot. + br + p Now come join us and the NPCs as we celebrate! tr td - .promo_working_out.pull-left.slight-right-margin - h3 Guild Spotlight: Health and Fitness - p There's a new Guild Spotlight on the blog that highlights the Guilds that can help you as you evaluate your Health and Fitness goals for 2017! Check it out now to find Habitica's best Health and Fitness communities. - p.small.muted by Beffymaroo + .Pet_Food_Cake_Base.pull-left.slight-right-margin + h3 Cake for Everybody! + p In honor of the festivities, everyone has been awarded an assortment of yummy cake to feed to your pets! Plus, for the next two days Alexander the Merchant is selling cake in his shop, and cake will sometimes drop when you complete your tasks. Cake works just like normal pet food, but if you want to know what type of pet likes each slice, the wiki has spoilers. + tr + td + h3 Party Robes + p There are Party Robes available for free in the Rewards column! Don them with pride. + tr + td + .promo_holly_potions.pull-left.slight-right-margin + .achievement-birthday2x.pull-right + h3 Birthday Bash Achievement + p In honor of Habitica's birthday, everyone has been awarded the Habitica Birthday Bash achievement! This achievement stacks for each Birthday Bash you celebrate with us. + tr + td + h3 Last Chance for Winter Wonderland Outfits, Wintry Hair Colors, and Snowballs + p Today is the final day of the Winter Wonderland Festival, so if you still have any remaining Winter Wonderland Items that you want to buy, you'd better do it now! The Seasonal Edition items and Hair Colors won't be back until next December, and if the Limited Edition items return they will have increased prices or changed art, so be sure to snag them today! Due to the fact that the Wintry Skins were released later than the rest of the Seasonal Customization items, we've decided to make a special one-time exception to their end date, so they will be available until February 3rd rather than January 31st. + tr + td + .promo_mystery_201701.pull-right + h3 Last Chance for Time-Freezer Set + p Reminder: it's the final day to subscribe and receive the Timefreezer Set! Subscribing also lets you buy gems for gold. The longer your subscription, the more gems you get! + br + p Thanks so much for your support! You help keep Habitica running. + p.small.muted by Lemoness + tr + td + h3 Last Chance for Holly and Peppermint Hatching Potions + p Reminder: the 31st is the final day to buy Holly and Peppermint Hatching Potions! If they come back, it won't be until next year at the earliest, so don't delay! + p.small.muted by Vampitch, Lemoness, and SabreCat if menuItem !== 'oldNews' hr a(href='/static/old-news', target='_blank') Read older news mixin oldNews + h2 1/26/2017 - BEFFYMAROO JOINS HABITICA STAFF; GUILD SPOTLIGHT ON HEALTH AND FITNESS + tr + td + .promo_contrib_spotlight_beffymaroo.pull-right + h3 New Staff Member: Beffymaroo! + p We're thrilled to announce that our long-time moderator and pixel artist Beffymaroo will be coming onboard as a staff member! She's been a major part of our community for a long time, and we couldn't be happier to welcome her aboard. Go congratulate her in the Tavern! + p.small.muted by the Habitica Team + tr + td + .promo_working_out.pull-left.slight-right-margin + h3 Guild Spotlight: Health and Fitness + p There's a new Guild Spotlight on the blog that highlights the Guilds that can help you as you evaluate your Health and Fitness goals for 2017! Check it out now to find Habitica's best Health and Fitness communities. + p.small.muted by Beffymaroo h2 1/24/2017 - JANUARY SUBSCRIBER ITEMS REVEALED tr td