?

Log in

No account? Create an account
About time to set up some version control - Blather, Rinse, Repeat
January 23rd, 2007
11:04 pm

[Link]

Previous Entry Share Next Entry
About time to set up some version control


Some things to show off here:


  • they're just as good as name brand zombies - The backs of the characters (including monsters) all have their names printed on them. I thought this was going to be a good idea, but it looks quite a bit dorkier than I expected. Zombie zombie zombie.

    I'm not sure what to do about this at this point - I'm clearly (CLEARLY) not going for polished graphics at this point, but this is distracting me. I could draw backs for all of my stick figure guys, but that doesn't seem right.

  • What's up, Ray? - I've got the beginnings of a UI showing up there. It looks like it's Ray's turn to move, with 10 hit points, and 4 action points. Movement points. Initiative units. I don't think I've got anywhere near a consistent name for these things in my code, so this is probably something else I need to let stew a while until I decide what to do with them.

  • Some sort of weapons at the zombie's feet - my overlay system (inspired by, as I've said, the overlays we used in Lord of the Rings: Tactics) is working adequately so far - I've got "you can't move there", "you can move there", "you can attack there (melee)", and "you can attack there (ranged)". Someday soon, there'll be "you can attack there (magic)". More or less soon.

  • The dog that does not bark - what's the Holmes quote? The bit about the important information conveyed by the silence of a dog? What you do not see are the zombies I've already dispatched. The archer chick is (too) deadly with her bow, and the brute force guys have made short work out of some of the zombies. Zombies also attack the Player Characters (PCs), but that's not exactly working correctly.

  • Wimoweh/Mbube - I retired the lion that had been in the game up until now. Somewhat. At some point, I'll bring him back, because lions are fierce, and would make a nice complement to the zombie horde.

  • Weapon Graphics - these aren't onscreen yet, but I've got a bunch of weapons - each character has a signature weapon, and the zombies and ghost zombies have species-appropriate attacks. The bow is unique now in that it has range. There is no "to hit" calculation, so the archer chick can hit any enemy on the board, if I can point the camera in the appropriate direction.

  • It's not plus two, it's plus one plus one - I'm storing the weapon descriptions in an INI file, which is all data-driven and good. The damage that each weapon deals is described in an almost-human readable string, like 2d10+3, which means "roll two ten-sided-dice, and add three to the result". It's a small amount of code, and roughly as impressive as a first-semester programming assignment, but it pleases me. Heck, I had a boss once who was excited about some code that would convert Arabic numbers into Roman. Meh.

  • But now it's breaking on me - I got up to find out how the Union is doing (I'll spoil it for you, it's strong), but I didn't feel like coming back and fixing stuff afterwards. Turns out, when you kill a monster, the game doesn't completely clean up all monster information, which can lead to you sort-of-killing it a second time, which the game really doesn't like.



So, I should really set up a Subversion repository for the game, so that I can check in my work when it DOES work, so I won't be demoralized that I've broken a working game. Actually, the stuff that I'm ripping out now is stuff that needs to be cleaned out anyway, so it's not that I'm losing good code, I'm just in an unfortunate gap between implementations.

I've been generating a fair amount of assets (sure, they're scratchy little stick figures, but they add up), and it'd be unpleasant if I accidentally deleted the art directory. I could recover pretty quickly, since most of the art starts out being hand drawn, so I still have the originals kicking around (and I even know where the originals are), but just the same, better set up version control.

For as placeholder and silly as it looks, I'm actually very close to having an actual game to play. And I'm getting to the point where I want to go back and reconsider certain decisions. As I mentioned before, the character/monster names on the back of the "counter" isn't working for me. The camera control is cumbersome. If the camera's looking dead-on at the side of a counter, you can't see it. The shorter characters barely see over the bottom of the screen.

It'd be kind of keen to have a working game, like one you could win or lose, by the end of the week.

Tags: ,

(9 comments | Leave a comment)

Comments
 
[User Picture]
From:chiabrit
Date:January 24th, 2007 03:23 pm (UTC)
(Link)
"they're just as good as name brand zombies -"

Slap the old Nethack symbol for critters on their backs.
[User Picture]
From:tsmaster
Date:January 24th, 2007 04:45 pm (UTC)
(Link)
Heh, nice. I like that.
[User Picture]
From:progrium
Date:January 25th, 2007 02:42 pm (UTC)
(Link)
You know... I run a hosted Subversion and Trac service.

http://devjavu.com
[User Picture]
From:tsmaster
Date:January 25th, 2007 04:44 pm (UTC)
(Link)
Good to know, and I might make use of that at some time.

For my own purposes, running Subversion on my in-house Linux box is working for me for now.

As I went to create a repository for this project, I discovered that I had already checked in a version of things back in November, so I was farther ahead than I thought.


Perhaps you can give me a suggestion on some odd behavior that I'm seeing. I'm using Tortoise on my PC as a client, and I connect to a variety of different repositories. My local Linux server has a several second pause when committing changes, but then once the pause is over, the changes go through quickly. When I commit to other servers, I don't see that pause.

Any ideas why that might be happening?
[User Picture]
From:progrium
Date:January 25th, 2007 04:48 pm (UTC)
(Link)
Not sure about that one. What are you running to serve the SVN?
[User Picture]
From:tsmaster
Date:January 25th, 2007 05:11 pm (UTC)
(Link)
I'm not using the Apache integration, so I've just got v1.4.2 of svnserve being triggered by xinetd.

I know that the reason for, for instance, mod_python is to not have to reload the Python interpreter each time a script is hit, so I wonder if there's some similar startup time that I go through each time I hit the server. It makes a certain amount of sense, but the delay seems absurdly long to be accounted for by that explanation.

I just did a SVN Update of my toplevel directory, and it took ~22 seconds before it reported that it was complete, though everything was already up to date. I then tried to update a single file in that directory, and it, too, took around 20 seconds to come back (again, already at the latest revision).

It doesn't seem to be the Tortoise client I'm using that's at fault - using the command-line client behaves the same way.

Perhaps when I lose my enthusiasm for working on game logic and want to dig back into admin work, I'll migrate it over to the Apache integrated configuration that I expect is more common.
[User Picture]
From:progrium
Date:January 25th, 2007 05:27 pm (UTC)
(Link)
Or you could just import your code into DevjaVu and not worry about it again. You'll also get ticket tracking.
[User Picture]
From:tsmaster
Date:January 25th, 2007 05:55 pm (UTC)
(Link)
Yeah, I'll keep it in mind. My initial hesitation is that at this stage of this project, I don't know if an offsite version control system makes sense - I've got the best DSL link that the phone company will give me to my home, but it's still not nearly as good as I'd like, so doing updates to anywhere outside my house will slow me down a bit.

Of course, this 20 second delay means I'd have to be moving a serious amount of data before I see any real savings, but my geeky side optimistically thinks that there's a simple fix that'll take care of the 20 second behavior, and I'd like to get that sorted out.


I'll chew on it, though - I might shift my thinking and decide it's worth offloading some of that responsibility to DevjaVu.
[User Picture]
From:tsmaster
Date:January 25th, 2007 05:47 pm (UTC)
(Link)
Oh, and it's a 3.4 GHz P4 machine running Fedora Core 6. I had (not too long ago) been running on a 500 MHz P3, which was exhibiting the same behavior.
My Website Powered by LiveJournal.com