The goal of this project is to produce an open source remake of the classic game Hardwar that will be operating system independent. The aim is to stay as close to the original with only a few minor changes while trying to keep the Hardwar world as dynamic and re-playable as possible.

Weekly dev update #9

December 28th, 2009

Happy new year! No rest for me this holiday as I have been busy cracking out code like there is no tomorrow. This week I fixed a long standing bug with buildings not appearing correctly upon starting up the game as well as some other small fixes. I am currently concentrating on saving the buildings to file server side.

I have also been planning the release roadmap for the project which you can see below or if you have Google wave can view here. Unfortunately Google wave is not viewable to those without an invite. I am not sure why this is because I have found it very productive for quickly brain dumping things that needs collaboration so it is a shame I can not let you view it. If anyone wants an invitation I can give you one, if you post on the forum and get involved with the project.

Hardwar feature road map preview

I decided that for our first release it should just be something simple that lets people join a game, add, edit, delete buildings and then save them. You will notice that in the 0.1 release flight is not there. I think if I added flight code to the 0.1 release it would delay things a lot which is why I put it in 0.2. I’m hoping that by the time I start working on 0.2 we will have a few artists perfecting the building models and world map. Even if we don’t it still allows people to start making their own levels.

I put down “advanced building piece loading” for the 0.1 release because there needs to be more information associated with a building piece such as does this piece have an airlock, if so where is the airlock suppose to be, which materials (textures) can be used with this piece and so on. It might seem like a waste of time to some people however it think it’s better we get this done right before proceeding on to more difficult tasks and making a mess of the whole thing.

You will also notice I put down “shader editor” however I think it’s the wrong word to use. I want to put in a tool which allows you to reload the materials and play with the shader variables. I think this would make things easier for artists and myself when trying to get things to look right. The only other alternative is to continuously exit and start the game to view your changes, not cool. I do not think it will be that difficult to implement so I decided to put it in sooner rather then later.

Weekly dev update #8

December 21st, 2009

This week saw an explosion of work from multiple contributors.

Kilagain submitted some rough concept art for “moth” designs. A moth is the name of the flying vehicles in the game. I also started a discussion about the new kind of moths I’d personally like to see in our remake.

I finally managed to debug the code I had been working on for two weeks and merged it into trunk. I also spent a lot of time internally restructuring the server code. It is easier to add functionality to the server now, however I’m still not satisfied with the design.

Along with my code updates there has been an effort to get a windows build working again. I also spent some time rewriting some of the cmake scripts so that they would generate a correct visual studio project file as well as updating the windows documentation. It’s still an on going task however as there is quite a variation between the library versions.

Weekly dev update #7

December 13th, 2009

This week I slavishly hacked away at the code with little success towards fixing the errors I have been having. Fortunately not everyone was as unproductive as I am. Ville pitched in with a new main menu design as seen below.

mainmenu design WIPI believe this is still very much a work in progress however the results so far are much better then I could even think about. It might seem like a main menu is such a trivial thing, however the aim for this project is that every part of it is as good as it can be.

The main menu is one of the first things a player sees when starting your game so giving a good impression helps to create a much better overall experience. If you would like to join in feel free to contribute your ideas on our forum.

Weekly dev update #6

December 6th, 2009

This week I was messing around in blender in an attempt to texture some of our building models we have. It also gave me an opportunity to try out the new blender 3D 2.5 alpha that people I know keep talking about. For those that don’t know blender 3D is a free modelling program.

First of all I’d like to announce that I rarely use blender so maybe some of the issues I had are invalid. My first experience with texturing a model in blender was pretty pleasant in that I was able to quickly load up my model and then draw on it using the paint tools.

My issues started to multiply when I could not figure out how to paint a texture on top of my model and the documentation was not that great either as it is only briefly mentioned. In the end I resorted to just using the image as my building’s texture and then making edits on top of it.

There are two things that bug me a little about the paint tool. The first is that it paints over unrelated faces simply because the UVs are closely wrapped. An example of this can be seen in the picture attached to this post. In it you can see black splodges on the top of the building however not because I painted it there. They are there because I painted on a completely different part of the mesh. The paint tool does not know how to prevent itself from painting over unrelated faces.

First attempt at texturing in blender

My second problem is to do with the huge line you can see in the screenshot. I simply could not figure out how to get rid of it. Painting or smudging over it seemed to do nothing as it still persisted.

Other things that bug me is that “make invisible” still doesn’t stick, so every time you want to open, load or save something you got to click it to hide hidden files. Also it never remembers the last directory you loaded or saved from. In fact different load and save functions seem to start you off in completely different folders.

Saving over things also is a problem as it doesn’t prompt you. What you are suppose to do is click a tiny piece of text that disappears as soon as you move the mouse. This then causes you to have to go through the whole process of picking where you want to save again. This wasted a lot of my time as it was not immediately obvious what had happened the first time I experienced it. This made me confused as I attempted to figure out why my image was not being replaced.

Anyway here is my final result with added mist to make it look better then it really is.

render1render2

Weekly dev update #5

November 30th, 2009

I spent time planning out the feature set I want for our first binary release and came out with the following list that can be seen on the forum.

There is not going to be a set deadline to finish this stuff as the programming is still primarily a one man operation. I can see these features are going to take up a considerable amount of time (months). Hopefully by the end of it all there will be something that is fun to play rather then the tech demo we currently have.

I’m still working on issues with the client / server split which has made sqlite crash for some unknown reason. It has been a real blocker in allowing me to progress with the features I want to implement.