MPOGs

Getting started with Galactic Horde

Oliver Brown
— This upcoming video may not be available to view yet.

Galactic Horde is an online strategy game that I’ve helped program. But I’ve only recently started playing. Unfortunately it can be quite a daunting idea since the game is rather complicated. This provides endless entertainment for people who have mastered it, but problems with regards to getting new players.

As such I intend to write a series of posts containing hints and tips for new players - something I am at the moment.

Unfortunately the only tip this post will contain is “Signup and try it out!”.

Galactic Horde

Oliver Brown
— This upcoming video may not be available to view yet.

You may have seen the link for Galactic Horde, an online game, in the links bar but never thought to visit. Well the link is not there randomly, it’s something I helped in. Specifically I wrote the PHP back-end for it.

Well I never really had time to play it myself and never knew exactly how the client interacted with what I wrote. The result is that I can read the forums for the game and have no idea what people are talking about. It’s really scary.

Have a look in their forums for an idea.

How about Cash City Wars

Oliver Brown
— This upcoming video may not be available to view yet.

That’s the name I’ve come up with for the game since it’s vaguley based on Cash Wars. Or at least will be. I’ve started adding descriptions to towns. There are a few issues still though, most notably the existence of multiple towns with the same name which I am eliminating (I’m only intending to have the largest 100 towns).

Cash City Wars

New MPOG idea

Oliver Brown
— This upcoming video may not be available to view yet.

I was reading a tutorial on using PHP and GD with GIS data, that is how to draw maps with PHP using real life data. There has to be a cool way to make on online game out of this although I’m not sure what. I was thinking something along the lines of the old CashWars game…

User scripting in Galaxia Reborn

Oliver Brown
— This upcoming video may not be available to view yet.

Something I’ve wanted to put into Galaxia for a long time is user scripting. i.e. allowing users to attach scripts to objects that are triggered by certain events. Ultimately this could lead to interesting computer players (but that’s a long way off).

Well I’ve been playing around with it a little and the easiest complex data to parse seems to be XML. So the scripting engine will be XML based. The following is how a script will (hopefully) look:

<onFleetEnterSector>
  <IsEnemy target="$fleet">
    <ExectureOrder order="attack" target="$fleet" />
  </IsEnemy>
</onFleetEnterSector>

Just in case you can’t tell what it does, when a fleet enters the same sector as your own it checks to see if is an enemy and if is, attacks it.

Firstly a bunch of variables the script can read are passed to it. After that all the processing works using callbacks. When each tag is encountered, it just calls some specified function with the attributes passed as arguments (probably as an associative array to easily handle a variable number). If it’s a conditional (like “IsEnemy”) the function must return true or false. If it’s an action (like “ExecuteOrder”) then it returns nothing. There is also another type - one that returns an arbitrary value (i.e. a function - but I’ve used the word function too much already).

I’ll put the code up once it’s tested a bit more.