Revisiting Fallout – install

It is that time again. I delve back into the oasis of great games from the past, looking to find my childhood. Silly, isn’t it? I carry my childhood with me, hoping to be as good a parent as mine before me.

Spurred by people talking about GOG.com, I managed to get my hands on Fallout and Fallout 2, for the price of a cup of coffee and a light lunch at my favorite coffee bar.

Tim Cain as the Fallout icon

Download and install went as well as it should, though I was a bit shocked to see Tim Cain as the Fallout icon. This happens for both Fallout and Fallout 2, as his image is hidden in the 48×48 pixel version of the icon. Phew.

I went on the net finding high resolution patches for both Fallout and Fallout 2 at NMA. Reading the Readme I installed the patch, knowing I could get it uninstalled by running the patcher again.

I changed the patch’s ini file to set my resolution to 1280×1024, and started the game. Which crashed with a message that it couldn’t set resolution to 640×480. A bit of research put the blame on the file ddraw.dll in the game directory. I removed it (by renaming it to ddraw.dll), making the game revert to Windows’ version (installed with DirectX and/or the gfx card drivers?), then it worked just nice. I also read that this was due to ATI drivers – and since the game works without the high res patch, with the supplied ddraw.dll, I guess it is supplied to avoid the problem in the first part. Possibly the packaged ddraw.dll allows 640×480 res, breaking the high res patch.

A fix sets the color (bit depth) to 16 bits, avoiding a screen blackout bug – this might or might not have been fixed in GOG’s version of Fallout, but with this set in the patch’s ini file you won’t get the loading screens.

Edit: I also had some problems in the Rad Scorpion caves outside of Shady Sands. When I entered the map, I couldn’t scroll around, and even the exit area was outside of the screen. efin says in the GOG forums:

Also, I don’t know if anyone else has had this problem, but with the hi-res pack I couldn’t go anywhere in the radscorpion cave. I could move around the screen, but I couldn’t scroll to go anywhere else other than the first bit you c an see. It appears to be wrong numbers put into an .ini file.

If you have this problem, go to the “f1_res” folder and open “map_edges_F1.ini” – in it you’ll see the edges mapped out by number for each section of the game. Here is what I have for the Caves section:

NAME = CAVES
ELEVATION = 1
LEFT_EDGE = 1568
RIGHT_EDGE = 2540
TOP_EDGE = 1840
BOTTOM_EDGE = 1532

I’m not sure if these are accurate, but they worked for me. Have fun!

So, now it is time to start the fun.

Posted in Games | Tagged , , , , , , , , , , , , , | Leave a comment

One GOG.com invite code to give away

Update: It is given away.

I was so lucky to receive a code from a random passer by, and as I was told I could give one on myself, I thought I’d pass it on.

Therefore, if anyone would like to try and buy some Good Old Games from GOG.com, feel free to ask me for a invite code. First come, first served. My email address is made up from my handle “tormodh” and the domain of Google’s popular email client – “gmail.com”, or you could drop a line in the comments below. Email entered in the field (for email) will not be shown to others than me.

More info (same links as supplied by Mart):

Posted in Games | Tagged , , , | Leave a comment

Executing native processes from Java

This is kind of a coincidence. Today I got contacted by a friend, wondering how to run a native Windows program from within Java. I said as I usually do: Google it. Not liking to get that served myself, I did follow up with some real information. I don’t like being a RTFM slinging jerk, but it is fun to sting people you know. ;-)

Googling turned up a useful guide to how you can do this, both using Runtime.getRuntime().exec(“command”); and with 1.5′s ProcessBuilder.

Then comes the coincidence; just as I’m about to leave for home, I scan my feeds – at the top of my Programming folder, Patrick Kua has the following entry: Executing native processes in Java on Windows.

Posted in Java | Tagged , , , , , , , , , | Leave a comment

Managing Memory in Java

Doodle of a beetle with a fiddle.

Getting memory management to play along in Java is a whole other chapter than it was in C and C++. And by that I mean simpler and better. Though a few people would still like to allocate and deallocate memory themselves, most agree that garbage collectors are a step forward (afaik). Whatever your stance on the case, GC is in Java, that’s the way it is. There are tweaks, and even replacement collectors, to get the garbage collecting to be done in tune with your code.

I’ll have a look on simpler aspects of managing memory in Java. For one – adding more available (heap) memory for your application. You’ll usually have need of this if you are writing big, memory hungry programs. Anything gathering and working on large amounts of data. Your hint will come from a thrown exception blaming java.lang.OutOfMemoryError: Java heap space.

Assigning more memory to Java is as easy as supplying one or two parameters to java when starting your program. There is -Xmx= for maximum heap size in bytes, and -Xms= for initial heap size. Since increasing the heap take some resources, it is suggested setting the initial size at something that should be enough for use, and maximum to something that should be enough – period.

These values are specified in bytes, but you could do it in kB or MB by adding a suffix, like this: java -Xms=64m -Xmx=256m MyProgram.

A crash citing the JVM out of memory could also easily be a (dire) warning about you having a memory leak or two in your code. Java isn’t invulnerable to those, though they are harder to get by accident. One usual suspect are Listeners, setting up a listener and then forgetting about it when the work is done could spell an early end to the session. Misbehaving (self-coded) collections are also a common way of stopping the garbage collectors from doing their work.

Detecting memory leaks are not that easy in Java. Since your program runs in a JVM, task managers in your OS will not report on your program, but on the virtual machine it is running in. To have a look at how your memory consumption is, you are in need of a Java profiler of some kind. An easy alternative is to fire up your program with java -Dcom.sun.management.jmxremote MyProgram, and then running the tool Sun supplies with Java (from 1.5 up): jconsole. This program is located where you have the JDK installed – usually C:\Program Files\Java\jdk[version]\bin on Windows.

Happy hunting.

Posted in Java | Tagged , , , , , , , | Leave a comment

Public Transport

Hair that is short, fuzzy and bleached. Taken on a bus

I feel different about different types of public transport. It all starts with the bus. The bus is something that might or might not be on time. If I am early, it will probably be late, and if I’m a bit late it will be on time, disappearing down the road as I’m running for the ‘stop.

The bus to Bergen is different. It is relaxed. It only goes every other hour, and takes three hours to reach it’s destination. I have to plan ahead to get on it, because I probably need to sleep over before heading home again. Well, I don’t take it much now, and earlier it was the other way around. I mean, I took it down to Haugesund, then back (home) to Bergen later – over the weekend or something.

I can read on that bus. When going downtown, a 15 minutes ride, I have to look out for my stop so I don’t overshoot it. It doesn’t matter that much, distances aren’t that great once I arrive, but I don’t trust those buses. It is easier now; there is a loudspeaker and a sign informing of the next stop in almost every city bus.

The bus company is called Kolumbus, and are based in Stavanger. Stavanger is the next city south of Haugesund, and thus the loudspeaker woman has got an accent (She says Gadå instead of Gata – street). The woman on the picture was spotted on the bus this weekend. She was probably heading downtown to listen to the jazz – Haugesund hosts the Sildajazz festival each year (celebrating the herring. Nope, not the red one…).

Trains are better. Night trains between Bergen and Hønefoss(Hen (water)Falls – don’t ask me why) is nice. In the same way as the Express busses, these are plannable, and forces you to be on time. And they are even more precisely on time when you are at (or near) one of the ends. Lots of time to read or work if you take the train by day, and not so much time lost if you sleep on it by night.

Planes on the third hand are a hassle. You have to get to the airport. Check in luggage an get through the security station. Wait. Actually, wait some more – because you had to wait earlier as a consequence of being early. The airways companies require you to be there earlier than you want to. And then you board. And find your seat. And wait. And wait. And you’ll probably have to switch planes at the next airport; and if one of your flights were international you’ll collect your luggage and check it in again. And wait. And get away from the airport.

I like trains, but we don’t have one here.

My bike is better than all – for shorter distances. Don’t want to use it for international travels, though. And it isn’t much fun in the rain. Or strong headwinds. And it hasn’t got fuzzy hair in front of me.

Posted in Life | Tagged , , , , , , , , , , , , , , , | Leave a comment

iTunes stole my podcasts

Black iPod Nano 8GB

Starting my computer to sync my iPod this morning brought on instant Apple hatred. iTunes told me that my iTunes Library were damaged, and just like that my podcast subscriptions were gone. Pffft – not there any more.

I then vented at twitter, being rewarded by someone else having that same problem. iTunes complaining about library file on Windows, and podcast subscriptions being lost.

With a flash of insight and a bit of luck, I browsed to where my iTunes library file were located. Taking backup of the new (empty) file, I renamed the one marked with (Damaged) back to it’s original name, and it all looked just like before when I restarted iTunes.

The files was located in the My Music/iTunes folder – actually /Users/MYNAME/Music/iTunes/ on Vista. The relevant file is the one named something with (Damaged). don’t blame me if it doesn’t work. Backup the defunct file first.

Still, I am more and more inclined to try and get my iPod updated without iTunes. Next time, perhaps.

Posted in Technology | Tagged , , , , , , , | 2 Comments

Today is the last day…

Today is the last day in my vacation. I’ve spent the bigger part of the day watching children play in the daycare center where my three year old son will be going until he is ready to start school. During this time it struck me that being unemployed would be nice… apart from not paying much.

I guess this is a symptom many parents share. You really don’t get that much time off during vacation anyway. :)

I need to set up backup at home, play a bit more with this blog, code on a few private projects and a few more things. This is stuff I planned to do this summer, but time flies.

I’m happy about how this summer turned out anyhow.

Posted in Life | Tagged , , , , , , | Leave a comment

Even unfair can be fun in the end.

I don’t know where I stand around difficult games.

On one hand I enjoy a challenge – but on the other I like to have a fun time, not spend time doing the same bit of timed puzzle again and again. And in there lies the (first) answer. I don’t like to be forced to do the same part of a game repeatedly. I can sit a long time thinking, trying different things. I don’t have a problem leaving the game in order to wait for a (possible) solution to present itself.

I have a long list of games I haven’t finished. Among them are the classic Prince of Persia, left behind as I got tired of having to replay everything each time I failed. Most of the games left behind are not there because of their difficulty, but rather because they failed to engage me, became boring.
Continue reading

Posted in Games | Tagged , , , , , , , , , , | 1 Comment

Twitterdemics – my network grows

A sketch of a twitter network

When I started using twitter for real, I set out to follow a small group, only following back if I deemed other persons interesting enough to read. This worked out rather nicely, I followed a few people, tweeted a bit, got a few followers and it got going.

I’m still not sure if I say anything that is interesting, but at least I don’t say enough stupid stuff making people remove me again.

Anyway. I muddle about, blocking the occasional spammer, following back someone who inadvertently follows me… (there is a fine line between modesty and depression induced paranoia). I’m suddenly above 20 followers and 20 I follow. Then something happens. People I follow reply to someone I cannot see. Or rather, to someone I don’t follow. I take a quick look, and follow them. They follow back…

The snowball has started rolling. It is an epidemic! A Twitterdemic! Even being careful about following and followers, I find myself passing 30, 50 and even 70 followers and foll.. fr… subscriptions! Will it ever end? If everyone else (for smaller values of everyone) are doing this, we’ll end up with a big ball… a metagroup of twitterers – each of who has a small number of strings out in the twitterverse.

Or perhaps it will all collapse like a house of cards?

Posted in Technology | Tagged , , , | 2 Comments

I don’t want you to hold my hand

A scetch of a monster, perhaps a Grue.

I like games, I play games.

When I’m in a gaming mode, you’ll probably find me playing pen and paper role-playing games, or reminisce about the good old games of old. And it in not that the latter are better. Erm, the older, that is. And I do play, and enjoy, modern games. It is just that older games had an unforgiving nature often missing from games of today. And nostalgia

I recently picked S.T.A.L.K.E.R. out of a garba… bargain-bin. Mainly due to Andrew‘s review of it. This is a game containing what I miss. It holds promise of much good role-playing, and of having to plan before running in guns blazing. At least as long as you stay away from the dreaded quick load button.
Continue reading

Posted in Games | Tagged , , , , , , , | 1 Comment