Parthon Software

Have fun, Play hard.

New Direction

Posted by Parthon on July 19th, 2008

After spending months working, and fighting, with XNA and C# I’ve decided to throw it in and go back to C++. Why?

It’s an interesting platform that’s for sure. The model loading is quite smooth all the way through to the rendering and even all the assets are handled for you, but only if you follow the design methodology that XNA uses. This consists of a few god classes, with all game objects floating around in a cloud. Game objects render themselves, which really consists of a giant loop through all the existing objects and calling custom draw functions on each one. For C# being very Object Oriented, XNA is very much not. It encourages programmers to break the rules and use some very nasty anti-patterns. I progressed well on a viable engine, sticking to a good design as much as I could, but in the end it was fighting a losing battle. Even if I managed to win, there’s such a low install base for .NET and XNA that my audience would have been reduced dramatically.

Given this, I’ve switched back to C++, am spending time learning how to use Ogre3d, and hopefully will have a game prototype to show very soon. I’ve put Space Fortress on hold, because that’s a massive project and I wouldn’t want to relearn C++ while at the same time trying to wrestle that huge design. Instead I’m starting work on the RPG I’ve been thinking about for a while.

It’s a 3d real time action roguelike, which isn’t very roguelikey at all. It’s taking some of the main characteristics: Resistances, leveling up, random dungeons and monsters and combining it with the sort of fighting from Phantasy Star Online or one of the 3d Legend of Zeldas, and then topping it off with an experimental skill system. I think it will be good, there’s been a great lack of a GOOD dungeon crawler for a while that I think it’s time to take on the challenge.

Posted in Projects | No Comments »

Space Fortress Tiles

Posted by Parthon on March 20th, 2008

One of the interest things in the design of Space Fortress is the tile system. As you can dig into and deform the terrain the challenge is going to be how to show this accurately and realistically without take away any of the fun. The current idea for how to do this well is with a 3d tile based system. Each tile is roughly 2 metres cubed, allowing for any of the races in the game to walk through one comfortably and pass each other without worry. The tricky part though is how to handly parts of tiles. It’s possible in the design to dig into only part of the tile, or have it only half filled up with water. Being able to do this efficiently is going to be a hard problem to overcome in the design, but well worth it. Right now I’m contemplating cutting the tile up into 125 smaller “cubes”, which don’t impact on the surrounds but in turn act as a sort of guide to what the tile is filled with.

Even harder is what tile contents there can be. Examples are solids that don’t move like rock or dirt, gasses that flow freely and expand in all directions, like air/oxygen and more toxic gasses, and lastly flowing substances subject to gravity like water, toxic goo and sand. The physics for the engine will have to be self contained, efficient and fun.

As for the rest of the tile based system, it’s not just the interior of the tiles. Between each tile it will also be possible to build walls, which are, in theory, paper thin. This design kind of cheats a little, but allows tunnels, domes, airlocks, floors and walls to be included without fighting too much with a good physics engine.

This two part design of interior tile and outer face will be the core of the game, just to see if it stands up to the rigors of the design.

Posted in Space Fortress, Projects | 1 Comment »

Space Fortress Universe

Posted by Parthon on March 19th, 2008

One of the core ideas of Space Fortress is being able to pick a location, either a planet or an asteroid and land a ship there to build. This leads to lots of interesting ideas as everyone who knows a ltitle about space knows that there are few Earthlike planets out there. It also allows for some really interesting random generation in terms of the galaxy. I envision that the player will be able to pick a star out of hundreds or thousands in the galaxy, then when the system expands, pick one of the planets or asteroid belts to land on. Asteroids will have varying types of minerals, and it’s definately where you will find the more interesting mining and production chains, but on the planets you can choose to deal with animals, toxic gasses, water sand and worse. The planet style game will probably lean towards the colonist heavy gameplay as it’s easier to produce food and there’s the space for building, where as on an asteroid the rich minerals and lack of air and water will lead to lots of refining and production with less colonists.

Some of the ideas for planets also involve toxic and acidic air, meaning suffocation or painful death for those that are unprotected, weather problems like electrical storms and massive typhoons, and roaming animals that will be either friendly and a source of food, or agressive and have a tendency to want to eat your colonist, or even your fortress. The ground will be more terran but with themes on planets. Some planets will feature mainly sandy or loamy soil, some with lots of water from oceans or rivers, some which are very mountainous and rocky and even some that have lots of molten magma and lava or covered in layers of ice and snow. This gameplay will be very much the fortress vs the environment, and being able to pick where you start will determine how hard it will be.

Asteroids on the other hand are floating lumps of rocks in space. The size and mineral make up of the asteroid will most likely be the focus of interest for the player, but some asteroids will have more problems such as solar radiation, meteor strikes or just being too damn cold. The largest asteroid fortresses will cover all 4 sides of the asteroid and even dig into the centre of it. This will lead to some interesting problems as the gravity will have to be artificial and if/when the gravity direction changes, the colonists will have to be able to deal with this.

As for the galaxy itself, it isn’t peaceful either. The race you play as will be humans for now, but the rest of the galaxy will have areas of space controlled by hostile and friendly aliens. The friendly aliens trade with you and visit from time to time. You might also build a resort type fortress where aliens come to stay on holiday. Hostile aliens however will try and launch raids, either violently to kill your colonists and drive you off, or steal anything they can, all depending on their attitude towards you and their temperament. To combat this weapons will be available, both as weapons platforms to shoot down enemy ships and hand held ones that your colonists can use to defend themselves. Each region of the galaxy will have a varying number of races living nearby, some regions will have none, and some regions up to 5 or 6. Eventually I may model interactions between races, and allow you to play a particular race, but it won’t be the focus for a long while.

This is my long term plan for the environment the game will take place in, but won’t be the focus for a while. Right now it’s full steam ahead for the actual gameplay mechanics. Stay tuned for more soon.

Posted in Space Fortress, Projects | No Comments »

More Information on Space Fortress

Posted by Parthon on January 30th, 2008

Like I promised, here is some more information on Space Fortress.

The game is going to be generally futuristic of course, as it involves space colonisation. The main focus of the game is going to be landing a ship in a remote area then building up a colony from there. Some locations will be planets which will have water, natural vegetation and even wild animals, and asteroids which will have no air, lots of minerals, and a reduced area of building. I don’t want either of these locations to be easier or harder than the other, just different in terms of tasks and gameplay. I think it will be down to balancing the various elements each area will start with.

How you you start with will be determined by Galactic Credits, the currency of the game. The ship can take 1 crew member for free, but extras will cost increasing amounts of GC in order to upgrade the ship to take more crew members. Equipment for the colonists will depends on how much space it takes up and how hard it is to obtain. Small tools will be cheap, a mining laser will be a little costly, and droids will be very expensive due to their size. The starting ship will come with single cube quarters for crew, a little storage space, and basic needs for the fledgling colony.

The part that interests me is the world. It’s going to be a cube based 3d world that can be deformed, dug out and built into as you progress. In fact to use the minerals you find, you will need to dig into the ground. Plants will grow and spread, water floods, and the vaccuum of space will suck the air out of any open passageways. Players will need to build walls and domes to protect the colonists from toxic gases, natural hazards and invading aliens.

The list of features in the game now covers 4 full pages. Even if I only manage to put in half of them, it will be a very indepth game. I plan to try and keep the user interface simple with context sensitive menus which make sense. The more complex colony management items will be in menus that popup at the bottom of the screen. Simplicity, efficiency and elegance are the goals of the UI.

The AI is going to be the hard part. Aside from assigning jobs and prioritising them, the colonists will go about their business unguided. They will do as they best see fit, sleeping, eating, relaxing and working based on needs and their list of jobs. Like in Dwarf Fortress, I want it to be fascinating to see them all go about their activities, a little bit challenging to get them to do what you want, and a little bit frustrating as they don’t do exactly what you tell them to do. When you can’t control the colonists, it should take the focus from micromanagement and onto macromanagement, where the design and efficiency of the colony is most important.

That’s all for now about where the game is going. I’m working on it all this weekend and I hope to have something to show for it on Monday. Until then, play well and have fun.

Posted in Space Fortress, Projects | No Comments »

Space Fortress

Posted by Parthon on January 29th, 2008

Yet another game idea.

A while ago I spoke about a game called Dwarf Fortress. It’s a very good game that I would recommend everyone should try, just for the depth of gameplay possible and everything you can do in it. The only downside is the graphics, which are ASCII, and the user interface, which is cumbersome. I think many more people would play it if the learning curve for the start of the game were far smaller. Which is why I wanted to do a 3d version with an easy to learn interface. Then I was thinking, Dwarves in Space, and so Space Fortress was born.

This also coincides with ressurecting my C# 3d game engine project. As Space Fortress will be in 3d, this will be a really good platform for creating the engine then going from there. Right now I’m working on the design of the engine and the way the game runs.

I’m excited about this project as much as, or perhaps more than, any others that I have worked on. Anyone that has ever done a creative work will know how fast the ideas flow when you are in the creative groove. I’ll be creating a project page for the game and finishing the website off to be a more user friendly site, especially the Projects section.

For now the game will play like a cross between Dwarf Fortress and Sim City. I think building games and sim games have been thin recently and mainly dominated by the Maxis powerhouse of ingenuity. Making an interesting game that’s different to most out there is going to be great.

Posted in Space Fortress, Projects | No Comments »