When I was a kid, I liked playing computer games on my Amstrad CPC 6128. I enjoyed playing them so much I used to type in the game code listings printed in the manual, and in magazines such as "Amstrad Action". I decided that I wanted to be a computer games programmer, so I could earn money creating the things that I enjoyed doing in my spare time.
As you may have noticed, I was doing a Computer Science with French degree, and ended up in Zurich, Switzerland! Unfortunately we didn't have much luck in getting a year long placement in France, but when the offer of a position as a Trainee Programmer Union Bank Switzerland turned up, it seemed too much of a good opportunity to turn down. The position sounded ideal, I would be working for the Development and Test department of the Union bank of Switzerland, at their HQ in Zurich. I filled out the form and January 1997, off I went.
I flew from London to Zurich, on a Saturday, started work on the Monday. I was shown around, given my desk with my own Sun Sparc, made a nice change from having to fight for one in the overcrowded labs at university! I was given a week or so to get accustomed to the workplace, before being asked to write some PERL scripts. I had never used PERL before so I was given a book, and told to work through a few examples, before writing a few of my own. They were fairly simple, they just checked that a particular network service was running, collected the output and displayed different messages to show its status. Nothing too complicated but a nice introduction to my first programming job!
My next assignment was to write a test program to test the EBS UBS Market Data library. Another member of the team had written a suite of functions which accessed a real time feed of exchange rates. My program had to test that his functions did the entire process of opening the connection correctly, to retrieving the correct information. The program was written using C++ and run on SUN Solaris 2.5.
When my part of the MDL project was finished I was assigned the task of using Microsoft Access to develop a system inventory database prototype for the department. Where possible this hard to coexist with existing programs, by being able to export to, and import from other programs.After my six months were up, I returned to Essex.
No, I had never heard of them before being sent to them by an "agency" (actually a sub company of their what was parent company!). I was told they were a small company which had worked on the successful Castrol Honda Superbike 2000 license on PC and PlayStation, and wanted to expand for next-gen consoles.
When I started the team of 14 people (the entire staff of IEL) were finishing of Super 1 Karting for Midas Games (the parent company and publishers). That was an interesting start, my first assignment was to format the scripts which contained the foreign language text for the game. That was an interesting experience, I learned the joys of emailing a Portuguese producer who was complaining about the translations of the text, and asking me to change it, unfortunately with me not knowing any Portuguese, and his English making his instructions vague at best, this was a challenge to say the least! In the end it got done, which was nice
The next project I worked on was an arcade version of the PC game "Castrol Honda Superbikes 2000" (CHS2000). The lead programmer was on jury service, so I had to go through the bug list, which had been sent by the company producing the arcade machines of the game. This time I had to deal with a different Portuguese gentleman, and with me being a newbie, thrown in at the deep end, progress was very slow, much slower than my superiors seemed to like, but I don't think they realised how difficult the job was!
As the new junior programmer I was also given the jobs of Installshields, and autoruns, this made sense, after being shown how to do it once, it seemed like a fairly straightforward job, and so seemed like a waste of a more experienced programmers job to do them! As well doing these for the current batch of releases, I also had to burn master CDs to be sent off to the duplicators, and often do this for Midas games, not just IEL's.
A lot of these autoruns and installshields were for the "Pocketprice" budget range. To make a game children could buy with pocket money an old full price game, such as "Johnny Herbert's GP" went through some changes, e.g. textures were changed , all licensed references were removed , and the games options were limited so that it only had 3 tracks. The front end would be changed and the game would be renamed "GP Challenge" or something similar. It became my job to supervise these projects which were done for kart and motorbike games as well as F1 games. The tester would have to test this game in case any problems arose in the new build due to new version of DirectX, changing the front end, bitmaps etc.
New demos had to be created for existing titles from time to time, so that they included the latest patches. The aim was to make them as small as possible, create an installshield, and then put them in a WinZip self extractor for ease of installation. The idea being that home gamers could download the demos from the web site to play our games. Creating a demo was similar to creating the cut down version of a games since typically a demo would only offer 1 or 2 tracks, and limited options
From here the natural progression was to make entire games downloadable. I did this for CHS2000 and Super 1 Karting for distribution via Real Networks. This process was quite tricky. Getting downloads down to a manageable download size for a demo is OK, but for a whole game, is quite different. Obviously movies are the first things to go, and any extra audio. It was then a matter of looking at every single file installed in the game, and using educated guesses and trial and error to remove files that were probably no longer used to cut the game size down. Not only that, but I had to discuss with Real Networks the various changes they wanted made. Often it would be a minor change such as adding their logo and URL to a loading screen, but sometimes they wanted more complicated changes such as in buttons in the front end menu, to launch a connection to their web site, something we had never tried before. They also had an uncanny ability to find brand new bugs in our aging titles, annoying for our tester!
There was one crash bug which no matter how hard we tried we couldn't get to repeat. They claimed the game would install, but as soon as you ran it it died. So I tried using exactly the same DirectX version as them, still no crash, same graphics card, same sound card, still not problem. They claimed their machine on which the game crashed was running Windows 95, we used Windows 98, on most of ours, and we had no problems on the Windows 95 machine, so I reinstalled Windows 95, on a machine I built to be as close to their problem machine as possible. Again ours was fine, until I noticed that they were using Windows 95 on a machine with a PIII processor. Seemed like a long shot, but it was the only thing left to try, sure enough, I formatted a PIII PC, installed Windows 95, installed the game, and it wouldn't work! The sound card, and graphics card were irrelevant! In fact just editing the game's config file so it didn't use PIII specific instructions fixed the problem, much to the relief, and amazement of everyone!
In the end we met their various demands, and Super 1 Karting and CHS2000 went on to be massive successes on the Real Networks games site.
A similar process was also done for eGames, for various IEL and Midas games.
Another project I remember well was adding EAX sound to Super 1 Karting and CHS2000. I was happy to work on this since we all knew our games (like many other developers) sound was considered unimportant. The only problem was that when asked how long I needed to do it for Super 1, I said "3 weeks, but I've got a holiday booked for 1 week in 2 weeks time, so I'll have to do it in 2", I was given 1! When my week was up, I had implemented the new EAX code into Super 1. Then end result was not as good as I had hoped, but given the limited time allowed, I could not have done any better!
EAX sound was going to be added to CHS2000, but instead we created Castrol Honda VTR. The name was changed to disassociate the title from the EA game with a similar name as the title was to be published in USA where CHS2000 was never released (apart from via Real Networks). As well as changing the front end to display the VTR logo, I added skilltests to add a new level of difficulty to the game. Various time-trials had to be completed to unlock harder difficulty levels.
My duties changed direction when I started leading development (I was the only person working on it) of Japanese to English PSOne localisation. I had not anticipated this change and had come to grips with using the PlayStation One development kits on my own very quickly. Alone, I had to make sense of the code we were sent from Japan, try and get it to compile and get the game to run in PAL. Once again the language barrier proved problematic. I had to email the a producer at the Japanese company, who then had to translate my email into Japanese, so that the programmer there could answer my question, which the producer would then translate back into English, and email me! This and the complexity of the PlayStation dev kit made this a tedious and slow moving process, especially since we didn't have any specific tools for manipulating Japanese text.
Because of this another programmer was assigned to help me, as we had been given 4 months to localise 4 titles. This was not going to be easy at that time included the time it took for us to send the ingame text to a translator, get it back and reformat it to fit in the game. By using Word on a machine running a Japanese version of Windows 98 we eventually found an efficient way of manipulating the text, and saving it out as English using a Kanjii font so we could use the PlayStation's in built font that the Japanese developers had used.
September 2000 I resigned from IEL. I won't go into too much details, but I was unhappy with the lack of direction my career at IEL seemed to be going. Also there was a lack of job security (a few months earlier half of the employees were made redundant), and the building and equipment left a lot to be desired!
This is a temporary position where I have risen from a PAI link file editor to a PAI link files team leader. Unfortunately O.S. seems to have a policy of keeping temps as temps, and long term hopes aren't good as they're making thousands of redundancies at the moment!
The Link files program in short is a way of updating coordinates of existing features of fences, building etc, using more accurate GPS details.
The work itself was getting boring, but becoming a team leader has made the job a lot more interesting. As well as delegating work, I'm responsible for checking my team members work rather than editing myself. Also I've had the opportunity to train no editors, I've never trained people before, so this has been quite an interesting new challenge for me!
To be honest the job doesn't stretch my talents at IT, but while I learn new people skills, as a temp job it'll fill the gap while I find permanent employment.