Sunday 21 September 2008

OU Update

I've just got my final TMA results back for M257, I managed to score 99%, which is the second time I've got the score. Just one exam to sit and I'll have finished the course. Already the study material for my next course has arrived M263 Building Blocks of Software.

Thursday 18 September 2008

Messy Room

My room is a horrible state. My girlfriend is coming back from holiday tomorrow and I promised I would tidy up for her. Here's a quick description of the kind of filth that litters my tiny room: Numerous plastic bags (mainly from Morrison's. Why I haven't got rid of them is a mystery); A plethora of old clothing clutters the floor punctuated by the occasional odd shoe rising like a lone island from the sea of chaos. Fixed in for good measure is my Watchmen issues that I bought off E-bay ages ago, and numerous bits of papers and unopened letters - some of which contain mysterious phone numbers scribbled in my awful handwriting.

My desk is covered with hundreds of cheap Biros and drawing materials; a couple of packets of Bean Boozled jelly beans that I am really starting to regret buying (really, who would want to eat a vomit flavoured bean?). Time sheets for my job litter my desk from where I dumped them after cleaning out my backpack the other day. They are the reminders of the hard labour I have put in to the thankless task of filing at my local hospital. Among this debris is digital camera, hair brush and deodorant that I really should use more. A number of slowly moulding cups border my desk. It really horrible site let me tell you.

Worst of all the house vacuum cleaner, should I ever use it, excretes a terrible smell that defiles the air and worst of all my nostrils. Basically it is a sight that would make the Nurgle Chaos god (At least in Warhammer 40k anyway) of despair - personified by stagnation, entropy and disease - feel very sick.

The End Of Two Era's

It's a little late but the forum I regularly post on has closed it door. The GamesRadar UK forum, that was my online home for quite a while, has gone; fortunately a few long time members made a quick switch to GRcade which is where I shall be moving my occasional comments to.

Also sad news over at 1up with Jeff Green's departure last week and now quick on his heels Sean Elliot has made for the door to work at Take 2 Boston. It appears that GFW Radio is over.

Wednesday 17 September 2008

Ubuntu Wirless Nightmare

Well I finished my course work a while ago, instead of turning my attentions back to my development project I decided to spent some time trying to set up Ubuntu. When I intalled my computer the last time, shortly after buying windows vista, I reinstalled XP and added Ubuntu 8.04 to my machine but since I couldn't quickly get the wireless connectivity working I gave up. Now I have spend two long evenings amounting to around eight hours of my time, that could be used much better, failing to get my wireless cards working under Ubuntu. It's quite annoying because I wanted to compare Ubuntu to Windows Vista but without any internet connection it would be pretty pointless and I would be forced to conclude that Windows Vista was massively superior to Ubuntu.

My wireless setup includes one Asus 167-g USB dongle, a Belkin PCI wireless card that doesn't work with Ubuntu without Ndiswrapper. The main router is a BT home hub the 1.5 version and my spare is a 3 com office connect router.

From boot I was able to see my wireless network from the network manager, I was able to click on the network and set my password information, the internet connection I use is encrypted with a 64 bit hex key. Needless to say the connection failed, I decided to try and get the wireless connected to a spare router as other people use the same router for internet accesses and I didn't want to keep repeatable kicking them off. Playing around with the settings I managed to the router to connect with both WPA and no encryption although the connection percentage never quite reached 100% and I couldn't get any kind of connection using WEP. While my other house mates were out I tried fiddling around with the main routers encryption type and I eventually managed to get an intermittent connection which is where I had to leave my attempts.

Searching through the Asus website I found a driver binary for my wireless dongle with some tampering I set up my machine to compile the binaries, sadly the compile failed and I my un informed attempts to fix what was wrong failed. In-between I went through and manually configured my network card which failed to connect. Finally I install WICD which didn't help although why would it. At times I even had problems connecting to my test router. Throughout the process I had numerous periods where I had trouble with my spare router.

I'm hoping that the new Ubuntu release that coming next move will resolve my problems the other solution is to by a new wireless card that is better supported by the operating system although I'm not sure if either of these will help, me on my quest to have a usable Ubuntu operating system.

Thursday 28 August 2008

What's Happening?

I have kind of put a temporary halt to development while I finish a piece of course work for my OU course which has to be finished by the fourth of September. The course work is based around Threads and server applications. I completed everything but the last question which is based around servers and is worth 45% of the total mark for the piece. I'm already having trouble with this course work, one of the thread questions has completely thrown me and, although I have managed to answer it, my answer is an incredibly ugly solution.

While I'm on the subject, I thought I would have a quick dig at the Open University. I'm finding a lot of their programming courses very easy. At the moment I have studied M150, M255 and am studying towards M257 and am thinking about studying M263 Building blocks of software which seems like the easiest course of the three mandatory level two courses (which isn't really what I want to do). If I had my choiceI would skip M263 and save the thirty points for another course that would teach me something else more complicated, as at this point doing the course seems like a step backwards.

My other problem is that the Java courses are all based around small programming exclusively, which gives the student no experience at larger scale development. I would like one larger Java course worth more points - say 90 or 120 - that was based around developing one large program.

Another major problem is that the OU courses seem to be centred around Java programming and rarely look at other languages. I have done one course that was based on C++ but did not go into any depth on any of the more advanced aspects of the languages (pointers, for example). Ideally I would like to learn Java, C++ and some assembly language stuff.

I know the level three courses are a lot harder but they are still based heavily on Java and I have the maths courses to look forward to. I am actually quite scared of doing maths stuff as I'm rubbish at it. At the moment I am working through all of necessary computing courses and then I plan to jump across to the maths based stuff once I've finished.

A quick jump back to the development: I've added more menus (although I'm worried about the way I built the class). My solution will only be useful inside my program and I'm tempted to spend some time developing a full blown re-usable class that would lay out menus in the way I want. Also I've begun thinking about mouse support and how I am going to accomplish it. Another problem is that two use multiple menus and I have implemented numerous keyboard listeners to deal with them all (which I think I'm going to get rid of, although I'm going to still have two: one for inside the game and a second for all the menus).

The menu problems got me thinking about my objectives for this project. I have two main objectives: The first objective is to develop a piece of software that I can use to show my programming skills for potential jobs and bragging rights; the second is just to have a functioning program and as an exercise to see if I can make a full blown functioning program. They objectives don't seem to run parallel - the first objective pulls me towards taking my time and planning out each stage carefully and working out the specifics of my program before starting; the second just causes me to brute force everything and work as quickly as possible. At the moment I am sticking with the second.

Friday 15 August 2008

Quiet Update

I've started to see the beginnings of my program coming together, although my code is becoming more complicated and I am getting to the point where I seriously need to write some comments for my code. Also my main class that deals with setting up everything else and getting everything running is a big mess - this is mainly because every change I make usually ends up changing the main classes code and now I have countless commented out code chunks.

Coding wise I've got to the point where I can open my program into full screen or windowed mode and change the resolution, colour depth and refresh rate by using command line arguments or by editing a text file. I've started to put in the code to move through phases of the game, meaning I will be able to have more than one screen. I'm going to try and add an option menu next that will allow me to change all the screen information inside the game. I also need to add a method or modify an existing method to update my text file so my game options have persistence.

Thursday 7 August 2008

Setting Path Environment Variables In Vista

This is a quick tutorial explaining how to set Path Environment Variables in Windows Vista. It will take you through a step by step guide that will allow you to run all the Java SDK programs from the windows command line.

1. Locate your Java SDK. It will normally be located in a directory such as:
C:\Program Files\Java\jre1.6.0_07\bin

If you are using the 64 bit version of Windows Vista it will be located in the Program Files (x86) folder.

If you can't locate your Java director it can be found by opening your control panel and double clicking on the Java icon. Go to the Java tab and then click on the either of the buttons marked 'view'. In the location tab is the path to your Java director although you have to add '\bin' to the end.

2. Next open the control panel and then system. Click on the Advanced System Settings. You should now see the System Properties window and be under the Advanced tab. Right at the bottom you should see a button marked “Environment Variables”. Click on the button.

You should now see the Environmental Variables tab. This window is divided into two sections. The bottom section is called 'System Variables'. Scroll down until bottom list until you find a Variable called 'path'. Select it and then click on the lower edit button. You will get yet another window. Now, under the Variable Value box, add the path of your Java director to the end of the line. The end the line should read something like:

;C:\Program Files (x86)\Java\jre1.6.0_07\bin

3. Reset your computer.

4. When Windows opens hit the Windows button and then type 'CMD' into the search bar. This will launch the command line. Type 'java -version' into the command line. This should hopefully bring up information about the version of Java your using.

Saturday 2 August 2008

Random musings of a messy room

It's almost been two weeks since my last post and I have barely crawled forward with my game making. So I thought I would give you a quick run down of what I have been doing, as if anyone actually cares. My first week was spent on holiday in the Isle of Wight relaxing with my Girlfriend with me far away from any high tech gadgets other than my Camera, mobile phone and the assortment of laptops and other tech paraphernalia that the average person now carries around.

After coming back I spent a day touring around the Imperial War Museum looking at the Caribbean war effort exhibition and then the Holocaust exhibition which was disturbing. The weekend was spent finally moving the rest of my rubbish out of my old room and into my new much much smaller one, hence the title of this post, which lead to the end of my holiday. The Sunday I spent some time working on my code although I didn't get much further. This week just gone I spent working on my normally sucky job and working away at my OU course work.

I'm still working on an IO class that will deal with all the command line inputs and setting up the graphics stuff. A good indication of my lack of coding skill can be found in this forum post I made (I have no idea what the '+' symbol in the regular expression does). Another problem I sorted out was adding all the Java Development Kit programs to work from the command line in Vista - which was a fairly simple process but took ages because I didn't know what the process I had to go through was called (it is called setting 'path environment variable' by the way). It lead to another forum post which you can read here.

Anyway I'm off to try and tidy my room.

Friday 18 July 2008

What's actually working and another update.


Ok, looking back on my three posts I haven't said anything about what my program does yet, so here it goes. So far the program opens and enters full screen, draws some text on screen and all you can do is exit. A bit useless really considering how long I've been working on the program and I'm annoyed at myself for being so slow.

At the moment I am working on the options menu which will allow me to change the resolution and enter and exit full screen mode. To do this I want to create one class that will open or create a 'ini' file which will contain all the default settings for the game (also the class will handle any arguments passed to the program at start).

Wednesday 9 July 2008

Open University

Just thought I would chuck my a quick note. I'm studding towards a degree with the Open University and got my latest result back. I got ninety five percent, so go me.

Package And Class Info



My chosen development method is 'keep coding until something sticks', so my source code is currently a big mess even though the application doesn't do a lot yet. I have written absolutely no documentation for the program (unless, of course, this post counts).

I've divided the program into four packages. The main package is called LexDanceDance which contains everything else. The only class inside the package is the main class which starts the program.

The first package inside LexDanceDance is called ‘Objects’. This package contains classes that represent on screen objects. At the moment there are three classes in the package. The first is 'ScreenItem' which holds all the basic information about screen items (such as their screen position). ScreenItem is a abstract class (even though I've left the construction methods as public not protected - which is stupid).

I have two other classes. One is used to represent text on screen and it's called 'TextItem'. The final class is going to be used to represent a menu but it is not finished yet. This class is called 'OptionListItem'.

The second package is called 'controller'. It will contain all the classes that deal with the input devices. At the moment it only contains one class called 'KeyboardControlClass' and it deals with keyboard input, obviously.

The final package is called ‘Graphics’ and deals with all the on-screen stuff. There are two classes here. The first is called ‘screen’ (which actually doesn't do anything and will be removed eventually); the second, and last, class is called ‘DancePanel’ which overwrites the JPanel class and deals with all the on-screen stuff.

While it does not appear that I have got very far I believe I have reached a point where I can start to play with harder stuff. My first challenge is to get full-screen mode working. After this I intend to set up a double-buffer and then I can start on getting the dance mat input working.

Monday 7 July 2008

Intentions

As this is my first post I am going to try and outline what I'm going to write about in this blog. A while ago I got into playing dance mat games. Not realising there were ones freely available already for the PC, I decided to write one for myself.

My first step was to buy a cheap Dance: UK XL dance mat off of eBay. Once this arrived I posted a thread on the official Java development forums asking a couple of basic questions.

If your interested in the thread: here.

My next post will outline the basic class structure of my program so far.