Friday, March 25, 2011

Animation! (sort of)

So I finally made some modifications to the code. I made it so that the potions animate (up and down as if they're floating) now. This makes me want to add a generic shadow sprite to draw below them just for better looks. As it is, the current sprites from Rime has shadows built in that move with the potion up and down, so it looks like they're sliding across the floor. Still, i think it's a step in the right direction. And with new images being potentially added soon it gives me fresh motivation to work on these things.

Wednesday, March 23, 2011

New Default Theme

As a taste of what will eventually be available, this is a screenshot of the current character selection screen with the new sprites for 3 of the classes.

Thursday, March 10, 2011

Source Code Management

Pygauntlet currently uses, and has always used Subversion for managing the source code. The reason we started in svn is because that's the tool that UCR made available to us for the software engineering course. Since I knew how to use svn, when I made the effort to make the project open source and move to google code for hosting, I chose svn for source code management. I have had a tiny bit of experience in using CVS and even RCS as well as the occasional check out of other projects using Mercurial (hg) and git. Unless I have a very strong argument presented to me, I will probably not move pygauntlet to any other source code management tool.

However, Richard Fine just made a blog post about explaining his reasons for moving to git for his SCM. He makes some good points about why svn is not always useful, but I believe it to be plenty good for what we're doing with pygauntlet. There still isn't any better way to manage source code and art/music assets with one tool. However, it is good to know that there are other options out there and that those options are improving. I may try using git for my next project, but if that fails, I'll probably just fall back on svn, because I know how it works and I know that there is lots of help out there on getting it to work.

Wednesday, March 9, 2011

Noise for Games

This post is inspired by something I recently read on Notch's blog about Minecraft. It turns out that much of the random terrain generation that happens in Minecraft is from noise-based textures. Initially he used a 2d noise as a height map. He has sense modified the technique to use a 3d procedural texture with some secrets to allow for overhangs to be generated. It occurs to me that there might be some room for noise-based textures to be used in random map generation even in pygauntlet.

Conveniently I have a little bit of experience with procedural textures using Perlin and other types of noise so I feel well prepared to eventually implement some noise stuff when the more important functional features are finished.

Monday, March 7, 2011

Test-Driven Development

I just read about this technique, and while it probably will not be added to pygauntlet, I think I will use it in any of my future game projects. The idea is to write a test, run it to see it fail, write the smallest amount of code to make it pass, then continue with development (refactoring, etc.). The good things that come from this process are primarily a set of tests that you can run on your code to be sure any changes have not broken anything, That means every time something is changed, you can check the test to see if the change was successful or wrong. In a small number of cases, one might find that the test is no longer accurate and needs to be modified to match the new correct assumptions.

A big thanks to Noel for the paper he presented at the 2006 Game Developers Conference and his blog post: Games from Within | Backwards Is Forward: Making Better Games with Test-Driven Development

Friday, March 4, 2011

Documenting a Dream

There we go. I made a horrible title for the first post. I must be amazing. Anyway, the point of this blog is to let people know information about progress on the open source project Pygauntlet. So far we have 2 people "actively" working on the project. I'm working on the programming, and we have an artist working on new images for the game that might also post updates on here from time to time. Maybe at some point the game will be ready for packaging and distributing.

Also, if anyone who happens to read this has any questions, feel free to post them and I'll do my best to respond to them.