Reinstalling Windows 10: Fighting Terrible Defaults

29 March 2016

I would never expect reinstalling my operating system to be a trivial affair.  At a minimum, you’re reinstalling your favorite programs, recovering their settings, and getting files back in place.  Reinstalling on a UNIX system only requires the first one – settings and files can stay where they were at the start of the reinstall, in your home directory.  Windows takes the opposite tact – requiring all of those steps, and adding on the laborious process of changing terrible OS defaults to gain some semblance of sanity and user-friendliness.

While I’m halfway here to bitch about Microsoft’s awful user experience, I’m mainly documenting Win 10 reinstall steps here so I can reproduce them when maintaining my family’s PCs.

  • During Installation, be sure to select Customize and turn off everything.  There are a few things in there I wouldn’t necessarily mind (like crash reports), but they’re mixed in with enough offensively bad defaults that I’m happy to keep it simple and turn them all off.
2

From fix10.isleaked.com

  • Disable Windows’ Invasive Search.  This will restore the basic functionality of searching from the task bar to search your local PC, instead of functioning as a web browser search.  Click in the Search bar at the bottom left, type Search Settings, and click Cortana & Search Settings.  Wait for the obnoxious Cortana animation to delay your task, then click “Not Interested“, followed by “I’m Sure“.
  • Now repeat this, again typing in Search Settings, and again clicking Cortana & Search Settings.  This time it will actually expose the settings to you

Win10-WebSearch

  • Finally, right click the task bar and go to Search and select Hidden.  This will remove the large Search field from the task bar.  If you want to search you can still hit the Windows key and start typing to run Windows applications.

Win10-HideSearch

  • Show File Extensions.  This is one of those very fundamental security precautions that Windows has screwed up since Windows 95 in a boneheaded attempt to be “more like Macs”.  Hit Win+E to open File Explorer.  Select View, then check File Name Extensions.  While you’re in there, go ahead and select Details as the default layout.

Win10-ShowExtensions

  • Uninstall Garbage.  Go into Settings (Win key + type Settings), System, select Apps & Features, and uninstall everything you can from this list.  3D Builder, Candy Crush, Get Office, Get Skype, Get Started, Messaging & Skype, Soliatire, Money, Phone Companion (??), Sports, Sway, Twitter.  Take note how many pre-installed garbage apps you can’t uninstall here.
  • Remove Windows Xbox DVR.  I made a post specifically about this when it spontaneously got turned on by an update.  It’s a special kind of UX failure to turn on a cumbersome feature for all users which explicitly teases you when running games, but leaves no hints at what it is aside from vague Windows 10 theming.  To stop Windows from attempting to auto-record your games all the time, follow my directions from this post.
  • Show Taskbar Icons.  Windows defaults to hiding all of the garbage running in the background such as Microsoft’s first-party cloud drive.  These background apps should typically be annihilated, not swept under the rug.  Go to Settings, Notifications & actions, Select Which Icons Appears On The Taskbar (how’s that for a mouthful), and toggle on Always Show All Icons In The Notification Area.
  • Remove OneDrive.  Right click the OneDrive icon that is now exposed in the taskbar, and go to Settings.  Uncheck “Start OneDrive automatically when I sign in to Windows“.  Then right click the icon again and select Exit, and confirm with the “No really when I selected Exit I was serious” button to finally close this unwanted app you would never use anyway.

Win10-OneDrive

  • Disable Snap.  I find Snap to be a constant annoyance, auto-maximizing apps if I ever try to move them around the screen as if Windows is a multi-tasking operating system.  From the same Settings, System menu, select Multitasking next and toggle Snap to off.
  • Disable Autocorrect.  I’ve posted before about how asinine autocorrect is.  Unsurprisingly, this is now on by default at the OS level  Back out to the main Settings screen, then go into Devices, Typing, and turn off the Spelling options.
  • Fix Start Menu.  Next go into Settings, Personalization, Start and disable everything.  Recently Used and Most-Used app lists are a UX nightmare that trains users to find apps in a randomly rotating shortcut list as a hacked fix for users being unable to find their apps through a fast, stable path in the Start Menu.

Win10-StartMenu

  • Disable Background Apps.  I can’t imagine any reason I would want any of these Windows apps that I never use to run in the background, so I’d hazard it’s safe to turn them off.  Go to Settings, Privacy, Background apps and toggle off everything.  Poke around the other Privacy settings while you’re in here – I turned off a lot of other app functionality like Email and Call History that I will never use at the OS-level in Windows anyway.

Win10-BackgroundApps

  • Disable Windows Update.  This is a particularly sore point.  Windows offers no options for user-friendly OS updates, which leaves fully disabling Windows Updates as the only option.  Without doing this, Windows will restart your computer at random times without your consent, throwing away any unsaved work or even rebooting while you’re currently using the computer.  Go to Settings, Update & Security, Advanced Options.  Change the dropdown to Notify to schedule restart.  This is unfortunately only a small improvement, but I’ll come back after a bit more research to update on the options available for Windows 10 Home Edition.
  • More Windows Explorer Defaults.  As expected, I’m back with more!  Several changes I missed earlier are needed to make Explorer useful.  Open an Explorer window (Win+E), click the View tab at top, then select Options, then Change folder and search options (yes, this is a dropdown with a single item in it).  Change Open File Explorer to: to This PC, and uncheck the Recently and Frequently checkboxes towards the bottom.

Win10-ExplorerSettings

  • Removing Quick Access from Explorer.  Go to Quick Access at the top left of an Explorer window, and unpin all of the items remaining in it.  Now that Recently and Frequently options are unchecked too, this effectively removes Quick Access and its redundant and volatile misdirection.  Instead you will see a stable set of folder listings under This PC by default, which includes staples like C:\ and mounted network drives that are otherwise difficult to find in Explorer by default.

Win10-UnpinQuickAccess

  • Remove OneDrive from Explorer.  This is disgusting, but no surprise at this point: to remove the unwanted OneDrive item from being the first listing in Explorer, you have to hack the registry.  See this HowToGeek article for more details and a quick registry hack download.  Or you can just toggle good ol’ HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6\System.IsPinnedToNameSpaceTree to 0x0000 in RegEdit.  Don’t forget to toggle HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6\System.IsPinnedToNameSpaceTree as well – both need to be 0 on 64-bit Windows it seems.

 

I’ll keep this updated as I finish this reinstall.  I’d be shocked if I caught everything on this first pass.  As you can tell by the list above, this is already an exhausting number of switches to flip in the course of a routine OS installation.  Are sane defaults really too much to ask for?

 

Bonus Installation Steps

These are the bonus fun steps from my latest reinstall that pushed me far enough overboard to write this post.

  • Reinstall #2: I was unable to boot successfully after my first installation.  I’m still not 100% sure what caused this.  The repair option was unable to fix it, but I suspect it had to do with me removing an unused hard drive during installation.  I removed the extra drive to ensure it didn’t attempt to boot from the old hard drive.  Normally you’d expect stable boot drive identifiers, but I may recall that Windows numbers boot drives in a way that changes depending on how many are plugged in.  I would still expect the Repair Boot option to be able to fix this, but no luck – I had to do a full reinstall to get past this.
  • Reinstall #3: After booting into Win10 successfully, the screen spontaneously went black.  I rebooted several times and tried several repair options.  After a Reset, which turns out to be a full reinstall, I still had no image.  Took a wild guess that the DVI cable might be loose enough where it lost picture on higher resolutions.  When I went to tighten the DVI cable I decided to unplug my secondary HDMI cable, and that was it.  Windows booted normally, then installed a graphics driver change in a background process, which changed the graphics output device to exclude my primary monitor.  Duplicate Display would make sense for a default.  Extend Display would make sense for a default.  Downgrading from “works” to “show black screen” on any display is a horrible regression of functionality for a freshly installed PC.

 

Remove Windows Xbox DVR

06 February 2016

Another day, another unbelievable experience with Windows.  I went to play Dark Souls today from Steam, and noticed there was now a pop-up when it starts up mentioning some shortcut to Record Audio with Win-Alt-M.  The styling was clearly not Steam, and not something built into the game.  But the overlay and the reference to Recording assured me that some software was now running and taking up significant resources to interfere with my games.  No big surprise that this turned out to be Windows 10 itself.  Also no big surprise, if still infuriating, that it’s also nigh-impossible to stop this extreme intrusion.

First, turn off the ON BY DEFAULT Xbox DVR:

  1. Run the Xbox app (win, type “xbox”, it should appear in the list)
  2. Note that it wants you to Sign In before you can access the settings.  No joke, you have to be online and connect to a Microsoft account to turn off this intrusive OS-level behavior.  Instead, close out of the Xbox app.
  3. Following these instructions from Tom’s Hardware and Reddit, set the following registry settings to 0

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\GameDVR\AppCaptureEnabled

HKEY_CURRENT_USER\System\GameConfigStore\GameDVR_Enabled

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AllowGameDVR

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\GameDVR\AllowGameDVR

Uninstall the Xbox App

Now, to uninstall this unwanted and intrusive app.  Add/Remove programs, right?  Of course not, this is a hidden app you can’t remove without administrator Powershell voodoo.  Some references here on Reddit and on AskVG for more Powershell details.

  1. Hit windows key and type “Powershell” (don’t click it yet)
  2. Right click Windows Powershell and choose Run As Administrator
  3. Click OK through the UAC prompt
  4. Paste this in and hit enter:

get-appxpackage -allusers *xbox* | remove-appxpackage

You can ignore the failure to install a couple other xbox-related apps.  Hopefully…

Note that some sites claim if you don’t disable the DVR functionality first, it will continue to run even with the Xbox app uninstalled.  So be sure to login (!!!???) to this app to disable DVR before you uninstall the app.

Bonus: NVIDIA Network Streaming Service

While you’re at it, Nvidia makes an interesting comparison to Microsoft’s asinine shenanigans.  Nvidia also has DVR functionality, but sensibly leaves it Off by default until a user expresses enough interested to turn it on.  Unfortunately they did manage to screw up their Shield streaming in one way or another.  It’s now February 2016, and as of April 2015 (that’s 10 months) they claimed they were fixing this issue.  The network streaming service is on by default, and takes up 3-5% of your CPU all the time despite being completely useless to every user without a Shield device (aka: every user).

Here are a couple of references, but tl;dr you can disable this service in Windows Services and call it done.  While this is annoying it at least appears to be a bug rather than malicious, and a hell of a lot easier than the steps required to fix the broken-by-default Xbox app on Windows 10.

Updated 12/26/2016: Windows Anniversary Update appears to have turned all this crap back on again, and randomly changed which registry keys are needed to turn off the crippling GameDVR.  Happy Anniversary!

Chrome’s dns_probe_finished_bad_config & Dlink DIR-655

16 January 2016

After years using the DIR-655, our wifi stopped working AND a wired computer was also receiving DNS errors in chrome (dns_probe_finished_bad_config). The only change in the network config is that we had a power outage.

What tipped me off to the fix is the fact that another wired computer wasn’t having any issues. Looking at DNS settings, the broken computer was using the DIR-655 for DNS, while the working computer was hardcoded to the actual DNS server IP addresses. This implies that the DIR-655’s DNS server is broken, but IP traffic is functioning normally.

The benefits of using the router for DNS are minimal. Considering this outage as an example, it’s probably always more hassle than benefit. The router’s DNS can be disabled with a simple checkbox named “Enable DNS Relay”.  Uncheck this so that DNS Relay is disabled:

Disabling DNS server on the DIR-655

Found Under Setup => Network Settings

With DNS Relay unchecked, the router will send the configured DNS servers to the client machines.  You can still configure the router with your favorite DNS servers (eg. OpenDNS or Google’s 8.8.8.8/8.8.4.4) to have your clients circumvent bad ISP DNS servers – this just removes the DIR-655 DNS software from the mix.

Blocking Windows 10 Automatic Reboot for Updates

08 September 2015

Man VS Machine

Nothing peeves me more than computers automatically overriding their human operator.  It seems obvious that humans should be trusted over computers, right?  Computers making suggestions can be extremely helpful, but actually overriding the human’s input and automatically doing something potentially catastrophic with no confirmation?  Isn’t this against the Laws of Robotics or something?

Autocorrect

The most common example is automatic spelling correction, which has entire sites devoted to how fail it is.  Another one that annoys me is automatic URL completion in web browsers.  If you type in the address bar these days and hit enter, most browsers will randomly pick a matching item from your history and automatically visit that page – you have to hit backspace to delete the text it added to go to the URL you typed in.

These cases should ALWAYS require the user to click or tap the suggested autocorrection before having it applied.  This is an extremely minor effort on the users’ part, and a huge usability gain for the application.

At least every phone, web browser, and document editor let’s you easily turn off their “automatically change what the user typed into something they didn’t type” feature.  Well… “easily” may be up for debate, but at least it’s in the options, right?

Office Autocorrect Options

You may have to uncheck 37 checkboxes across 5 tabs to avoid having Office change the text you type, but at least you only have to do that once per computer and every time you reinstall Windows!

Windows Updates

One thing that I’m oddly not particularly aggravated by is Windows Updates.  I think it’s critical that Microsoft provide the option to permanently turn them off in some capacity, but nagging a user for not applying security updates is totally reasonable.  I’ve always been a faithful user of the “Download updates but let me choose to install them” option.  Whenever my computer is free and apps are closed I can choose to let Windows update.  I might still get “lucky” and require multiple reboots plus a major system malfunction, but at least I know it’s not at a critical time.

Windows 7 Update Options

Windows 7 Update Options

Windows 8

With Windows 8 and even more aggressively in Windows 10, Microsoft has again failed its users.  In Windows 8, instead of just nagging users to install updates, Windows would actually reboot the user’s PC automatically.  Not just at night, but even while they are using it.  I find it incredible that Microsoft made this decision.  Rebooting a users’ PC without prompting the user is extremely dangerous.  It discards unsaved work, exits realtime apps like calls or games, disconnects from VPNs, and has countless other disruptive consequences.

For me, Windows 8 rebooted the PC while I was in the middle of a game of League of Legends.

I don’t get a lot of time at my PC these days.  If I sit down once a week to play a game of LoL with four friends, the last thing I expect is for Microsoft to reboot my computer in the middle of it.  This ruined an hour of effort for myself AND nine others.  I nearly uninstalled Windows from my PC on the spot.

Fortunately I was able to find a deeply hidden registry setting to stop Windows 8 from automatically rebooting my PC:

  1. Run RegEdit
  2. Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU
  3. Create the DWORD NoAutoRebootWithLoggedOnUsers and set it to 1.

NoAutoRebootWithLoggedOnUsers

Windows 10

Windows 10 has received a lot of bad press about its automatic updates.  Apparently it’s pushing untested updates too fast, colliding driver updates with 3rd party vendors’ update apps, slamming users’ on metered connections with high data bills, and secretly using your upload speed for P2P distribution of updates.  There are many articles about all these problems, so no sense rehashing the same tips that are all over the internet.  Suffice to say that if websites are recommending that you permanently UNPLUG YOUR DESKTOP’S ETHERNET CABLE, then Microsoft has fucked up big time.

Microsoft almost managed to not continue automatically restarting users’ PC behind their backs.  In Windows 10 there is a “Schedule Restart” option in the Advanced settings for Windows Update.  But as you can see in the comments on this article, even that option still includes automatically restarting the computer a few hours later if the user isn’t around to see the notification.  Seriously Microsoft?  “Notify me to Schedule Restarts” means “Go ahead and throw away all my running apps and restart my computer without my input”?

My only hope is that the Windows 8 registry trick above will continue to work for Windows 10 to prevent automatic reboots.  One user posts it in the comments on this article, but I found no other references to this option for Windows 10 Automatic Updates.  I’ll update here once I figure out for sure if it works!

  • UPDATE: It works!  Both computers I applied this setting to have waited patiently for me to reboot them before installing updates.  I left Notepad open with some text in it just to be sure the computer didn’t sneak a reboot in, and it was still there.  Hurray for overly complicated backdoor measure to achieve extremely basic UX!

Rsync failing randomly: writefd_unbuffered failed to write: Broken pipe (32)

27 April 2015

My rsync backup script broke randomly after literally years without a problem.  I haven’t tinkered with the script OR my server for months, and suddenly it stopped working.  I went through a lot of voodoo trying to track down the cause with very little help.  All I really did is rule out a ton of problems:

  • My macbook pro was on a much older version (2.6.9) than my Rackspace server (3.0.9) so I updated so versions matched
  • Ran detailed debug logs on both client and server
  • Checked file it failed on for consistency – none
  • Timed the failures to see if there was any consistency – none
  • Tried different timeout/keepalive settings, no change

In all this debugging my first big hint was what caught someone else’s eye too on this rsync bug thread.  He took it a step further and to realizing the cause & a workaround.  Want to try guessing too?  Here is the symptom:

  • Checked the last *successful* file on the recipient vs. sender.  The recipient’s last file received was dozens or even hundreds of files ago in the sender’s log.

Seems pretty obvious in hindsight, it’s just the sort of thing you don’t expect rock solid software like rsync to have a problem with: the sender was sending data too fast for the receiver.  I’m still unclear on whose fault this is, but the rsync thread claims it’s out of their hands, so maybe it’s the linux network IO layer that’s failing?  The other group of people hitting this a lot is users rsyncing to USB sticks, another case where the recipient is much slower than the sender.

The fix was simple.  -bwlimit limits the bandwidth used, and immediately it works reliably again every time.  I’m going to keep upping it to try to get an idea where things break, but my last run at -bwlimit 10000 worked fine.

Next question: why did it stop working suddenly?  I upgraded my internet to AT&T Uverse.  I haven’t noticed it being slower than my old Time Warner, so maybe it sped up enough to increase the buffer required into breakage territory.

Hopefully this post is helpful to someone, as this one took me quite a bit of hunting!

Cygwin: ssh-add can’t find id_dsa

21 February 2012

I recently found myself in a position to try out Cygwin again, to get my hands on the unix tools I love on Windows 7.  So far I’ve been pleased with the experience, and will take cygwin over putty any day.  I did hit a couple bumps though, and one I couldn’t find an answer to online, so I wanted to throw my own answer up here in case someone else encounters it.

For reference, I’m using cygwin 3.0-1, and OpenSS _5.9p1.  My second issue appears to be a bug, so hopefully it will get fixed soon.

The first problem is getting ssh-agent running and working.  The copy-pasta below that is all over the internet worked for me.  Add to the bottom of your ~/.bash_profile:

SSHAGENT=/usr/bin/ssh-agent
SSHAGENTARGS=”-s”
if [ -z “$SSH_AUTH_SOCK” -a -x “$SSHAGENT” ]; then
eval `$SSHAGENT $SSHAGENTARGS`
trap “kill $SSH_AGENT_PID” 0
fi

The next problem I had was that `ssh-add` failed to find my ~/.ssh/id_dsa private key.  The man page states very explicitly that it should be looking there, but it wasn’t.  If I specified the key on the command line with ssh-add, it would add it successfully.  Permissions looked right, with 700 on ~/.ssh and 600 on ~/.ssh/id_dsa.  The command that helped me figure it out finally was:

$ ssh-add -vT servername.com

[a bunch of garbage followed by]

debug1: Next authentication method: publickey
debug1: Trying private key: /.ssh/id_rsa
debug1: Trying private key: /.ssh/id_dsa
debug1: key_parse_private_pem: PEM_read_PrivateKey failed

Those middle two lines show that rather than looking for ~/.ssh/id_dsa in my home directory, ssh-add is instead looking in the root of the file system for a .ssh/ directory.  Strange!  I used a simple hack to straighten it out:

ln -s /home/username/.ssh /

The symlink helps ssh-add find my private key without having to manually specify it every time.  This wouldn’t be a full solution on a true multiple-user system — but like I said, I’m on Windows.  ;)

Borderlands: As Fun And Trashy As A Junkyard

10 September 2011

Borderlands is a bit of an enigma.  I bought it on PC after a recommendation from friends without doing a lot of research beforehand.  I quickly found the game to be a fun and original take on the Diablo formula as an FPS with highly customizable weapons.  I also quickly found myself tripping over bugs and glaring issues, enough that it was hard not to fall flat on my face and ragequit the game for good.

What kept me going through the game enough to see the great underlying gameplay was to write down the many major glitches and failures I encountered.  Almost all of these are from the first weekend I spent with the game.  How could a game make it out the door and through four DLC content packs and still have this many obvious problems?

Since almost every level has the same junkyard theme, I thought that was appropriate – it’s fun to play in a junkyard, but expect to get dirty and possibly hurt.

Outright bugs:

  1. Inventory items spontaneously re-order while you’re selling them.  This makes it very easy to accidentally sell one of your favorite weapons.
  2. The video options menu is broken.  It only lets you scroll through (say) 8 of the 15 options.  Each time you try to scroll to the bottom of the first 8 options it jumps to the top and “unlocks” 1 more option.
  3. When you have a prompt pop-up and it says to press enter, you have to press enter twice before it registers.
  4. The game has a config file with a FOV variable, but instead of honoring the config file’s FOV, as soon as you sprint the game reverts to a (apparently) hard-coded FOV.
  5. When in a vehicle, the keys for talent and skill trees do not work, and instead bring up the map.  Like many of the interface quirks, it’s really really hard to tell if this was an inexplicable poor decision, or a defect they didn’t bother fixing.  This one is probably related to the game’s poor console-to-PC port either way.
  6. Many quests have incorrect tracking locations.  Judging from the number of google hits for those quest names, everyone but the QA department seems to have noticed these.
Terrible User Interface Decisions:
  1. I mentioned the config file’s FOV is buggy.  The reason this matters is because the FOV is way too small for widescreen PC monitors.  It feels constantly zoomed in, and only looks normal when the FOV expands during sprinting.
  2. The ‘use’ key also reloads, despite the game having a separate reload key.  If you try to pick up ammo or weapons while fighting, prepare to get stuck in a 5-second reload sequence while eating a clip of bullets.  Another poor call from porting to the PC.
  3. The interface uses a nonsensical mixture of scrolling methods.  In some menus the up and down keys work.  In others they don’t, but the page-up and page-down keys do.  In a rare few other screens, the mouse wheel actually works.  Not supporting the mouse wheel is bad enough, but having to hunt to figure out what does work on every screen is downright absurd.
  4. The vehicle menu has color swatches visible for picking your car color.  After clicking on these to no avail, I eventually realized you have to navigate to them with the keyboard to pick one.  It’s a PC, I’ve got a mouse — why can’t I use it?
Gameplay Issues:
  1. Elemental modifiers play a huge role in the game.  They are indicated by modifiers X1 through X4.  Rather than being a multiple of damage, these are multipliers for a hidden auto-replenishing pool of elemental energy.  ..Or something, that’s the best I could find on the internet.  How is a player supposed to compare weapons with obtuse stats like that?
  2. No mini-map showing quest objectives?  Really?
  3. Only one quest can be tracked at a time, yet they overlap all over the map?  Really?  Did this game start life as a 1-quest-at-a-time game and get hacked into an MMO-style multiple-quest game without sufficient design rework?
  4. The gun drops are very poorly balanced.  At level 14 I was still using a level 5 weapon that was the best sniper rifle I had found.  At level 35 I was still using a level 22 submachine gun.  This kind of game doesn’t work very well if you aren’t continually finding upgrades.
  5. There is no printout or replay when you die showing the cause of death.  I died many times with no enemy on screen.  Eventually I figured out some enemies pull the pin on a grenade that can explode several seconds after they die.
  6. The talent trees for all of the classes were pretty bad.  Each tree did manage to have a very unique feel to it, but each tree also had a lot of bad or severely underwhelming talents.
  7. Roland’s special ability hawk rarely worked, making a full third of his talents worthless.  I suspect it was very bad pathing AI at fault?  Regardless, it’s critical to change designs if the current one can’t be made to work correctly.
Those are some of the issues I fought with the most in Borderlands.  The gameplay concepts have great potential, but Borderlands 2 will need a lot more polish and direction to be an all-around good game.

Does the Internet Limit Creativity in Games?

17 May 2011

Over the six or so years (six? really?!) that I played World of Warcraft off and on, the game’s community changed immensely.  Fansites evolved and players got smarter and smarter about how they played the game.  Players, as well as the dev team, found themselves facing and re-facing the problem of “cookie-cutter builds”.  These didn’t exist back when I played in Vanilla WOW, but were de facto standard when I started up again during the Lich King expansion.

Cookie-cutter builds are talent specs posted on fan sites or forums that are (allegedly) mathematically optimal.  This min-maxing of damage led to players not only using cookie-cutter builds, but also to routine bullying of players who chose their own suboptimal talent specs.

World of Warcraft isn’t the only game that has changed dramatically as the internet connected game communities and magnified their collective knowledge.  Once upon a time I used to play Magic: The Gathering.  I should have known that when they pulled the “first one’s free” trick on my friends and I at PAX that I would be hooked again.  Compared to those early-internet days when I played MTG and occasionally bought a copy of Scrye, the game is barely recognizable.  Sure, the cards all look pretty familiar, but the way the game is played bears no similarity to us kids trading cool cards at sleepovers.

What surprised me is how incredibly knowledgable the community has become.  Headed by pro tournament grinders, each new set of cards is boiled down to the best cards and decks almost before the set is launched.  “Netdecking” is a playstyle that exactly mirrors WOW’s cookie-cutter builds.  To netdeck, you get online and copy a popular tournament-winning deck verbatim and play with it.  At the moment unless you’re playing the winning $500+ Caw Blade deck, you may may as well not waste time playing.

What happened to the creative games I loved that let me put together any crazy combo I could think up?  Is it becoming impossible for designers to create games that aren’t quickly whittled down to a small hard fraction of the big fun game they created?  Has the internet completely destroyed our creativity?

I think it would be more accurate to say the internet gives us the option to skip out on creativity.  In MTG they have a few names for common player profiles.  I’m a Johnny — my goal is to flex my creative muscles with elaborate decks that I can show off and call my own.  Not everyone is a Johnny, though!  Another stereotype is Spike – the guys who want to hone their skills and win, and could care less what deck they use.  The last stereotype is the one we all start out a new game as: Timmy: a noob who sees big numbers or cool abilities and just wants to take them for a ride and blow stuff up.  You saw these same stereotypes in WOW too, and presumably they exist for every game that allows for both creativity and competition.

Overall, I think this increase in community knowledge is good for games.  It doesn’t destroy creativity, it funnels it to where it matters most.  Players can skip out on the boring work of repetitive playtesting (or worse, calculus!) to get started.  Instead, we can skip straight to the heart of what makes the game fun for each of us.  Spike can hit the web, copy a build, and go to town.  Johnny can read articles full of crazy ideas and write articles showing off his own.  Even Timmys now benefit from player ratings that ensure they play other Timmys instead of getting shredded by a pro-playing Spike.  Even designers get more feedback than ever on what is working and what isn’t in their game.  The internet pushes games to a fun, stable state faster than ever before.  I’d say that’s a win.

Update: It turns out Caw Blade’s heroes got banned, and the standard metagame has exploded to a half dozen or more decks!  Looks like Johnnys will rule the MTG tournament scene…for a little while, anyway.

Forging Documents For Profit

11 January 2011

Here is the math I just did (and posted to wowhead) to see where the Forged Documents inscription recipe would “cap” herb prices in World of Warcraft:

40s = rep-discounted resilient parchment price
10g = conservative forged document average (sounds like it goes up to 30g, so it may be more like 20g average)
3 blackfallow ink = 1 stack of 20 high-end herbs, since they net 6 pigment

You should only buy+mill herbs to forge documents if:
(Cost of forging documents) < (Profit from forging documents)
40s + 20*(1 high-end herb price) < 10g + (1 inferno ink)
20*(1 high-end herb price) < 9g60s + (1 inferno ink)
high-end herb price < 48s + (1 inferno ink price) / 20

Low-end herbs get 5 pigment per stack instead of 6, and generate half an inferno ink per stack:
low-end herb price < 48s * 5/6 + (1 inferno ink price) / 40
low-end herb price < 40s  + (1 inferno ink price) / 40

You can use blackfallow ink for other things, so you also want to make sure it’s cheaper to craft than your profit from the forged documents:
3 blackfallow < 1 forged documents = 10g – 40s (parchment)
3 blackfallow < 9g60s
1 blackfallow < 3.2g
AND Backfallow Ink is worth < 3.2g

10 Blackfallow can be traded for 1 Inferno ink, so you also want to make sure:
Inferno Ink < 10 * blackfallow ink value
AND Inferno Ink is worth < 32g

Considering the glyph and Darkmoon card markets, it won’t be worth spending inks on forging documents any time soon.  Even late in Cata with a huge herb supply, lower glyph prices, and lower demand for these mats, I don’t think forging documents will cap herb prices.  Each scribe can only forge 1 set of documents a day (1 stack of herb) — there aren’t enough scribes to forge a significant percentage of the herb gathered daily.

That said, this recipe is one of those knobs the designers could turn to increase herb prices later on — either by increasing the sell value of the forged documents or by lowering the cooldown.

Chrome Usability Makes It Unusable

27 November 2010

I love Google, and trust it more than most tech companies to be a good shepherd of all things tech.  I tried hard to adopt their browser Google Chrome, but I couldn’t stick with it.  Two major UI blunders made it nigh-unusable for me.

The first, and most unexpected, was their status bar truncation.  Even with a 1600×1200 window, Chrome will truncate URLs to a ridiculously short length, perhaps 30 or 40 characters, replacing most of the path with an elipses (“…”).  Unfortunately, the URL is of utmost importance when clicking a link, especially in this day of Search Engine over-Optimization (SEO), targeted ads, and rotating headlines.

The worst culprit is CNN, who runs several headlines for the same article, seeming to pick at random, in an attempt to either tie their article to multiple wordings of the same story, or to test viewer preference between headlines.  CNN will even link the same story multiple times on the same homepage with different headlines.  For example, today there is a headline that says “Black Friday’s black eye“.  What an indecipherable headline!  Hover the URL and you see the real story they’re pitching in the status bar, if you’re using any browser besides Google Chrome:

http://news.blogs.cnn.com/2010/11/26/thefts-stampedes-make-black-friday-blue-for-some/?hpt=Sbin

The actual story is that there were poorly run stores that let customers trample each other instead of handing out vouchers to a well-managed line of waiting customers on Black Friday.  Just like last year.  And the year before that.  I can pass on wasting any time on this article, but only because I stopped using Google Chrome.  I did hunt for an option to disable this pointless URL-shortening, but with two viable browsers (Safari and Firefox) I’m not exactly sold on hacking the Chrome source to fix such a blatant problem.

The second major issue I had was Chrome’s New Tab behavior.  When I open a new tab, about half the time is to select a bookmark, and the other half is to type in a url for address bar history auto-completion.  In Safari and Firefox, opening a new tab puts the cursor in the address bar of a blank page so you can immediately start typing.  In IE and Chrome, the new tab is made to visit the URL “about:blank”, which then loads (after a brief second of processing during which I would normally have my URL half-typed), and clears the cursor.  Making me move the mouse (or painful-to-use Dell laptop trackpad) up to the address bar, triple-click-delete or home-shift+end-delete, then finally start typing my URL.

I expect both of these behaviors exist because Chrome is primarily targeted at Google’s Android mobile platform, where keyboards and large-windows are non-existent.  It’s great that they target these platforms so well, but I’ll wait until they put some of these basic touches on the desktop browser before I put any more effort into adopting Chrome.  Don’t worry Google, I still love you anyway.