Experiments in 3D March 2, 2011
Posted by Jesse in : Game Development , 1 comment so farWork continues on various projects, but I’m having too much fun experimenting to focus on any one project for long. Here’s my favorite two.
- Applying motion capture to Xbox Live avatars
- Sunburn
It took me a very long time, with many failures, but I’ve successfully managed to apply animations from the Carnegie Mellon motion capture database onto Xbox Live avatars. In the end, I had to rebuild portions of the avatar rig from Microsoft, and it’s still a manual process with lots of annoying steps. If I get much interest, I’ll put together a tutorial and release my modified rig.
I bought a license to the professional edition of the Sunburn Game Engine.Everything I try looks really pretty, because Sunburn adds badass lighting and shadows without much work from me. Of course, I’m still learning about general 3d basics. For example, here’s the results of playing around with normal maps. They seem to make a huge, huge difference. (Click to see the full resolution screens.)
That’s it for now. I have no idea how I’m going to use what I’m learning, but I’m sure I’ll come up with something wacky.
Global Game Jam 2011 January 31, 2011
Posted by Jesse in : Game Development , 2 commentsThis last weekend I went and participated in my first game jam. It was the Global Game Jam 2011.
I had a great deal of fun. I wasn’t sure how much time I’d be able to spend at the jam, so I opted to work on my own rather join a team. It turned out that I was able to be there almost the entire time, but I’m glad I worked alone this time. It was a cool experience to try to push myself in such a short time. That said, next time I’ll join a team. (And there will be a next time! It was great.)
I spent a bunch of time working with some other teams, giving feedback, and helping look for code bugs. One team grabbed the idea I gave during brainstorming and ran with it. Their game is called Soylent Diner, and it’s hilarious. (I think you can probably guess what the game was about.) I made a bunch of contacts and new friends in the process.
My game (though it’s more of a silly simulation than a full game) is called “In A Bubble.” You control a bubble, and you can get the men and women in my world to fall in love. Here’s a screenshot:
You can get the game here. (You’ll need to be running Windows, and have the XNA 4 runtime installed.)
in_a_bubble.zip
And here’s the source code. You’ll need some open source libraries. (Check out the readme.)
in_a_bubble_source.zip
The graphics assets aren’t mine, they’re from Spritelib and LostGarden. I release the source under Ms-PL, so go nuts with it.
Demina documentation December 9, 2010
Posted by Jesse in : Uncategorized , 2 commentsIt took me entirely too long to finally get around to it, but I’ve written some documentation for Demina.
Over on the Demina documentation page you can now find guides on how to rig a character, create a walk cycle, and import and render that character in an XNA 4.0 game.
If anybody finds this useful and creates something with Demina, I’d love to hear about it!
G2DF November 23, 2010
Posted by Jesse in : Game Development, Hero In Training , add a commentUpdated January 7, 2011: Changed the link below to link to a new version of G2DF (1.4).
Planning continues on Hero In Training. While I can’t dive headfirst into the game just yet, I’ve been spending some time working on fixing the problems I had with my tools.
First up is my level editor. I’ve written before about using Gleed2D. Since writing that, the creator reappeared and uploaded the source code as an open source project on codeplex. I think this was partly because someone had used reflector to convert his original program back to C# code and had released it. (I did the same thing to make a few changes, though I would never have released the source without permission.)
While I’m still not thrilled some of the design decisions, I know from experience that I absolutely hate working on tools. I could spend the next two months working on an awesome level editor, or I could just grab the source code and make whatever tweaks I need. While it might not be perfect, it should get the job done, and I won’t be miserable working on something I don’t enjoy.
He released it under the Microsoft Public License, so I’m allowed to release builds from my fork of the code. I’m referring to it as G2DF. (Short for Gleed2D Fork.)
Changes:
- Remove the concept of ContentRoot path.
- A level can be loaded by passing the filename as a program argument.
- Changed the default file extension from “xml” to “gleed”.
- The selected item in the objects list is now easier to see when working in a different window.
- You can extend line paths.
Now the file paths are relative to the level file. This makes it much easier to work on multiple computers through version control.
This doesn’t seem to work quite right when double clicking a file in windows explorer, but it works great to open a file from the solution explorer in Visual Studio, which was what I wanted in the first place. (Right click on a *.gleed file in the solution explorer and choose “Open With” to select the gleed2d executable.)
This makes it possible to associate the file type with the executable. This also makes it easier to write a content importer that will automatically recognize the extension.
This is a problem with the built in TreeView control. When you give focus to a different control, it’s really hard to see what you have selected in the TreeView.
Select a path and choose “Add Points To Path” in the Edit menu.
If you haven’t used Gleed2D before now, you might want to check out the introductory tutorial videos, and check out the QuickGuide located in the Help menu.
You’ll need the XNA 3.1 runtime. (I looked at updating to XNA 4, but that seems like it will be alot of work. I might tackle that another day.) You can download it here:
Gleed2D TPN Fork v1.4
If you’d prefer the source code, you can check out my subversion repository for the fork here: http://svn2.xp-dev.com/svn/G2DF/ Visual C# Express 2008 and the XNA 3.1 Game Studio are required to build the source.
What’s next? November 9, 2010
Posted by Jesse in : Being, Bluebones' Curse, Game Development, Hero In Training , 1 comment so farBluebones’ Curse has been out for a few weeks now. While reviews have been really positive (I’ll include some links below), sales have not been quite what we’d hoped for. In fact, they’ve been pretty poor. This left us wondering what to do next. Do we put in the six months (or perhaps up to a year) of work required to turn Hero In Training into the game we want it to be? Do we try our hands at another smaller title, better suited to the Xbox Live Indie Games marketplace? Should we move away from Xbox development altogether, and try out Unity or Flixel?
Well, I think now I know the answer. Today on the developer forums, a Microsoft employee posted that the 2011 Dream Build Play competition will be focused on the Xbox 360. Many of us had worried that it would target Windows Phone devices instead. This makes me totally excited again, and I want to focus on the game that I love to work on.
Going forward, it’s Hero in Training all the way. I’m going to start with a new game design document, and then rebuild my animation and level editing tools to closer match our needs. (They were getting a bit clunky to use, but we had no way of knowing what we’d need when we started.) Once we get to a point where there’s something interesting to show, I intend to record (roughly) weekly development update videos, and I’ll be posting lots of screenshots.
I’m really, really excited, and nothing is going to stop us! Hero in Training is going to win Dream Build Play 2011!
Reviews and media for Bluebones’ Curse:
CrushFragDestroy – XBLIG round up review
Dealspwn – XBLIG round up review
DIY – XBLIG round up review
GameMarx – Bluebones’ Curse review
GameMarx Podcast (1:30 – 9:00) – Indie game discussion
GayGamer – XBLIG round up review
IndieAsylum – Being and Bluebones’ Curse reviews
IndieAsylum Podcast (43:00 – 44:50) – Indie game discussion
Suburban Journals – Article about our work on Bluebones’ Curse
TeamKobun – Bluebones’ Curse review
VVGTV Video Review – Bluebones’ Curse review
Bluebones’ Curse October 19, 2010
Posted by Jesse in : Bluebones' Curse , add a commentThings have been a bit quiet around here lately. But that doesn’t mean we haven’t been working.
After we did our public playtest for Hero In Training, we realized that we were a long way from finishing. We need to overhaul several portions, and redesign a large chunk of the game. That left us a little less than motivated to work on it, so we started something new. Six hard weeks later, we are ready to reveal Bluebones’ Curse to the world. (Screenshots and a gameplay video are available at that link.)
We even put together a tongue-in-cheek press release that I’ve been sending out to journalists in the gaming press. I know our game is too small for most of them to cover, but hopefully we caused a smile or two. Here it is:
Pirate’s Cove, Tortuga Island - October 31, 1652 – In an ironic twist of fate, Bluebones, the most dastardly pirate to ever sail the Seven Seas, has been cursed to roam the Earth as a skeleton. During a failed attempt to steal a priceless ancient ring, Bluebones was confronted by a powerful hag, who gave no mercy to the scallywag. “Tis a wicked unsettlin’ ting to be sure! I did nae know such a ting be possible,” said the scurvy dog. “This be worse than when ol’ Greenbeard lost his hand to a mutinous crew and hadta use a hook instead. I cannae even drink me grog! It goes right through me to the floor. It ain’t right, I tell ya! How will I e’er get to Fiddler’s Green now?” In hushed whispers, local residents suggest Bluebones might seek out the lost gold of Davy Jones, which is said will grant the finder his heart’s desire. It’s a dangerous journey, and time is running short, as the gold only appears once every thousand years, on Halloween night. When asked for comment on his immediate plans, the privateer just muttered to himself, “Stupid bag o’ bones. Damned, bloody witches.” Bluebones’ Curse is available on the Xbox Indie Games marketplace for 80 Microsoft Points.
My new tutorial is absolutely fine. August 16, 2010
Posted by Jesse in : Game Development , add a commentI wrote a tutorial for the Sgt. Conker Absolutely Fine Tutorial Contest.
It’s about how you can record and playback player inputs to generate game replays. Check it out, and let me know what you think.
Player animation changes August 13, 2010
Posted by Jesse in : Hero In Training , add a commentAfter posting the last video, I also sent the link out on twitter. Within seconds, I had a great deal of excellent feedback from other indie developers. Some of it was stuff that would never have occurred to me.
For example, the player’s walk animation has been the same for months. I was happy with it, and had moved on to other things. As soon as I linked the video, many developers reported that they didn’t care for the animation, and pointed out ways I could make it better.
We took the suggestions to heart, and made a bunch of changes. He’s now taller, and has smaller shoes, which doesn’t force him to shuffle so much. Also his shoes now bend when they should, so it looks more natural.
I think the results are a pretty drastic improvement, and I’m really happy with the changes. Have a look, and let me know what you think.
It looks like youtube has fixed the slowdown bug, and they’re reprocessing the videos. So if you see anything funny on my older embedded videos, please try back in a little bit.
Moving slowly forward August 6, 2010
Posted by Jesse in : Hero In Training , add a commentWe started work on a new test level. When it’s finished, I’ll be uploading to playtest on the Xbox Live Indie Games, so that we can get lots of feedback. I’ve got a new video showing off some of that level.
We’re having some technical difficulties with the videos we posted on Youtube. The video is running at half speed with distorted audio. Youtube says they have engineers working on the problem. So for the time being, I’ll post my update videos on Vimeo, instead. (I don’t have a paid Vimeo account, so I can’t embed high def, but you can see the high def version over on Vimeo.)
Hero In Training – Progress Update August 5, 2010 from Jesse Chounard on Vimeo.
Sloped platform collision July 28, 2010
Posted by Jesse in : Game Development , 6 commentsRecently on the XNA Creator’s Club forums there have been several posts on how to handle collisions with a sloped platform in a 2d platformer. I wrote up a short description of the system I’m using:
How to determine if a player is about to land on a line segment:
What we need:
- Foot position of the player. (Bottom center of the player’s collision rectangle works well.)
- Line segment we’re checking for collisions with, specified by its end points A and B.
- Player’s velocity.
Let’s get to it:
- Is the player moving down? If not, we can stop here.
- Is the player’s expected position (foot position + velocity) within the horizontal region of the segment? If not, we can stop.
- Calculate the interpolated Y position on the line segment of the player’s X position both before and after the move.
- If the Y position before moving is above the segment, and the Y position after moving is below, then the player is landing.
And today I’ve put together a quick sample project to go with that. You’re welcome to do whatever you want with the code. (License – Ms-PL.) I hope it’s helpful. Feel free to hit me with any questions.

