Saturday, September 17, 2011

jub jub

This week status effects and their related actions were done. Additionally the data portion of abilities was down in addition to part of their implementation.

Saturday, September 10, 2011


I have begun implementing the battle system in tiny independent pieces. So far this is going pretty well! Currently I have damage processing, conditionals (non-trivial when game data can be transferred over the network so an ordinary eval statement is out of the question), and actions. I will talk more about this design strategy next week!

Saturday, September 3, 2011


I added a new model-file selection prompt, a sync and change model button, and even optimized the DB slow issue (h2o used to take 4 seconds to load. now it's instant)- which turned out to be a fairly simple error on my part. Hooray! Next week, the battle system begins.

Saturday, August 27, 2011

Return to Gruedorf

The gruedorf site was down for like a week and without a timer to nag me I simply didn't care to update this thing. But that's all in the past.

Updates or not, plenty of progress has went down. In short summary the current build of the game lets 4 players connect together using a simple gui, walk around the map in a turn-based fashion, and chat.

That was completed weeks ago. More recently I have been churning out technical documentation for the battle system's mechanics and designing how the main game plays out. More recently I took ikaDB out of the attic, ripped out its dependencies on iked (since ika in general is now dead), renamed it to GameDB (I need a better name), and have begun to spruce it up a bit for this project.

The first improvement I've made is caching the GUI for models. More specifically: wxpython (or possibly the database itself) is really slow at generating the GUI for each model, so I added caching the generated model GUIs at start up so the interface is much snappier now. Unfortunately I couldn't make it cache modal pop-ups for add/editing sub-models due to how wx works, but those are used less frequently and they cache after the first instance so it's not too bad.

Next up is revising the GUI for its new standalone format, fixing up the bugs I encountered while working on Hydration 2, and trying to speed up the underlying DB access (presently it's too slow to use in real-time, you basically have to load the entire thing into your game at start-up, and that takes a few seconds. I hate this and want to fix it. I'm not sure of the underlying cause yet.) I'm toying with the idea of a public release of GameDB since it would be useful for virtually any game written in Python, but there's a lot of nasty gunk in it I'd want cleaned up before a public release.

Saturday, June 18, 2011


Some design doc work was done. That was it! for reasons beyond my control.

Saturday, June 11, 2011

Find Path

I got the beginning of pathfinding done but there's still additional work to be done on it. Then I realized my planning was insufficent to determine how to connect the dots so I went back and started expanding the design doc for the code. And I am still doing just that. A poor week.

Saturday, June 4, 2011

Bugs, bugs, bugs

My goal for the week, after some soul searching, was to get sprites working. That goal has been mostly completed.

It's partially due to my inexperience with it but so far C++ is like working in sludge since virtually every additional piece of functionality I add gets a bug/flaw associated with it that takes an hour or more to fix before I can move on to the next thing (hello thar manual memory management). Hopefully that becomes less plentiful as I get used to it.

Saturday, May 28, 2011

Questionable time allocation

So I swapped out CEGUI for MyGUI, which took a lengthy amount of time to do. I'm somewhat second guessing that decesion since it's even worse documented than CEGUI was, though it makes up for it with a better toolset and working in a way I prefer for the most part. I also brainstormed some means of dealing with sprites. I am not particularly pleased with this week's progress and I kind of wonder where my time even went. Such is the curse of a broken sleep schedule.

Sunday, May 22, 2011


-Messed around with the general architecture of the map engine to support multiple maps at once, among other things.
-Added mouse click detection (extra fun in iso) and various tile setting/coordinate converting utility functionality.
-Began making CEGUI and SFML cooperate. It's working fine! Just need to learn CEGUI now.

I was originally planning on offloading most of the game logic to python, but after looking in terror at the embedding guides I'm probably just going to write most of it in C++- though I may end up revisiting python integration to a lesser extent much later on.

Saturday, May 14, 2011

land grouping screen display

I guess it's some isometric map engine written in C++ using SFML or something.

It has zoom functionality as well I suppose.

More details laaaaater.

Saturday, May 7, 2011

The Littlest Gruedorf

A busy week, so a meager offering this week of having written, like, 4 text boxes. That's it. There was some beta testing / advertising but that's not REAL work. Next week the gloves come off for seriouse.

Sunday, May 1, 2011


I actually did make progress (In fact I did it on like Sunday of last week), just gruedorf slipped my mind. In short I finished hooking up the first area so encounters and relevant NPCs are in there and working. I even had a little beta test on it and I'm up to about 30mins of gameplay so far. Busy week so I haven't touched it since, but we'll see where this goes.

Saturday, April 23, 2011

Plot a portal to progress

-Added first area's boss.
-Created crafting items/menus (still need to place 'em though)
-Finished obstruction exporter. Also did a foemap exporter.

Saturday, April 16, 2011


-Drew a new map
-Created the 3ish basic enemies (drawn/in-game)
-Did half of the obstruction editor (python script reads/writes OHR obstruction format, now I just need to make the sphere map editor output collision data and have it read that format and put it into ohr format- I have to do this since the OHR doesn't natively support image based maps, but Sphere's editor does.)

Not fast enough.

Saturday, April 9, 2011

You can't just win a gruedorf

Grue pointed out that he is currently winning the gruedorf and we all know that no one can win the gruedorf.

The heck is that? I don't even know how to explain it since it involves several layers of community that no one who reads this blogs knows anything about (hence why I wasn't gruedorfing it to begin with!).

In short I'm making a game for the OHRRPGCE (it's a terrible engine, but you know sentimental community value), there's a fangame contest, and I'm making a fangame of a game the author deleted because he didn't think it was good enough.

You can see the original game here:

He's kind of a lot better of an artist than me!

Of note I'm trying to draw all of the maps, enemies, and even sprites by hand with a tablet. I'm a really, really bad artist. But for some reason drawing doodles doesn't infuriate me like drawing pixel art so I'm making a lot more headway with my awful art here!

Right now I'm really just drawing crap and outlining the plot since I have to wait on an engine feature to make it POSSIBLE to do image-based maps in the engine (now THAT'S customer service). You'll probably get some more awful doodles next week!

Saturday, January 8, 2011

Let's talk about MMO's

I'll be breaking off from gruedorf tradition in that I probably won't even be talking about Actual Game Progress. Probably. I'm here again because I want to talk. I've decided to set out upon the greatest of foolish hobbyist ideas: an mmorpg.

Fortunately I'll be bored of it in a month and we can all forget about what a bad idea it was.

So I'm here to talk about the genre and why I feel like wasting my time working on an entry for it that won't be completed. Mostly it's a way for me to sort my thoughts on how to design this thing.

I find the current manifestations of the genre to be truly terrifying. By and large companies have homed in on isolating ways to short circuit the human mind's desire for progress in order to be paid money on a regular basis. This is clearly a pretty good business model. But I'm not much of a business man, and I don't find it very interesting.

Let's look at the social aspects of MMOs for a moment. I think we can divide current examples of the genre into two pools: Social and gamey. Social mmos like, say, Second Life mostly focus on sharing crap with other users and talking about stuff.

Gamey mmos I would compare to the pvp and raid/instance content of World of Warcraft (and basically every "gamer" mmo out there). Here you get to enjoy users talking primarily about the game itself, whether that be strategies or bitching about altered mechanics (in addition to general random talk).

Then there's stuff like world of warcraft's world content which essentially may as well be a single player game where a bunch of other random people pass by occasionally or you can drag in your friends so you can do the same thing individually but faster. The only other time other players have any meaningful interactions here are with sporadic pvp or if it's new content, long waiting lines. So essentially the social aspect in this type of game is basically nothing.

Let me contrast this with a little story. Some years ago there was a player-run Ultima Online server that was focused on roleplaying. Part of what they used to enforce this is that there were no NPC stores whatsoever. There also wasn't an auction house for automating player interactions. Crafting classes were also essentially separate from combat. What this meant is if you wanted better equipment you had to set out and talk to another player and ask for it. Sometimes you'd need to pay, sometimes you'd need to fetch the materials, sometimes they were busy. Sometimes you'd talk about something else while you were at it. I think that's interesting. Somewhat casual player interaction about the game without being about the mechanics and how to exploit them in minute numerical detail.

Obviously this is somewhat contrived in that roleplaying was enforced (you had a write a short background biography to get on in the first place, so literacy was a requirement) and the scale of the community was small. Still, it's interesting. It's something I'd like to shoot for: encouraging social interactions that are about the game.

Next time I'll talk about balance in mmos (which is to say something that cannot be achieved and is the reason why there are no worldwide consequences in any current mmo).