Gamecraft

This blog is all about the craft of making games, and in particular, computer games. Gamecraft involves a broad range of topics, including design, development, quality control, packaging, marketing, management, and life experience.

Name: Gregg Seelhoff
Location: East Lansing, Michigan, United States

Wednesday, October 24, 2007

Upcoming Industry Events

There are a couple of important happenings in the next few days.

This evening will be the monthly chapter meeting of the Southern Michigan IGDA (International Game Developers Association). This October meeting is an Education Roundtable which will feature several area game/multimedia professors, including Dr. Bruce Maxim of UofM - Dearborn, Brian Winn of Michigan State University, Kim Callery of IADT Detroit, and Jacob Pollak of Schoolcraft College.

For those who are close enough to attend, the meeting will take place on the University of Michigan - Dearborn campus (4901 Evergreen Road, Dearborn, MI). It will start at 6:00pm, running until perhaps 9:00pm, in auditorium room 1011 of the IAVS (Borg Warner) building. (No, I am not exactly sure where that is, either, but here is a campus map.)

Starting tomorrow will be the Bloomington Schmooze 2007, the latest installment of the Fall Shareware Schmooze, this time hosted by Eric Isaacson of Eric Isaacson Software, makers of ZIPKEY. This schmooze will run Thursday through Sunday, with home base at the Abe Martin Lodge within Indiana's Brown County State Park, near Nashville (Indiana, not Tennessee).

A shareware schmooze is a unique networking (and socializing) event in which people who, for the most part, work online gather in one location to meet in person. There is no fixed agenda, so the activities can vary from simply sitting in comfortable chairs drinking and snacking all weekend, to opening laptops and working on technical software issues, to visiting local points of interest, to discussing business, politics, sports, the weather, or nothing at all. For more information, visit the official shareware schmooze page.

If you are in the area and have an interest in either building the game industry in Michigan or in the education of our next generation of game developers, stop by the IGDA chapter meeting. If you are involved in development of games and/or independent software of any kind, I urge you to come to the Shareware Schmooze, if even for just part of a day, to meet others who are making a living in the industry.

Sorry for the late notice.

Monday, October 22, 2007

New platform: Mac OS X

We are getting prepared to release a Macintosh game next week.

As mentioned in several previous posts, including New development platform, most of my recent development has been on "another" platform (read: not Windows), and I can now confirm here that we are almost ready to release a solitaire game for Mac OS X.

The title was developed using Xcode, the development environment that ships ("free") with every Apple computer, written entirely in C++ (Gnu) and using Carbon. Our decision to use Carbon, as opposed to Cocoa, was made when Apple still openly spoke of both frameworks being "first class citizens" on OS X and even recommended Carbon for cross-platform code. We were almost into beta when Apple revealed, in classic bombshell fashion, that Carbon had been demoted and would not be fully supported in 64-bit versions of the operating system, starting with the next release.

That next release (a.k.a, the next big cat) is Leopard, OS X 10.5, which is going to be released this coming Friday. Ironically, that is just a single day after our originally planned release date, so we will be releasing a little bit later to properly test on this latest Apple operating system. (That is my story and I am sticking to it; the slight schedule slippage on this product was only coincidental.)

Although much of the underlying source code is derived from, or (in some cases) identical to, code used under Windows, the game is not a simple port, as nearly the entire user interface was rewritten to conform with the Apple Human Interface Guidelines and to be "Mac native". Everything we have heard and read suggests that straight ports that do not look like Mac products (especially those which look like Windows applications) are rejected by Apple users. This should definitely not be an issue with our new title.

This long development process has been quite a learning experience, and there are lots of areas in which OS X excels over Windows, and vice versa. I will detail some of these once the game finally goes gold. In the meantime, it should not take too much investigation and deduction for the interested to figure out the name of this latest project.

Friday, October 19, 2007

Windows Solitaire Trivia

This week's episode of Cash Cab: After Dark had a solitaire question.

For the unfamiliar, the Discovery Channel airs a unique trivia show, Cash Cab, along with its new variant, Cash Cab: After Dark, in which people climb into a New York City taxicab and unexpectedly become contestants on a game show, winning money for each correct answer en route to their destination. The catch is that wrong answers earn a strike and "three strikes and you're out", literally: kicked out of the cab on the spot with no (extra) money.

The most recent episode of Cash Cab: After Dark, aired originally on Wednesday night, featured a question about solitaire on Windows, an area in which I have some degree of expertise.

Question: A blessing for bored PC users, what specific variety of solitaire has come with Microsoft Windows since 1995?

The correct answer, of course, is FreeCell, which shipped with Windows 95. (As an aside, I was in attendance at the Win95 release event on the Microsoft Campus. Big doin's.) However, FreeCell was actually available with Win32s (for 16-bit Windows) and as part of the Microsoft Entertainment Pack products prior to this.

The FreeCell implementations in both Most Popular Solitaire and Pretty Good Solitaire are deal compatible with the Windows version. Additionally, our upcoming title, on another platform, also contains a version that produces the same deals (up to deal #1000000). More details to follow...

One possible incorrect answer would be Klondike, which is the proper name for the type of solitaire (or patience) that is simply called Solitaire in Windows. The word "specific" could lead one to that response, but that game started shipping with Windows 3.0 in 1990. (The aforementioned games all include Klondike.)

Another possible incorrect answer could be Spider [Solitaire], which started shipping with Windows me (but don't tell Wikipedia that), but was previously available with Microsoft 98 Plus! Having beta tested the latter product, I can say that the shipping version was a vast improvement on the first version I saw. (Spider is also included in all of the aforementioned Goodsol Development titles as well, including the Spider One Suit and Spider Two Suits variants.)

Too much solitaire information? I have lots more.

Wednesday, October 17, 2007

Happy Birthday, PGMJ!

Pretty Good MahJongg is now five (plus) years old.

Last Friday was the 5th anniversary of the first public release of Pretty Good MahJongg. On October 12, 2002, Pretty Good MahJongg 1.0 was released.

Of course, the program had been in development for quite a while (let's say 9 months, or 40 weeks) before that. This was the second product, and first actual game title, developed during our continuing collaboration with Goodsol Development. We started working together six years ago (this month, I believe), first producing a support library, PGScard (now GDcard), which provides some fundamental features of Pretty Good Solitaire.

Back in 2003, Thomas Warfield made a blog post, How Long Does Great Shareware Take?, in which he refers to Pretty Good MahJongg as "still an infant", and it is an interesting article to read in retrospect, especially given the fact that we recently won our first software award (even before version 3.0). Even if Joel Spolsky is correct is his article, Good Software Takes Ten Years, we are certainly well on our way.

In lieu of gifts, our game has requested that everybody vote for PGMJ to receive the 2007 Epsilon Award.

Monday, October 15, 2007

Chairman of the Board, Take 2

I have been appointed to lead the ASP Board of Directors, again.

On Saturday, the Directors of the ASP (Association of Shareware Professionals), excluding myself, of course, named me as the interim Chairman of the Board, to serve through the end of the year (or more accurately, until the 2008 Board of Directors fills the position).

This is my second stint as ASP Chairman of the Board, the first being back in 2004, when I served from early February until the end of that year (when my term as Director expired). This time, I am succeeding Mitchell Vincent, who had been in the position since the beginning of 2006. He runs K Software, which develops and publishes billing software (among other things), and also works with e-commerce provider Plimus; he resigned from ASP leadership due to (understandable) time constraints.

The general meeting is coming up in December, when members will have the opportunity to choose, or be chosen as, Directors of the organization. If you have not done so, I encourage you to join the Association of Shareware Professionals, and if you are already a member, please seriously consider nominating yourself for a Director seat (details are in the cover article of the October ASPects).

I guess that it is now time to roll up my sleeves...

Monday, October 08, 2007

Epsilon Award nomination

Pretty Good MahJongg receives additional award recognition.

On the heels of our Shareware Industry Award, Pretty Good MahJongg has been nominated for the 2007 Epsilon Award, to be awarded at the ESWC (European Software Conference) next month. This year, the conference takes place in Köln (a.k.a., Cologne), Germany on November 3rd and 4th.

There is only one Epsilon Award given each year, rather than (like the SIA) in individual categories. There are 28 nominees, but ours is the only game nominated. Voting is open to the public but, of course, limited to one vote per person, and the voting closes October 20th.

To vote for the Epsilon Award, click on this voting link and select your choice before October 20, 2007.

A vote for Pretty Good MahJongg would certainly be appreciated.

Friday, October 05, 2007

EULAs Gone Wild

Alternative title: "Let it suck!"

I will admit that I, like 99% of all other software users, rarely pay attention to End User License Agreements (EULAs), instead just clicking 'Agree' without bothering to read. There are exceptions, though. In cases where I suspect spyware or ET ("phone home") code may exist, I scan quickly, looking for buried legal slime and sleazery. Also, as a professional software developer, I do read the license agreements for the tools I (may) use for actually producing a product (mostly to find any distribution restrictions).

In this case, we are talking about the EULA for a development tool.
This must be distinctly understood, or nothing wonderful can come of the story I am going to relate. -- Charles Dickens

After downloading a free compiler from Microsoft, I found the following example of legalese that bears little resemblance to the programmers' English which I speak:

You may not:
- work around any technical limitations in the software.


In other words, if I compile a program that reveals a shortcoming in the program (a code generation bug, for example), I am not allowed by the license to do anything to "work around" this "technical limitation in the software", including (presumably) rearranging code, using an alternative technique, or perhaps adding an unnecessary extra parameter to get a C++ template to work properly (to use a real example from the past).

The law recognizes such a thing as an egregious contract, which is one which has terms so onerous as to be declared unenforceable (e.g., signing away the soul of your first borne child). Although this particular clause would probably fall under that definition, I would like to know if there is a similar term for legal language that is so stupid as to be laughable.

Perhaps, corporatelawyersinneedofglassnavels?

Wednesday, October 03, 2007

The Dot Net Preacher

Ryan Smyth interviewed me for a podcast on game development.

Last week, I was interviewed by Ryan Smyth (pronounced with a long I sound) for his online show, The Dot Net Preacher Show. We talked for more than an hour, on and off the record, about getting into game development, cross platform development, and of course, the perceived benefits and drawbacks of .NET from the perspective of a game developer who still primarily programs native code. I also reveal and briefly discuss our current project and platform (but you will have to either listen to the podcast or wait for a future blog post to learn that).

Today, Ryan posted the (edited) interview on his site: Interview with Game Developer Gregg Seelhoff.

This interview runs to only 54:56 and was conducted via Skype, between East Lansing, Michigan and Seoul, South Korea, in the late evening and early morning, respectively.

Monday, October 01, 2007

Pretty Good MahJongg wins SIA!

Our game took home a Shareware Industry Award from SIC 2007.

Pretty Good MahJongg was named the 'Best Non-Action Game' by members of the shareware industry. The Shareware Industry Award was presented at the Software Industry Conference in Denver. This was the first such recognition for Pretty Good MahJongg.


Shareware Industry Award 2007 Winner


I was in attendance at the awards banquet and accepted the award on behalf of Goodsol Development and Thomas Warfield, the producer. In addition to Thomas and myself (programmer/designer), others involved in the development and support of the program are Rick Tumanis, lead artist, Tom Sloper, consulting expert, Anne Warfield, customer support, and Martha Seward (Freelance Works), marketing assistance. I thanked them all, as well as the SIAF (Shareware Industry Awards Foundation), the ASP (Association of Shareware Professionals), and my family.

For more information about the latest version of our game, see Pretty Good MahJongg 2.32.

To read more about my experience at the conference, see these recent posts:
If you want to know what I have been up to since then, stay tuned...