Thursday, February 19, 2015

2014: The Year Video Games Broke My Heart Part 2 - Destiny

Destiny: Be Mediocore

In 2014: The Year Video Games Broke My Heart Part 1 I detailed how the quality deficit in Halo: The Master Chief Collection needs to lead to a change in behavior: no more pre-orders and no more day 1 purchases.

In 2014: The Year Video Games Broke My Heart Part 2 - Game Review Sites Strike Back! shows how a couple game review sites hopefully lead the charge to reviewing the product and experience retail game buyers have before rating a game, which should act as a deterrent to shipping shoddy products to retail.

But flat out broken games weren’t the only huge disappointment in 2014. The most anticipated & hyped game of 2014, Bungie’s Destiny, wasn’t even close to living up to expectations.

What went wrong with Destiny? Destiny is like the best C+ shooter you’ve ever seen. First, here’s what went right:

Before I unload the complaints, I have to tell you dear reader that at the time of this writing I’ve played Destiny for 3 days, 11 hours, 35 minutes! That’s just the shipping game, I also poured a bunch of undocumented hours into the beta. I’m not even a hardcore player, there are tons of people with hundreds of hours played in this game!

What could be so wrong with a game that millions of gamers and I around the world have spent so much time in? A game profitable on day 1? It’s complicated, but even Destiny’s most ardent fans (largely) agree on this:

  • A story that barely makes any sense in game
  • A ton of story shunted off into something called a Grimoire, which is a collection of "cards” to read on a website or app.
  • Laughably bad dialog from a lot of the in-game voice acting (e.g. "I don’t have time to explain what I don’t have time to explain")
  • A bewildering number of currencies and materials (glimmer, vanguard marks, crucible marks, motes of light, strange coins, black wax idols, ascendent shards, ascendent energy, exotic shards, I might have missed something) 
  • A bewildering number of factions to grind reputation for (Vanguard, Crucible, Dead Orbit, New Monarchy, Future War Cult, Iron Banner, Queen, Eris Morn, Cryptarch)
  • Factions (New Monarchy, Dead Orbit, Future War Cult) with hardly any back story or purpose, they’re just vendors of slightly different versions of weapons and armor
  • No Looking For Group tools in game for the toughest challenges, it’s all manual.
  • Notice I didn’t say Matchmaking, which is in the game, but not for the hardest content, and Bungie has “no plans” to do so. (Thankfully , Weekly Strikes Will Soon Be Matchmade).

And this is just for starters. I mean there are so many things wrong, incomprehensibly nonsensical, it truly boggles the mind. Players have spent tons of time on the Bungie community forums documenting this and much, much more…the threads live for a while, then disappear either intentionally or they lose all heat and get auto-scrubbed.

This is a great look at why the game was such a letdown at launch and largely still to this day:

 

Yet Million Keep Playing…or Are We?

For all the complaints, a lot of people are hooked, digging deep to rationalize their addiction. For me the continued playtime is twofold. I’ve already paid for more content then I’ve received and I remain hopeful Bungie can pull this thing out. What do I mean? I bought the $90 Digital Guardian Edition, which included The Dark Below and House of Wolves expansions. The Dark Below was not an improvement, but more of the same. Still I enjoyed some of the changes, and the missions, while still not making a ton of sense, were decent.

The big hook though is winning that sweet loot. Chasing the carrot (even while there aren’t enough), pulling the slot machine handle one more time, or this time getting the winning lottery ticket. What do I mean? Every reward in the game is handed out at random. Materials, armor, and weapons. There are few guaranteed paths to acquiring everything, and the ones that do exist (Exotic Weapon Bounties) are extremely time consuming. The tantalizing possibility of winning by chance (not earning) loot is the hook that keeps people doing the same repetitive tasks over and over again. Playing the same mission, strike or raid (in ascending order of time & difficulty and thus possible payout) is no different from going to a casino for hours and hunkering down with a bucket of coins and pulling the slot machine handle or tapping spin over and over again.

This is perhaps the biggest disappointment of all. It feels like Bungie went full dark side, embracing every dark pattern used first by the gambling industry and increasingly the video game industry to keep us playing, and playing, and playing to get the loot, to beat the monsters, to get the loot, to beat the monster, ad nauseam.

Yet with all those tricks in full use, hardcore players are hitting a wall while waiting for the The House of Wolves expansion, which is coming out later than many expected. I’m not hardcore enough, I haven’t had enough time, to exhaust the raid content because without matchmatching or in game looking for group (good for you if you like DestinyLFG.net), it’s often too much work for me to put a raid group together. Even with the great DadsOfDestiny clan on my friends list, the game doesn’t help people on your friends list figure out which activities you’d like to do, it’s all website forums or Xbox One (for me) messages.

Yes the addiction is strong, abetted by the promise I can play my characters for a long time, so how could I have avoided this love/hate relationship? Don’t believe the hype.

Call to Action

It happens to all of us from time to time, the hype gets to us, we believe, and spend money before a product is shipped. But with games increasingly the prescription is don’t fork over your money ahead of the game actually shipping (Kickstarter included). Don’t buy expansions before you’ve played the game, you’ll save yourself money, and this stuff is often on sale if the game is good. Wait for reviews of even the most hyped games before plunking down your own sweet loot.

I would not be playing Destiny if I hadn’t already paid $90 for the full game. 

Tuesday, February 17, 2015

How To Delete Conversations in Messages OS X Without a Confirmation Prompt

I get a lot of iMessages and SMSes that are informational, like transit alerts, that I just want to delete after reading them.

With the Continuity features of OS X 10.10 Yosemite and iOS 8, I end up deleting these conversations on all the devices I can get them, which is not really what you want. 

In Messages on OS X, you delete conversations by clicking the little x next to the conversation or typing ⌘⌫ (command-delete). Then you get this prompt:

OS X Messages Delete Prompt

While it would be great if Apple automatically deleted them on all devices when deleted on one device, we’re not there yet, but you can eliminate the prompt!

Just option-click the x next to the conversation or type ⌘⌥⌫ (command-option-delete)

I’m still surprised and delighted when something I want to be able to do is tucked behind an ⌥ option key press. ⌥ option click all the things!

Wednesday, February 11, 2015

2014: The Year Video Games Broke My Heart Part 2 - Game Review Sites Strike Back!

In 2014: The Year Video Games Broke My Heart Part 1 I detailed how the quality deficit in Halo: The Master Chief Collection needs to lead to a change in behavior: no more pre-orders and no more day 1 purchases.

In the last few days, two game review sites demonstrated real ethics in game journalism (more on Gamergate’s fake kind later). They've changed review practices partly or wholly in response to game quality levels and the previously controlled conditions reviews were conducted under.

Polygon has adopted a system called Provisional Reviews, which I think is fantastic. In the Halo Master Chief Collection case, this would have meant that as soon as launch day and beyond issues became apparent, Halo MCC would not have been issued a high final of 95 vended out to Metacritic (cmd-F/ctrl-F for Polygon):

Screen Shot 2015 02 10 at 6 27 00 PM

 

 

The update on Polygon’s Halo MCC review 5 days after launch from an 8 from 9.5 didn’t affect Metacritic at all. With Provisional Reviews, Metacritic would have most likely got the low quality adjusted review score. This will directly affect game studio and publisher bonus structures since studios are often awarded for 9+ Metacritic scoring game.

Eurogamer.net has dropped review scores entirely and will not submit to Metacritic. Most interestingly, they are taking steps to guarantee they are reviewing paying retail customer experiences as well:

We are also changing (or firming up) other areas of our reviews policy, with the intention of ensuring that we always review the same experience that you get when you buy a game. This means that we will only review from final retail versions and online games will be reviewed after they've launched.

Eurogamer will issue first impressions of games on launch day, but also not use their new system to issue a near immutable final recommendation until they can asses the game under real world conditions. Fantastic!

Hopefully other game review sites follow these two sites lead in:

  • Don’t issue final scores based on debug build games, only retail copies
  • Don’t issue final scores based on controlled network conditions for multiplayer heavy titles, only on 
  • Don’t issue final scores to Metacritic (if at all) until a games total experience can be judged at launch under real work usage
If enough review sites adopt these kinds of policies, then hopefully they will serve as a deterrent to game studios and publishers shipping broken products to retail.

Part 3 Coming Soon: Destiny - Be Mediocre

Friday, January 30, 2015

2014: The Year Video Games Broke My Heart Part 1 - Halo: The Master Chief Collection

Halo: The Master Chief Collection for Xbox One was the final straw, the game that broke my heart, and confirmed 2014 as an extremely disappointing year in video games. Halo was the series I fell in love with way back when the Xbox Classic came out. I pre-orderded Halo: The Master Chief Collection as soon as it was announced. I fully expected the same high quality game that 343 Industries, the studio now in charge of all things Halo for Microsoft, delivered with Halo 4. But was I and every other sucker that bought this game so wrong. What we got on release day was a beta, no other way to describe it. Fatally, multiplayer matchmaking just flat out didn’t work.

I’m done paying to be a beta tester and I’m not pre-ordering anymore.

Just Keep Patching

Halo: MCC was released on November 11, 2014. Matchmaking was completely broken. I wasn’t able to play a single multiplayer match until December 7, 2014, only just barely. Single player was more playable, but the forums and patch notes where filled with people encountering numerous bugs. Just look at the number of patches released and apology blog posts:

  1. November 14, 2014
  2. November 20, 2014
  3. November 24, 2014 - Apology Post from 343 Studio Head Bonnie Ross
  4. November 26, 2014
  5. December 3, 2014
  6. December 7, 2014 - Multiplayer matchmatching sort of works
  7. December 15, 2014 - Multiplayer is usable
  8. December 19, 2014 - Reparations as Thank Yous from 343 Studio Head Bonnie Ross & FAQ
  9. December 22, 2014
  10. January 19, 2015

8 patches and 2 apologies, one with “don’t sue us” make goods:

  • 1 free month of Xbox Live Gold (which I have received)
  • Halo: ODST Ported to Xbox One, upgraded to HD, and added to Halo: MCC for “free” sometime in 2015

The New Normal?

Polygon called attention to the issue of broken games that ship in the opinion piece Broken video games are the new norm, what developers need to do to fix that.

From the article, here’s the money quote on games that shipped significantly broken:

That includes games like Halo: The Master Chief CollectionDriveClub and Dragon Age: Inquisition. Even games that launched relatively smoothly, like DestinyGrand Theft Auto 5 and Call of Duty: Advanced Warfare, ended up with early patches to fix problems big and small.

I’d add to this list Alien: Isolation whose forums where loaded with complaints of game breaking bugs and required a number of large patches.

In October 2013, Batman: Arkham Origins had so many game breaking bugs I couldn’t play the game without risking losing all progress. Those weren’t addressed until early 2014, and the studio publicly said it wouldn’t produce any more patches to focus on DLC! See the Technical Issues section of its Wikipedia article.

With Arkham Origins, shipping a really broken game seemed like an outlier. But the quality problems of 2014 makes it pretty clear that game studios and publishers have decided there’s no penalty for shipping broken games.

They’ll already know to some degree how much they are going to get paid through pre-orders, they know a large part of the audience for AAA is going to buy on opening day, and they control the time and conditions under which sites get to review the game.

Halo: The Master Chief Collection was initially reviewed by Polygon as a 9.5, which I’d say is what most people expected based on the package. It wasn’t until 5 days later that the game was re-reviewed to an 8.0, which I’d say is overly generous because of this quote:

The Master Chief Collection's campaign element appears to be fully functional, so players aren't totally locked out of the experience the game is offering.

In practice, there were so many things wrong with the various campaigns, many players would be wasting time to play the game at that point. Checkpoints worked, except when they didn’t, losing players progress.

Screen Shot 2015 01 23 at 8 20 53 AM

None of this means Microsoft & 343 didn’t want to ship a higher quality game, but with Day 1 & beyond patches accepted by players with complaints but no change in buying behavior, obviously the decision to ship was made and to sort out the bugs later.

The only way shipping wildly broken games doesn’t become the new normal: you have to hit them in the wallet!

No more pre-orders. No more Day 1 purchases. If enough gamers change, developers and their publishers will ship higher quality games on Day 1.

Ironic that Halo: MCC was looked at by many to embarrass Bungie with largely high quality port of their previous defining work when Destiny, the most hyped game of 2014, shipped to resounding bafflement that one of the best developers in the business could make a game so…average.

Next: Game Review Sites Strike Back!

Thursday, January 29, 2015

Apple Header Humor: I/O error (bummers)

In iOS 8.1 SDK’s Security.Framework SecBase.h, the constant errSecIO has this comment:

/*I/O error (bummers)*/

This amused me because an I/O error is always a bummer.

Apple Bug Reporting Tip: Always Capture a Sysdiagnose

While testing the 10.10.2 beta, I experienced a weird condition in Finder where commands in other apps like Show in Finder or Reveal in Finder would be ignored without error! I filed a bug report with Apple, and Developer Relations send back that it needed more information with this request:

Is this reproducible? If so, next time this happens, please take a sysdiagnose while the issue is happening. As soon as you experience the issue, press cntrl-opt-shift-cmd-period (⇧⌃⌘⌥-period)  (preferably with the finder in the foreground) and a sysdiagnose will be taken immediately (it can take a minute or two to complete). The sysdiagnose file should be revealed in a finder window. If you have to reboot, navigate to /private/var/tmp

That’s mostly boilerplate, but notice the preferably with finder in the foreground is specific to my issues.

I haven’t been able to reproduce this issue on 10.10.2 final yet, but the point is:

Always capture a sysdiagnose when weird stuff is happening in OS X that you want to report a bug on.

Thursday, January 08, 2015

Apple You Might Catch More OS X bugs With Honey Than Vinegar

I just installed the 10.10.2 beta and was excited to see Feedback Assistant added to my Dock. I quickly attempted to login with my Apple ID only to see this:

Screen Shot 2015 01 08 at 9 37 30 AM

 

I’m not sure what politics are likely involved in Apple Developers not being able to use this seemingly handy tool, but I’m sure the number of bugs reported from outside Apple would increase if an easy to use app was available to all.

Wednesday, December 31, 2014

Keep Calm and Email On: Using OS X Mail to Send Through iCloud Uses TLS Even Though UI Says No

I was looking through the Account Info screen of OS X 10.10 Yosemite’s Mail.app and the red alert �� sounded in my head because sending mail using the iCloud SMTP server my account is configured for didn’t appear to be using SSL:

Screen Shot 2014 12 31 at 12 27 05 PM

I immediately asked AppleCare to call me. I didn’t want to waste any time figuring this out, I wanted to know how to fix it. As soon as I put my number in the web form, I got a call. Then I got connected immediately to a person. Apple has this part of the customer service experience nailed.

The guys I talked to at AppleCare were great. The first guy I talked didn’t waste my time with scripts. As soon as I described my issue he knew what I was talking about & had me try resetting my account in System Preferences Internet Accounts. When that didn’t work, he escalated to a guy named “Chris”. 

While on hold, I did some digging of my own. I found the iCloud SMTP server config in ~/Library/Preferences/MobileMeAccounts.plist. Here’s the section on the iCloud SMTP server:

 <key>smtpHostname</key>
 <string>p03-smtp.mail.me.com</string>
 <key>smtpPort</key>
 <integer>587</integer>
 <key>smtpRequiresSSL</key>
 <true/>

Looks like SSL is required, but the UI isn’t showing it. What’s going on? I turned on logging in Mail’s Connection Doctor and captured this log while sending a test mail out (bolds mine):

INITIATING CONNECTION Dec 31 11:39:39.264 host:p03-smtp.mail.me.com -- port:587 -- socket:0x0 -- thread:0x618000a69b40
CONNECTED Dec 31 11:39:39.375 [kCFStreamSocketSecurityLevelNone] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
READ Dec 31 11:39:39.553 [kCFStreamSocketSecurityLevelNone] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
220 nk11p03mm-asmtp002.mac.com -- Server ESMTP (Oracle Communications Messaging Server 7.0.5.33.0 64bit (built Aug 27 2014))
WROTE Dec 31 11:39:39.562 [kCFStreamSocketSecurityLevelNone] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
EHLO [10.0.1.6]
READ Dec 31 11:39:39.653 [kCFStreamSocketSecurityLevelNone] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
250-nk11p03mm-asmtp002.mac.com
250-8BITMIME
250-PIPELINING
250-CHUNKING
250-DSN
250-ENHANCEDSTATUSCODES
250-EXPN
250-HELP
250-XADR
250-XSTA
250-XCIR
250-XGEN
250-XLOOP 1EAF97A4D9D382EFF77592D25EA741DA
250-STARTTLS
250-NO-SOLICITING
250 SIZE 28311552
WROTE Dec 31 11:39:39.653 [kCFStreamSocketSecurityLevelNone] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
STARTTLS
READ Dec 31 11:39:39.749 [kCFStreamSocketSecurityLevelNone] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
220 2.5.0 Go ahead with TLS negotiation.
WROTE Dec 31 11:39:40.088 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
EHLO [10.0.1.6]
READ Dec 31 11:39:40.187 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
250-nk11p03mm-asmtp002.mac.com
250-8BITMIME
250-PIPELINING
250-CHUNKING
250-DSN
250-ENHANCEDSTATUSCODES
250-EXPN
250-HELP
250-XADR
250-XSTA
250-XCIR
250-XGEN
250-XLOOP 1EAF97A4D9D382EFF77592D25EA741DA
250-AUTH PLAIN LOGIN ATOKEN
250-AUTH=LOGIN PLAIN
250-NO-SOLICITING
250 SIZE 28311552
WROTE Dec 31 11:39:40.188 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
AUTH ATOKEN (*** 80 bytes hidden ***)
READ Dec 31 11:39:40.291 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
235 2.7.0 ATOKEN authentication successful.
WROTE Dec 31 11:39:40.292 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
MAIL FROM:<redacted>
READ Dec 31 11:39:40.399 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
250 2.5.0 Address Ok.
WROTE Dec 31 11:39:40.399 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
RCPT TO:<redacted>
READ Dec 31 11:39:40.744 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
250 2.1.5 redacted OK.
WROTE Dec 31 11:39:40.744 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
DATA
READ Dec 31 11:39:40.833 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
354 Enter mail, end with a single ".".
WROTE Dec 31 11:39:40.833 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
From: Dave Murdock <redacted>
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
Subject: Test Mail
Message-Id: <19F12A22-0D05-4B13-B96F-3F3036C368ED@icloud.com>
Date: Wed, 31 Dec 2014 11:39:39 -0500
To: Dave Murdock <redacted>
Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\))
X-Mailer: Apple Mail (2.1993)
.
READ Dec 31 11:39:41.042 [kCFStreamSocketSecurityLevelTLSv1_0] -- host:p03-smtp.mail.me.com -- port:587 -- socket:0x6100004a5460 -- thread:0x618000a69b40
250 2.5.0 Ok, envelope id 0NHG002NOGY4N150@nk11p03mm-asmtp002.mac.com

Mail.app is negotiating for TLS using STARTTLS. Technically, the UI is correct, SSL/TLS is not guaranteed but negotiated. Mail data wasn’t exchanged until TLS had been negotiated, so everything is fine, except the UI is misleading.

I thought SMTPS(ecure) required a dedicated port, but TLS is expected to be negotiated over port 587 (or another if in use). Wikipedia has a good summary.

“Chris” at AppleCare confirmed what was going on and called the account summary screen a “display” bug, which he would file with engineering.

Just for fun, we tried adding the iCloud SMTP server defaulting to, not negotiated, TLS, but it didn’t work. Turns out with 2 factor authentication, you can’t add the iCloud SMTP server directly, it constantly reports that it can’t authenticate.

Tuesday, December 30, 2014

Productivity Booster: Drag Files from OS X Finder to Attachment Buttons in Safari

I have no idea how long this has existed, but I just discovered you can drag a file* from Finder on OS X onto a file attachment button in Safari and It Just Works™!

This is going to save me serious time on  Bug Reporter:

Screen Shot 2014 12 30 at 11 34 17 AM

* Does not work with multiple files

Saturday, July 12, 2014

Amazon iOS App Showing Android App in Search Results

Totally feels like a passive aggressive dick move and from a UX standpoint, obviously not what's wanted.