Garry’s Mod Control Points

June 25th, 2009

I’ve been working on a set of control point entities for Garry’s Mod the last week or two. My goal is to provide a set of reusable entities that mappers and gamemode creators can use. The initial design is based fairly heavily on the Team Fortress 2 control point entities. WiP thread on the FacePunch forums.

Last night I also threw together a quick Fretta gamemode to test them out: Download

Kindle 2 First Impressions

March 25th, 2009

I’ve had my Kindle 2 for about a day now, and am really enjoying it.

First of all, I actually think the Kindle 2 looks decent. Perhaps I am shallow, but this factored into my decision to not buy an original Kindle. The device itself is smaller and thinner than I expected, but feels heavy for its size. It’s not overly heavy, but I did notice the weight during an extended reading session last night, though this was likely more of an indication that I should take a break than that the Kindle is too heavy.

Reading on the Kindle is generally a pleasure. The screen reads like a book, only the page is always clear and visible and I don’t have to worry about holding the book open or obscuring some of the words with my fingers or the shadow of the other page. The buttons feel natural, aside from the fact that there are “Next Page” buttons on both the right and left side of the device. For the first hour or two I expected the “Next Page” button on the left side to take me to the previous page and was confused when it did not. The idea, of course, is that “Next Page” buttons on both sides allows for one-handed reading, which made sense once I figured it out.

Transferring books to the Kindle was mostly easy and straightforward. Pre-formatted e-books from the Kindle store magically appeared on the device via the built-in cellular network connection, and e-books on my desktop computer were easily transferred via the included USB cable.

PDFs, however, need to be converted. Amazon has a conversion service that you can email a PDF to. (Wireless delivery costs 10 cents per document!) To me, the Kindle’s lack of native PDF support is a major failing. As a user, this seems completely ridiculous. (“Why can’t I just read these documents? Isn’t PDF supposed to be the universal document format?”)

The Kindle has a built-in dictionary, and placing the cursor next to a word on the screen automatically looks up the word and displays a definition at the bottom of the page. This is a very nice feature. It also has highlighting and annotation support, but I have not tried that out yet.

The text-to-speech feature is passable, but I’m not sure that I would want to listen to it much. (And I am likely not its intended audience) It usually spoke the words correctly, but the flow left much to be desired.

The internet browser worked better than I expected. The slow refresh rate of the screen affected browsing quite a bit, but it wasn’t such a huge deal. I opened up the mobile version of google reader and read quite a few articles. The lack of touchscreen was most evident here as I kept wanting to touch links or scroll without having to resort to painful navigation with the joystick nub.

This, too, highlighted another shortcoming: I can’t read blogs or feeds in a nice, e-book-like format. (Well, I suppose I could pay for some of the few blogs that they have in the kindle store, but the ones I read aren’t in there)

I’m sure there’s more that I wanted to say, but haven’t. (Like how the keyboard seems like it would be difficult to type on, but isn’t really or that the homescreen seems to be really cluttered and unorganized)

Game Thoughts

February 19th, 2009

I have been playing a few games lately:

World of Warcraft

I got the Wrath of the Lich King expansion. I liked it quite a bit, but have not played in a while due to raids requiring lots of time and the fact that my guild starts raiding around midnight my time. This is not good for the job.

  • I never did much reputation grinding, but the curve seems to be much lower.
  • The new vehicle/mount system is neat, but I find it very confusing because the mount’s name is shown instead of the person riding it.
  • The story line, quests, and cinematics were nice. I really enjoyed playing some of the quests and learning more about the story.

Dead Space

This is basically a survival horror type game on a space ship. (Read: Resident Evil 4 in Spaaaace) I finished this recently, and, while I don’t really understand the ending or some character motivations, it was a lot of fun.

  • One of the big features is limb dismemberment. I thought it would become silly and old quickly, but it turned out to be surprisingly entertaining and even satisfying.
  • I purchased a suit off of the xbox live market place for a modest fee, not knowing that it was a fully-upgraded suit. I am slightly disappointed that I did not experience the suit upgrade path.
  • I really like the weapons. They are different enough from the standard game weapons to be interesting but familiar enough to be comfortable.
  • The answer the question “Could things possibly get any worse?” is always “Yes!”

Windows Solitaire

Yes, Windows Solitaire.

  • Vista’s Solitaire is superior previous Windows’ versions of solitaire. Multiple levels of undo is very nice, but not the only improvement.
  • I don’t win very many games of solitaire.

Gears of War 2

My brother and I played through the campaign together on regular difficulty, and I have been playing Horde mode with my friend. (Coop multiplayr against increasingly difficult waves of computer-controlled enemies)

  • The game’s plot is once again a mess and unsatisfying.
  • Fortunately, the gameplay (once again) makes up for its shortcomings in other areas. (Seriously, coop is really good)
  • The Hammerburst was changed from a 3-burst firing mode to straight semi-automatic. (I guess… it’s single fire, though holding the trigger down will fire continuously) I really preferred the burst fire from the first game better.
  • Bloodmounts in Horde mode are ridiculous. Perhaps they were tuned with more players in mind? I found them really really difficult.
  • The new mortar weapon is fantastic.

Help is updating to reflect your recent changes

September 23rd, 2008

I recently encountered this lovely dialog box while debugging something in Microsoft Visual Studio 2005. Visual Studio is an Integrated Development Environment (IDE) for Microsoft’s programming languages. In the 2005 version, when one is debugging and encounters an unhandled exception, Visual Studio will pop up a (not so) helpful context box that looks similar to the above image.

Since we have many exceptions that bubble up from our functions, they often have InnerExceptions that are wrapped inside of the current exception. Because the inner exception is usually where the important information about what actually went wrong is kept, I clicked on the prominent “Check the InnerException property for more information” link, expecting the InnerException to then be displayed.

But, instead of the InnerException, I was greeted with this dialog box:

Help is updating to reflect your recent changes

Well this is interesting. Apparently I have made recent changes to something that requires help to update itself. But, I didn’t want to go to help! I wanted to view the InnerException!

Too bad.

Notice that there is no “Cancel” button there? This is also very interesting because the “several minutes” that it is talking about was really 15-20 minutes. During this time, of course, Visual Studio was locked in an unusuable state.

Eventually, when help finishes doing whatever it is doing, a help page is displayed:

This is obviously not very helpful as it doesn’t tell me anything about what is wrong with my application, and I didn’t even want to be here in the first place! I just wasted 20 minutes out of my day!

Some things that are wrong with this:

  • The exception helper dialog box is unclear. It leads me to believe that clicking on a certain link will display the inner exception and does not indicate that it will instead display a help file. (I really needed to click the smaller link below under Actions titled “View Detail…”)
  • I had not made any recent changes. I had been programming or debugging for the last few hours, not making changes related to help files. This was really confusing. The accusatory tone (“your recent changes”) didn’t help matters either.
  • I did not want to be where I was, and there was no way out. The update dialog box had no “Cancel” button, no “Back” button, no “STOP RIGHT NOW AND LET ME OUT” option. To top it off, it used one of those “Infinite Progress Bars.” You know, the ones that don’t actually fill up as time goes on, but keep cycling back and forth.
  • I could not work during this process. Visual Studio was locked behind this dialog box, and because there was no way out, I could not continue working until it finished.
  • The help file was not helpful. Exceptions represent errors that occur during application execution? Seriously? This is ridiculous. I already know this, and it does not help me figure out what actually happened to my application.

RPG Stat and Leveling Systems

September 11th, 2008

I have been thinking about RPG stat and leveling systems recently. It seems that most games use a few basic systems: Point Buy, Fixed Stats, and Random Stats. I will focus mostly on computer games, but this should apply to other games as well.

Point Buy

Point Buy is probably what most people are familiar with for computer RPG games. I am generalizing this a bit here though. The standard point buy system from Dungeons and Dragons is explained here.

Many computer games use a modified point buy system. If we generalize, there are two main parts to the point buy system:

  • The player has a pool of points to draw from
  • The may purchase stat points for his character using points from this pool

Fixed Stats

A fixed stats system is one that provides predetermined stat scores for characters. Many games start all characters out with 100 hit points, for example, or if the game has multiple classes, each class may start out with predetermined stats.

Random Stats

A random stats system is one in which the stat points are determined by some random factor. Dice may be rolled, or the computer may use a random number generator in some fashion. Often, limits or options are presented, such as being able to choose the higher of multiple numbers.

In The Game

Most computer games use a combination of these systems. A standard mixture is point buy on top of a fixed stat base. These can also be used during the game for character advancement as well. Not only can stats be improved, but skills and abilities can be selected as well. Other stat bonuses from equipment or skills are often included in the system as well.

Examples

These examples are just games that I am familiar with at the moment.

  • World of Warcraft — Uses a fixed stat system for characters (each class has set starting stats) with an emphasis on increasing stats with equipment and talents. Stats increase by a fixed amount when the character increases in level. Talents are selected using a point buy system. The character receives 1 talent point every level after 9 and talents cost 1 point to improve.
  • Diablo 2 — Uses a fixed stat base (each class has set starting stats) with a point buy system on top.  Each character receives 5 stat points and 1 skill point per level. Stats and skill cost 1 point each to improve. Some quests may grant stat or skill points as a reward.
  • On The Rain-Slick Precipice of Darkness (Penny Arcade Game) — Uses fixed stats throughout the game. Stats increase by a fixed amount when the character increases level. The player has almost no control over character stats. Some quests in the game will increase certain stats, however, but these values are fixed as well.

For me, it is interesting to look at these games and examine how the leveling systems affect my play. I enjoyed playing all of these quite a lot. If I rank these games based on amount of character customization, I find that the games with more customization options are games that I want to replay. I have almost no desire to play the Penny Arcade game again because I have already done almost everything. I do want to play more World of Warcraft, partially because there is a lot that I haven’t done (the game world is very large) but also because there are many ways that I can customize my character. Diablo 2, in contrast to WoW, has a much smaller game world, and I have explored almost all of it, but it also has a very high replay value because of amount of character customization that can be done.

Is this what it feels like to be insane?

August 8th, 2008

I recently bought Geometry Wars Retro Evolved 2 on Xbox Live. I like it well enough, and I like how the achievements are done more this time around.

But wow, am I ever bad at this game. I can’t hit enemies, can’t avoid running into them, often head straight for them even though I know that they are there, and randomly suddenly turn around to run into enemies.

And here’s what bothers me: I keep saying (or yelling, depending) things like “What??” or “I wasn’t there!” or “There’s no possible way that I went that direction!”

As I see it, there are only a couple of options here:

  1. The games has collision detection or control issues
  2. What I am seeing or interpreting is not what is actually happening

There is something wrong when I see that I have plenty of room between my character and the enemy and then I suddenly die from running into the enemy that I know wasn’t close enough to touch me. Either there is something wrong with the game, or there is something wrong with me, and it’s more likely that there’s something wrong with me.

I can live with this when playing online games. I can chalk things like obviously shooting someone in the head (there’s even blood on his face!) or being killed after I duck around a corner up to network lag, but in a single player game that isn’t played online, I have no other excuse. If it were a skill issue and I was just being overwhelmed with enemies or was bad at aiming (which may be a factor) I would be fine, but I will do things like run directly into the very first enemy I see, even though I know it’s there and I am trying not to do it.

And this is frustrating.

I’m not quite sure what my point is with all of this, but this is something that is frustrating and reduces my enjoyment of the game. Perhaps other people experience similar things? Maybe this really all can be chalked up to my being bad at the game?

Numbers

July 25th, 2008

Many games employ a level of abstraction between the player and the character in the game. This often involves some kind of point assignment scheme. These points represent core statistics such as strength or agility, abilities such as “Sword Proficiency” or “Dwarven Language Skill” or meta-scores such as hitpoints or armor. Even games that have a high level of user interaction such as first person shooter games almost always employ something like a hitpoint score.

These numbers are useful because:

  • They provide a quantification of concepts that would be difficult to work with otherwise. This makes things easier on both the programmer/game and player. The game must represent the concepts as numbers in some way, and the player easily recognizes that a score of 2 in “Sword Proficiency” is greater (and more powerful) than a score of 1.
  • They provide a way to map user interaction onto a game character
  • They provide a mechanism for creating boundaries and barriers. Perhaps a character must have a score of 5 in Sword Proficiency before he can wield the Vorpal Blade or Important Plot NPC #28 will not talk to the character until they have more experience (level 3). Perhaps the character cannot even understand the NPC until he becomes more fluent in a certain language.

First Impressions: Tabula Rasa

July 11th, 2008

A week or two ago, I signed up for the free 3-day beta of Tabula Rasa. Unfortunately, I only had enough time to get up to level 7 or 8, so I was not able to evaluate many of the later-game or class development features.

Impressions:

Good:

  • Immersion – Coming off of Hellgate: London, which is all instanced, being forced to walk everywhere felt fantastic. I felt like I was interacting with the world rather than playing through an artificial level. Exploring the game to find the sigils was interesting as well.
  • Weapons – The weapon ideas seemed interesting, though I wasn’t able to try all of them out

Mediocre:

  • Skill/Profession trees – I generally like this better than straight class systems, but this implementation didn’t “click” with me.
  • Universal action key – “T” seemed to do quite a bit — Interact with NPCs, open crates, loot corpses, etc. Unfortunately, I kept wanting to click things to interact with them, which meant that I was often accidentally firing my gun at NPCs instead of talking to them.

Bad:

  • Lack of Descriptions – Many things could have benefited from better descriptions or tooltip text
  • Line of sight issues – Enemies just over a ridge could be in my (the player’s) view, but not actually in the character’s view, meaning that shots or special abilities would not hit the enemy. This caused frustrations when setting up long-range encounters. (“You can’t see the target” “But I can see it! It’s right there!”)
  • Inconsistant enemy looting – Sometimes items would auto-loot, sometimes I would have to press the action key to loot. Pressing the action key sometimes looted everything automatically, but would sometimes bring a loot window up, and then I would have to click “loot all” to loot the items. I never figured out what caused the inconsistency.

Overall:

I had fun with the game, but was often frustrated. Many of the gameplay issues could be chalked up to new-user syndrome since I didn’t have time to acclimate myself to the environment and gameplay. I usually encounter some level of frustration and confusion in every MMO game, but many of the issues seemed to be of the kind that would persist after acclimation.

I would probably enjoy the game for a month or two, but there are so many other good games out, and I need to keep a short rein on my MMO playtime since it tends to spiral out of control.

One interesting thing:

During character creation, one is prompted to select a starting armor set. The screen has controls to choose armor color, and I spent about 30 minutes mixing and matching armor, and choosing colors that I liked. I figured this would be an important character decision. Perhaps this armor choice would affect all of the armor that I wore, or I would be stuck with it for some time (a la costumes in City of Heroes).

Not so. Within the first few minutes, I had completed a quest that rewarded me with an item that replaced the armor I had spent so long choosing. Why let us choose armor if you will just replace it immediately? I felt like I had wasted that half hour of my time.

Tabula Rasa

June 24th, 2008

I signed up for the three day Tabula Rasa demo and am downloading the client right now. I’ve heard some good things about it, and it looks decent. I’ll post thoughts and comments later.

Data Organization

June 19th, 2008

One of the things that bothers me about the standard computer desktop paradigm is that objects (files and such) only appear in one place. This fits in very well with the idea of a physical desktop — a paper document only exists in one place. If it needs to be in two places at once, a photocopy will do.

I often want to organize my files into categories. For example: I take a screenshot of a game that I am playing. Where do I store the file? My current convention is to follow my hierarchical folder structure down until the file fits: The screenshot is an image, so it goes in my “/images” directory. It is a screenshot, so it also goes in the  screenshots directory (“/images/screenshots”). It is from game ABC, so it also goes in the ABC directory (“/images/screenshots/ABC”). This is fairly straightforward so far. However, how do I categorize it now? It’s a really cool screenshot of my character (I have a “/images/screenshots/ABC/character_shots” directory) but it also has a good capture of the in-game weather (I also have a “/images/screenshots/ABC/weather” directory). There’s no real clear answer to this if we stick with the standard paradigm.

What I really want to do is tag or categorize this file. My quick initial pass at tagging results in these tags:

  • image
  • screenshot
  • game screenshot
  • ABC
  • character
  • weather
  • rain

This becomes even more important when I want to look for files. The standard file hierarchy I have set up now won’t help me much if I’m looking for all game weather screenshots.

I know there are image galleries that will provide some of this functionality, and I’m sure that there are file systems or explorer applications that will do the same for all types of files. (And I read that Vista was supposed to include something like this with the new file system, but this was cut, which was a shame. That was one of the major things I was looking forward to with Vista) Even so, the vast majority of users are still using the old paradigm, or even some other paradigm that doesn’t really fit — I’m sure you all know people who save their Word documents to whatever default location Word chooses.