From 53682205de9a5ff2efed6c96caabaad549235acf Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Sat, 16 Mar 2013 16:02:15 -0400 Subject: [PATCH 01/16] another strange derby truthy issue --- views/app/header.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/app/header.html b/views/app/header.html index ede91560a4..d7c7ab9b83 100644 --- a/views/app/header.html +++ b/views/app/header.html @@ -1,5 +1,5 @@ - {#unless _user.preferences.hideHeader} + {#unless equal(_user.preferences.hideHeader,true)}
From 4e9fc851939c116a117d856cd3b79ea6ea0b0dcf Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Mon, 11 Mar 2013 01:32:24 -0400 Subject: [PATCH 02/16] start static-pages redesign --- public/addons-extensions.html | 0 public/copy.css | 17 +++++ public/faq.html | 0 public/splash.html | 47 +++++++------ public/team.html | 125 ++++++++++++++++++++++++++++++++++ 5 files changed, 169 insertions(+), 20 deletions(-) create mode 100644 public/addons-extensions.html create mode 100644 public/copy.css create mode 100644 public/faq.html create mode 100644 public/team.html diff --git a/public/addons-extensions.html b/public/addons-extensions.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/public/copy.css b/public/copy.css new file mode 100644 index 0000000000..cd3f93626e --- /dev/null +++ b/public/copy.css @@ -0,0 +1,17 @@ +.jumbotron { + background-color: #1b1b1b; + background-image: -moz-linear-gradient(top, #222222, #111111); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#222222), to(#111111)); + background-image: -webkit-linear-gradient(top, #222222, #111111); + background-image: -o-linear-gradient(top, #222222, #111111); + background-image: linear-gradient(to bottom, #222222, #111111); + background-repeat: repeat-x; + border-color: #252525; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff111111', GradientType=0); + background:none; + color:black; + +} +body { + padding-top:0px; +} \ No newline at end of file diff --git a/public/faq.html b/public/faq.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/public/splash.html b/public/splash.html index 51f5c78f72..a48ddaef86 100644 --- a/public/splash.html +++ b/public/splash.html @@ -8,34 +8,41 @@ + - - +

HabitRPG

diff --git a/public/team.html b/public/team.html new file mode 100644 index 0000000000..ace3708906 --- /dev/null +++ b/public/team.html @@ -0,0 +1,125 @@ + + + + HabitRPG | Team + + + + + + + + + + + + + + + +
+
+

Team

+

The HabitRPG team has developed organically in a meritocratic fashion. We're still figuring it all out, but the members we have listed here have contributed greatly. If you want to be part of the team, contribute to the repository, and if you're a big asset we'll likely adopt you :) See the Count Me In

+
+
+
+
+ + +
+
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+
+
+
+ + + From b030fb60ec27b0ea11ac622c8a3dc9e0382dce02 Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Sat, 16 Mar 2013 23:03:59 -0400 Subject: [PATCH 03/16] add a ton of static page, beef up the footer, make this website look official! @zakkain, I hope I didn't break anything! --- README.md | 12 +- public/addons-extensions.html | 0 public/css/footer.css | 76 +++ public/{copy.css => css/static-pages.css} | 0 public/faq.html | 0 public/splash.html | 129 ----- public/team.html | 125 ----- src/server/middleware.coffee | 5 +- src/server/static.coffee | 16 +- styles/app/index.styl | 10 - views/app/footer.html | 102 ++-- views/privacy.html | 336 ----------- views/static/about.html | 68 +++ views/static/extensions.html | 43 ++ views/static/faq.html | 55 ++ views/static/front.html | 28 + views/static/head.html | 15 + views/static/header.html | 33 ++ views/static/privacy.html | 347 ++++++++++++ views/static/team.html | 74 +++ views/static/terms.html | 646 ++++++++++++++++++++++ views/terms.html | 636 --------------------- 22 files changed, 1468 insertions(+), 1288 deletions(-) delete mode 100644 public/addons-extensions.html create mode 100644 public/css/footer.css rename public/{copy.css => css/static-pages.css} (100%) delete mode 100644 public/faq.html delete mode 100644 public/splash.html delete mode 100644 public/team.html delete mode 100644 views/privacy.html create mode 100644 views/static/about.html create mode 100644 views/static/extensions.html create mode 100644 views/static/faq.html create mode 100644 views/static/front.html create mode 100644 views/static/head.html create mode 100644 views/static/header.html create mode 100644 views/static/privacy.html create mode 100644 views/static/team.html create mode 100644 views/static/terms.html delete mode 100644 views/terms.html diff --git a/README.md b/README.md index cb809a92e5..10aeab7503 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,11 @@ #[HabitRPG](http://habitrpg.com/) -[HabitRPG](http://habitrpg.com/) is a habit tracker app which treats your goals like a Role Playing Game. Level up as you succeed, lose HP as you fail, earn money to buy weapons and armor. +HabitRPG is a habit building program which treats your life like a Role Playing Game. Level up as you succeed, lose HP as you fail, earn money to buy weapons and armor. + +[Read more](https://habitrpg.com/static/about) ![Screenshot](https://raw.github.com/lefnire/habitrpg/master/public/img/screenshot.jpeg "Screenshot") -###[About](https://habitrpg.com/splash.html) -###[Running Locally](https://github.com/lefnire/habitrpg/wiki/Running-Locally) -###[API](https://github.com/lefnire/habitrpg/wiki/API) - -##Contact -###[Bugs](https://github.com/lefnire/habitrpg/issues) -###[New Features](https://trello.com/board/habitrpg/50e5d3684fe3a7266b0036d6) - ##License Code is licensed under GNU GPL v3. Content is licensed under CC-BY-SA 3.0. See the LICENSE file for details. diff --git a/public/addons-extensions.html b/public/addons-extensions.html deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/public/css/footer.css b/public/css/footer.css new file mode 100644 index 0000000000..751d4d01a4 --- /dev/null +++ b/public/css/footer.css @@ -0,0 +1,76 @@ +/* Sticky footer styles +-------------------------------------------------- */ + +html, +body { + height: 100%; + /* The html and body elements cannot have any padding or margin. */ +} + +/* Wrapper for page content to push down footer */ +#wrap { + min-height: 100%; + height: auto !important; + height: 100%; + /* Negative indent footer by it's height */ + margin: 0 auto -60px; +} + +/* Set the fixed height of the footer here */ +#push, +#footer { + height: 60px; +} +#footer { + background-color: #f5f5f5; +} + +/* Lastly, apply responsive CSS fixes as necessary */ +@media (max-width: 767px) { + #footer { + margin-left: -20px; + margin-right: -20px; + padding-left: 20px; + padding-right: 20px; + } +} + + + +/* Custom page CSS +-------------------------------------------------- */ +/* Not required for template or sticky footer method. */ + +#wrap > .container { + padding-top: 60px; +} +.container .credit { + margin: 20px 0; +} + +code { + font-size: 80%; +} + + + +/* HabitRPG Custom CSS +-------------------------------------------------- */ + +.footer { + /*padding: 70px 0;*/ + border-top: 1px solid #e5e5e5; + background-color: #f5f5f5; +} + +.footer li { + text-align: left; +} + +.footer h4 { + text-align: left; +} + +.footer td { + align: left !important; +} \ No newline at end of file diff --git a/public/copy.css b/public/css/static-pages.css similarity index 100% rename from public/copy.css rename to public/css/static-pages.css diff --git a/public/faq.html b/public/faq.html deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/public/splash.html b/public/splash.html deleted file mode 100644 index a48ddaef86..0000000000 --- a/public/splash.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - HabitRPG | Gamify Your Life - - - - - - - - - - - - - - -
-
-

HabitRPG

-

A habit building program which treats your life like a Role Playing Game. Level up as you succeed, lose HP as you fail, earn money to buy weapons and armor.

- Play -
-
-
-
- -
-
-
-
-

 

-

-
- -
- -

Habits are situational goals that you constantly track. You can either try to break bad habits or reinforce good ones. You may encounter some habits multiple times a day (like "Floss After Eating"), and some you may not encounter often at all (like "Replace the Toilet Paper When it Runs Out"). For some habits, it only makes sense to gain points (like "Do One Hour of Productive Work"). For others, it only makes sense to lose points (like "Eat Junk Food"). For the rest, both gain and loss apply (like for "Take The Stairs", taking the stairs would be a gain while taking the elevator would be a loss).

-
- -
- -

Dailies are goals that you want to complete once a day, building them into your routine (like "Workout for 30 Minutes"). Unlike Habits, Dailies may only be checked off once a day. Also unlike habits, at the end of each day non-completed Dailies will cause damage, making you lose Hit Points. If you are doing well and consistantly check off a Daily day after day, it will turn green and earn less gold and experience, though it will also cause you to lose fewer Hit Points if you skip it. This means you can ease up on it for a bit. Conversely, if you are doing poorly and fail to check something off every day, it will turn red. The worse you do, the more experience and gold that Daily is worth and the more hit points it takes away if left uncompleted. This encourages you to focus on your shortcomings, the reds. Oh, and don't worry. You can make a Daily active only for certain days of the week, so weekday tasks won't pester you on the weekends. Or you can make a Daily active only on Mondays, thus creating a weekly task.

-
- -
- -

Todos are one-time goals which need to be completed eventually (like "Wash the car" or "Buy milk"). Non-completed Todos won’t hurt you, but they will become more valuable over time. This will encourage you to wrap up stale Todos.

-
- -
- -

As you complete goals, you earn gold to buy rewards that you create (like "An Hour of Video Games"). Create plenty of rewards and buy them liberally! Rewarding good performance is the best way to reinforce good habits. If you really need a reward but don't have enough gold, you can still make a purchase. But be careful because it will cost you Hit Points!

-

After you’ve reached level 2, you unlock the Item Store under the rewards column. You can now buy weapons, armor, and potions. Armor keeps you protected by reducing how much damage you take from failed tasks. Weapons increase how much experience you gain for completing a task. Potions recover 15 HP, for when you've piled just a little too much onto your schedule.

-
- -
- -

Code is licensed under GNU GPL v3. Content is licensed under CC-BY-SA 3.0. See the LICENSE file for details.

- -

Content and assets comes from Mozilla’s BrowserQuest (Mozilla, Little Workshop). They seriously rock. -

-
- -
- - diff --git a/public/team.html b/public/team.html deleted file mode 100644 index ace3708906..0000000000 --- a/public/team.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - HabitRPG | Team - - - - - - - - - - - - - - - -
-
-

Team

-

The HabitRPG team has developed organically in a meritocratic fashion. We're still figuring it all out, but the members we have listed here have contributed greatly. If you want to be part of the team, contribute to the repository, and if you're a big asset we'll likely adopt you :) See the Count Me In

-
-
-
-
- - -
-
- -
- -
- -
- -
- -
- -
- -
- -
- -
-
-
-
- - - diff --git a/src/server/middleware.coffee b/src/server/middleware.coffee index 47ccaad07b..60a392faee 100644 --- a/src/server/middleware.coffee +++ b/src/server/middleware.coffee @@ -1,6 +1,7 @@ module.exports.splash = (req, res, next) -> - unless req.query?.play? or req.getModel().get('_userId') - res.redirect('/splash.html') + isStatic = req.url.split('/')[1] is 'static' + unless req.query?.play? or req.getModel().get('_userId') or isStatic + res.redirect('/static/front') else next() diff --git a/src/server/static.coffee b/src/server/static.coffee index 1d5124f35e..6ed41a41c4 100644 --- a/src/server/static.coffee +++ b/src/server/static.coffee @@ -7,10 +7,18 @@ derby = require 'derby' # ---------- Static Pages ------------ staticPages = derby.createStatic path.dirname(path.dirname(__dirname)) -router.get '/privacy', (req, res) -> - staticPages.render 'privacy', res +beforeEach = (req, res, next) -> + req.getModel().set '_view', {nodeEnv: 'production'} # we don't want cheat buttons on static pages + next() -router.get '/terms', (req, res) -> - staticPages.render 'terms', res +router.get '/splash.html', (req, res) -> return res.redirect('/static/front') +router.get '/static/front', beforeEach, (req, res) -> staticPages.render 'static/front', res +router.get '/static/about', beforeEach, (req, res) -> staticPages.render 'static/about', res +router.get '/static/team', beforeEach, (req, res) -> staticPages.render 'static/team', res +router.get '/static/extensions', beforeEach, (req, res) -> staticPages.render 'static/extensions', res +router.get '/static/faq', beforeEach, (req, res) -> staticPages.render 'static/faq', res + +router.get '/static/privacy', beforeEach, (req, res) -> staticPages.render 'static/privacy', res +router.get '/static/terms', beforeEach, (req, res) -> staticPages.render 'static/terms', res module.exports = router diff --git a/styles/app/index.styl b/styles/app/index.styl index 406f26d74e..3d16352517 100644 --- a/styles/app/index.styl +++ b/styles/app/index.styl @@ -96,16 +96,6 @@ html,body,p,h1,ul,li,table,tr,th,td /* Footer -------------------------------------------------- */ -.footer ul li - list-style:none - float:left -.footer ul li:after - content: "\00A0\00A0|\00A0\00A0" -.footer ul li:last-child:after - content: "" -.footer table td - vertical-align: top - /* Bootstrap website boilerplate */ .footer { padding: 70px 0; diff --git a/views/app/footer.html b/views/app/footer.html index bd7626f248..5b671f3108 100644 --- a/views/app/footer.html +++ b/views/app/footer.html @@ -1,43 +1,71 @@ \ No newline at end of file diff --git a/views/privacy.html b/views/privacy.html deleted file mode 100644 index 9d6faeec80..0000000000 --- a/views/privacy.html +++ /dev/null @@ -1,336 +0,0 @@ - - Privacy Policy - - -
- « Back - -

- Last updated September 02, 2012 -

-

- PLEASE READ THIS PRIVACY POLICY CAREFULLY. -
- By accessing or otherwise using habitrpg.com or any sub domains thereto ("the Sites"), - or using a habitrpg.com or HabitRPG application on a mobile device ("the Applications"), - you agree to be bound contractually by this Privacy Policy. Individually - or collectively, the Applications and the Sites may be referred to as - the "Services." -

-

- To review material modifications and their effective dates scroll - to the bottom of the page. -

-

- 1. Privacy Statement; Collection of Personal - Information. -
- 1.1 OCDevel owns and operates this business. All - references to "we", "us", shall be construed to mean OCDevel. -

-

- 1.2 We understand that visitors to this website are concerned - about the privacy of information. The following describes our privacy - policy regarding information, including personal information, that we - collect through this website. -

-

- 2. Modification of Privacy Policy. -
- We reserve the right to modify this Privacy Policy at any time, - and without prior notice, by posting an amended Privacy Policy that is - always accessible by clicking on the "Privacy Policy" link on this - site's home page. Your continued use of this site indicates your - acceptance of the amended Privacy Policy. You should check the Privacy - Policy through this link periodically for modifications by clicking on - the link provided near the top of the Privacy Policy for a listing of - material modifications and their effective dates. Regarding personal - information, if any modifications are materially less restrictive on our - use or disclosure of the personal information previously disclosed by - you, we will obtain your consent before implementing such revisions with - respect to such information. -

-

- 3. Collection of Anonymous, Passive Information. -
- We reserve the right to monitor your use of the services. As you - navigate through the services, certain anonymous information may be - passively collected (that is, gathered without your actively providing - the information) using various technologies, such as cookies, Internet - tags or web beacons, and navigational data collection (log files, server - logs, clickstream). The following is a listing and a brief explanation - of passive information collection methodologies which we may use from - time to time to better understand how the Services are being used. -

-

- 3.1 A "cookie" is a text file that this site sends to your - browser in the form of a text file The information generated by the - cookie about your use of this site (including your IP address) will be - transmitted to and stored. Most browsers automatically accept cookies, - but they usually can be modified to decline cookies if you prefer; - however, certain features of this site might not work without cookies. -

-

- 3.2 "Session" cookies are temporary bits of information that are - used to improve navigation, block visitors from providing information - where inappropriate (the Services "remembers" previous entries of age or - country of origin that were outside the specified parameters and blocks - subsequent changes), and collect aggregate statistical information on - the Services. They are erased once you exit your Web browser or - otherwise turn off your computer. -

-

- 3.3 "Persistent" cookies are more permanent bits of information - that are placed on the hard drive of your computer and stay there unless - you delete the cookie. Persistent cookies store information on your - computer for a number of purposes, such as retrieving certain - information you have previously provided, helping to determine what - areas of the Services you may find most valuable, and customizing the - Services based on your preferences on an ongoing basis. Persistent - cookies placed by this site in your computer do not hold personal - information. -

-

- 3.4 You can set your browser to accept all cookies, to reject all - cookies, or to notify you whenever a cookie is offered so that you can - decide each time whether to accept it. To learn more about cookies and - how to specify your preferences, please search for "cookie" in the - "Help" portion of your browser. -

-

- 3.5 An Internet Protocol (IP) address is a number assigned to - your computer by your Internet service provider so you can access the - Internet and is generally considered to be non-personally identifiable - information, because in most cases an IP address is dynamic (changing - each time you connect to the Internet), rather than static (unique to a - particular user's computer). The IP address can be used to diagnose - problems with a server, report aggregate information, determine the - fastest route for your computer to use in connecting to a site, and - administer and improve the Services. -

-

- 3.6 "Internet tags" (also known as Web Beacons, single-pixel - GIFs, clear GIFs, invisible GIFs, and 1-by-1 GIFs) are smaller than - cookies and tell the Web site server information such as the IP address - and browser type related to the visitor's computer. Tags may be placed - both on online advertisements that bring people to the Services and on - different pages of the Services. Such tags indicate how many times a - page is opened and which information is consulted. -

-

- 3.7 "Navigational data" (log files, server logs, and clickstream - data) are used for system management, to improve the content of the - Services, market research purposes, and to communicate information to - visitors. -

-

- 4. Use and Sharing of Anonymous, Passive Information. -
- The Services may make full use of passively collected anonymous - information, including without limitation the right to use such - information to provide better service to Service users, customize the - Services based on your preferences, compile and analyze statistics and - trends, and otherwise administer and improve the Services for your use. We - reserve the right to share this anonymous, passive information in - aggregated form. -

-

- 5. 3rd Party Behavioral Ads; Google's AdSense Network. -
- 5.1 We reserve the right to use anonymous, passive information - about your visits to this and other websites (not including your name, - address, email address or telephone number) for purposes of serving our - ads and third party ads that are targeted to your interests ("3rd Party - Behavioral Ads"). We reserve the right to share anonymous, passive - information collected on the services with third parties for purposes of - serving 3rd Party Behavioral Ads. These 3rd Party Behavioral Ads do not - identify you personally. Instead, they associate your behavioral data on - visited sites with your browser, so that the ads your computer sees on - this site are more likely to be relevant to your interests. 3rd Party - Behavioral Ads require that that you be served with a cookie containing - a tracking code. You may refuse the use of cookies by selecting the - appropriate settings on your browser; however, please note that if you - do this you may not be able to use the full functionality of this site. -

-

- 5.2 We reserve the right to participate in Google's AdSense - network for purposes of serving 3rd Party Behavioral Ads. Google uses - DoubleClick's DART cookie for serving 3rd Party Behavioral Ads over the - AdSense network. You may opt out of the use of the DART cookie. For - information regarding how to opt out, go to - http://www.google.com/privacy_ads.html. -

-

- 6. Use of 3rd Party Analytics. -
- We reserve the right to use analytics services provided by - third parties. These services use 3rd party cookies to collect - anonymous, passive information about your use of this site (see - explanation of cookies in Collection of Anonymous, Passive Information - above). We use this information for the purpose of evaluating your use - of the Services, compiling reports on activity, and providing other - services. These web analytics services may also transfer this - information to third parties where required to do so by law, or where - such third parties process the information on the service's behalf. -

-

- 7. Collection of Personal Information; Categories. -
- We will ask you for personal information when you sign up for any - specific benefit or purpose that requires registration. Personal - information that we collect may vary with the each registration, and it - may include one or more of the following categories: name, physical - address, an email address, phone number, and credit card information - including credit card number, expiration date, and billing address, - emergency contact information, current medications, allergies, medical - insurance information. -

-

- 8. Use And Sharing of Personal Information: General - Policy And Exceptions. -
- Our general policy is that we will use your personal information, - including combining your personal information with passive information - collected from this site, only for: the performance of the services or - transaction for which it was given, our private, internal reporting for - this site, and security assessments for this site, and we will not - share, sell, or rent your personal information to others. The only - exceptions to this general policy: (i) are described in the subsections - below, and (ii) if you explicitly approve through our site. -

-

- 8.1 Affiliates And Service Providers. We reserve the right to - provide such information to our affiliates or subsidiaries, or trusted - service providers for the purpose of hosting our servers or processing - or archiving personal information for us. We require that these parties - agree to privacy and security safeguards for this information that are - consistent with this Privacy Policy. -

-

- 8.2 Acquisition; Bankruptcy. In the event that we are acquired by - or merged with a third party entity, we reserve the right to transfer - such information as part of such merger, acquisition, sale, or other - change of control. In the unlikely event of our bankruptcy, insolvency, - reorganization, receivership, or assignment for the benefit of - creditors, or the application of laws or equitable principles affecting - creditors' rights generally, we reserve the right to transfer such - information to protect our rights or as required by law. -

-

- 8.3 Enforcement; Legal Process. We reserve the right to transfer - such information if we have a good faith belief that access, use, - preservation or disclosure of such information is reasonably necessary - (i) to satisfy any applicable law, regulation, legal process or - enforceable governmental request, or (ii) to investigate or enforce - violations of our rights or the security of this site. -

-

- 8.4 Miscellaneous. We reserve the right to share personal - information with the following additional parties: online organizers - using our tools and resellers of our products and services from whose - site the sale originated (even though the sale originates at site of the - reseller, registration and collection of personal information occurs at - this site). -

-

- 9. Onward Transfer of Personal Information Outside Your - Country of Residence. -
- Any personal information which we may collect on this site will - be stored and processed in our servers located only in the United - States. By using this site, if you reside outside the United States, you - consent to the transfer of personal information outside your country of - residence to the United States. -

-

- 10. Security of Personal Information. -
- We follow reasonable and appropriate industry standards to - protect your personal information and data. Unfortunately, no data - transmission over the Internet or method of data storage can be - guaranteed 100% secure. Therefore, while we strive to protect your - personal information by following generally accepted industry standards, - we cannot ensure or warrant the absolute security of any information you - transmit to us or archive at this site. -

-

- 11. Changing And Updating Personal Information. -
- Upon request, we will permit you to request or make changes or - updates to your personal information for legitimate purposes. We request - identification prior to approving such requests. We reserve the right to - decline any requests that are unreasonably repetitive or systematic, - require unreasonable time or effort of our technical or administrative - personnel, or undermine the privacy rights of others. We reserve the - right to permit you to access your personal information in any account - you establish with this site for purposes of making your own changes or - updates, and in such case, instructions for making such changes or - updates will be provided where necessary. -

-

- 12. Email From This Site; Opt-Out Rights. -
- If you supply us with your e-mail address you may receive - periodic messages from us with information specific to the Services and - required for the normal functioning of the Services as well as for new - products or services or upcoming events. If you prefer not to receive - periodic email messages, you may opt-out by following the instructions - on the email. -

-

- 13. Children's Online Policy. -
- We are committed to preserving online privacy for all of its - website visitors, including children. This site is a general audience - site. Consistent with the Children's Online Privacy Protection Act - (COPPA), we will not knowingly collect any information from, or sell to, - children under the age of 13. If you are a parent or guardian who has - discovered that your child under the age of 13 has submitted his or her - personally identifiable information without your permission or consent, - we will remove the information from our active list, at your request. To - request the removal of your child's information, please send contact our - site as provided below under “Contact Us”, and be sure to include in - your message the same login information that your child submitted. -

-

- 14. Email And Other Messages Through This Site; ECPA - Notice. -
- This site treats email messages and other electronic messages - that are sent through this site and not viewable by others as - confidential and private, except as required by law, including without - limitation, the Electronic Communications Privacy Act of 1986, 18 U.S.C. - Sections 2701-2711 (the "ECPA"). The ECPA permits this site's limited - ability to intercept and/or disclose electronic messages, for example - (i) as necessary to operate our system or to protect our rights or - property, (ii) upon legal demand (court orders, warrants, subpoenas), or - (iii) where we receive information inadvertently which appears to - pertain to the commission of a crime. This site is not considered a - "secure communications medium" under the ECPA. -

-

- 15. Contact Us. -
- If you have any questions regarding this Privacy Policy, please - contact the owner and operator of this website business: -

-
- OCDevel -
- 98 Morrison Ave #2 -
- Somerville, MA 02144 -
- Email: - tylerrenelle@gmail.com -
- Telephone: 1-805-975-5236 -
-

- - -
diff --git a/views/static/about.html b/views/static/about.html new file mode 100644 index 0000000000..7caddc48ce --- /dev/null +++ b/views/static/about.html @@ -0,0 +1,68 @@ + + + + + + HabitRPG | About + + + + + +
+ +
+
+ +

HabitRPG is a habit building program which treats your life like a Role Playing Game. Level up as you succeed, lose HP as you fail, earn money to buy weapons and armor.

+
+ +
+

 

+

+
+ +
+ +

Habits are situational goals that you constantly track. You can either try to break bad habits or reinforce good ones. You may encounter some habits multiple times a day (like "Floss After Eating"), and some you may not encounter often at all (like "Replace the Toilet Paper When it Runs Out"). For some habits, it only makes sense to gain points (like "Do One Hour of Productive Work"). For others, it only makes sense to lose points (like "Eat Junk Food"). For the rest, both gain and loss apply (like for "Take The Stairs", taking the stairs would be a gain while taking the elevator would be a loss).

+
+ +
+ +

Dailies are goals that you want to complete once a day, building them into your routine (like "Workout for 30 Minutes"). Unlike Habits, Dailies may only be checked off once a day. Also unlike habits, at the end of each day non-completed Dailies will cause damage, making you lose Hit Points. If you are doing well and consistantly check off a Daily day after day, it will turn green and earn less gold and experience, though it will also cause you to lose fewer Hit Points if you skip it. This means you can ease up on it for a bit. Conversely, if you are doing poorly and fail to check something off every day, it will turn red. The worse you do, the more experience and gold that Daily is worth and the more hit points it takes away if left uncompleted. This encourages you to focus on your shortcomings, the reds. Oh, and don't worry. You can make a Daily active only for certain days of the week, so weekday tasks won't pester you on the weekends. Or you can make a Daily active only on Mondays, thus creating a weekly task.

+
+ +
+ +

Todos are one-time goals which need to be completed eventually (like "Wash the car" or "Buy milk"). Non-completed Todos won’t hurt you, but they will become more valuable over time. This will encourage you to wrap up stale Todos.

+
+ +
+ +

As you complete goals, you earn gold to buy rewards that you create (like "An Hour of Video Games"). Create plenty of rewards and buy them liberally! Rewarding good performance is the best way to reinforce good habits. If you really need a reward but don't have enough gold, you can still make a purchase. But be careful because it will cost you Hit Points!

+

After you’ve reached level 2, you unlock the Item Store under the rewards column. You can now buy weapons, armor, and potions. Armor keeps you protected by reducing how much damage you take from failed tasks. Weapons increase how much experience you gain for completing a task. Potions recover 15 HP, for when you've piled just a little too much onto your schedule.

+
+ +
+ +

Code is licensed under GNU GPL v3. Content is licensed under CC-BY-SA 3.0. See the LICENSE file for details.

+ +

Content and assets comes from Mozilla’s BrowserQuest (Mozilla, Little Workshop). They seriously rock. +

+
+ +
+
+ \ No newline at end of file diff --git a/views/static/extensions.html b/views/static/extensions.html new file mode 100644 index 0000000000..e2623c0b4c --- /dev/null +++ b/views/static/extensions.html @@ -0,0 +1,43 @@ + + + + + + HabitRPG | Add-ons & Extensions + + + + + +
+ +
+
+ +
+ +

Chrome Extension

+

Monitors your browsing habits to divvy points to your HabitRPG character. Think Stayfocusd for HabitRPG (http://habitrpg.com).

+

Lose HP for lingering on bad websites, gain Exp and GP for hanging out on good websites. Set the hours and days of the week you want to be productive and integrate your browsing habits with HabitRPG to improve your overall productivity.

+

To use, enter your HabitRPG User ID and API Token in the options page (User -> Settings, see the screenshot). Hit me up with suggestions

+

Pomodoro

+

I use Ugo Landini's Pomodoro, which allows start / stop custom scripts: shell do shell script "curl -X POST -H 'Content-Type:application/json' https://habitrpg.com/v1/users/.../tasks/productivity/up -d '{\\"apiToken\\":\\"...\\"}"

+

Anki

+

A HabitRPG addon for Anki.

+

HabitRPG Mobile

+

HabitRPG mobile application under development. Angular + PhoneGap

+

habitrpg-ncurses

+

node + ncurses interface for habitRPG.

+

This is set up to meet my general task workflow and my preferences. Todo lists are simple enought that I feel like investing time into making something that works exactly how I want it to work is worthwhile. Plus I felt like learning ncurses. At this point, attempt to use at your own risk.

+

Apparently the ncurses binding doesn't seem to work properly when loaded from npm. Grabbing the master branch from https://github.com/mscdex/node-ncurses works for me.

+

pyhabit

+

Python command line app for HabitRPG (http://habitrpg.com)

+

PHP API

+

A PHP class for the HabitRPG API. Will be expanded when more features become available in the API.

+

Suggest an Add-on / Extension

+

Email me to have something listed here

+
+
+ \ No newline at end of file diff --git a/views/static/faq.html b/views/static/faq.html new file mode 100644 index 0000000000..1e389c50fb --- /dev/null +++ b/views/static/faq.html @@ -0,0 +1,55 @@ + + + + + + HabitRPG | FAQ + + + + + +
+ +
+
+ +
+

What is habit tracking?

+

Habit tracking is keeping tabs on all your habits to help you improve. It is to life what calorie-counting is to diets (and calorie-counting falls under the habit-tracking umbrella). See Trackers vs Lifehackers for more information and website examples.

+

There are many habit-tracking apps, but HabitRPG takes a different spin: treating your goals and habits like a Role Playing Game (RPG). If you've played RPGs growing up, this app will make sense to you; otherwise, it may be overwhelming at first. Be sure to follow the tutorial when you first load the website. If it's still not your cup of tea, checkout Trackers vs Lifehackers for alternatives.

+

How does it work?

+

See the About page

+

Browser Support

+

Everything except Internet Explorer. Derby doesn't currently support IE (see this thread), though support is eventually planned. Use Chrome for best results.

+

Should this task be a Habit, Daily, or Todo?

+

See About on task type definitions, but think of it like this. * Habits you track many times per day. Taking the stairs, eating candy, biting your nails, etc. They're sort of micro-tasks. They're also the dumping ground for 3rd-party tasks, created via API calls - for example, when you visit vice websites (Reddit, 9gag) while using the Chrome extension - that's updated as a habit. * Dailies are things you track once or twice a day. Exercising, 1h Reading, Anki Session, etc. They reset at the end of each day, and must be completed each day. The confusion is usually between Dailies and Habits, and it usually goes like this: "Should I have a Daily called 1h Reading (I want to read 1 hour each day), or a Habit called 1h Reading that I up-score for every hour I read in a day?". My answer - Daily. If it's a decently difficult task that you want to become a good habit, make it a Daily - you're more likely to do it when it loses points at the end of each day than if it sits. * Todos are things you'll do once and only once. Call Mom, Send eBay Package, Pay Doctor Bill, etc. Pretty straight forward.

+

What are tokens?

+

In the days of yore, arcade machines ran on tokens or quarters, and were known to gobble such nuggets with avaricious glee. HabitRPG has no wish to drain your pocket change, but those who use and appreciate it can support the project by turning real-world quarters into tokens, and using the tokens in turn to reroll your tasks, spruce up their character, and tame fearsome mounts to impress friend and foe alike!

+

How do I reset?

+

Many people have requested the ability to start completely from scratch. This is highly discouraged because you'll lose historical data, which is useful for graphing your progress over time. However, some people find it useful in the beginning after playing with the app for a while - once they've become accustomed to how things work, they want to start playing "for real". To do this, make sure you're logged in and click the profile drop-down in the top-right corner, then click "Reset".

+

How do I undo?

+

Undoing actions is not yet support, but is in the works. See issue #6

+

How do I heal?

+

After you play for a while you unlock the Item Store from which you can buy health potions. Also, HP resets upon leveling up (of course!).

+

How do I customize a task's value?

+

Some tasks are more valuable to you than others. Finishing your research paper, for example, should be worth more points than flossing your teeth. Instead of customizing value upon task-creation, HabitRPG calculates a task's value automatically over time. The longer something sits without being completed (Dailies and Todos), the more valuable it becomes; and the more frequently you complete Dailies, the less valuable they become. Trust in the system's machine-learning of task-values.

+

If you absolutely must customize a task's value, there's a "difficulty" setting under the Advanced section of task-editing.

+

All my tasks are red, I'm dying too fast

+

Good! Your red tasks provide the most incentive. The worse you are at a task, the more valuable it becomes in Exp & GP, which will push you to focus on the harder tasks. However, if you really need a bail-out, you can "Re-Roll" from the item store, which resets all your tasks to a clean slate. You have to use your quarters, which will prevent you from re-rolling frequently.

+

Again, try as hard as you can to avoid using re-roll. The point of red tasks is to push you to try harder.

+

I'm going on vacation, how can I disable my Dailies?

+

Dailies have a "Repeat" field, which specifies which week days this item is due. When you on go vacation, just set each Daily's repeats such that they aren't due on any week days at all. See this screenshot. As for Todos, they will still gain value but they won't hurt you.

+

What algorithms are used?

+

See algorithms page.

+

BrowserQuest Art

+

We're currently using the pixel art from Mozilla BrowserQuest. Some have been opposed because they've played BQ themselves, and don't like design recycling, but here's my reasoning:

+

It is licensed under CC-BY-SA 3.0 (so we can use it). Fortunately for us (but sadly for Mozilla), BQ is mothballed. That has two implications. First, only those in-the-know will recognize it - which is mostly developers & designers who have been keeping abreast HTML5's progress. Second, it's absolutely superb in design and nostalgia - it does an excellent job of bringing back SNES, and it would be a shame to see it go to waste. Also, it's free, and will get pretty far before we need to start customizing.

+

How can I get involved?

+

Contribute to the GitHub repo and get a slice of the pie! See Business Model, and contact me if you're interested.

+ +
+
+ \ No newline at end of file diff --git a/views/static/front.html b/views/static/front.html new file mode 100644 index 0000000000..587fb09495 --- /dev/null +++ b/views/static/front.html @@ -0,0 +1,28 @@ + + + + + + HabitRPG | Gamify Your Life + + + + + +
+ + + +
+
+

HabitRPG

+

A habit building program which treats your life like a Role Playing Game. Level up as you succeed, lose HP as you fail, earn money to buy weapons and armor.

+ Play +
+
+
+

+ +
+
+ \ No newline at end of file diff --git a/views/static/head.html b/views/static/head.html new file mode 100644 index 0000000000..92092cb757 --- /dev/null +++ b/views/static/head.html @@ -0,0 +1,15 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/views/static/header.html b/views/static/header.html new file mode 100644 index 0000000000..cbfb5a1ff2 --- /dev/null +++ b/views/static/header.html @@ -0,0 +1,33 @@ + + \ No newline at end of file diff --git a/views/static/privacy.html b/views/static/privacy.html new file mode 100644 index 0000000000..fa0be97dc1 --- /dev/null +++ b/views/static/privacy.html @@ -0,0 +1,347 @@ + + + + + + HabitRPG | About + + + + + +
+ +
+ + +

+ Last updated September 02, 2012 +

+

+ PLEASE READ THIS PRIVACY POLICY CAREFULLY. +
+ By accessing or otherwise using habitrpg.com or any sub domains thereto ("the Sites"), + or using a habitrpg.com or HabitRPG application on a mobile device ("the Applications"), + you agree to be bound contractually by this Privacy Policy. Individually + or collectively, the Applications and the Sites may be referred to as + the "Services." +

+

+ To review material modifications and their effective dates scroll + to the bottom of the page. +

+

+ 1. Privacy Statement; Collection of Personal + Information. +
+ 1.1 OCDevel owns and operates this business. All + references to "we", "us", shall be construed to mean OCDevel. +

+

+ 1.2 We understand that visitors to this website are concerned + about the privacy of information. The following describes our privacy + policy regarding information, including personal information, that we + collect through this website. +

+

+ 2. Modification of Privacy Policy. +
+ We reserve the right to modify this Privacy Policy at any time, + and without prior notice, by posting an amended Privacy Policy that is + always accessible by clicking on the "Privacy Policy" link on this + site's home page. Your continued use of this site indicates your + acceptance of the amended Privacy Policy. You should check the Privacy + Policy through this link periodically for modifications by clicking on + the link provided near the top of the Privacy Policy for a listing of + material modifications and their effective dates. Regarding personal + information, if any modifications are materially less restrictive on our + use or disclosure of the personal information previously disclosed by + you, we will obtain your consent before implementing such revisions with + respect to such information. +

+

+ 3. Collection of Anonymous, Passive Information. +
+ We reserve the right to monitor your use of the services. As you + navigate through the services, certain anonymous information may be + passively collected (that is, gathered without your actively providing + the information) using various technologies, such as cookies, Internet + tags or web beacons, and navigational data collection (log files, server + logs, clickstream). The following is a listing and a brief explanation + of passive information collection methodologies which we may use from + time to time to better understand how the Services are being used. +

+

+ 3.1 A "cookie" is a text file that this site sends to your + browser in the form of a text file The information generated by the + cookie about your use of this site (including your IP address) will be + transmitted to and stored. Most browsers automatically accept cookies, + but they usually can be modified to decline cookies if you prefer; + however, certain features of this site might not work without cookies. +

+

+ 3.2 "Session" cookies are temporary bits of information that are + used to improve navigation, block visitors from providing information + where inappropriate (the Services "remembers" previous entries of age or + country of origin that were outside the specified parameters and blocks + subsequent changes), and collect aggregate statistical information on + the Services. They are erased once you exit your Web browser or + otherwise turn off your computer. +

+

+ 3.3 "Persistent" cookies are more permanent bits of information + that are placed on the hard drive of your computer and stay there unless + you delete the cookie. Persistent cookies store information on your + computer for a number of purposes, such as retrieving certain + information you have previously provided, helping to determine what + areas of the Services you may find most valuable, and customizing the + Services based on your preferences on an ongoing basis. Persistent + cookies placed by this site in your computer do not hold personal + information. +

+

+ 3.4 You can set your browser to accept all cookies, to reject all + cookies, or to notify you whenever a cookie is offered so that you can + decide each time whether to accept it. To learn more about cookies and + how to specify your preferences, please search for "cookie" in the + "Help" portion of your browser. +

+

+ 3.5 An Internet Protocol (IP) address is a number assigned to + your computer by your Internet service provider so you can access the + Internet and is generally considered to be non-personally identifiable + information, because in most cases an IP address is dynamic (changing + each time you connect to the Internet), rather than static (unique to a + particular user's computer). The IP address can be used to diagnose + problems with a server, report aggregate information, determine the + fastest route for your computer to use in connecting to a site, and + administer and improve the Services. +

+

+ 3.6 "Internet tags" (also known as Web Beacons, single-pixel + GIFs, clear GIFs, invisible GIFs, and 1-by-1 GIFs) are smaller than + cookies and tell the Web site server information such as the IP address + and browser type related to the visitor's computer. Tags may be placed + both on online advertisements that bring people to the Services and on + different pages of the Services. Such tags indicate how many times a + page is opened and which information is consulted. +

+

+ 3.7 "Navigational data" (log files, server logs, and clickstream + data) are used for system management, to improve the content of the + Services, market research purposes, and to communicate information to + visitors. +

+

+ 4. Use and Sharing of Anonymous, Passive Information. +
+ The Services may make full use of passively collected anonymous + information, including without limitation the right to use such + information to provide better service to Service users, customize the + Services based on your preferences, compile and analyze statistics and + trends, and otherwise administer and improve the Services for your use. We + reserve the right to share this anonymous, passive information in + aggregated form. +

+

+ 5. 3rd Party Behavioral Ads; Google's AdSense Network. +
+ 5.1 We reserve the right to use anonymous, passive information + about your visits to this and other websites (not including your name, + address, email address or telephone number) for purposes of serving our + ads and third party ads that are targeted to your interests ("3rd Party + Behavioral Ads"). We reserve the right to share anonymous, passive + information collected on the services with third parties for purposes of + serving 3rd Party Behavioral Ads. These 3rd Party Behavioral Ads do not + identify you personally. Instead, they associate your behavioral data on + visited sites with your browser, so that the ads your computer sees on + this site are more likely to be relevant to your interests. 3rd Party + Behavioral Ads require that that you be served with a cookie containing + a tracking code. You may refuse the use of cookies by selecting the + appropriate settings on your browser; however, please note that if you + do this you may not be able to use the full functionality of this site. +

+

+ 5.2 We reserve the right to participate in Google's AdSense + network for purposes of serving 3rd Party Behavioral Ads. Google uses + DoubleClick's DART cookie for serving 3rd Party Behavioral Ads over the + AdSense network. You may opt out of the use of the DART cookie. For + information regarding how to opt out, go to + http://www.google.com/privacy_ads.html. +

+

+ 6. Use of 3rd Party Analytics. +
+ We reserve the right to use analytics services provided by + third parties. These services use 3rd party cookies to collect + anonymous, passive information about your use of this site (see + explanation of cookies in Collection of Anonymous, Passive Information + above). We use this information for the purpose of evaluating your use + of the Services, compiling reports on activity, and providing other + services. These web analytics services may also transfer this + information to third parties where required to do so by law, or where + such third parties process the information on the service's behalf. +

+

+ 7. Collection of Personal Information; Categories. +
+ We will ask you for personal information when you sign up for any + specific benefit or purpose that requires registration. Personal + information that we collect may vary with the each registration, and it + may include one or more of the following categories: name, physical + address, an email address, phone number, and credit card information + including credit card number, expiration date, and billing address, + emergency contact information, current medications, allergies, medical + insurance information. +

+

+ 8. Use And Sharing of Personal Information: General + Policy And Exceptions. +
+ Our general policy is that we will use your personal information, + including combining your personal information with passive information + collected from this site, only for: the performance of the services or + transaction for which it was given, our private, internal reporting for + this site, and security assessments for this site, and we will not + share, sell, or rent your personal information to others. The only + exceptions to this general policy: (i) are described in the subsections + below, and (ii) if you explicitly approve through our site. +

+

+ 8.1 Affiliates And Service Providers. We reserve the right to + provide such information to our affiliates or subsidiaries, or trusted + service providers for the purpose of hosting our servers or processing + or archiving personal information for us. We require that these parties + agree to privacy and security safeguards for this information that are + consistent with this Privacy Policy. +

+

+ 8.2 Acquisition; Bankruptcy. In the event that we are acquired by + or merged with a third party entity, we reserve the right to transfer + such information as part of such merger, acquisition, sale, or other + change of control. In the unlikely event of our bankruptcy, insolvency, + reorganization, receivership, or assignment for the benefit of + creditors, or the application of laws or equitable principles affecting + creditors' rights generally, we reserve the right to transfer such + information to protect our rights or as required by law. +

+

+ 8.3 Enforcement; Legal Process. We reserve the right to transfer + such information if we have a good faith belief that access, use, + preservation or disclosure of such information is reasonably necessary + (i) to satisfy any applicable law, regulation, legal process or + enforceable governmental request, or (ii) to investigate or enforce + violations of our rights or the security of this site. +

+

+ 8.4 Miscellaneous. We reserve the right to share personal + information with the following additional parties: online organizers + using our tools and resellers of our products and services from whose + site the sale originated (even though the sale originates at site of the + reseller, registration and collection of personal information occurs at + this site). +

+

+ 9. Onward Transfer of Personal Information Outside Your + Country of Residence. +
+ Any personal information which we may collect on this site will + be stored and processed in our servers located only in the United + States. By using this site, if you reside outside the United States, you + consent to the transfer of personal information outside your country of + residence to the United States. +

+

+ 10. Security of Personal Information. +
+ We follow reasonable and appropriate industry standards to + protect your personal information and data. Unfortunately, no data + transmission over the Internet or method of data storage can be + guaranteed 100% secure. Therefore, while we strive to protect your + personal information by following generally accepted industry standards, + we cannot ensure or warrant the absolute security of any information you + transmit to us or archive at this site. +

+

+ 11. Changing And Updating Personal Information. +
+ Upon request, we will permit you to request or make changes or + updates to your personal information for legitimate purposes. We request + identification prior to approving such requests. We reserve the right to + decline any requests that are unreasonably repetitive or systematic, + require unreasonable time or effort of our technical or administrative + personnel, or undermine the privacy rights of others. We reserve the + right to permit you to access your personal information in any account + you establish with this site for purposes of making your own changes or + updates, and in such case, instructions for making such changes or + updates will be provided where necessary. +

+

+ 12. Email From This Site; Opt-Out Rights. +
+ If you supply us with your e-mail address you may receive + periodic messages from us with information specific to the Services and + required for the normal functioning of the Services as well as for new + products or services or upcoming events. If you prefer not to receive + periodic email messages, you may opt-out by following the instructions + on the email. +

+

+ 13. Children's Online Policy. +
+ We are committed to preserving online privacy for all of its + website visitors, including children. This site is a general audience + site. Consistent with the Children's Online Privacy Protection Act + (COPPA), we will not knowingly collect any information from, or sell to, + children under the age of 13. If you are a parent or guardian who has + discovered that your child under the age of 13 has submitted his or her + personally identifiable information without your permission or consent, + we will remove the information from our active list, at your request. To + request the removal of your child's information, please send contact our + site as provided below under “Contact Us”, and be sure to include in + your message the same login information that your child submitted. +

+

+ 14. Email And Other Messages Through This Site; ECPA + Notice. +
+ This site treats email messages and other electronic messages + that are sent through this site and not viewable by others as + confidential and private, except as required by law, including without + limitation, the Electronic Communications Privacy Act of 1986, 18 U.S.C. + Sections 2701-2711 (the "ECPA"). The ECPA permits this site's limited + ability to intercept and/or disclose electronic messages, for example + (i) as necessary to operate our system or to protect our rights or + property, (ii) upon legal demand (court orders, warrants, subpoenas), or + (iii) where we receive information inadvertently which appears to + pertain to the commission of a crime. This site is not considered a + "secure communications medium" under the ECPA. +

+

+ 15. Contact Us. +
+ If you have any questions regarding this Privacy Policy, please + contact the owner and operator of this website business: +

+
+ OCDevel +
+ 98 Morrison Ave #2 +
+ Somerville, MA 02144 +
+ Email: + tylerrenelle@gmail.com +
+ Telephone: 1-805-975-5236 +
+

+ + +
+
+ \ No newline at end of file diff --git a/views/static/team.html b/views/static/team.html new file mode 100644 index 0000000000..b26e51b053 --- /dev/null +++ b/views/static/team.html @@ -0,0 +1,74 @@ + + + + + + HabitRPG | Team + + + + + +
+ +
+
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+
+
+ \ No newline at end of file diff --git a/views/static/terms.html b/views/static/terms.html new file mode 100644 index 0000000000..b4f71e1e19 --- /dev/null +++ b/views/static/terms.html @@ -0,0 +1,646 @@ + + + + + + HabitRPG | About + + + + + +
+ +
+ +

+ Last updated September 2, 2012 +

+

+ HabitRPG (or "we") provides services through our + software applications for various devices and platforms ("HabitRPG + Applications") and the HabitRPG.com domain, and any sub domains thereto + (the "Sites"). Individually or collectively, HabitRPG Applications and + Sites may be referred to as the "Services". +

+

+ Please read the following terms and conditions ("Terms of + Service") carefully. These Terms of Service govern your access to and + use of the Services and HabitRPG Content (defined below) and set forth + the legally binding terms for your use of the Services and HabitRPG + Content, whether or not you have registered as a Member. +

+

+ Certain areas of the Services (and your access to or use of + HabitRPG Content) may have different terms and conditions posted or may + require you to agree with and accept additional terms and conditions. If + there is a conflict between these Terms of Service and terms and + conditions posted for a specific area of the Services or HabitRPG + Content, the latter terms and conditions will take precedence with + respect to your use of or access to that area of the Services or HabitRPG + Content. +

+

+ YOU ACKNOWLEDGE AND AGREE THAT, BY CLICKING ON THE "I AGREE" OR + "I ACCEPT" BUTTON, OR BY ACCESSING OR USING THE SERVICES OR BY + DOWNLOADING OR POSTING ANY CONTENT FROM OR ON THE SITES OR THROUGH THE + SERVICES, YOU ARE INDICATING THAT YOU HAVE READ, UNDERSTAND AND AGREE TO + BE BOUND BY THESE TERMS, WHETHER OR NOT YOU HAVE REGISTERED AS A MEMBER, + AND AGREE TO OUR PRIVACY POLICY AS DESCRIBED BELOW. IF YOU DO NOT AGREE + TO THESE TERMS, THEN YOU HAVE NO RIGHT TO ACCESS OR USE THE SERVICES OR + HABITRPG CONTENT. +

+

+ Modification +
+ HabitRPG reserves the right, at its sole discretion, to modify, + discontinue or terminate the Services, including any portion thereof on + a global or individual basis, or to modify these Terms of Service, at + any time and without prior notice. If we modify these Terms of Service, + we will update the "Last Updated Date" above and post the modification + on the Sites and perhaps elsewhere within the Services. By continuing to + access or use the Services after we have posted a modification to these + Terms of Service or have provided you with notice of a modification, you + are indicating that you agree to be bound by the modified Terms of + Service. If the modified Terms of Service are not acceptable to you, + your only recourse is to cease using the Services. +

+

+ Eligibility and HabitRPG Account Registration +
+ In order to access certain features of the Sites and Services, and to + post any Public User Content (defined below) on the Sites or through the + Services, you must register to create an account ("HabitRPG Account") and + become a "Member". In compliance with privacy laws, we do not allow + people below the age of 14 to create accounts; please see our Privacy + Policy for further information. During the registration process, you + will be required to provide certain information and you will establish a + username and a password. You agree to provide accurate, current and + complete information during the registration process and to update such + information to keep it accurate, current and complete. HabitRPG reserves + the right to suspend or terminate your HabitRPG Account if any + information provided during the registration process or thereafter + proves to be inaccurate, not current or incomplete. If you are not a + Member you may browse all areas of the Sites or use the parts of the + Services that are not limited to Members only. You are responsible for + safeguarding your password. You agree not to disclose your password to + any third party and to take sole responsibility for any activities or + actions under your HabitRPG Account, whether or not you have authorized + such activities or actions. You agree to immediately notify HabitRPG of + any unauthorized use of your HabitRPG Account. We are not liable for any + damages or losses caused by someone using your account without your + permission. +

+

+ Privacy +
+ See HabitRPG's Privacy Policy at http://www.HabitRPG.com/privacy for + information and notices concerning HabitRPG's collection and use of your + personal information. If you have any questions about the HabitRPG + Privacy Policy, please contact HabitRPG at privacy AT HabitRPG.com. By + accessing the Services you are agreeing to the terms of our Privacy + Policy. +

+

+ Content +
+ Certain types of content are made available through the Services. + "HabitRPG Content" means, collectively, the text, data, graphics, images, + illustrations, forms and look and feel attributes, HabitRPG trademarks + and logos and other content made available through the Services, + including any technology or code making up the Services, excluding User + Content. "Public User Content" means the text, data, graphics, images, photos, + video or audiovisual content, hypertext links and any other content uploaded, + transmitted or submitted by a Member via the Services with the intent to share + with other users. "Private User Content" means data created through the services + exclusively for personal use or private sharing. + This includes tasks and related data created in HabitRPG Tasks that have not + been explicitly shared publicly. + You understand that by using any of the Services, you may encounter content + that may be deemed offensive, indecent, or objectionable, which content + may or may not be identified as having explicit language, and that the + results of any search or entering of a particular URL may automatically + and unintentionally generate links or references to objectionable + material. Nevertheless, you agree to use the Services at your sole risk + and that we shall not have any liability to you for content that may be + found to be offensive, indecent, or objectionable. +

+

+ Ownership +
+ The Services and HabitRPG Content are protected by copyright, trademark, + and other laws of the United States and foreign countries. Except as + expressly provided in these Terms of Service, HabitRPG and its licensors + exclusively own all right, title and interest in and to the Services and + HabitRPG Content, including all associated intellectual property rights. + You will not remove, alter or obscure any copyright, trademark, service + mark or other proprietary rights notices incorporated in or accompanying + the Services or HabitRPG Content. +

+

+ HabitRPG License +
+ Subject to your compliance with the terms and conditions of these Terms + of Service, HabitRPG grants you a limited, non-exclusive, + non-transferable license, without the right to sublicense, to access, + use, view, download and print, where applicable, the Services and any + HabitRPG Content solely for your personal and non-commercial purposes. + You will not use, copy, adapt, modify, prepare derivative works based + upon, distribute, license, sell, transfer, publicly display, publicly + perform, transmit, stream, broadcast or otherwise exploit the Services + or HabitRPG Content, except as expressly permitted in these Terms of + Service. No licenses or rights are granted to you by implication or + otherwise under any intellectual property rights owned or controlled by + HabitRPG or its licensors, except for the licenses and rights expressly + granted in these Terms of Service. With respect to HabitRPG Applications, + your license is limited to use of such applications on platforms and + devices that you own or control, and you may not distribute or make the + HabitRPG Applications available over a network where it could be used by + multiple devices at the same time. +

+

+ Public User Content +
+ By making available any Public User Content through the Services, you hereby + grant to HabitRPG a worldwide, irrevocable, perpetual, non-exclusive, + transferable, royalty-free license, with the right to sublicense, to + use, copy, adapt, modify, distribute, license, sell, transfer, publicly + display, publicly perform, transmit, stream, broadcast and otherwise + exploit such Public User Content only on, through or by means of the Services. + HabitRPG does not claim any ownership rights in any such Public User Content and + nothing in these Terms of Service will be deemed to restrict any rights + that you may have to use and exploit any such Public User Content. +

+

+ You acknowledge and agree that you are solely responsible for all + Public User Content that you make available through the Services. Accordingly, + you represent and warrant that: (i) you either are the sole and + exclusive owner of all Public User Content that you make available through the + Services or you have all rights, licenses, consents and releases that + are necessary to grant to HabitRPG the rights in such Public User Content, as + contemplated under these Terms of Service; and (ii) neither the User + Content nor your posting, uploading, publication, submission or + transmittal of the Public User Content or HabitRPG's use of the Public User Content (or + any portion thereof) on, through or by means of the Services will + infringe, misappropriate or violate a third party's patent, copyright, + trademark, trade secret, moral rights or other intellectual property + rights, or rights of publicity or privacy, or result in the violation of + any applicable law or regulation. +

+

+ Copyrighted Materials: No Infringing Use. You will not use the + Services to offer, display, distribute, transmit, route, provide + connections to or store any material that infringes copyrighted works or + otherwise violates or promotes the violation of the intellectual + property rights of any third party. HabitRPG has adopted and implemented + a policy that provides for the termination in appropriate circumstances + of the accounts of users who repeatedly infringe or are believed to be + or are charged with repeatedly infringing the rights of copyright + holders. +

+

+ Notify Us of Infringers +
+ If you believe that something on the Services violates your copyright, + notify our copyright agent in writing. The contact information for our + copyright agent is at the bottom of this section. +

+

+ In order for us to take action, you must do the following in your + notice: +

+

+ (1) provide your physical or electronic signature; (2) identify + the copyrighted work that you believe is being infringed; (3) identify + the item on the Services that you think is infringing your work and + include sufficient information about where the material is located on + the Services (including which website and URL) so that we can find it; + (4) provide us with a way to contact you, such as your address, + telephone number, or e-mail; (5) provide a statement that you believe in + good faith that the item you have identified as infringing is not + authorized by the copyright owner, its agent, or the law to be used on + the Services; and (6) provide a statement that the information you + provide in your notice is accurate, and that (under penalty of perjury), + you are authorized to act on behalf of the copyright owner whose work is + being infringed. +

+

+ Here is the contact information for our copyright agent: +

+

+ Copyright Enforcement +
+ OCDevel +
+ 98 Morrison Ave #2 +
+ Somerville, MA 02144 +
+ Phone: (805) 975-5236 +
+ E-Mail: tylerrenelle at gmail dot com +

+

+ Again, we cannot take action unless you give us all the required + information. +

+

+ Ratings and Comments & Feedback. +
+ You can rate and make comments about content made available through the + Services ("Comments"). HabitRPG advises you to exercise caution and good + judgment when leaving such Comments. Once you complete and submit your + Comments to the Services you will not be able to go back and edit your + Comments. You should also be aware that you could be held legally + responsible for damages to someone's reputation if your Comments are + deemed to be defamatory. Without limiting any other terms of this Terms + of Service, HabitRPG may, but is under no obligation to, monitor or + censor Comments and disclaims any and all liability relating thereto. + Notwithstanding the foregoing, HabitRPG does reserve the right, in its + sole discretion, to remove any Comments that it deems to be improper, + inappropriate or inconsistent with the online activities that are + permitted under these Terms of Service. We welcome and encourage you to + provide feedback, comments and suggestions for improvements to the + Services ("Feedback"). You may submit Feedback by emailing us at support + AT HabitRPG.com. You acknowledge and agree that all Comments and Feedback + will be the sole and exclusive property of HabitRPG and you hereby + irrevocably assign to HabitRPG and agree to irrevocably assign to HabitRPG + all of your right, title, and interest in and to all Comments and + Feedback, including without limitation all worldwide patent rights, + copyright rights, trade secret rights, and other proprietary or + intellectual property rights therein. At HabitRPG's request and expense, + you will execute documents and take such further acts as HabitRPG may + reasonably request to assist HabitRPG to acquire, perfect, and maintain + its intellectual property rights and other legal protections for the + Comments and Feedback. +

+

+ Interactions between Users +
+ You are solely responsible for your interactions (including any + disputes) with other users. You understand that HabitRPG does not in any + way screen HabitRPG users, except to only allow people aged 14 and over + to create accounts. You are solely responsible for, and will exercise + caution, discretion, common sense and judgment in, using the Services + and disclosing personal information to other HabitRPG users. You agree to + take reasonable precautions in all interactions with other HabitRPG + users, particularly if you decide to meet a HabitRPG user offline, or in + person. Your use of the Services, HabitRPG Content and any other content + made available through the Services is at your sole risk and discretion + and HabitRPG hereby disclaims any and all liability to you or any third + party relating thereto. HabitRPG reserves the right to contact Members, + in compliance with applicable law, in order to evaluate compliance with + the rules and policies in these Terms of Service. You will cooperate + fully with HabitRPG to investigate any suspected unlawful, fraudulent or + improper activity, including, without limitation, granting authorized + HabitRPG representatives access to any password-protected portions of + your HabitRPG Account. +

+

+ General Prohibitions +
+ You agree not to do any of the following while using the Services or + HabitRPG Content: +
+

+
    +
  • + Post, upload, publish, submit or transmit any text, graphics, + images, software, music, audio, video, information or other material + that: (i) infringes, misappropriates or violates a third party's + patent, copyright, trademark, trade secret, moral rights or other + intellectual property rights, or rights of publicity or privacy; (ii) + violates, or encourages any conduct that would violate, any applicable + law or regulation or would give rise to civil liability; (iii) is + fraudulent, false, misleading or deceptive; (iv) is defamatory, + obscene, pornographic, vulgar or offensive; (v) promotes + discrimination, bigotry, racism, hatred, harassment or harm against any + individual or group; (vi) is violent or threatening or promotes + violence or actions that are threatening to any other person; or (vii) + promotes illegal or harmful activities or substances (including but not + limited to activities that promote or provide instructional information + regarding the manufacture or purchase of illegal weapons or illegal + substances). +
  • +
  • + Use, display, mirror, frame or utilize framing techniques to + enclose the Services, or any individual element or materials within the + Services, HabitRPG's name, any HabitRPG trademark, logo or other + proprietary information, the content of any text or the layout and + design of any page or form contained on a page, without HabitRPG's + express written consent; +
  • +
  • + Access, tamper with, or use non-public areas of the Services, + HabitRPG's computer systems, or the technical delivery systems of + HabitRPG's providers; +
  • +
  • + Attempt to probe, scan, or test the vulnerability of any + HabitRPG system or network or breach any security or authentication + measures; +
  • +
  • + Avoid, bypass, remove, deactivate, impair, descramble or + otherwise circumvent any technological measure implemented by HabitRPG + or any of HabitRPG's providers or any other third party (including + another user) to protect the Services or HabitRPG Content; +
  • +
  • + Attempt to access or search the Services or HabitRPG Content or + download HabitRPG Content from the Services through the use of any + engine, software, tool, agent, device or mechanism (including spiders, + robots, crawlers, data mining tools or the like) other than the + software and/or search agents provided by HabitRPG or other generally + available third party web browsers (such as Google Chrome, Microsoft + Internet Explorer, Mozilla Firefox, Safari or Opera); +
  • +
  • + Send any unsolicited or unauthorized advertising, promotional + materials, email, junk mail, spam, chain letters or other form of + solicitation; +
  • +
  • + Use any meta tags or other hidden text or metadata utilizing a + HabitRPG trademark, logo URL or product name without HabitRPG's express + written consent; +
  • +
  • + Use the Services or HabitRPG Content for any commercial purpose + or the benefit of any third party or in any manner not permitted by + these Terms of Service; +
  • +
  • + Forge any TCP/IP packet header or any part of the header + information in any email or newsgroup posting, or in any way use the + Services or HabitRPG Content to send altered, deceptive or false + source-identifying information; +
  • +
  • + Attempt to decipher, decompile, disassemble or reverse + engineer any of the software used to provide the Services or HabitRPG + Content; +
  • +
  • + Interfere with, or attempt to interfere with, the access of + any user, host or network, including, without limitation, sending a + virus, overloading, flooding, spamming, or mail-bombing the Services; +
  • +
  • + Collect or store any personally identifiable information from + the Services from other users of the Services without their express + permission; +
  • +
  • + Impersonate or misrepresent your affiliation with any person + or entity; Violate any applicable law or regulation; or +
  • +
  • + Encourage or enable any other individual to do any of the + foregoing. +
  • +
+

+ HabitRPG will have the right to investigate and prosecute + violations of any of the above, including intellectual property rights + infringement and Services security issues, to the fullest extent of the + law. HabitRPG may involve and cooperate with law enforcement authorities + in prosecuting users who violate these Terms of Service. You acknowledge + that HabitRPG has no obligation to monitor your access to or use of the + Services or HabitRPG Content or to review or edit any Public User Content, but + has the right to do so for the purpose of operating the Services, to + ensure your compliance with these Terms of Service, or to comply with + applicable law or the order or requirement of a court, administrative + agency or other governmental body. HabitRPG reserves the right, at any + time and without prior notice, to remove or disable access to any + HabitRPG Content, including, any Public User Content, that HabitRPG, in its sole + discretion, considers to be in violation of these Terms of Service or + otherwise harmful to the Services. +

+

+ Links +
+ The Services may contain links to third-party websites or resources. You + acknowledge and agree that HabitRPG is not responsible or liable for: (i) + the availability or accuracy of such websites or resources; or (ii) the + content, products, or services on or available from such websites or + resources. Links to such websites or resources do not imply any + endorsement by HabitRPG of such websites or resources or the content, + products, or services available from such websites or resources. You + acknowledge sole responsibility for and assume all risk arising from + your use of any such websites or resources. +

+

+ Termination and HabitRPG Account; Cancellation +
+ Without limiting other remedies, HabitRPG may at any time suspend or + terminate your HabitRPG Account and refuse to provide access to the + Services. In addition, HabitRPG may notify authorities or take any + actions it deems appropriate, without notice to you, if HabitRPG suspects + or determines, in its own discretion, that you may have or there is a + significant risk that you have (i) failed to comply with any provision + of these Terms of Service or any policies or rules established by + HabitRPG; or (ii) engaged in actions relating to or in the course of + using the Services that may be illegal or cause liability, harm, + embarrassment, harassment, abuse or disruption for you, HabitRPG Users, + HabitRPG or any other third parties or the Services. +

+

+ You may terminate your HabitRPG Account at any time and for any + reason by sending email to support AT HabitRPG.com. Upon any termination + by a Member, the related account will no longer be accessible. +

+

+ After any termination, you understand and acknowledge that we + will have no further obligation to provide the Services and all licenses + and other rights granted to you by these Terms of Service will + immediately cease. HabitRPG will not be liable to you or any third party + for termination of the Services or termination of your use of either. + UPON ANY TERMINATION OR SUSPENSION, ANY CONTENT, MATERIALS OR + INFORMATION (INCLUDING PUBLIC USER CONTENT) THAT YOU HAVE SUBMITTED ON THE + SERVICES OR THAT WHICH IS RELATED TO YOUR ACCOUNT MAY NO LONGER BE + ACCESSED BY YOU. Furthermore, HabitRPG will have no obligation to + maintain any information stored in our database related to your account + or to forward any information to you or any third party. +

+

+ Any suspension, termination or cancellation will not affect your + obligations to HabitRPG under these Terms of Service (including, without + limitation, proprietary rights and ownership, indemnification and + limitation of liability), which by their sense and context are intended + to survive such suspension, termination or cancellation. +

+

+ Disclaimers +
+ THE SERVICES, HABITRPG CONTENT AND PUBLIC USER CONTENT ARE PROVIDED "AS IS", + WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT + LIMITING THE FOREGOING, HABITRPG EXPLICITLY DISCLAIMS ANY WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR + NON-INFRINGEMENT, AND ANY WARRANTIES ARISING OUT OF COURSE OF DEALING OR + USAGE OF TRADE. +

+

+ HABITRPG MAKES NO WARRANTY THAT THE SERVICES, HABITRPG CONTENT OR + PUBLIC USER CONTENT WILL MEET YOUR REQUIREMENTS OR BE AVAILABLE ON AN + UNINTERRUPTED, SECURE, OR ERROR-FREE BASIS. HABITRPG MAKES NO WARRANTY + REGARDING THE QUALITY OF ANY PRODUCTS, SERVICES OR CONTENT PURCHASED OR + OBTAINED THROUGH THE SERVICES OR THE ACCURACY, TIMELINESS, TRUTHFULNESS, + COMPLETENESS OR RELIABILITY OF ANY CONTENT OBTAINED THROUGH THE + SERVICES. +

+

+ NO ADVICE OR INFORMATION, WHETHER ORAL OR WRITTEN, OBTAINED FROM + HABITRPG OR THROUGH THE SERVICES, HABITRPG CONTENT OR PUBLIC USER CONTENT, WILL + CREATE ANY WARRANTY NOT EXPRESSLY MADE HEREIN. +

+

+ Indemnity +
+ You agree to defend, indemnify, and hold HabitRPG, its officers, + directors, employees and agents, harmless from and against any claims, + liabilities, damages, losses, and expenses, including, without + limitation, reasonable legal and accounting fees, arising out of or in + any way connected with Public User Content you submit to HabitRPG, your access + to or use of the Services or HabitRPG Content, or your violation of these + Terms of Service. +

+

+ Limitation of Liability +
+ YOU ACKNOWLEDGE AND AGREE THAT, TO THE MAXIMUM EXTENT PERMITTED BY LAW, + THE ENTIRE RISK ARISING OUT OF YOUR ACCESS TO AND USE OF THE SERVICES + AND CONTENT THEREIN REMAINS WITH YOU. NEITHER HABITRPG NOR ANY OTHER + PARTY INVOLVED IN CREATING, PRODUCING, OR DELIVERING THE SERVICES OR + HABITRPG CONTENT WILL BE LIABLE FOR ANY INCIDENTAL, SPECIAL, EXEMPLARY OR + CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, LOSS OF DATA OR LOSS OF + GOODWILL, SERVICE INTERRUPTION, COMPUTER DAMAGE OR SYSTEM FAILURE OR THE + COST OF SUBSTITUTE PRODUCTS OR SERVICES, ARISING OUT OF OR IN CONNECTION + WITH THESE TERMS OR FROM THE USE OF OR INABILITY TO USE THE SERVICES OR + CONTENT THEREIN, WHETHER BASED ON WARRANTY, CONTRACT, TORT (INCLUDING + NEGLIGENCE), PRODUCT LIABILITY OR ANY OTHER LEGAL THEORY, AND WHETHER OR + NOT HABITRPG HAS BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGE, EVEN IF + A LIMITED REMEDY SET FORTH HEREIN IS FOUND TO HAVE FAILED OF ITS + ESSENTIAL PURPOSE. YOU SPECIFICALLY ACKNOWLEDGE THAT HABITRPG IS NOT + LIABLE FOR THE DEFAMATORY, OFFENSIVE OR ILLEGAL CONDUCT OF OTHER USERS + OR THIRD PARTIES AND THAT THE RISK OF INJURY FROM THE FOREGOING RESTS + ENTIRELY WITH YOU. FURTHER, HABITRPG WILL HAVE NO LIABILITY TO YOU OR TO + ANY THIRD PARTY FOR ANY PUBLIC USER CONTENT OR THIRD-PARTY CONTENT UPLOADED + ONTO OR DOWNLOADED FROM THE SITES OR THROUGH THE SERVICES. +

+

+ IN NO EVENT WILL HABITRPG'S AGGREGATE LIABILITY ARISING OUT OF OR + IN CONNECTION WITH THESE TERMS OF SERVICE OR FROM THE USE OF OR + INABILITY TO USE THE SITE, SERVICES OR CONTENT THEREIN EXCEED ONE + HUNDRED U.S. DOLLARS ($100). THE LIMITATIONS OF DAMAGES SET FORTH ABOVE + ARE FUNDAMENTAL ELEMENTS OF THE BASIS OF THE BARGAIN BETWEEN HABITRPG AND + YOU. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF + LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, SO THE ABOVE + LIMITATION MAY NOT APPLY TO YOU. +

+

+ Proprietary Rights Notices +
+ All trademarks, service marks, logos, trade names and any other + proprietary designations of HabitRPG used herein are trademarks or + registered trademarks of HabitRPG. Any other trademarks, service marks, + logos, trade names and any other proprietary designations are the + trademarks or registered trademarks of their respective parties. +

+

+ Controlling Law and Jurisdiction +
+ These Terms of Service and any action related thereto will be governed + by the laws of the State of California without regard to its conflict of + laws provisions. The exclusive jurisdiction and venue of any action with + respect to the subject matter of these Terms of Service will be the + courts having jurisdiction over disputes arising in Santa Clara County, + California, and each of the parties hereto waives any objection to + jurisdiction and venue in such courts. +

+

+ YOU AGREE THAT IF YOU WANT TO SUE US, YOU MUST FILE YOUR LAWSUIT + WITHIN ONE YEAR AFTER THE EVENT THAT GAVE RISE TO YOUR LAWSUIT. + OTHERWISE, YOUR LAWSUIT WILL BE PERMANENTLY BARRED. +

+

+ Export Control +
+ You may not use or otherwise export or re-export the Services except as + authorized by United States law and the laws of the jurisdiction in + which the Services were obtained. In particular, but without limitation, + the Services may not be exported or re-exported (a) into any U.S. + embargoed countries or (b) to anyone on the U.S. Treasury Department's + list of Specially Designated Nationals or the U.S. Department of + Commerce Denied Person's List or Entity List. By using the Services, you + represent and warrant that you are not located in any such country or on + any such list. You also agree that you will not use these products for + any purposes prohibited by United States law, including, without + limitation, the development, design, manufacture or production of + nuclear, missiles, or chemical or biological weapons. +

+

+ Entire Agreement +
+ These Terms of Service constitute the entire and exclusive understanding + and agreement between HabitRPG and you regarding the Services and HabitRPG + Content, and these Terms of Service supersede and replace any and all + prior oral or written understandings or agreements between HabitRPG and + you regarding the Services and HabitRPG Content. +

+

+ Assignment +
+ You may not assign or transfer these Terms of Service, by operation of + law or otherwise, without HabitRPG's prior written consent. Any attempt + by you to assign or transfer these Terms of Service, without such + consent, will be null and of no effect. HabitRPG may freely assign these + Terms of Service. Subject to the foregoing, these Terms of Service will + bind and inure to the benefit of the parties, their successors and + permitted assigns. +

+

+ Notices +
+ You consent to the use of: (i) electronic means to complete these Terms + of Service and to deliver any notices or other communications permitted + or required hereunder; and (ii) electronic records to store information + related to these Terms of Service or your use of the Services. Any + notices or other communications permitted to required hereunder, + including those regarding modifications to these Terms of Service, will + be in writing and given: (x) by HabitRPG via email (in each case to the + address that you provide) or (y) by posting to the Sites or Services. + For notices made by e-mail, the date of receipt will be deemed the date + on which such notice is transmitted. +

+

+ General +
+ The failure of HabitRPG to enforce any right or provision of these Terms + of Service will not constitute a waiver of future enforcement of that + right or provision. The waiver of any such right or provision will be + effective only if in writing and signed by a duly authorized + representative of HabitRPG. Except as expressly set forth in these Terms + of Service, the exercise by either party of any of its remedies under + these Terms of Service will be without prejudice to its other remedies + under these Terms of Service or otherwise. If for any reason a court of + competent jurisdiction finds any provision of these Terms of Service + invalid or unenforceable, that provision will be enforced to the maximum + extent permissible and the other provisions of these Terms of Service + will remain in full force and effect. +

+

+ Contacting Us +
+ If you have any questions about these Terms of Service, please contact + us at tylerrenelle@gmail.com. +

+ + +
+
+ \ No newline at end of file diff --git a/views/terms.html b/views/terms.html deleted file mode 100644 index a83d98885d..0000000000 --- a/views/terms.html +++ /dev/null @@ -1,636 +0,0 @@ - - Terms of Use - - -
- « Back - -

- Last updated September 2, 2012 -

-

- HabitRPG (or "we") provides services through our - software applications for various devices and platforms ("HabitRPG - Applications") and the HabitRPG.com domain, and any sub domains thereto - (the "Sites"). Individually or collectively, HabitRPG Applications and - Sites may be referred to as the "Services". -

-

- Please read the following terms and conditions ("Terms of - Service") carefully. These Terms of Service govern your access to and - use of the Services and HabitRPG Content (defined below) and set forth - the legally binding terms for your use of the Services and HabitRPG - Content, whether or not you have registered as a Member. -

-

- Certain areas of the Services (and your access to or use of - HabitRPG Content) may have different terms and conditions posted or may - require you to agree with and accept additional terms and conditions. If - there is a conflict between these Terms of Service and terms and - conditions posted for a specific area of the Services or HabitRPG - Content, the latter terms and conditions will take precedence with - respect to your use of or access to that area of the Services or HabitRPG - Content. -

-

- YOU ACKNOWLEDGE AND AGREE THAT, BY CLICKING ON THE "I AGREE" OR - "I ACCEPT" BUTTON, OR BY ACCESSING OR USING THE SERVICES OR BY - DOWNLOADING OR POSTING ANY CONTENT FROM OR ON THE SITES OR THROUGH THE - SERVICES, YOU ARE INDICATING THAT YOU HAVE READ, UNDERSTAND AND AGREE TO - BE BOUND BY THESE TERMS, WHETHER OR NOT YOU HAVE REGISTERED AS A MEMBER, - AND AGREE TO OUR PRIVACY POLICY AS DESCRIBED BELOW. IF YOU DO NOT AGREE - TO THESE TERMS, THEN YOU HAVE NO RIGHT TO ACCESS OR USE THE SERVICES OR - HABITRPG CONTENT. -

-

- Modification -
- HabitRPG reserves the right, at its sole discretion, to modify, - discontinue or terminate the Services, including any portion thereof on - a global or individual basis, or to modify these Terms of Service, at - any time and without prior notice. If we modify these Terms of Service, - we will update the "Last Updated Date" above and post the modification - on the Sites and perhaps elsewhere within the Services. By continuing to - access or use the Services after we have posted a modification to these - Terms of Service or have provided you with notice of a modification, you - are indicating that you agree to be bound by the modified Terms of - Service. If the modified Terms of Service are not acceptable to you, - your only recourse is to cease using the Services. -

-

- Eligibility and HabitRPG Account Registration -
- In order to access certain features of the Sites and Services, and to - post any Public User Content (defined below) on the Sites or through the - Services, you must register to create an account ("HabitRPG Account") and - become a "Member". In compliance with privacy laws, we do not allow - people below the age of 14 to create accounts; please see our Privacy - Policy for further information. During the registration process, you - will be required to provide certain information and you will establish a - username and a password. You agree to provide accurate, current and - complete information during the registration process and to update such - information to keep it accurate, current and complete. HabitRPG reserves - the right to suspend or terminate your HabitRPG Account if any - information provided during the registration process or thereafter - proves to be inaccurate, not current or incomplete. If you are not a - Member you may browse all areas of the Sites or use the parts of the - Services that are not limited to Members only. You are responsible for - safeguarding your password. You agree not to disclose your password to - any third party and to take sole responsibility for any activities or - actions under your HabitRPG Account, whether or not you have authorized - such activities or actions. You agree to immediately notify HabitRPG of - any unauthorized use of your HabitRPG Account. We are not liable for any - damages or losses caused by someone using your account without your - permission. -

-

- Privacy -
- See HabitRPG's Privacy Policy at http://www.HabitRPG.com/privacy for - information and notices concerning HabitRPG's collection and use of your - personal information. If you have any questions about the HabitRPG - Privacy Policy, please contact HabitRPG at privacy AT HabitRPG.com. By - accessing the Services you are agreeing to the terms of our Privacy - Policy. -

-

- Content -
- Certain types of content are made available through the Services. - "HabitRPG Content" means, collectively, the text, data, graphics, images, - illustrations, forms and look and feel attributes, HabitRPG trademarks - and logos and other content made available through the Services, - including any technology or code making up the Services, excluding User - Content. "Public User Content" means the text, data, graphics, images, photos, - video or audiovisual content, hypertext links and any other content uploaded, - transmitted or submitted by a Member via the Services with the intent to share - with other users. "Private User Content" means data created through the services - exclusively for personal use or private sharing. - This includes tasks and related data created in HabitRPG Tasks that have not - been explicitly shared publicly. - You understand that by using any of the Services, you may encounter content - that may be deemed offensive, indecent, or objectionable, which content - may or may not be identified as having explicit language, and that the - results of any search or entering of a particular URL may automatically - and unintentionally generate links or references to objectionable - material. Nevertheless, you agree to use the Services at your sole risk - and that we shall not have any liability to you for content that may be - found to be offensive, indecent, or objectionable. -

-

- Ownership -
- The Services and HabitRPG Content are protected by copyright, trademark, - and other laws of the United States and foreign countries. Except as - expressly provided in these Terms of Service, HabitRPG and its licensors - exclusively own all right, title and interest in and to the Services and - HabitRPG Content, including all associated intellectual property rights. - You will not remove, alter or obscure any copyright, trademark, service - mark or other proprietary rights notices incorporated in or accompanying - the Services or HabitRPG Content. -

-

- HabitRPG License -
- Subject to your compliance with the terms and conditions of these Terms - of Service, HabitRPG grants you a limited, non-exclusive, - non-transferable license, without the right to sublicense, to access, - use, view, download and print, where applicable, the Services and any - HabitRPG Content solely for your personal and non-commercial purposes. - You will not use, copy, adapt, modify, prepare derivative works based - upon, distribute, license, sell, transfer, publicly display, publicly - perform, transmit, stream, broadcast or otherwise exploit the Services - or HabitRPG Content, except as expressly permitted in these Terms of - Service. No licenses or rights are granted to you by implication or - otherwise under any intellectual property rights owned or controlled by - HabitRPG or its licensors, except for the licenses and rights expressly - granted in these Terms of Service. With respect to HabitRPG Applications, - your license is limited to use of such applications on platforms and - devices that you own or control, and you may not distribute or make the - HabitRPG Applications available over a network where it could be used by - multiple devices at the same time. -

-

- Public User Content -
- By making available any Public User Content through the Services, you hereby - grant to HabitRPG a worldwide, irrevocable, perpetual, non-exclusive, - transferable, royalty-free license, with the right to sublicense, to - use, copy, adapt, modify, distribute, license, sell, transfer, publicly - display, publicly perform, transmit, stream, broadcast and otherwise - exploit such Public User Content only on, through or by means of the Services. - HabitRPG does not claim any ownership rights in any such Public User Content and - nothing in these Terms of Service will be deemed to restrict any rights - that you may have to use and exploit any such Public User Content. -

-

- You acknowledge and agree that you are solely responsible for all - Public User Content that you make available through the Services. Accordingly, - you represent and warrant that: (i) you either are the sole and - exclusive owner of all Public User Content that you make available through the - Services or you have all rights, licenses, consents and releases that - are necessary to grant to HabitRPG the rights in such Public User Content, as - contemplated under these Terms of Service; and (ii) neither the User - Content nor your posting, uploading, publication, submission or - transmittal of the Public User Content or HabitRPG's use of the Public User Content (or - any portion thereof) on, through or by means of the Services will - infringe, misappropriate or violate a third party's patent, copyright, - trademark, trade secret, moral rights or other intellectual property - rights, or rights of publicity or privacy, or result in the violation of - any applicable law or regulation. -

-

- Copyrighted Materials: No Infringing Use. You will not use the - Services to offer, display, distribute, transmit, route, provide - connections to or store any material that infringes copyrighted works or - otherwise violates or promotes the violation of the intellectual - property rights of any third party. HabitRPG has adopted and implemented - a policy that provides for the termination in appropriate circumstances - of the accounts of users who repeatedly infringe or are believed to be - or are charged with repeatedly infringing the rights of copyright - holders. -

-

- Notify Us of Infringers -
- If you believe that something on the Services violates your copyright, - notify our copyright agent in writing. The contact information for our - copyright agent is at the bottom of this section. -

-

- In order for us to take action, you must do the following in your - notice: -

-

- (1) provide your physical or electronic signature; (2) identify - the copyrighted work that you believe is being infringed; (3) identify - the item on the Services that you think is infringing your work and - include sufficient information about where the material is located on - the Services (including which website and URL) so that we can find it; - (4) provide us with a way to contact you, such as your address, - telephone number, or e-mail; (5) provide a statement that you believe in - good faith that the item you have identified as infringing is not - authorized by the copyright owner, its agent, or the law to be used on - the Services; and (6) provide a statement that the information you - provide in your notice is accurate, and that (under penalty of perjury), - you are authorized to act on behalf of the copyright owner whose work is - being infringed. -

-

- Here is the contact information for our copyright agent: -

-

- Copyright Enforcement -
- OCDevel -
- 98 Morrison Ave #2 -
- Somerville, MA 02144 -
- Phone: (805) 975-5236 -
- E-Mail: tylerrenelle at gmail dot com -

-

- Again, we cannot take action unless you give us all the required - information. -

-

- Ratings and Comments & Feedback. -
- You can rate and make comments about content made available through the - Services ("Comments"). HabitRPG advises you to exercise caution and good - judgment when leaving such Comments. Once you complete and submit your - Comments to the Services you will not be able to go back and edit your - Comments. You should also be aware that you could be held legally - responsible for damages to someone's reputation if your Comments are - deemed to be defamatory. Without limiting any other terms of this Terms - of Service, HabitRPG may, but is under no obligation to, monitor or - censor Comments and disclaims any and all liability relating thereto. - Notwithstanding the foregoing, HabitRPG does reserve the right, in its - sole discretion, to remove any Comments that it deems to be improper, - inappropriate or inconsistent with the online activities that are - permitted under these Terms of Service. We welcome and encourage you to - provide feedback, comments and suggestions for improvements to the - Services ("Feedback"). You may submit Feedback by emailing us at support - AT HabitRPG.com. You acknowledge and agree that all Comments and Feedback - will be the sole and exclusive property of HabitRPG and you hereby - irrevocably assign to HabitRPG and agree to irrevocably assign to HabitRPG - all of your right, title, and interest in and to all Comments and - Feedback, including without limitation all worldwide patent rights, - copyright rights, trade secret rights, and other proprietary or - intellectual property rights therein. At HabitRPG's request and expense, - you will execute documents and take such further acts as HabitRPG may - reasonably request to assist HabitRPG to acquire, perfect, and maintain - its intellectual property rights and other legal protections for the - Comments and Feedback. -

-

- Interactions between Users -
- You are solely responsible for your interactions (including any - disputes) with other users. You understand that HabitRPG does not in any - way screen HabitRPG users, except to only allow people aged 14 and over - to create accounts. You are solely responsible for, and will exercise - caution, discretion, common sense and judgment in, using the Services - and disclosing personal information to other HabitRPG users. You agree to - take reasonable precautions in all interactions with other HabitRPG - users, particularly if you decide to meet a HabitRPG user offline, or in - person. Your use of the Services, HabitRPG Content and any other content - made available through the Services is at your sole risk and discretion - and HabitRPG hereby disclaims any and all liability to you or any third - party relating thereto. HabitRPG reserves the right to contact Members, - in compliance with applicable law, in order to evaluate compliance with - the rules and policies in these Terms of Service. You will cooperate - fully with HabitRPG to investigate any suspected unlawful, fraudulent or - improper activity, including, without limitation, granting authorized - HabitRPG representatives access to any password-protected portions of - your HabitRPG Account. -

-

- General Prohibitions -
- You agree not to do any of the following while using the Services or - HabitRPG Content: -
-

-
    -
  • - Post, upload, publish, submit or transmit any text, graphics, - images, software, music, audio, video, information or other material - that: (i) infringes, misappropriates or violates a third party's - patent, copyright, trademark, trade secret, moral rights or other - intellectual property rights, or rights of publicity or privacy; (ii) - violates, or encourages any conduct that would violate, any applicable - law or regulation or would give rise to civil liability; (iii) is - fraudulent, false, misleading or deceptive; (iv) is defamatory, - obscene, pornographic, vulgar or offensive; (v) promotes - discrimination, bigotry, racism, hatred, harassment or harm against any - individual or group; (vi) is violent or threatening or promotes - violence or actions that are threatening to any other person; or (vii) - promotes illegal or harmful activities or substances (including but not - limited to activities that promote or provide instructional information - regarding the manufacture or purchase of illegal weapons or illegal - substances). -
  • -
  • - Use, display, mirror, frame or utilize framing techniques to - enclose the Services, or any individual element or materials within the - Services, HabitRPG's name, any HabitRPG trademark, logo or other - proprietary information, the content of any text or the layout and - design of any page or form contained on a page, without HabitRPG's - express written consent; -
  • -
  • - Access, tamper with, or use non-public areas of the Services, - HabitRPG's computer systems, or the technical delivery systems of - HabitRPG's providers; -
  • -
  • - Attempt to probe, scan, or test the vulnerability of any - HabitRPG system or network or breach any security or authentication - measures; -
  • -
  • - Avoid, bypass, remove, deactivate, impair, descramble or - otherwise circumvent any technological measure implemented by HabitRPG - or any of HabitRPG's providers or any other third party (including - another user) to protect the Services or HabitRPG Content; -
  • -
  • - Attempt to access or search the Services or HabitRPG Content or - download HabitRPG Content from the Services through the use of any - engine, software, tool, agent, device or mechanism (including spiders, - robots, crawlers, data mining tools or the like) other than the - software and/or search agents provided by HabitRPG or other generally - available third party web browsers (such as Google Chrome, Microsoft - Internet Explorer, Mozilla Firefox, Safari or Opera); -
  • -
  • - Send any unsolicited or unauthorized advertising, promotional - materials, email, junk mail, spam, chain letters or other form of - solicitation; -
  • -
  • - Use any meta tags or other hidden text or metadata utilizing a - HabitRPG trademark, logo URL or product name without HabitRPG's express - written consent; -
  • -
  • - Use the Services or HabitRPG Content for any commercial purpose - or the benefit of any third party or in any manner not permitted by - these Terms of Service; -
  • -
  • - Forge any TCP/IP packet header or any part of the header - information in any email or newsgroup posting, or in any way use the - Services or HabitRPG Content to send altered, deceptive or false - source-identifying information; -
  • -
  • - Attempt to decipher, decompile, disassemble or reverse - engineer any of the software used to provide the Services or HabitRPG - Content; -
  • -
  • - Interfere with, or attempt to interfere with, the access of - any user, host or network, including, without limitation, sending a - virus, overloading, flooding, spamming, or mail-bombing the Services; -
  • -
  • - Collect or store any personally identifiable information from - the Services from other users of the Services without their express - permission; -
  • -
  • - Impersonate or misrepresent your affiliation with any person - or entity; Violate any applicable law or regulation; or -
  • -
  • - Encourage or enable any other individual to do any of the - foregoing. -
  • -
-

- HabitRPG will have the right to investigate and prosecute - violations of any of the above, including intellectual property rights - infringement and Services security issues, to the fullest extent of the - law. HabitRPG may involve and cooperate with law enforcement authorities - in prosecuting users who violate these Terms of Service. You acknowledge - that HabitRPG has no obligation to monitor your access to or use of the - Services or HabitRPG Content or to review or edit any Public User Content, but - has the right to do so for the purpose of operating the Services, to - ensure your compliance with these Terms of Service, or to comply with - applicable law or the order or requirement of a court, administrative - agency or other governmental body. HabitRPG reserves the right, at any - time and without prior notice, to remove or disable access to any - HabitRPG Content, including, any Public User Content, that HabitRPG, in its sole - discretion, considers to be in violation of these Terms of Service or - otherwise harmful to the Services. -

-

- Links -
- The Services may contain links to third-party websites or resources. You - acknowledge and agree that HabitRPG is not responsible or liable for: (i) - the availability or accuracy of such websites or resources; or (ii) the - content, products, or services on or available from such websites or - resources. Links to such websites or resources do not imply any - endorsement by HabitRPG of such websites or resources or the content, - products, or services available from such websites or resources. You - acknowledge sole responsibility for and assume all risk arising from - your use of any such websites or resources. -

-

- Termination and HabitRPG Account; Cancellation -
- Without limiting other remedies, HabitRPG may at any time suspend or - terminate your HabitRPG Account and refuse to provide access to the - Services. In addition, HabitRPG may notify authorities or take any - actions it deems appropriate, without notice to you, if HabitRPG suspects - or determines, in its own discretion, that you may have or there is a - significant risk that you have (i) failed to comply with any provision - of these Terms of Service or any policies or rules established by - HabitRPG; or (ii) engaged in actions relating to or in the course of - using the Services that may be illegal or cause liability, harm, - embarrassment, harassment, abuse or disruption for you, HabitRPG Users, - HabitRPG or any other third parties or the Services. -

-

- You may terminate your HabitRPG Account at any time and for any - reason by sending email to support AT HabitRPG.com. Upon any termination - by a Member, the related account will no longer be accessible. -

-

- After any termination, you understand and acknowledge that we - will have no further obligation to provide the Services and all licenses - and other rights granted to you by these Terms of Service will - immediately cease. HabitRPG will not be liable to you or any third party - for termination of the Services or termination of your use of either. - UPON ANY TERMINATION OR SUSPENSION, ANY CONTENT, MATERIALS OR - INFORMATION (INCLUDING PUBLIC USER CONTENT) THAT YOU HAVE SUBMITTED ON THE - SERVICES OR THAT WHICH IS RELATED TO YOUR ACCOUNT MAY NO LONGER BE - ACCESSED BY YOU. Furthermore, HabitRPG will have no obligation to - maintain any information stored in our database related to your account - or to forward any information to you or any third party. -

-

- Any suspension, termination or cancellation will not affect your - obligations to HabitRPG under these Terms of Service (including, without - limitation, proprietary rights and ownership, indemnification and - limitation of liability), which by their sense and context are intended - to survive such suspension, termination or cancellation. -

-

- Disclaimers -
- THE SERVICES, HABITRPG CONTENT AND PUBLIC USER CONTENT ARE PROVIDED "AS IS", - WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT - LIMITING THE FOREGOING, HABITRPG EXPLICITLY DISCLAIMS ANY WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR - NON-INFRINGEMENT, AND ANY WARRANTIES ARISING OUT OF COURSE OF DEALING OR - USAGE OF TRADE. -

-

- HABITRPG MAKES NO WARRANTY THAT THE SERVICES, HABITRPG CONTENT OR - PUBLIC USER CONTENT WILL MEET YOUR REQUIREMENTS OR BE AVAILABLE ON AN - UNINTERRUPTED, SECURE, OR ERROR-FREE BASIS. HABITRPG MAKES NO WARRANTY - REGARDING THE QUALITY OF ANY PRODUCTS, SERVICES OR CONTENT PURCHASED OR - OBTAINED THROUGH THE SERVICES OR THE ACCURACY, TIMELINESS, TRUTHFULNESS, - COMPLETENESS OR RELIABILITY OF ANY CONTENT OBTAINED THROUGH THE - SERVICES. -

-

- NO ADVICE OR INFORMATION, WHETHER ORAL OR WRITTEN, OBTAINED FROM - HABITRPG OR THROUGH THE SERVICES, HABITRPG CONTENT OR PUBLIC USER CONTENT, WILL - CREATE ANY WARRANTY NOT EXPRESSLY MADE HEREIN. -

-

- Indemnity -
- You agree to defend, indemnify, and hold HabitRPG, its officers, - directors, employees and agents, harmless from and against any claims, - liabilities, damages, losses, and expenses, including, without - limitation, reasonable legal and accounting fees, arising out of or in - any way connected with Public User Content you submit to HabitRPG, your access - to or use of the Services or HabitRPG Content, or your violation of these - Terms of Service. -

-

- Limitation of Liability -
- YOU ACKNOWLEDGE AND AGREE THAT, TO THE MAXIMUM EXTENT PERMITTED BY LAW, - THE ENTIRE RISK ARISING OUT OF YOUR ACCESS TO AND USE OF THE SERVICES - AND CONTENT THEREIN REMAINS WITH YOU. NEITHER HABITRPG NOR ANY OTHER - PARTY INVOLVED IN CREATING, PRODUCING, OR DELIVERING THE SERVICES OR - HABITRPG CONTENT WILL BE LIABLE FOR ANY INCIDENTAL, SPECIAL, EXEMPLARY OR - CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, LOSS OF DATA OR LOSS OF - GOODWILL, SERVICE INTERRUPTION, COMPUTER DAMAGE OR SYSTEM FAILURE OR THE - COST OF SUBSTITUTE PRODUCTS OR SERVICES, ARISING OUT OF OR IN CONNECTION - WITH THESE TERMS OR FROM THE USE OF OR INABILITY TO USE THE SERVICES OR - CONTENT THEREIN, WHETHER BASED ON WARRANTY, CONTRACT, TORT (INCLUDING - NEGLIGENCE), PRODUCT LIABILITY OR ANY OTHER LEGAL THEORY, AND WHETHER OR - NOT HABITRPG HAS BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGE, EVEN IF - A LIMITED REMEDY SET FORTH HEREIN IS FOUND TO HAVE FAILED OF ITS - ESSENTIAL PURPOSE. YOU SPECIFICALLY ACKNOWLEDGE THAT HABITRPG IS NOT - LIABLE FOR THE DEFAMATORY, OFFENSIVE OR ILLEGAL CONDUCT OF OTHER USERS - OR THIRD PARTIES AND THAT THE RISK OF INJURY FROM THE FOREGOING RESTS - ENTIRELY WITH YOU. FURTHER, HABITRPG WILL HAVE NO LIABILITY TO YOU OR TO - ANY THIRD PARTY FOR ANY PUBLIC USER CONTENT OR THIRD-PARTY CONTENT UPLOADED - ONTO OR DOWNLOADED FROM THE SITES OR THROUGH THE SERVICES. -

-

- IN NO EVENT WILL HABITRPG'S AGGREGATE LIABILITY ARISING OUT OF OR - IN CONNECTION WITH THESE TERMS OF SERVICE OR FROM THE USE OF OR - INABILITY TO USE THE SITE, SERVICES OR CONTENT THEREIN EXCEED ONE - HUNDRED U.S. DOLLARS ($100). THE LIMITATIONS OF DAMAGES SET FORTH ABOVE - ARE FUNDAMENTAL ELEMENTS OF THE BASIS OF THE BARGAIN BETWEEN HABITRPG AND - YOU. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF - LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, SO THE ABOVE - LIMITATION MAY NOT APPLY TO YOU. -

-

- Proprietary Rights Notices -
- All trademarks, service marks, logos, trade names and any other - proprietary designations of HabitRPG used herein are trademarks or - registered trademarks of HabitRPG. Any other trademarks, service marks, - logos, trade names and any other proprietary designations are the - trademarks or registered trademarks of their respective parties. -

-

- Controlling Law and Jurisdiction -
- These Terms of Service and any action related thereto will be governed - by the laws of the State of California without regard to its conflict of - laws provisions. The exclusive jurisdiction and venue of any action with - respect to the subject matter of these Terms of Service will be the - courts having jurisdiction over disputes arising in Santa Clara County, - California, and each of the parties hereto waives any objection to - jurisdiction and venue in such courts. -

-

- YOU AGREE THAT IF YOU WANT TO SUE US, YOU MUST FILE YOUR LAWSUIT - WITHIN ONE YEAR AFTER THE EVENT THAT GAVE RISE TO YOUR LAWSUIT. - OTHERWISE, YOUR LAWSUIT WILL BE PERMANENTLY BARRED. -

-

- Export Control -
- You may not use or otherwise export or re-export the Services except as - authorized by United States law and the laws of the jurisdiction in - which the Services were obtained. In particular, but without limitation, - the Services may not be exported or re-exported (a) into any U.S. - embargoed countries or (b) to anyone on the U.S. Treasury Department's - list of Specially Designated Nationals or the U.S. Department of - Commerce Denied Person's List or Entity List. By using the Services, you - represent and warrant that you are not located in any such country or on - any such list. You also agree that you will not use these products for - any purposes prohibited by United States law, including, without - limitation, the development, design, manufacture or production of - nuclear, missiles, or chemical or biological weapons. -

-

- Entire Agreement -
- These Terms of Service constitute the entire and exclusive understanding - and agreement between HabitRPG and you regarding the Services and HabitRPG - Content, and these Terms of Service supersede and replace any and all - prior oral or written understandings or agreements between HabitRPG and - you regarding the Services and HabitRPG Content. -

-

- Assignment -
- You may not assign or transfer these Terms of Service, by operation of - law or otherwise, without HabitRPG's prior written consent. Any attempt - by you to assign or transfer these Terms of Service, without such - consent, will be null and of no effect. HabitRPG may freely assign these - Terms of Service. Subject to the foregoing, these Terms of Service will - bind and inure to the benefit of the parties, their successors and - permitted assigns. -

-

- Notices -
- You consent to the use of: (i) electronic means to complete these Terms - of Service and to deliver any notices or other communications permitted - or required hereunder; and (ii) electronic records to store information - related to these Terms of Service or your use of the Services. Any - notices or other communications permitted to required hereunder, - including those regarding modifications to these Terms of Service, will - be in writing and given: (x) by HabitRPG via email (in each case to the - address that you provide) or (y) by posting to the Sites or Services. - For notices made by e-mail, the date of receipt will be deemed the date - on which such notice is transmitted. -

-

- General -
- The failure of HabitRPG to enforce any right or provision of these Terms - of Service will not constitute a waiver of future enforcement of that - right or provision. The waiver of any such right or provision will be - effective only if in writing and signed by a duly authorized - representative of HabitRPG. Except as expressly set forth in these Terms - of Service, the exercise by either party of any of its remedies under - these Terms of Service will be without prejudice to its other remedies - under these Terms of Service or otherwise. If for any reason a court of - competent jurisdiction finds any provision of these Terms of Service - invalid or unenforceable, that provision will be enforced to the maximum - extent permissible and the other provisions of these Terms of Service - will remain in full force and effect. -

-

- Contacting Us -
- If you have any questions about these Terms of Service, please contact - us at tylerrenelle@gmail.com. -

- - -
From 76064be3d8d1008aa38ebb5f66714edd77812497 Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Sat, 16 Mar 2013 23:11:33 -0400 Subject: [PATCH 04/16] clegsome static-page cleanup --- views/app/footer.html | 2 +- views/static/about.html | 3 +- views/static/faq.html | 116 +++++++++++++++++++++++++++++----------- 3 files changed, 86 insertions(+), 35 deletions(-) diff --git a/views/app/footer.html b/views/app/footer.html index 5b671f3108..45c7412873 100644 --- a/views/app/footer.html +++ b/views/app/footer.html @@ -29,7 +29,7 @@
  • Submit Bug
  • Request Feature
  • API
  • -
  • Add-ons / Extensions
  • +
  • Add-ons / Extensions
  • Kickstarter
  • Facebook Page
  • Reddit
  • diff --git a/views/static/about.html b/views/static/about.html index 7caddc48ce..2b7ff7bf27 100644 --- a/views/static/about.html +++ b/views/static/about.html @@ -16,11 +16,10 @@ -

    HabitRPG is a habit building program which treats your life like a Role Playing Game. Level up as you succeed, lose HP as you fail, earn money to buy weapons and armor.

    +

    HabitRPG is an open source habit building program which treats your life like a Role Playing Game. Level up as you succeed, lose HP as you fail, earn money to buy weapons and armor.

    -

     

    diff --git a/views/static/faq.html b/views/static/faq.html index 1e389c50fb..93ce8e2de9 100644 --- a/views/static/faq.html +++ b/views/static/faq.html @@ -17,38 +17,90 @@

    FAQ

    -

    What is habit tracking?

    -

    Habit tracking is keeping tabs on all your habits to help you improve. It is to life what calorie-counting is to diets (and calorie-counting falls under the habit-tracking umbrella). See Trackers vs Lifehackers for more information and website examples.

    -

    There are many habit-tracking apps, but HabitRPG takes a different spin: treating your goals and habits like a Role Playing Game (RPG). If you've played RPGs growing up, this app will make sense to you; otherwise, it may be overwhelming at first. Be sure to follow the tutorial when you first load the website. If it's still not your cup of tea, checkout Trackers vs Lifehackers for alternatives.

    -

    How does it work?

    -

    See the About page

    -

    Browser Support

    -

    Everything except Internet Explorer. Derby doesn't currently support IE (see this thread), though support is eventually planned. Use Chrome for best results.

    -

    Should this task be a Habit, Daily, or Todo?

    -

    See About on task type definitions, but think of it like this. * Habits you track many times per day. Taking the stairs, eating candy, biting your nails, etc. They're sort of micro-tasks. They're also the dumping ground for 3rd-party tasks, created via API calls - for example, when you visit vice websites (Reddit, 9gag) while using the Chrome extension - that's updated as a habit. * Dailies are things you track once or twice a day. Exercising, 1h Reading, Anki Session, etc. They reset at the end of each day, and must be completed each day. The confusion is usually between Dailies and Habits, and it usually goes like this: "Should I have a Daily called 1h Reading (I want to read 1 hour each day), or a Habit called 1h Reading that I up-score for every hour I read in a day?". My answer - Daily. If it's a decently difficult task that you want to become a good habit, make it a Daily - you're more likely to do it when it loses points at the end of each day than if it sits. * Todos are things you'll do once and only once. Call Mom, Send eBay Package, Pay Doctor Bill, etc. Pretty straight forward.

    -

    What are tokens?

    -

    In the days of yore, arcade machines ran on tokens or quarters, and were known to gobble such nuggets with avaricious glee. HabitRPG has no wish to drain your pocket change, but those who use and appreciate it can support the project by turning real-world quarters into tokens, and using the tokens in turn to reroll your tasks, spruce up their character, and tame fearsome mounts to impress friend and foe alike!

    -

    How do I reset?

    -

    Many people have requested the ability to start completely from scratch. This is highly discouraged because you'll lose historical data, which is useful for graphing your progress over time. However, some people find it useful in the beginning after playing with the app for a while - once they've become accustomed to how things work, they want to start playing "for real". To do this, make sure you're logged in and click the profile drop-down in the top-right corner, then click "Reset".

    -

    How do I undo?

    -

    Undoing actions is not yet support, but is in the works. See issue #6

    -

    How do I heal?

    -

    After you play for a while you unlock the Item Store from which you can buy health potions. Also, HP resets upon leveling up (of course!).

    -

    How do I customize a task's value?

    -

    Some tasks are more valuable to you than others. Finishing your research paper, for example, should be worth more points than flossing your teeth. Instead of customizing value upon task-creation, HabitRPG calculates a task's value automatically over time. The longer something sits without being completed (Dailies and Todos), the more valuable it becomes; and the more frequently you complete Dailies, the less valuable they become. Trust in the system's machine-learning of task-values.

    -

    If you absolutely must customize a task's value, there's a "difficulty" setting under the Advanced section of task-editing.

    -

    All my tasks are red, I'm dying too fast

    -

    Good! Your red tasks provide the most incentive. The worse you are at a task, the more valuable it becomes in Exp & GP, which will push you to focus on the harder tasks. However, if you really need a bail-out, you can "Re-Roll" from the item store, which resets all your tasks to a clean slate. You have to use your quarters, which will prevent you from re-rolling frequently.

    -

    Again, try as hard as you can to avoid using re-roll. The point of red tasks is to push you to try harder.

    -

    I'm going on vacation, how can I disable my Dailies?

    -

    Dailies have a "Repeat" field, which specifies which week days this item is due. When you on go vacation, just set each Daily's repeats such that they aren't due on any week days at all. See this screenshot. As for Todos, they will still gain value but they won't hurt you.

    -

    What algorithms are used?

    -

    See algorithms page.

    -

    BrowserQuest Art

    -

    We're currently using the pixel art from Mozilla BrowserQuest. Some have been opposed because they've played BQ themselves, and don't like design recycling, but here's my reasoning:

    -

    It is licensed under CC-BY-SA 3.0 (so we can use it). Fortunately for us (but sadly for Mozilla), BQ is mothballed. That has two implications. First, only those in-the-know will recognize it - which is mostly developers & designers who have been keeping abreast HTML5's progress. Second, it's absolutely superb in design and nostalgia - it does an excellent job of bringing back SNES, and it would be a shame to see it go to waste. Also, it's free, and will get pretty far before we need to start customizing.

    -

    How can I get involved?

    -

    Contribute to the GitHub repo and get a slice of the pie! See Business Model, and contact me if you're interested.

    + +
    + +

    Habit tracking is keeping tabs on all your habits to help you improve. It is to life what calorie-counting is to diets (and calorie-counting falls under the habit-tracking umbrella). See Trackers vs Lifehackers for more information and website examples.

    +

    There are many habit-tracking apps, but HabitRPG takes a different spin: treating your goals and habits like a Role Playing Game (RPG). If you've played RPGs growing up, this app will make sense to you; otherwise, it may be overwhelming at first. Be sure to follow the tutorial when you first load the website, and if you're still confused watch this video tutorial

    +
    + + +
    + +

    See About on task type definitions, but think of it like this.

    +
      +
    • Habits you track many times per day. Taking the stairs, eating candy, biting your nails, etc. They're sort of micro-tasks. They're also the dumping ground for 3rd-party tasks, created via API calls - for example, when you visit vice websites (Reddit, 9gag) while using the Chrome extension - that's updated as a habit.
    • +
    • Dailies are things you track once or twice a day. Exercising, 1h Reading, Anki Session, etc. They reset at the end of each day, and must be completed each day. The confusion is usually between Dailies and Habits, and it usually goes like this: "Should I have a Daily called 1h Reading (I want to read 1 hour each day), or a Habit called 1h Reading that I up-score for every hour I read in a day?". My answer - Daily. If it's a decently difficult task that you want to become a good habit, make it a Daily - you're more likely to do it when it loses points at the end of each day than if it sits.
    • +
    • Todos are things you'll do once and only once. Call Mom, Send eBay Package, Pay Doctor Bill, etc. Pretty straight forward.
    • +
    +
    + +
    + +

    In the days of yore, arcade machines ran on tokens or quarters, and were known to gobble such nuggets with avaricious glee. HabitRPG has no wish to drain your pocket change, but those who use and appreciate it can support the project by turning real-world quarters into tokens, and using the tokens in turn to reroll your tasks, spruce up their character, and tame fearsome pets & mounts to impress friend and foe alike!

    +
    + +
    + +

    Many people have requested the ability to start completely from scratch. This is highly discouraged because you'll lose historical data, which is useful for graphing your progress over time. However, some people find it useful in the beginning after playing with the app for a while - once they've become accustomed to how things work, they want to start playing "for real". To do this, make sure you're logged in and click the profile drop-down in the top-right corner, then click "Reset".

    +
    + +
    + +

    Some tasks are more valuable to you than others. Finishing your research paper, for example, should be worth more points than flossing your teeth. Instead of customizing value upon task-creation, HabitRPG calculates a task's value automatically over time. The longer something sits without being completed (Dailies and Todos), the more valuable it becomes; and the more frequently you complete Dailies, the less valuable they become. Trust in the system's machine-learning of task-values.

    +

    If you absolutely must customize a task's value, there's a "difficulty" setting under the Advanced section of task-editing.

    +
    + +
    + +

    Dailies have a "Repeat" field, which specifies which week days this item is due. When you on go vacation, just set each Daily's repeats such that they aren't due on any week days at all. See this screenshot. As for Todos, they will still gain value but they won't hurt you.

    +
    + +
    + +

    Release Date

    +

    The mobile apps are slated to be released in April / May 2013. We hope sooner than that, but that's our current estimate. For the Kickstarter beta access, here's how we'll handle that:

    +

    Website

    +

    If you like to live dangerously, you can use beta.habitrpg.com instead of the production site, which will introduce new features faster. It tracks the production database, so yes your account will be synced.

    +

    Mobile App

    +

    We'll post updates on the Kickstarter when we have a beta version of the mobile app that y'all can play with (downloadable files, outside the various app stores), and will post each new beta version update on the KS update section as well.

    +
    + +
    + +

    We're currently using the pixel art from Mozilla BrowserQuest. Some have been opposed because they've played BQ themselves, and don't like design recycling, but here's my reasoning:

    +

    It is licensed under CC-BY-SA 3.0 (so we can use it). Fortunately for us (but sadly for Mozilla), BQ is mothballed. That has two implications. First, only those in-the-know will recognize it - which is mostly developers & designers who have been keeping abreast HTML5's progress. Second, it's absolutely superb in design and nostalgia - it does an excellent job of bringing back SNES, and it would be a shame to see it go to waste. Also, it's free, and will get pretty far before we need to start customizing.

    +
    + +
    + +

    Everything except Internet Explorer. Derby doesn't currently support IE (see this thread), though support is eventually planned. Use Chrome for best results.

    +
    + +
    + +

    Check out "Count Me In!", we need all the help we can get!

    +
    From 83b29177bc57f71e3c0996061308b0ea6e3e5519 Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Sun, 17 Mar 2013 00:29:32 -0400 Subject: [PATCH 05/16] add responsive to static pages --- views/static/head.html | 3 +++ 1 file changed, 3 insertions(+) diff --git a/views/static/head.html b/views/static/head.html index 92092cb757..18b7adf3a4 100644 --- a/views/static/head.html +++ b/views/static/head.html @@ -3,7 +3,10 @@ + + + From 2ca7c65abc86c0736909b265eeaef21ad6f07fc2 Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Sun, 17 Mar 2013 00:48:00 -0400 Subject: [PATCH 06/16] don't add bootstrap css files in when instantiating derby-ui-boostrap, instead compile in with the css. index.coffee directives are run against static pages too, which overwrites our bootstrap responsive (which we need) with the app's custom responsive styles. We may change this, but for now this commit allows us to keep the marketing site and main site styles separate Conflicts: src/app/index.coffee --- src/app/index.coffee | 2 +- styles/app/index.styl | 2 ++ views/static/front.html | 6 +++--- views/static/head.html | 4 +--- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/app/index.coffee b/src/app/index.coffee index eabdfbde0e..c1a8b48aba 100644 --- a/src/app/index.coffee +++ b/src/app/index.coffee @@ -1,7 +1,7 @@ derby = require 'derby' app = derby.createApp module {get, view, ready} = app -derby.use require('derby-ui-boot'), {styles: ['bootstrap', 'responsive']} +derby.use require('derby-ui-boot'), {styles: []} derby.use require '../../ui' derby.use require 'derby-auth/components' diff --git a/styles/app/index.styl b/styles/app/index.styl index 3d16352517..b63c92ca71 100644 --- a/styles/app/index.styl +++ b/styles/app/index.styl @@ -1,4 +1,5 @@ @import "nib/vendor"; +@import "../../public/vendor/bootstrap/docs/assets/css/bootstrap.css"; @import "./female_sprites.styl"; @import "./male_sprites.styl"; @import "./shop_sprites.styl"; @@ -8,6 +9,7 @@ @import "./items.styl"; @import "./alerts.styl"; + @import "../../public/vendor/bootstrap-datepicker/css/datepicker.css"; html,body,p,h1,ul,li,table,tr,th,td diff --git a/views/static/front.html b/views/static/front.html index 587fb09495..c3552dfda1 100644 --- a/views/static/front.html +++ b/views/static/front.html @@ -6,11 +6,11 @@ HabitRPG | Gamify Your Life - +
    - +
    @@ -21,7 +21,7 @@
    -

    +

    diff --git a/views/static/head.html b/views/static/head.html index 18b7adf3a4..882cac29ed 100644 --- a/views/static/head.html +++ b/views/static/head.html @@ -2,11 +2,9 @@ - + - - From dc3af9aa4981994d4b4830fdb1fdebc0bc27b64f Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Sun, 17 Mar 2013 09:13:25 -0400 Subject: [PATCH 07/16] better "reroll" comment --- src/app/items.coffee | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/items.coffee b/src/app/items.coffee index 5990a24412..a635efd8b6 100644 --- a/src/app/items.coffee +++ b/src/app/items.coffee @@ -35,7 +35,7 @@ items = module.exports.items = {index: 5, text: "Golden Shield", classes: 'shield_5', notes:'Decreases HP loss by 8%.', defense: 8, value:90} ] potion: {type: 'potion', text: "Potion", notes: "Recover 15 HP", value: 25, classes: 'potion'} - reroll: {type: 'reroll', text: "Re-Roll", classes: 'reroll', notes: "Resets your tasks. When you're struggling and everything's red, use for a clean slate.", value:0 } + reroll: {type: 'reroll', text: "Re-Roll", classes: 'reroll', notes: "Resets your task values back to 0 (yellow). Useful when everything's red and it's hard to stay alive.", value:0 } pets: [ {index: 0, text: 'Bear Cub', name: 'bearcub', icon: 'Pet-BearCub-Base.png', value: 3} From 8e845d65865ead7756cd2b138d72bc84df5519ca Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Sun, 17 Mar 2013 09:19:55 -0400 Subject: [PATCH 08/16] add bootstrap-responsive into master. remove when develop is merged in --- styles/app/index.styl | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/styles/app/index.styl b/styles/app/index.styl index b63c92ca71..6e3df53c5b 100644 --- a/styles/app/index.styl +++ b/styles/app/index.styl @@ -1,5 +1,9 @@ @import "nib/vendor"; @import "../../public/vendor/bootstrap/docs/assets/css/bootstrap.css"; + +// REMOVEME adding into master since we need bootstrap-responsive, remove this once develop is merged in +@import "../../public/vendor/bootstrap/docs/assets/css/bootstrap-responsive.css"; + @import "./female_sprites.styl"; @import "./male_sprites.styl"; @import "./shop_sprites.styl"; From dcb0f7e111c27bb17d086f72f3192462e15f8304 Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Tue, 19 Mar 2013 18:32:18 -0600 Subject: [PATCH 09/16] remove hashed_password & salt from /user --- src/server/api.coffee | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/server/api.coffee b/src/server/api.coffee index 4c2fa2984a..7f6dce3c11 100644 --- a/src/server/api.coffee +++ b/src/server/api.coffee @@ -46,6 +46,8 @@ router.get '/user', auth, (req, res) -> user.stats.maxHealth = 50 delete user.apiToken + delete user.auth.hashed_password + delete user.auth.salt res.json user From 8f012e8e7871e555b1f678a57844f6407dc307d8 Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Wed, 20 Mar 2013 09:36:29 -0600 Subject: [PATCH 10/16] copyright 2013 --- views/app/footer.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/app/footer.html b/views/app/footer.html index 45c7412873..52f82334c9 100644 --- a/views/app/footer.html +++ b/views/app/footer.html @@ -19,7 +19,7 @@ From 25c6748f98068106d32a9b8843bb3af8514fdf11 Mon Sep 17 00:00:00 2001 From: Paul Fenwick Date: Fri, 22 Mar 2013 00:31:19 +1100 Subject: [PATCH 11/16] Add WebService::HabitRPG to list of extensions. --- views/static/extensions.html | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/views/static/extensions.html b/views/static/extensions.html index e2623c0b4c..4724e1ed46 100644 --- a/views/static/extensions.html +++ b/views/static/extensions.html @@ -36,8 +36,16 @@

    Python command line app for HabitRPG (http://habitrpg.com)

    PHP API

    A PHP class for the HabitRPG API. Will be expanded when more features become available in the API.

    + +

    WebService::HabitRPG — Perl API

    +

    A full-featured Perl interface for HabitRPG. Development versions are available on github. + +

    hrpg - HabitRPG command line client

    +

    Command-line client for HabitRPG. Supports viewing status, listing tasks by types, creation of new types, incrementing/decrementing of tasks, API debugging, and more.

    +

    Suggest an Add-on / Extension

    +

    Email me to have something listed here

    - \ No newline at end of file + From d6553c763dd0ffae3c641c89d235060c1dbb784c Mon Sep 17 00:00:00 2001 From: Paul Fenwick Date: Sat, 23 Mar 2013 00:56:56 +1100 Subject: [PATCH 12/16] pfenwick went and changed his github username to pjf --- views/static/extensions.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/static/extensions.html b/views/static/extensions.html index 4724e1ed46..4f0d834040 100644 --- a/views/static/extensions.html +++ b/views/static/extensions.html @@ -38,7 +38,7 @@

    A PHP class for the HabitRPG API. Will be expanded when more features become available in the API.

    WebService::HabitRPG — Perl API

    -

    A full-featured Perl interface for HabitRPG. Development versions are available on github. +

    A full-featured Perl interface for HabitRPG. Development versions are available on github.

    hrpg - HabitRPG command line client

    Command-line client for HabitRPG. Supports viewing status, listing tasks by types, creation of new types, incrementing/decrementing of tasks, API debugging, and more.

    From 7f74a6752a3ed0f37a22f2f0a1d7f446f7bb9164 Mon Sep 17 00:00:00 2001 From: Shane Lister Date: Tue, 26 Mar 2013 08:56:50 -0700 Subject: [PATCH 13/16] Update pet_sprites.css --- public/img/sprites/pet_sprites.css | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/public/img/sprites/pet_sprites.css b/public/img/sprites/pet_sprites.css index 9c71a9c143..4bff991a0d 100644 --- a/public/img/sprites/pet_sprites.css +++ b/public/img/sprites/pet_sprites.css @@ -1,4 +1,4 @@ -.Pet-Wolf-Zombie, .Pet-Wolf-White, .Pet-Wolf-Veteran, .Pet-Wolf-Skeleton, .Pet-Wolf-Shade, .Pet-Wolf-Red, .Pet-Wolf-Golden, .Pet-Wolf-Desert, .Pet-Wolf-CottonCandyPink, .Pet-Wolf-CottonCandyBlue, .Pet-TigerCub-Zombie, .Pet-TigerCub-White, .Pet-TigerCub-Skeleton, .Pet-TigerCub-Shade, .Pet-TigerCub-Red, .Pet-TigerCub-Golden, .Pet-TigerCub-Desert, .Pet-TigerCub-CottonCandyPink, .Pet-TigerCub-CottonCandyBlue, .Pet-TigerCub-Base, .Pet-PolarBearCub-Base, .Pet-PandaCub-Zombie, .Pet-PandaCub-White, .Pet-PandaCub-Skeleton, .Pet-PandaCub-Shade, .Pet-PandaCub-Red, .Pet-PandaCub-Golden, .Pet-PandaCub-Desert, .Pet-PandaCub-CottonCandyPink, .Pet-PandaCub-CottonCandyBlue, .Pet-PandaCub-Base, .Pet-LionCub-Zombie, .Pet-LionCub-White, .Pet-LionCub-Skeleton, .Pet-LionCub-Shade, .Pet-LionCub-Red, .Pet-LionCub-Golden, .Pet-LionCub-Desert, .Pet-LionCub-CottonCandyPink, .Pet-LionCub-CottonCandyBlue, .Pet-LionCub-Base, .Pet-Fox-Zombie, .Pet-Fox-White, .Pet-Fox-Skeleton, .Pet-Fox-Shade, .Pet-Fox-Red, .Pet-Fox-Golden, .Pet-Fox-Desert, .Pet-Fox-CottonCandyPink, .Pet-Fox-CottonCandyBlue, .Pet-Fox-Base, .Pet-FlyingPig-Zombie, .Pet-FlyingPig-White, .Pet-FlyingPig-Skeleton, .Pet-FlyingPig-Shade, .Pet-FlyingPig-Red, .Pet-FlyingPig-Golden, .Pet-FlyingPig-Desert, .Pet-FlyingPig-CottonCandyPink, .Pet-FlyingPig-CottonCandyBlue, .Pet-FlyingPig-Base, .Pet-Dragon-Zombie, .Pet-Dragon-White, .Pet-Dragon-Skeleton, .Pet-Dragon-Shade, .Pet-Dragon-Red, .Pet-Dragon-Golden, .Pet-Dragon-Desert, .Pet-Dragon-CottonCandyPink, .Pet-Dragon-CottonCandyBlue, .Pet-Dragon-Base, .Pet-Cactus-Skeleton, .Pet-Cactus-Red, .Pet-Cactus-Zombie, .Pet-Cactus-Shade, .Pet-Cactus-Golden, .Pet-Cactus-White, .Pet-Cactus-CottonCandyPink, .Pet-Cactus-CottonCandyBlue, .Pet-Cactus-Desert, .Pet-Cactus-Base, .Pet-BearCub-Zombie, .Pet-BearCub-White, .Pet-BearCub-Skeleton, .Pet-BearCub-Shade, .Pet-BearCub-Red, .Pet-BearCub-Golden, .Pet-BearCub-Desert, .Pet-BearCub-CottonCandyPink, .Pet-BearCub-CottonCandyBlue, .Pet-BearCub-Base {background: url("/img/sprites/pet_sprites.png") no-repeat} +.Pet-Wolf-Zombie, .Pet-Wolf-White, .Pet-Wolf-Veteran, .Pet-Wolf-Skeleton, .Pet-Wolf-Shade, .Pet-Wolf-Red, .Pet-Wolf-Golden, .Pet-Wolf-Desert, .Pet-Wolf-CottonCandyPink, .Pet-Wolf-CottonCandyBlue, .Pet-TigerCub-Zombie, .Pet-TigerCub-White, .Pet-TigerCub-Skeleton, .Pet-TigerCub-Shade, .Pet-TigerCub-Red, .Pet-TigerCub-Golden, .Pet-TigerCub-Desert, .Pet-TigerCub-CottonCandyPink, .Pet-TigerCub-CottonCandyBlue, .Pet-TigerCub-Base, .Pet-PolarBearCub-Base, .Pet-PandaCub-Zombie, .Pet-PandaCub-White, .Pet-PandaCub-Skeleton, .Pet-PandaCub-Shade, .Pet-PandaCub-Red, .Pet-PandaCub-Golden, .Pet-PandaCub-Desert, .Pet-PandaCub-CottonCandyPink, .Pet-PandaCub-CottonCandyBlue, .Pet-PandaCub-Base, .Pet-LionCub-Zombie, .Pet-LionCub-White, .Pet-LionCub-Skeleton, .Pet-LionCub-Shade, .Pet-LionCub-Red, .Pet-LionCub-Golden, .Pet-LionCub-Desert, .Pet-LionCub-CottonCandyPink, .Pet-LionCub-CottonCandyBlue, .Pet-LionCub-Base, .Pet-Fox-Zombie, .Pet-Fox-White, .Pet-Fox-Skeleton, .Pet-Fox-Shade, .Pet-Fox-Red, .Pet-Fox-Golden, .Pet-Fox-Desert, .Pet-Fox-CottonCandyPink, .Pet-Fox-CottonCandyBlue, .Pet-Fox-Base, .Pet-FlyingPig-Zombie, .Pet-FlyingPig-White, .Pet-FlyingPig-Skeleton, .Pet-FlyingPig-Shade, .Pet-FlyingPig-Red, .Pet-FlyingPig-Golden, .Pet-FlyingPig-Desert, .Pet-FlyingPig-CottonCandyPink, .Pet-FlyingPig-CottonCandyBlue, .Pet-FlyingPig-Base, .Pet-Dragon-Zombie, .Pet-Dragon-White, .Pet-Dragon-Skeleton, .Pet-Dragon-Shade, .Pet-Dragon-Red, .Pet-Dragon-Golden, .Pet-Dragon-Desert, .Pet-Dragon-CottonCandyPink, .Pet-Dragon-CottonCandyBlue, .Pet-Dragon-Base, .Pet-Cactus-Skeleton, .Pet-Cactus-Red, .Pet-Cactus-Zombie, .Pet-Cactus-Shade, .Pet-Cactus-Golden, .Pet-Cactus-White, .Pet-Cactus-CottonCandyPink, .Pet-Cactus-CottonCandyBlue, .Pet-Cactus-Desert, .Pet-Cactus-Base, .Pet-BearCub-Zombie, .Pet-BearCub-White, .Pet-BearCub-Skeleton, .Pet-BearCub-Shade, .Pet-BearCub-Red, .Pet-BearCub-Golden, .Pet-BearCub-Desert, .Pet-BearCub-CottonCandyPink, .Pet-BearCub-CottonCandyBlue, .Pet-BearCub-Base, .Pet-Wolf-Base {background: url("/img/sprites/pet_sprites.png") no-repeat} .Pet-Wolf-Zombie {background-position: 0 0; width: 81px; height: 99px} .Pet-Wolf-White {background-position: -81px 0; width: 81px; height: 99px} @@ -91,4 +91,5 @@ .Pet-BearCub-CottonCandyPink {background-position: -7128px 0; width: 81px; height: 99px} .Pet-BearCub-CottonCandyBlue {background-position: -7209px 0; width: 81px; height: 99px} .Pet-BearCub-Base {background-position: -7290px 0; width: 81px; height: 99px} +.Pet-Wolf-Base {background-position: -7371px 0; width: 81px; height: 99px} .Pet-Egg {background: url("/img/sprites/egg.png") no-repeat; width: 39px; height: 42px;} From 48e96df07b3268008b9e1d2ce5828b4483301883 Mon Sep 17 00:00:00 2001 From: Shane Lister Date: Tue, 26 Mar 2013 09:06:07 -0700 Subject: [PATCH 14/16] Update Mounts.css --- public/img/sprites/Mounts.css | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/public/img/sprites/Mounts.css b/public/img/sprites/Mounts.css index 314d83f408..06ea775b2b 100644 --- a/public/img/sprites/Mounts.css +++ b/public/img/sprites/Mounts.css @@ -1,11 +1,13 @@ -Mount_Head_Lion, Mount_Body_Lion, Mount_Head_PolarBear, Mount_Body_PolarBear, Mount_Head_Panda, Mount_Body_Panda, Mount_Head_Tiger, Mount_Body_Tiger, Mount_Head_Bear, Mount_Body_Bear {background: url(Mount-SpriteSheet.png) no-repeat} -Mount_Head_Lion {background-position: 0 0; width: 105px; height: 123px} -Mount_Body_Lion {background-position: -105 0; width: 105px; height: 123px} -Mount_Head_PolarBear {background-position: -210 0; width: 105px; height: 123px} -Mount_Body_PolarBear {background-position: -315 0; width: 105px; height: 123px} -Mount_Head_Panda {background-position: -420 0; width: 105px; height: 123px} -Mount_Body_Panda {background-position: -525 0; width: 105px; height: 123px} -Mount_Head_Tiger {background-position: -630 0; width: 105px; height: 123px} -Mount_Body_Tiger {background-position: -735 0; width: 105px; height: 123px} -Mount_Head_Bear {background-position: -840 0; width: 105px; height: 123px} -Mount_Body_Bear {background-position: -945 0; width: 105px; height: 123px} \ No newline at end of file +.Mount_Head_Lion, .Mount_Body_Lion, .Mount_Head_PolarBear, .Mount_Body_PolarBear, .Mount_Head_Panda, .Mount_Body_Panda, .Mount_Head_Tiger, .Mount_Body_Tiger, .Mount_Head_Bear, .Mount_Body_Bear, .Mount_Head_EtherealLion, .Mount_Body_EtherealLion {background: url(Mount-SpriteSheet.png) no-repeat} +.Mount_Head_Lion {background-position: 0 0; width: 105px; height: 123px} +.Mount_Body_Lion {background-position: -105 0; width: 105px; height: 123px} +.Mount_Head_PolarBear {background-position: -210 0; width: 105px; height: 123px} +.Mount_Body_PolarBear {background-position: -315 0; width: 105px; height: 123px} +.Mount_Head_Panda {background-position: -420 0; width: 105px; height: 123px} +.Mount_Body_Panda {background-position: -525 0; width: 105px; height: 123px} +.Mount_Head_Tiger {background-position: -630 0; width: 105px; height: 123px} +.Mount_Body_Tiger {background-position: -735 0; width: 105px; height: 123px} +.Mount_Head_Bear {background-position: -840 0; width: 105px; height: 123px} +.Mount_Body_Bear {background-position: -945 0; width: 105px; height: 123px} +.Mount_Head_EtherealLion {background-position: -1050 0; width: 105px; height: 123px} +.Mount_Body_EtherealLion {background-position: -1155 0; width: 105px; height: 123px} From ca66c658d7ccefff7791b142756ba75f4e92019f Mon Sep 17 00:00:00 2001 From: Shane Lister Date: Tue, 26 Mar 2013 22:52:45 -0700 Subject: [PATCH 15/16] Update PetEggs.css Fixed flying pig and fox positions since they seemed to be reversed. Added positions for new hatching potion items. --- public/img/sprites/PetEggs.css | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/public/img/sprites/PetEggs.css b/public/img/sprites/PetEggs.css index 896a6da46d..818752b301 100644 --- a/public/img/sprites/PetEggs.css +++ b/public/img/sprites/PetEggs.css @@ -1,11 +1,17 @@ -.Pet_Egg_Wolf, .Pet_Egg_TigerCub, .Pet_Egg_PolarBear, .Pet_Egg_PandaCub, .Pet_Egg_LionCub, .Pet_Egg_FlyingPig, .Pet_Egg_Dragon, .Pet_Egg_Cactus, .Pet_Egg_BearCub, .Pet_Egg_Fox {background: url("/img/sprites/Egg_Sprite_Sheet.png") no-repeat} +.Pet_Egg_Wolf, .Pet_Egg_TigerCub, .Pet_Egg_PolarBear, .Pet_Egg_PandaCub, .Pet_Egg_LionCub, .Pet_Egg_Fox, .Pet_Egg_FlyingPig, .Pet_Egg_Dragon, .Pet_Egg_Cactus, .Pet_Egg_BearCub, .Item_HatchingPotion_Basic, .Item_HatchingPotion_White, .Item_HatchingPotion_Desert, .Item_HatchingPotion_Red, .Item_HatchingPotion_Shade, .Item_HatchingPotion_Skeleton {background: url("/img/sprites/Egg_Sprite_Sheet.png") no-repeat} .Pet_Egg_Wolf {background-position: 0px 0px; width: 48px; height: 51px} .Pet_Egg_TigerCub {background-position: 0px -51px; width: 48px; height: 51px} .Pet_Egg_PolarBear {background-position: 0px -102px; width: 48px; height: 51px} .Pet_Egg_PandaCub {background-position: 0px -153px; width: 48px; height: 51px} .Pet_Egg_LionCub {background-position: 0px -204px; width: 48px; height: 51px} -.Pet_Egg_FlyingPig {background-position: 0px -255px; width: 48px; height: 51px} -.Pet_Egg_Fox {background-position: 0px -306px; width: 48px; height: 51px} +.Pet_Egg_Fox {background-position: 0px -255px; width: 48px; height: 51px} +.Pet_Egg_FlyingPig {background-position: 0px -306px; width: 48px; height: 51px} .Pet_Egg_Dragon {background-position: 0px -357px; width: 48px; height: 51px} .Pet_Egg_Cactus {background-position: 0px -408px; width: 48px; height: 51px} -.Pet_Egg_BearCub {background-position: 0px -459px; width: 48px; height: 51px} \ No newline at end of file +.Pet_Egg_BearCub {background-position: 0px -459px; width: 48px; height: 51px} +.Item_HatchingPotion_Basic {background-position: -48px -0px; width: 48px; height: 51px} +.Item_HatchingPotion_White {background-position: -48px -51px; width: 48px; height: 51px} +.Item_HatchingPotion_Desert {background-position: -48px -102px; width: 48px; height: 51px} +.Item_HatchingPotion_Red {background-position: -48px -153px; width: 48px; height: 51px} +.Item_HatchingPotion_Shade {background-position: -48px -204px; width: 48px; height: 51px} +.Item_HatchingPotion_Skeleton {background-position: -48px -255px; width: 48px; height: 51px} From 2cb5fed3fc12e3cf76c2f51f2744c4428d2cbfef Mon Sep 17 00:00:00 2001 From: Shane Lister Date: Tue, 26 Mar 2013 23:28:20 -0700 Subject: [PATCH 16/16] egg and mount image update --- public/img/sprites/Egg_Sprite_Sheet.png | Bin 3332 -> 5407 bytes public/img/sprites/Mount-SpriteSheet.png | Bin 6958 -> 8254 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/public/img/sprites/Egg_Sprite_Sheet.png b/public/img/sprites/Egg_Sprite_Sheet.png index 2258af3255b73868daa0c54ca86c5007b01ad7c5..38725e638c9d2300cf8bb9121e21bada82743be7 100644 GIT binary patch literal 5407 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%0D=F}%a^=e!o{=t@~ zIICKq$wuP4$)Fxxwk?FBk|X|`bkHFETYP!o zqx0ditTW5++~h~?$S91lI|QdLV^7mhSnsZAKgTYvSgGkCsg z0Kf^SS86rbm?a#JP^muiqRi$#eWs+dwA$)(p<3Bmd$D5))_nPp3lo(y0O`6DVAHZ9 z?RD5*7R~S4_`Cs`s6f;p@x`G)Nwn*t3cXpat_3`!oBsxWd1a%h3Kl$Z=H_V>JY|+f zyw+3E{yX#G(-GVNB)YL}Nf8EHbo8(rFj+j>R&hLur>;Hpm_@DJXgKG;&UeLXnUigp zXPxxxIDjJr9DYqqkC5F6({f?w6aN{;I1~@d3h%3Tf7|o9b0qfsoE&aa;fjuJXWCaE zH(yLTH`jCUkgQsKltOat$^^`5=?vES#&*&PNRcDCd&9)5qS3wQj^ zY^j}P+;R{@&>0f$;+J=saPEht5y_h^z>QZyuQ~k^SK1x z@$U=qC<8vqdJ1H{RI*+{I#9JU!(z==etFI>LjsGyt0rabIwA%wNcS=r@zeV>XK#Dmc}m@rM(&jIi9$iDu}TK_p#W4#howU|42%(*_kdf-eO2dS*R-d2%-F6jswt?R9!DcK18=%3io>R& zXv6`?*kH&^5PM0-x|`Z`Dl!!978=%FAu2c4$vpv^m{?8n*?K_Rmc-*Q>@Kf>wMwA9q;^H2bCmk8Xpj{R94*DFrAy7`=!R*^X#jaAyAeS5sff)`vLH_V6e&orHDqhZeE#pYmLS+Fnjz?P&>VA>|i z$F#(~W7022%1{6F!9f~(o?m9CTqfKAA^vBCvLoyB8}r@zh%;ceP>7H~O9zlWwz;>C ztt#?&7xT-70>OTdHr8&Z$PQ&n^3*i5sqCn|d_YJfib}sbyqfRVc~9p+cd$ic%v*6? z01`Tk0#9e>8p+0Y7We%YR`Q7uH34#=aJLDPvi{An0Qs`o8zp|!2nGsNupkO}XB$3} zU=+NhC|^ykenq+i&j>{E!vQ8rlhfc7r~E{1GV)=5uCzxp*iW^aCDV%qUiq3egGY$w zU|I0s!ZsTg@P+#NB7E^ufjAd8AOe8)3M@>-)FP*u_bIdF1PBaJR*cSS$~~`YL{&>+ zqLZ@XBT#eXi*q4ocFO^ZKv)2de11RsL=Nwl@@%y7EK7>`A^`&DgCpoO)ZOgU5k`_K z)L|w#<*RhOGH3st0f&Is*Xex&cP#tw?bQXlyl$sJ;~|c;t+d%`$L_2uXG7;Y-qf0b zhjT1CGUhVpEYnQT1ZHx)7JNkBgTdTTtO`NmDifXYqfzO4+s`5q)2-W0=o3jY;;K|N zF@1X$QG&F!@O-m`d}w#RnJ_!LMSs6Eb}I-Krtm+VB@{4$0es*FV8B!|;3ZE|p_6&X zmkd1q#Zc$zbXnfekzF@2AxFv~Z*8D_aIaT4ZL%+O8Ynkfjk>r#Uqv@bnGxu%fV~wU z*q;uNi+g;h)*!Ees!V0n|5bF(SV`|jB$$X?L&Bi?mEG#i*B`y|@pu=eGP!%IV5b(SH?B5N1BlcG&8mw_q*?|gBNpvSV@^bu(g z(Vmva}N%`5=#_ze_)u7*MB>Uwqe)3e#T&r(> zAbx8(FfGc&19ZVBUq<-kC#+!xhl!>#zRf2r9Fqg95ug-5C=-NNshYw}_KGVT?Ew$7 zam#EOk1#*5h@b#$F`T!f7|Z|)fZ(kwK9ao}KSm3Gb?ckA&E6y)&)We;`>nuQ$6CT_ zPy+Gk_CS*an>O#!6O&+&-`!Edx9lqcHlv<_`#1YxDO>S8%_SphX z6%#wb^f)wOU|!we1lOrx250JS)SQNnQ^7G%8C$R5!a4?g?laAB_cAV$Z z&az2Tfo6JQ?^oK;+r&GSwM(Z?Iq=(%I28uQ-6Tn*BJi;4;P}sC@}ao08d4Eyu}8b!Ha{hCjs-fWILuthPGe>ab@bODRP%!mK|mG` z)|N@Py3Y?5zkjL~A*p4^3SJ(*#rK@0BM?DA+C2Gay1(Qp@QWuvIAYI=$CAHqJy Ag#Z8m literal 3332 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 diff --git a/public/img/sprites/Mount-SpriteSheet.png b/public/img/sprites/Mount-SpriteSheet.png index 4b025ef8990fc6d4774bd1b68bbd88ac44299930..36531b7b5034fe0a4aac39acaf1538995091210f 100644 GIT binary patch literal 8254 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 literal 6958 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 B&IJGf