Monday, May 13, 2013

Through the (Google) Looking Glass

It seems that most of the news stories I see about Google Glass these days are about privacy and ethics concerns. The common question is, effectively: "Is it acceptable for a someone to carry a concealable video camera around wherever they go?"

I think that these fears are somewhat misplaced. If anyone living in an urban environment thinks that they're not frequently being video-recorded, they're fooling themselves. Also, I honestly don't see how this is much different than the video cameras embedded in most smartphones these days. Should we ban smartphones from public places as well to prevent this kind of casual surveillance?

(As an aside, I think that there are larger issues than just privacy at stake. By allowing people to video-record their everyday lives, are we working toward a world where one's own ability to remember facts becomes obsolete? After all, if you can look up facts online instantly through vehicles such as Wikipedia, and if you gain the ability to digitize and store your own experiences for future reference, is there any need to remember things using your own brain? Will we, as a race, lose the ability to remember things for ourselves, offloading this responsibility to a ubiquitous global cloud of data storage?)

But the most important fact that these discussions seem to overlook is the fact that Google Glass is only one early implementation of a personal, wearable, video input-output device. Even if Google Glass is a commercial flop, or even if some enormous public outcry caused Google to shelve the project, someone else will produce another version of this technology sooner or later -- probably sooner. No matter how uncomfortable some people feel about the Google Glass concept, this idea isn't going to go away. In ten or twenty years, wearable computers will be everywhere, and we'll either have developed some sort of etiquette system around them, or we'll just all pretend they don't exist.

We humans have been working on ways to mechanize ourselves for a long, long time, and we're not going to stop because a bar somewhere in Seattle doesn't like the idea.

Wednesday, May 8, 2013

First Impressions: Neverwinter

Just to be clear, I'm not talking about the older Neverwinter Nights games; I'm talking about the new Neverwinter MMO. Also, I've only barely started playing. I have one character at level 11, and that's it, which means there's a lot of the game I haven't seen yet.

But I'm liking what I'm seeing so far. The combat system is more dynamic than most MMO's I've played; constant repositioning is necessary in order to avoid area effect attacks, to take advantage of flanking bonuses, and to get clear of melee opponents so that you can take out the ranged opponents who are slowly killing you. Also, the look-to-aim system and the pace of combat is exhilarating; it's a thrill to race my cleric into the fray, blasting folks with holy light left and right, occasionally calling down a satisfying blast of divine wrath from the heavens.

The powers are loosely derived from the 4th edition D&D rules, and will be familiar to 4th edition players (Lance of Faith, Healing Word, etc.). As might be expected, the at-will/encounter/daily power frequencies have been replaced by more real-time frequencies, where you can get an encounter power off around once every 10 seconds, and a daily power off whenever you accumulate enough power points (for big fights, you might accumulate enough power points to use a daily power more than once in the same fight). This is a pleasant nod to players of the tabletop game. During one particular skirmish, a menacing-looking enemy came onto the screen, and I found myself trying to guess whether I should burn my daily power on it or hold the daily back until later in the scenario -- just like in the tabletop game.

The Foundry system that allows players to build their own quests is something I'm really looking forward to trying. I ran through one Foundry quest, and found a number of promising features, including dialogue trees, sub-quests, and even scripted events. Only players who have a character at level 15 can build quests in the Foundry, though, so I'll have to wait a little longer for that privilege.

The game is microtransaction-supported, with the typical options to spend real money to buy mounts and special clothing and such. So far, though, it looks like you get get quite a lot of play without spending a penny.

Once I get into the professions system and the Foundry, and once I've had a chance to participate in a few more multi-player parties, I may have more to say, but at this early stage, I think the game is well worth a look.

Tuesday, May 7, 2013

Stone of Names: May Status Update

The editing phase for my novel is stretching on longer than I had estimated. The feedback from my beta readers gave me the chance to look at the novel through new eyes, and showed me several areas where things were unclear or inconsistent. I'm fixing those now, and I expect to be done within another week or two. If I get more beta feedback, I'll keep editing; otherwise it will be time for me to give the book one last read-through myself, and then call it done.

I have a general idea for two sequels to Stone of Names, and I should probably try coming up with an outline for them just to see if I actually feel like writing them. If I do managed to get Stone of Names published, either on the Kindle store or by more traditional means, it would be good to have another book on the way so that I can build up an audience. Of course, there's no reason my next book needs to be a Stone of Names sequel, but it's an idea worth pursuing.

Tuesday, April 30, 2013

Open Letters

Dear Authors of the Software Library I'm Working With,

If you provide a base class that I need to subclass in order to provide certain functionality, and your base class has a simple getter and setter method (such as getDebugMode and setDebugMode) whose purpose is obviously just to encapsulate a private int within the class, then please do not declare these methods as pure virtual and force me to implement them. Even assuming that there was a legitimate reason to include functionality in these methods besides the obvious, there's no reason not to provide a default implementation which just gets and sets a private int. Forcing me to implement textbook one-line getter/setter methods makes me feel like I'm being forced to participate in a Computer Science 101 exam.

Regards,
Don

...

Dear Patrons of The Gym I Go To,

For whatever reason, the towel supplies at our gym are somewhat limited, and experience has shown that the gym laundry service can occasionally be unreliable. There have been several occurrences during peak hours where the locker room has been without towels for lengthy periods of time, which , I'm sure you'll agree, is inconvenient for everyone involved.

To that end, for the past several years, every available surface in the locker room has been plastered with signs requesting that all patrons limit themselves to one towel. It is impossible to attend the gym without being confronted by one of these reminders of the scarcity of supply and of the need to be mindful of the existence of your fellow guests.

So what, exactly, goes through your mind when you take two or three towels for yourself? Are you being deliberately hostile to the rest of us, or have you somehow managed to convince yourself that the extra towels you took are some sort of magic towels that automatically reproduce themselves after you take them? Or is there something inherently special and valuable about your existence that means that it's more important for you to use an extra towel just to dry your feet while you get dressed, than it is for someone else to get to work on time?

I hope that you will take the time to contemplate these questions and take the appropriate actions in the future.

Regards,
Don

...

Dear Creator of the Universe,

I look forward to discussing several implementation flaws in your product at some point in the future. I have several suggestions for a patch or hotfix.

I am not at this time demanding a refund, as I intend to be using your product indefinitely; however, I believe that there are several opportunities for improving the overall experience for all of your registered users.

Regards,
Don

Monday, April 29, 2013

Review: Crimson: Steam Pirates

Crimson: Steam Pirates is a turn-based naval combat game from the fine folks at Harebrained Schemes. It's available both on the Apple App Store and on the Chrome Web Store, so it's playable on the PC. It's an enjoyable game, but I'd really like to see a more full-featured sequel.

As you might have guessed from the game title, there is a steampunky theme to the game, but if you prefer, you can think of it as alt-history pulp action. You take the role of a pirate captain, set loose in the Caribbean with a colorful crew and a fantastic array of vessels and weapons, including steam-powered dreadnoughts, airships, and lightning guns. For each mission, you are given a few ships, a few officers, and a few mission objectives, and your end-of-mission score is based on how many objectives you completed, how much loot you collected, and how many targets you knocked out.

Actual gameplay is simple: during each turn, you plan out the movement of each vessel under your command. (Anyone who's played Steambirds will find the movement system familiar.) You don't choose firing targets; your ships will automatically fire at any enemy vessels that move into their firing arcs. You do get to choose a special ability for each of your ships to use, which include such abilities as "fire faster" or "move faster" or "repair damage". Each ship can use one special ability a turn, and when an ability is used, it must recharge for a fixed number of turns before it can be used again.

You can also attempt boarding actions, by using the appropriate special ability and then bringing your ship in contact with a chosen enemy ship. The boarding action occurs in three waves: you may designate which of your officers (each with a different combat strength rating) to send out in each wave. If your total strength in a wave is sufficient to defeat the enemy officers in that wave, you win the wave. You must win all three waves to win the boarding action. A successful boarding action gives you control of the enemy vessel, so long as you transfer at least one of your officers to that vessel. Each officer grants one or more special abilities to the ship that officer is in, so you need to think about which abilities are best placed on which vessels.

Overall, I found the difficulty level fairly low. Out of the first eight missions, I won seven on the first try, and had to run the eighth mission twice. The simple strategy of "keep your ships grouped together, keep the enemy in your firing arcs, and use your special abilities often" was sufficient to overcome every challenge.

The first eight missions of Crimson: Steam Pirates are free to play, and took me about two hours to get through. There are two other mission packs available to purchase, each with eight more missions and each costing $2 USD. So if you buy into the whole package, that's $4 for six hours of entertainment. (If the add-on missions are more difficult or lengthy than the first eight, then your play time might be even longer.) Not a bad deal for a solid, if simple, game in my opinion.

What I'd really like to see is a sequel that allows you to choose which ships to deploy on each mission, and to choose the weapons and officers to assign to each ship. This would add some strategic depth as well as some replayability ("I wonder if I could beat that mission using entirely airships...").

As for the story in the game, it's nothing special or memorable, though I expect it would be challenging to develop a deep story with nothing more than a paragraph of narrative at the beginning and end of each mission. More impressive is the collection of lore about the world of Crimson, posted at the Hairbrained Schemes site. There's a timeline of significant events, lists of notable places, persons, and technology, and a quick sketch of the political situation. There's more than enough information here for a solid roleplaying campaign. Once again, I'd love to see a sequel that provides a deeper exploration of the world.

Overall I recommend it: it's turn-based strategy, it's easy to learn and to play, and the art and style bring back fond memories of the alt-history pulp action of Crimson Skies (it's probably safe to say that the similarity is deliberate). For a total price of zero dollars for the first eight missions, it's certainly worth a look.

Thursday, April 25, 2013

Really Extremely Very

I expect that most authors are well aware of the problem with the word "very", and other words of that ilk: they don't add anything of substance to the text, and they're a lazy way of providing emphasis. For instance, if an author says "the night was very hot," just how hot is that? One person's "very hot" might be another person's "mildly hot." Is it hot enough that no one can sleep indoors? Is it hot enough that the crickets are panting instead of chirping? Or is "hot" even the right word for the type of weather the author has in mind? How about "sultry"?

I'm actually encountering this same problem in my programming life as well. The contractors who are testing our software can't seem to use the word "confusing" without prefixing it with the word "very", as in "the controls on this page are very confusing." Wouldn't the defect report communicate the same information if it just said "the controls on this page are confusing"? Is there any additional benefit in trying to specify different levels of confusing? If so, why aren't we seeing any reports of UI elements that are merely "confusing" and not "very confusing"?

I've tried to remain vigilant about the use of "very" words in my novel, but recently I've begun to wonder about similar lazy words in my own speech: specifically, profanities. Craig Ferguson has told us that "sometimes, only a cuss word will do," but is this really true? When I use one of the words that you can't say on broadcast television, what information am I trying to convey? "I'm angry"? "I'm disappointed"? "I want you to pay attention to this"? How about when I use words with a religious context, like "God"? I haven't been a practising Catholic in over twenty years; why am I lending emphasis to a statement by referring to a mythological entity whose existence I do not assert any belief in? Wouldn't statements such as "by Odin" or "by Osiris" have the same weight? Why bring religion into it at all?

It might be useful, as an exercise, to try to omit any expletives from my speech and try to achieve the same emphasis and emotional weight through more polite and descriptive words. I don't know if I have the self-discipline to pull it off, but the results would be interesting.

Wednesday, April 24, 2013

Review: Strikefleet Omega

One of the first things I did after I bought my new Android phone was to install Strikefleet Omega on it. It's by the same people who will, eventually, release Shadowrun Returns. I'm pretty happy with Strikefleet Omega so far. The game concept is similar to Battlestar Galactica; a bunch of bad critters have launched a surprise attack on humanity, and you are in command of the lone surviving human space fleet, warping from star system to star system and fending off increasingly dangerous hostile attacks.

The game starts pretty simple; the bad alien ships fly in from the edges of the screen, you tell your starfighters to go kill them. But then they start layering in complexity; asteroid mining, and extra ships you can warp in as reinforcements, and artillery strikes, and different flavors of bad aliens that require different tactics to destroy. It's an entertaining little "I have ten minutes to kill and I have my cell phone" game. The story is pretty generic, but the character art is well-done, and there are a few little in-jokes for the fans (like star systems named "Plissken" and "Dunkelzahn").

It's a free game, supported by microtransactions, but the microtransactions aren't terribly offensive. You can buy Alloy and MegaCreds; Alloy is used to buy new ship types and to upgrade your ships, and MegaCreds are used to buy perks (special advantages like increased XP or increased fighter damage), to buy special ship types, and to pay for firing your flagship's Deathblossom, a superweapon that kills everything on the screen. The rates they're charging seem kind of expensive for what you get, but so far as I can tell, you can play the game just fine without spending any real money. You earn Alloy during play, so you'll be able to expand and upgrade your fleet just by completing missions. You don't earn MegaCreds past the initial 10 you get when you install the game, but the game is perfectly enjoyable without the premium ships and bonus perks. (You get to choose one free perk every mission anyway, so you're not entirely cut off from that part of the game). It's a shame that you have to spend real money to fire the Deathblossom, but you can think of this as encouragement to improve your play so that you don't have to rely on it.

Overall, well worth my download time, and I recommend it for Android and iPhone users.