Archive for the ‘computer game’ Category

Fun with Margaret and ActionScript

June 3, 2007

It was great fun teaching Margaret programming. I led her on a forced march through the Flex interface, gave a brutally quick over view of MXML (Adobe’s layout language), rushed through an intro to object-oriented programming, and finally gave a cursory glimpse at ActionScript.

M is going to develop the combat code for GODinabox.  She and Ian want to implement a fairly standard combat system for their American Dream GODclub.

While I tutored M in Flex we developed this really simple combat code harness I called FightClub, which we developed to this state. Me and BadBoy are 2 MXML components of the Pugnater class:

<?xml version=”1.0″ encoding=”utf-8″?>
<mx:Canvas xmlns:mx=”http://www.adobe.com/2006/mxml&#8221; width=”100″ height=”200″
creationComplete=”init();”  borderColor=”#800040″ backgroundColor=”#ffff00″>
<mx:Button x=”21″ y=”130″ label=”Attack” click=”this.attack();” />
<mx:Label x=”10″ y=”77″ text=”HP:”/>
<mx:Label x=”43″ y=”72″ text=”100″ id=”hpLbl” fontWeight=”bold” width=”47″ fontSize=”15″/>
<mx:Label x=”21″ y=”21″ text=”Name” id=”nameLbl”/>
<mx:Script>
<![CDATA[

private var hitPoints:Number = 100;
private var target:Pugnater;
public var attackStat:Number;
public var defenseStat:Number;

public function init():void {
this.showHP();
this.attackStat = 5;
this.defenseStat = 2;
}
private function showHP():void{
this.hpLbl.text = Math.round( this.hitPoints ).toString() ;
}
public function defense( attackPoints:int ):void {
var randVal:Number = (Math.random() * 15 + 85)/100;

attackPoints -= this.defenseStat;
this.hitPoints -= attackPoints * randVal ;
this.showHP();
}
public function setTarget( targ:Pugnater ):void {
this.target = targ;
}
public function attack():void {
this.target.defense( this.attackStat );
}
]]>
</mx:Script>

</mx:Canvas>

I have always wanted to teach Margaret programming. She is, after all, a third-generation computer game developer. Only recently have I been able to handle long, fun conversations. For 8 years a fun conversation automatically triggered a seizure. I got a little nerve-frazzled after about an hour of it, but took a rest and came back and gave a good final lesson, and talked through getting FightClub up and running. We’ll elaborate FightClub to let Margaret experiment with interesting combat coding.

We worked hard that night cleaning the cabin. We had to get it ready because prospective buyers were seeing it at 10 and at 12 on Friday. We got it looking pretty good and got a short night of sleep.

The next day we drove to Rice Lake. We did errands while the real estate agents showed The Pad. Got Margaret craft supplies for making creepy dolls.

Had lunch at an off little coffee shop called A Big Pile of Yesterdays or some such – it’s mainly an antique store with a coffee shop in the back. She gave me an overview of the American Dream GODclub. Very cool. I’m not going to give any theoludical spoilers. It’s going to be fun and pretty straightforward to make the GODinabox code provide the game-play features American Dream needs.

Later that night I decided to use the King of Chicago clay heads for the pirates in the Flying Spaghetti Monster GODclub. Margaret is going to make outrageous pirate costumes for them and we’ll stop-motion animate them. I think we may animate the FSM in real spaghetti. I plan to make the sets out of painted cardboard.  I want to get back into doing visual art and this feels like a way that will work.

Advertisements

Got ChipWits working on the Mac

May 19, 2007

Running under Adobe Apollo. Apollo is slick. It was a cinch to convert my Flex project to an Apollo project.

I gave one last shot at getting ChipWits running under MDM Zinc and it went off into a loop that was impossible for me to debug on the Mac. So I bit the bullet and converted it to an Apollo app.

Apollo isn’t ideal because it’s in alpha right now. The installation will be a hassle because a user will need to install Apollo first and then the ChipWits.air Apollo file. When Adobe rolls out the release of Apollo installation will be a one-step deal, but for now if a player doesn’t already run Apollo they’ll need to install it manually.

I got a Mac Powerbook off eBay a few weeks ago – a 1.5 ghz G4, which will be the low-end Mac we support. I picked this Mac as the target at the suggestion of Jay Bibby of Jayisgames.com . ChipWits runs a tad slower on the Mac than my PC of the same speed, which concerns me. I may hire a Flax/Flex animation guru to review my code to help me pump up the performance of the game. Flash isn’t the speediest game platform, for sure.

It felt good to see ChipWits running stably on a Mac again after 23 years.

Major New Build of ChipWits

May 18, 2007

The latest build of ChipWits is filled with LOTs o’ new features. I really pumped up the IBOL editor. The most important features are undo/redo and multi-chip drag and drop. Both features were requested in ’84 and are finally ready for your enjoyment. Since a lot of the player’s time is spent in the IBOL editor, making it slicker is a big win for the game.

I also changed the Subpanel system, letting players create as many named Subpanels as they need rather than just A-G.

I added the new Register operators to let ‘Wits do math and have addressable variables. The ChipWit can now drop a Counter object, which has a numeric value. I am going to create Register-based missions with a CounterLock – a door that opens when a Counter with the correct value is dropped onto it.

I also added the ability to add comments to chips. This will help a lot in making IBOL programs understandable.

I am going to wait a week to get some feedback before I hold a contest.

Until then I am going to work on the Mac version and start working on a full suite of tutorial missions.

Feels great!

Flex, my ChipWits dev platform, goes Open Source

April 26, 2007

When I looked for a cross-platform game development environment over a year ago Adobe Flex was just coming out the door. Margaret was comfortable doing animation in Flash, but I was sceptical of ActionScript. When I got a look at ActionScript 3.0 I felt comfortable taking the plunge.

I’ve really enjoyed working with Flex. Today’s announcement that Adobe is open-sourcing Flex gives me even more confidence I made a good choice of platforms. Scoble has some nice vids up of interviews with core Flex devs about Adobe’s open source move.

I’ve spent the past week working on IBOL editing in ChipWits. I’ve got undo/redo working well. Got copy/paste working last night along with the start of multiple-select. Tomorrow multiple-select drag & drop. Since ChipWits players will spend the bulk of their time editing IBOL code anything I do to ease editing will pay off bigtime.

Today I also got a Mac Powerbook which I bought off eBay. It’s a G4 1.5 ghz – which is going to be our base Mac target machine at the recommendation of Jay Bibby of Jayisgames . Having a Mac version of ChipWits ready when we launch is important to me because ChipWits came out first on the Mac in ’84. Apollo is still not ready for me to use to deliver Mac ChipWits ( and Mike Chambers suggests that Apollo will be following Flex’s example ) so I will be wrestling with the killer Zinc Mac bug.

New Build and ChipWits Contest

April 3, 2007

Feels great to post a new build and kickoff a new ChipWits contest. I haven’t been very productive the past few weeks, so I can sleep well tonight knowing I’ve hit another goal.

The next few weeks are mainly about building ChipWits missions, and I had some fun with ChipWits Caves tonight. The maze is 8 rooms in a row that spell out “ChipWits” with their walls. There are 2 CDs worth 2,000 points in 6 of the 8 rooms, and those CDs don’t respawn. They are each adjacent to “islands” of walls in the center of rooms. I’ll be interested to see if any playtester codes for that condition or if blind fumbling is the most efficient strategy.

It snowed today – wet and sticking to the trunks of trees. The whole world got whiter again. With the grey sky it’s like the contrast got turned way down.

I decided to do some fish watching this evening so I took my dogs and flashlights down to the lake. It was way too wavy and snowy to see a thing in the water. But it was fun walking with a flashlight through the snow.

So I still haven’t seen a single fish after a week of open water. I wonder when I’ll see the first Central Mudminnow swimming up Mudminnow Creek? I’ve got 4 of them in my aquariums and they are cool fish with a very commanding attitude. Their spawning run is like a miniature version of a salmon run. I spent hours last Spring watching these cool little fish fight their way upstream over dams made of twigs and leaves. The water is running in the creeks but the isn’t warm enough to trigger their spawning yet.

ChipWits marches on

March 21, 2007

I got some extremely useful feedback from the geek gamer forums. As a result of the feedback we are going to spend another month on ChipWits before releasing it.

The biggest request is for LOTs more tutorial missions. So we will ship with >30 of them.

I’ve spent some time twiddling with low-level and performance issues. A couple people commented that dragging-and-dropping chips was awkward. I spent a day making that work a lot more smoothly. Since the heart of ChipWits is the chips this one is big. The feedback on this issue shows why beta playtesting is crucial – I had just got used to the clunkiness of the drag-and-drop and ignored it.

I also identified a big Flash-related animation slowdown and fixed that.

I’ve been struggling a bit with my neural problems, not being very productive. Next week I go to a new pain clinic – fingers crossed.

In designing a lot of new missions Margaret and I are coming up with some new baddies. Those will be fun to implement. I’ll write about them later this week.

It looks like Margaret’s ermine roommate – Herman – has decamped to the great outdoors. No recent signs of our flying squirrel neighbors, either. Life is a bit less interesting at The Pad.

I just announced ChipWits in Some Geek Gamers Forum

March 8, 2007

This is a big night for me. ChipWits is ready for a fresh new round of playtesters and so I’ve asked for feedback on the Indie Gamer Forums, which is the best forum I’ve found for independent game programmers. Also Gamedev.net, which I am just beginning to explore and which looks quite good.

I expect to get some really useful crit out of these geek gamers. I’ve left posts asking for playtesters in a couple other programmer forums as well.

I had a lot of fun today working on a new type of mission – the mini mission. I decided it would be good to have a bunch of really small 1 or 2 rooms missions under 250 cycles. Once that thought popped into my head I began to get lots of ideas for actual missions. I knocked off 2 today and it was a blast.

A lot of the work we have before we ship the game is developing new missions – intro (tutorial) missions and game missions. This is really fun work and I’m looking forward to the next weeks.

I am keeping on an even keel – not stressing out – and that’s helping me be fresher in my creative efforts.

Usually the last month before shipping a game is hell, no fun at all. Concentrating on bugs and being very very conscious of time slipping by. Shipping ChipWits soon is crucial financially, but I am in a pretty good groove of productivity right now. I still get stressed, believe me, but I am enjoying myself, too.

It helps that this time ChipWits isn’t headed into a box on a shelf in a computer store. I’ll be able to keep improving it after our initial release, so I don’t feel that every second is do-or-die.

I spent yesterday in the Twin Cities at a friend’s house working on the Mac version. Made lots of progress, but I hit a snag when it started crashing randomly – a bug in MDM Zinc which is out of my control. This means I probably won’t have an installable Mac version ready for our initial release, bummer. Since I developed ChipWits on the original Mac it means a lot to me to get a Mac version running ASAP, but I can’t take the time to do it now.

I feel really good about the game. Within 2 weeks ChipWits will be released and raking in the dough. Count on it.

Buried in the Drifts

March 2, 2007

We are snowed in for the 2nd time this week. This time the snowplow guy refused to plow the last 1/3 mile of “road” to The Pad. He plowed only to my 2nd-nearest neighbor (the nearest neighbor is a Summer cabin – no one home) so I moved the car to their house in the middle of the storm – up the hill.

The hill is a challenge in Winter – it slopes North and often has got an icy underlayer – and I don’t blame the snowplow guy for giving up on it. He plowed partway down before giving up, though, so he left a 3-foot high plowed mound of snow right in the middle of the hill. I had to get the Subaru’s speed up and punch through the mound while climbing the hill. The snow is light and it made a satisfying snow explosion as I slammed through it.

So we’ve got a 1/3 mile walk to the car. Getting another load of firewood will have to wait. We’re doing pretty good on propane, but I’ve cut the thermostat to 60. If we’re snowed in long we’ll have to use our toboggan to haul wood to the cabin.

I had a great day of programming yesterday. I will probably drop a new build of ChipWits tonight. I fixed a bug in ELECTROCRABS – now they can actually damage your ChipWit – 20 E-CRAB ZAPs and you’re done.

We’ll finish the current contest and then next week let some of the geek game forums into the playtest.

Contest of Doom & ChipWits Forums

February 26, 2007

I just uploaded a new build of ChipWits and announced this week’s contest – Doom Rooms.

I’ve had a couple of great days of programming, some of my best days in months. I think this trend will continue.

I implemented Hummingbird Mode – supah-fast ChipWit speed. That’s really going to be helpful when we have to run all the contest-entry ChipWits through a 10-mission series.

Margaret and I also set up ChipWits forums at chipwits.informe.com. Wonder who will be the first one besides me to post there. Dare ya.

We are snowed in. Our plow guy gave up and is going to try a bigger plow tomorrow.

We are going to spend the next few days adding Intro Missions and documentation and then mid-week we’ll start announcing the game in geek forums. I want a bunch of programmers in the next batch of playtesters – it’s not quite ready for the mass market yet until we document and tutorialize more.

I feel good about ChipWits and the prospect of making bucks off of it.

Margaret got some great video footage of Herman the Ermine. We’ll upload some action footage of this magical little creature to youTube.

It’s a good sign that I am heading to bed before 1 am.

I just posted 2 more chapters of Channel Zilch.

‘ZAPpening at The Pad.

February 18, 2007

Margaret is finally on the mend. Her last 2 days where rough – she was tired and had a cold.

She is in charge of designing ChipWits Intro Missions, and we just had a great little brainstorming session.

Before we shout ChipWits from the Internet rooftops and invite everyone into the beta, we have to make more tutorial Intro Missions. There is a vertical learning curve from our the last Intro Mission in build 177 to playing the Advanced Missions.

So far most of the people playtesting ChipWits played the original game so they climbed the learning curve a long time ago. We’ve heard from new players that it is way too steep right now.

I have problems constructing puzzles – one of the strange cognitive deficits that are side-effects of my epilepsy condition – and luckily Margaret enjoys making them.

For some of the Intro Missions we will have some IBOL code already in place. I am working on making that happen.

Once I get that working I will make electrocrabs be annoying.

One of the best things about being a game developer is that you are often doing very strange tasks – making electrocrabs annoying is all in a day’s work.