Geeks With Blogs
Scott Miller Appsguild - Software craftsmanship, project management, and the biz of software June 2006 Entries
The Bloodletting is posted
I have just posted the game. You can get the full source here (10.1MB), or just the EXE and supporting files here (4.1 MB). This has been a great experience. It takes me back to when I programmed for fun on my C64. Thanks Jeff and GWB and all of the rest of you (Jason, George, Chris, and HopeDagger and anyone else I forgot) for support and entertainment over the last six weeks. I have never coded and blogged so much in my life! Special thanks to Mindy aka Gemini Mystica, also at ......

Posted On Friday, June 30, 2006 6:53 PM

D-Day, as in Delivery Day. I will have my game posted within the hour. Really... Looking over the code it is amazing how many things could be better. I still see stuff that I hard coded to test a section and never went back to finish - like the die roll to determine who goes first (I wondered why the computer player was getting all the good rolls). So I clean it up and document, while listening to Prog band Glass Hammer. This will be version 1.0, but I see it as a beginning. I really want to make ......

Posted On Friday, June 30, 2006 5:21 PM

DoubleBuffered to the Rescue
My game screen is created in Windows Forms , leading to big time flicker as it redraws. Tonight I discovered the DoubleBuffered form property. When set to true, the form uses a secondary buffer to reduce screen flicker. Cool!

Posted On Tuesday, June 27, 2006 7:05 PM

Are you a Code Monkey?
OMG - this is a funny song!

Code Monkey
Click on Code Monkey to play MP3.

Code Monkey Get up get Coffee,
Code Monkey Go to Job,
Code Monkey Have Boring Meeting,
With Boring Manager Rob.
Rob say Code Monkey very diligent
But his output stink
His code not functional or elegant
What do Code Monkey Think?

Posted On Tuesday, June 27, 2006 6:03 AM

GWB Game Contest
Five days to go.

Open question - are we going to be able to download the submissions ourselves? I eagerly await playing each other's games!

Posted On Sunday, June 25, 2006 11:11 AM

Pesky card bug fixed
I was having problems with my card user control and events firing. If I had the user control set the selectedCard when clicked or using MouseHover and MouseLeave the popup context menu would fire the MouseLeave event when it was shown. Then I once again played Realms of Magic and decided that I would have no popup menu - just left click to play a card, right click to discard a card from the hand. Hover to see the card in more detail, and leave to not see detail. Simple and effective gameplay. I also ......

Posted On Saturday, June 24, 2006 6:38 PM

Pesky card bug
One week (almost to the minute) until the deadline. I'm fixing bugs and tweaking gameplay. A few more things to fix on the AI. I am frequently losing, so the AI must be good. I hope to have most of the cards with art work finished this weekend. I am having one persistent bug. Maybe you can give me advice. My cards are user controls. Each card has a context menu that I pass from the main form to the card so that when you right click on the card it will play or discard the card. This event handler ......

Posted On Friday, June 23, 2006 9:17 PM

Cards with art
I am adding art to the cards as Mindy finishes them.

Two samples:

Black Fist ninja card

Meldoy Morningstar card

Posted On Friday, June 23, 2006 9:09 PM

Hurricanes wins Stanley Cup
The Carolina Hurricanes won the Stanley Cup in a great game. I was really surprised that Cam Ward won the series MVP trophy instead of Rod Brind-Amor who probably deserved it more for his undeiable leadership.

Posted On Monday, June 19, 2006 7:39 PM

A big game weekend
So much done on the game this weekend. I spent a good 8-10 hours on it yesterday. This is the progress: Finished opponent AI to be able to play the game throroughly Redid the card display system, so now it is just a user control that is either visible or hidden. This sounds like s simple fix but I had an elaborate amount of component creation code that wasn't needed Added opponent graphics, thanks to Melody (see below). Extensively tweaked combat because using the RPG system just wasn't any fun (see ......

Posted On Sunday, June 18, 2006 1:42 PM

And the game goes on
The game programming goes on. I haven't seen posts by Jason, so he must be already done. I am realizing that design decisions that I made in the course of development are coming back to haunt me. I started out with a combat system similar to Pokemon. Then I started playing Magic the Gathering Online and later was heavily influenced by the shareware game Realms of Magic. Too many ideas, too much enthusiasm. If you recall, I ended up going with an RPG combat system. It sounded like a cool idea with ......

Posted On Saturday, June 17, 2006 12:01 PM

Multi-line textbox
Help! I am using a multiline textbox (Windows Forms) in my game. I am constantly adding game status messages to it, but I can't keep it scrolled to the most recent entry. How do I do this?

Posted On Saturday, June 17, 2006 11:55 AM

Saturn and Mars
Heads up, astronomy buffs.

The planet Mars passes through the Beehive Cluster (M44) tonight (6/15), with Saturn nearby. This can be seen in the West with binoculars. On Friday (6/17) Time to get out my 8" Dobsonian telescope.

Posted On Thursday, June 15, 2006 2:48 PM

New revenue model for your blog.
So, how do you make money off your blog? Convince a publishing company to turn your blog dump into a book! Hey it works for Joel Spolsky and Erik Sink. True, I like to read Joel on Software's blog, although he doesn't post very often anymore. I haven't read Erik Sink's blog. Now APress has taken their blog entries and turned them into books. How effective is this? A book takes several months to produce and ship. Any entries would be older. Indeed, looking at these books at the store, many of the ......

Posted On Wednesday, June 14, 2006 7:30 PM

Everybody's talking about it!
Everybody's talking about the Bloodletting and GWB game contest!


Thanks to Lance for the link.

Posted On Tuesday, June 13, 2006 7:10 PM

Bloodletting Card Game Art
Mindy - I'm still waiting for art!

While I am waiting, I will also have my other daughter design some art for game screens. Melody is 18 and draws anime also, so we'll see what she comes up with. And since she still lives at home, I can bug her until she actually delivers something.

I will post when available.

Posted On Tuesday, June 13, 2006 12:14 PM

Go 'Canes
I, like Lance, am a Carolina Hurricanes fan. Of course, when they win the Stanley Cup, everyone will act like they've been Hurricanes fans all along. Or maybe not, since none of the games played on TV (until last night), and Lord Stanley's Cup doesn't even rank enough to get mentioned on the Sports segments here in Kansas.

Young 22 year old rookie goalie Cam Ward has been amazing. So who will get MVP? Cam Ward? Cory Stillman? Rod Brind'Amor?

Posted On Tuesday, June 13, 2006 12:10 PM

Refactoring bliss
Its amazing how much garbage can sneak into code over the course of three weeks. You hard code something and think that you will come back to it. You add features that really don't make sense. I did some serious cleaning last night. Yanked out some big pieces of code that I decided didn't really help the game play. I noticed stupid bugs that I coded two weeks ago that did funny things with the card objects. As for AI, I have come up with a (somewhat messy) solution. I will have three opponent AI ......

Posted On Monday, June 12, 2006 5:52 PM

Bloodletting card game AI
Now comes the fun part - programming AI. This is proving to be more challenging than you might expect. In a card game like Pokemon or Magic, what decisions go into choosing a card to play? Just using a character card as an example, what makes you decide to play it? And should play be proactive or reactive? Probably a little of both at different points in the game. It is almost assuredly based on a reaction to the cards currently played by the opponent. A basic card game with standard face cards would ......

Posted On Sunday, June 11, 2006 1:39 PM

Visual C#.Net and Visual Web Developer Express
So far so good on using Visual C#.Net Express for the game. Aside from a minor delay with not being able to use XMLDesigner, there has been little or no difference. I don't use the SQL/Database Explorer very much, even at work, so that was no issue either. I am also using Visual Web Developer Express and it is another animal entirely. I don't like the new local web server, but that is not limited to the Express web version. I understand the reasons for it, but I prefer to use IIS locally for development ......

Posted On Thursday, June 8, 2006 10:15 AM

Game Messaging
I am having a really hard time with in-game messaging. I have tried to seperate the game mechanics in classes with the UI but I am having difficulty effectively communicating messages and game state between layers and between classes in the business layer. One example is that I have my rules in a class, but I want the error messages to show up in the UI. I also, as said before, have had difficulty passing messages between the cards, which are user controls, and the UI.

Any insights?

Posted On Wednesday, June 7, 2006 7:13 PM

Combat Part 2
I decided to use a RPG combat system. Although Bloodletting is card game similar to Pokemon and Magic the Gathering, it doesn't have the Energy cards which significantly influence the combat sequence and gameplay in those two games. Without the energy cards restraining the combat, it needs to be something different. So I am using an RPG combat system. My character cards have Attack and Defense, which imitate and simplify RPG-type weapon attack (weapon damage and attack) and defense (Armor class and ......

Posted On Wednesday, June 7, 2006 7:09 PM

Combat in the Bloodletting game
I am working on the combat phases in The Bloodletting game. And this is where I have to avoid scope creep. I have made my character card attributes with one part Pokemon, one part Magic the Gathering and one part RPG. The cards have number attributes for hit points, attack and defense. These can be altered by modifier or instant (short duration attack/defense/HP boost) cards. Sounds good so far, but mixing the paradigms has some bad results. Do I resolve combat like Pokemon, Magic, or RPG? And what ......

Posted On Tuesday, June 6, 2006 6:57 PM

Bloodletting game progress
The game is proceeding nicely. Because I was using user controls for each card, I had some problems this week with not being able to communicate what card was selected back to the main function. I finally got that figured out, but it was very frustrating. I have completed the game mechanics of playing and discarding cards from the hand, play area and discard pile. I just started working on the rules that constrain gameplay (I can play a card if x and not y, etc). I have not heard from Mindy on the ......

Posted On Sunday, June 4, 2006 11:10 AM

Copyright © Scott Miller | Powered by: