The battle engine and its miracles...

Today I was able to go further in my battle engine and, surprisingly, it's working pretty well. With an event driven GUI-like interface it's getting easier and easier to go on... however some things keep me amazed and wondering... Sometimes I don't even remember stuff I myself have added in.

I've just spent 20 minutes looking for the place I told my game to select the party during a healing spell. I swear I didn't remember putting that in and later on I just found out it parsed the type of skill and added the player party to the list of "enemies" instead of the enemies themselves. That's how intelligent my GUI is, I'm really happy.

Now I just have to add in some animations for both skills and players and the battle engine should be done with... that's a huge step, seriously.

Next I'll be posting a small video of it done (hopefully), so keep tuned for even more!



New possible addition to the team?

Hello guys, today I have great news. Probably the project will now speed up a little bit and I have to apologise once again for the lack of updates as of lately.

I've found someone who could, probably, be a nice addition to the team regarding the graphical aspects of the game, I'm already "using" her for characters concept art and she'll take on pixel art as well... I have great hopes for it.

Plus, even though university (and Dragon Age: Origins *cough cough*) is keeping me really busy, I've managed to add some new stuff and polish a little more my skill system / battle system. Nothing great from this update about the game, however I'm slowly moving on toward my target and I really hope I'll be able to release this game soon (aka less than 1 year...).



...done organizing?

At last, I'm done commenting all the code I've written... I'm only missing a last part regarding the battle system, but that is because it's roughly incomplete and probably due to changes soon, so I'll avoid commenting/explaining that since it will change soon.

Today I, also, was busy with installing and trying out the new Beta 2 for Visual Studio 2010. Too bad it doesn't support XNA GS yet, so I cannot make use of it for Harmonia Warders... well, VS 2008 is awesome already, so no loss.

Now it's time to tackle again on the battle system, I have to get this done, it's dragging me down so fast that I almost have no energies for anything else...

and still need artists. I hope someone *looks up* sends me an angel to help and draw all my images, but that won't work I bet, don't know just why though...


Organizing the style, boring...

Hello everyone,

Today felt the urge to just re-read the whole code I've written so far and... I have to say I'm impressed with the amount of work I've pulled out and I still have to do, it's really huge. Some parts of codes to me seemed obscure and not really clear, even though I was the one that wrote them... and that is understandable since I had not touched them for a couple of months, especially the ones around the TileEngine (which, as I said, I took from Nick and slightly modified).

That is the main reason why I realized I do have to keep my code clean and well commented, to save troubles later on, when I have to come back to what I've already written and change/polish/optimize it, it really bothers me when something is unclear and entangled, spaghetti code is a bad thing and generally leads to bug and glitches, which I'd rather not have in the final product.

Exploiting the awesome feature of Visual Studio 2008, I've just started adding comments and a small documentation on my code, for every line of code, member, method, class, whatever... It is a very boring task but, in the end, it is very rewarding because the end-product seems really professional and it is easier to be modified and re-used for later projects as well... and who knows, I may also leak it around the intertubes for people to use it on their own projects... as long as it appears good, working and clean enough.

So far I'm not even at a quarter of the way done, so I'll keep on going and commenting everything I have to, while sipping a nice cup of fruity tea and watching my awesome Opeth DVD on the Xbox360 in the background. It's very mellow and relaxing, the perfect mood to get a nice job done.

Everything will probably be done tonight or tomorrow night at most, then I'm back to coding... That battle engine won't get completed on its own (yet... hehe)!

Cheers! ~Morgy


New rush kicking in

Welcome back Morgy!

Thanks Morgy, I'm back!

Yeah, that's it, I'm finally back on this project. Since university kicked in (*ahem*Aion*ahem*) I didn't have much time to program and I felt kept out of my own project. I found it harder and harder to go back to it, but I promised to myself I had to complete this, especially if I want to even try to participate in next year's DreamBuildPlay (if there is one). That (and a lot of boredom today) is why I finally managed to get my head focused on this and read back to pages of code I wrote and now I'm back kicking, programming the game once again.

Today I improved my battle screen management, adding a BattleSkillList screen for the skill selection. I don't like "hard-coding" everything since I want to keep my classes as flexible as I can, however I had reached a real dead end with this BattleScreen stuff. I had to resort to have one screen of each action type (skill, attack, enemy select, item, etc etc) coded slightly different from the others if I wanted to keep going with this. Probably there was a better solution, but as long as I can get this to work and I don't drawn entangled into my own lines of code, it should be ok. In later versions I may try to revisit it all once again and make it better, but so far it seems to be working.

The real problem now is that I can't do any real testing yet, since I need to plan skills, animations and battles and I'm not in the condition for that (need editors, designers and all that stuff, which I'll be looking for when the basic engine is complete). If you feel like helping me out, with any kind of character art, skill art style and stuff, just feel free to mail me , I'll be glad to include them in the game if I find them appropriate. Any help is well-welcomed.


Revisiting time!

Since I started reading Jim Perry's book (follow my previous entries for more details) I realized my skill/action structure in combat is a bit flawed and is not as smooth as I thought. To better say it: I found a way better and easier way to handle the problem so I feel I'll have to actually change both the skill/monster structure, editors and the in game code to handle these cases.

That will leave space to the addition of items, special skills and all the other fancy stuff one may see in a turn based RPG.

Time to get to work then, gotta fix that stuff so I can go on with developing this game... It's still going, slowly, but still kicking!


Time to continue the flow.

Finally today the book I was waiting for has arrived. I have to apologize for not going on with this project for a couple of weeks, however I was really stuck and was too afraid of screwing up something if I continued like this, without a guide or a plan to stick to. Now with the book, I'll be able to follow some guidelines for Harmonia Warders that will reveal, hopefully, useful throughout all the stages of development.

In the meanwhile, while I was gone from this blog, I had the time to think up a physics engine (incompleted) and an AI chatterbot that uses mysql database and a neural map interaction(incompleted as well) which will eventually turn out as useful one day for future projects. As of now, time to get going with Harmonia Warders, this project is not dead and will never be. I will see it to the end, I hope so at least.


Still on hold, keep in line..

Today's update is a bit useless.. however I felt like writing down something here for the readers...

As you've read the project is currently on hold for at least 5-6 days till I get the book in my hands and actually feel into going on with the project, however I've been keeping myself ready and trying new stuff in C#.

First, my physics engine is working well as I'm building it, it's a bit simple and actually it's harder than I expected.. but hopefully I'll get it to fully work in some time, the real satisfaction is that I'm actually making it 100% myself without taking stuff from other engines (yet).

Another thing I've started reading into is Socket connections in C# and I have to say I'm stunned at how easy it is. Socket always sounded bad and threatening to me and I never actually dared to approach it, however I can say it was way easier than I'd have expected. I've already made a couple of test applications and they work semi-well (problems with IP connections and stuff due to my router...), I'm satisfied with this as well.

Told ya guys, useless update... Cheers!


While waiting for reinforcement..

Today I ordered online Jim Perry's RPG programming with XNA book on Amazon to help me build and design Harmonia Warders.

Since I've been programming like an idiot this last week, I noticed a decreasing concentration on the project and I've been making lots of mistakes (for example I totally forgot the "target type" propriety of my skill system and I had to re-make the save-load functions of the skills and the editor). Since I don't want to clog my programming flow with mistakes and bad designing that could slow down my project, I decided I'll make a pause from this project till I get delivered the book.

Until then, I decided to have fun and create some kind of simulator for XNA to build up some skill (Especially toward 3D programming which I know close to nothing). I don't know yet what to make, but I was thinking something around electromagnetic physics, currents and those things. Basically because there's not much around that simulates it in games. Sure, there's the whole gravity physics simulator, but that's been done before by tons of people and I don't really want to copy from others.

I'll just go open my physics books and take some formula and stuff, then have fun in XNA and see what I come up with.



My Editors

Since I've just now completed my new skill editor, I decided to put in here and describe all the editors I'm currently using. I love making editors and other cool external application that help developing my games, it takes less than 1 hour (well, except for the map editor that gave me days of nightmare) and it speeds up the scripting process by much.

I'll start with my two new editors: The Monster and the Skill Editor

As seen in this picture, in the skill editor I have a database system that enumerates every skill with a number (ID) and every skill has got different properties, the animation, the animation properties and the Adj values. Those values are float numbers that describe the skill and its damage formula, whether or not it's dependant to a certain stat and how much by it. I have to say thanks to the guys over at the xna creator's club forums for helping me figuring out a nice formula base to use in this. Hopefully it turns out well.

The Monster editor is a bit more simple (I made it earlier, then decided on how to expand the concept) and I think I may get it to look similar to the Skill editor. As it is now, I have to manually edit the database.dat file for every monster and it will become tiring and prone to errors in the long run. However I'm really satisfied by it, you can see the monster entity doesn't have an animation attached.. that's because I decided to put a sub-folder in the monster folder called monsteranimation which keeps track of every image of the monsters, which will have the same name of the monster file, meaning I don't need to list its name as well.

And now... the almighty Map Editor!

As you can see, it's almost all copied by Nick's Editor, I just had to add some more features, like different layout and support for a tilemap (different from his own project), tile width and random encounters flag.
I'll probably have to expand on this concept later on (I fear this, seriously every time I touch that editor, lots of errors and exceptions come up, it just hates me!) when I will add GameEvents, but I'll keep it for later.

If you have any comments or suggestions, be free to express them!
Another day probably I'll put up here the Item editor too, which will be almost 100% similar to the Skill Editor, that is because those two things are almost the same...
Hopefully this was interesting enough for you guys.. Bye!

Battle Engine

What I'm currently working on is my battle engine. Basically what I decided to do is keep a gamescreen of the battle on the background (with enemies, the party and the skill animations) and then add on top of it a battlemenu menuscreen which navigates through the available commands for my characters.

Then I created a BattleEventArgs Event type to interact between the two screens. This event returns an Action type with datas of the type of the action (skill, item, attack, run, etc etc), the ID of the said action in the database (Item database or skill database, depends on the action) and the ID of the target in battle, which is the index of the entity in the party (both enemy or player party, depends on the type of skill or item, be it healing or attacking skill/item).

Then when I return to the battlescreen, the menu disappears and the battle goes on, it cycles through all the entities on the field to see who's striking first (based on a speed check, dexterity stat) and if it's a player, it brings up the battlemenu, else it runs the enemy AI script (which I have yet to make).

It's a nice battle system in my opinion, I'm only having a bit of problems with cycling through the different options in the menu, as some of them may have a multiple list to access to (skill command -> list of skills -> list of entities to use the skill on. Then return the selected entity and the selected skill..) but I'll work something out.

This is a small video I've recorded of my progress so far. It just shows the basics and I have added more stuff to it too now... You can find the video also at the link in youtube: http://www.youtube.com/watch?v=Uf1xyhHmLt0 (there's also another older video in there..).

Cheers! ^^

First post, bit of introduction.

Hello my friends, this is my new blog to keep track of the advancement in the development of my new (and first) RPG called Harmonia Warders.

It's an old school style RPG, with 2D tiled/pixelated graphics, developed by me on both PC and Xbox360 (under Xbox Indie Games).

Hopefully I'll be able to get this project to the end and release it because, more than anything, I don't want you guys to play it... I want to play it!

I'm not kidding, I just want to see this monster take life and have fun with it and its characters.

There is not much concept art yet, as it's still all in my head (I lack graphics artists, so far a friend is helping me..) so I can just show you this:
She's the second main character and I can't reveal much more, since it would spoil the fun.

Now, on to the technical part... so far I have managed to get done:

Main Menu - 90%
Tiled Maps Engine - 80%
Battle Engine - 40%
Game Menus - 5%
AI - 0%
Skill/Magic/Item Data - 0%
Monster Data - 5%
Character Data - 0%
Game Script - 0% (All in my head so far)

This doesn't include the graphics..

Graphics - 5%

As you guys can see, I've got a pretty long way to go, but hopefully I'll try to release this before Christmas... Let's hope!