Online games

Everytime I start playing a game online with people I don't trust, it feels like a game. But when we start playing it more often together, I somehow feel responsible for what I'm doing in the game. I don't like this. You know their account names, their stats and so on. You know the part of them you want to play with. I always had problems to see it like that. If I play regularly with somebody, I want to know him or her. I want know which kind of person they are, sitting in front of a screen and clicking time away. I mean I'm not that interested in playing with people I don't know. By time, of course, it becomes less a question of who they are but more of if I like the person behind. That's one of the many reason why I sometimes enjoy to play with random dudes more over playing with friends/buddies. I don't know. It's always strange and unfeeling for me. Increases replayability, though. Fucking online games.


Far Cry 2

Yes, I'm late to this game. Pretty late. I tried it some bits of time ago and found it pretty hard and annoying, especially progress-wise. But well, now I have to hardware to play it properly and it's ok. Just ok. Nothing more. The gameplay is substandard for what I prefer, but well. This game only works with a powerful graphics card, otherwise there is no real atmosphere, annoying ever-respawning hordes of enemies and just too long travel times. And still playing it. Mostly because the jungle looks really good and I can play it on almost maximum settings! It's a fucking shame that games by bigger publishers exceot Nintendo tend to be extremely bad if don't have the latest hardware. I always hated it but I'm still buying some of their games. A shame that there are so few nice Wii games out I would like to play. Nintendo! Please step away from beeing casual!

I'm still waiting for a real 3D Kirby. Put in some kawai, please. And I should really play Jak and Daxter again.


Half-Life 2's soundtracks

Half-Life 2 is a simple and good game. We all know this. But I always felt that the soundtrack isn't dominant enough to break through the game's atmosphere. And that's somehow good. I mean the game itself is strong, you'll need skill and perception and whatnot to beat it. My first playthrough of Half-Life 2 was characterized by the gameplay itself, not the music. Valve has a good sense of game flow, especially if it comes to one-hit events like when the fight music pops in or things like that. And it's never a loop as far as I can remember. Good soundtrack at all. Each track supports a special situation, there's never a moment where you'll be annoyed by the music because there's no permanent music. Atleast I can't remember listening to loops. I'm a very slow player if it comes to quality FPS games with intense atmosphere. I can remember playing the Ravenholm level about 2 days just because I was fascinated by how the game tries to keep you running and moving through it. It's full of triggers and you'll probably be annoyed by repeating music if you play like me. Track intro, middle part, outro - silence. Nothing more. Track over, go ahead and kill some enemies! No, I like how Half-Life 2 handles it's slightly rockish electronica. It supports the mood perfectly. A swooping, desolated world of badboys and freedom fighters. And it's not only HL2's soundtrack, HL2:EP1 and HL2:EP2 do the same great thing. I also love the sound design. Some of the few games which really WORK with the sound.

First person upgrade

Some modders have really like cool ideas, like modeling first person-viewed levels of Super Mario and Castlevania for Half-Life 2. I think the idea itself of making a first person 2D game is awesome enough for beeing one of the things I really want to archieve in my life.



Interesting phenomenon: my now seemingly absolutely finished linked list class can split a looped list (it's end connected with it's start) into two looped list consisting of halfs of the whole list when inserting this this list (not the smaller ones) in the middle of itself. Weird. And somehow interesting because it was my first thought about what could happen if I try it. I mean without any further thoughts or analysation. Then I tried to think about it step by step and doubted my first thought. Well, in the end I was was more confused and wrong about it as I was in the beginning (where I had right thought without thinking about it). It's not the first time happening. It's often like that and wonder why. Seems I should stop thinking step-per-step but more in one huge step. Problem is you can't explain it to others then. Hm. If I only could walk around by not thinking about things step-by-step. Ok, I'm doing this all day but not when having non-proven ideas of how things behave. I also experienced that this procedure of tackling problems and result checks is useful when doing math. Just don't think about. Face it. Look at the facts and say what it is.

But otherwise I would become completely cold-hearted. I don't think that's good. Especially if you feel it's wrong. My feelings never cheated me. Never. Ever.



One thing that was bothering me for a long time is the usage of Get/Set methods for classes. Specifically because I always thought that it's silly to call a function just for getting a value I can access directly. I mean what's about the function overflow? I learned to program without inline-enabled compilers. That's why I never really understood why Get/Set functions are useful except for controlling what part of the class can be modified. I just read a whole bunch of stackoverflow comments about what the compiler optimizes and inlines and thought: "Why not?". I tend to not use Get/Set methods, because most of the structures I'm using are birectional for a lot of reasons. But thinking about which parts of my List class should be really accessible, I came to the conclusion that it's always better to create a good class interface instead of making everything accessible for all potential cases... I mean I'm a very concerned programmer. I take care of every possible NULL-pointer, wrong user input, potential bugs, etc... And somehow there's something wrong: I have all possibilities to create all kinds of bugs but I'm not interested in it. Furthermore my functions wouldn't allow something like that. So... why make everything possible, though I will only use the safest variant? Why care about making DOZENS of debug-workarounds when I can limit the interface to things I really need/use? This conclusion hits like nothing else. It's so simple. But it's yet hard for me to accept it. And it makes things much easier. Oh, nose... I feel so bad. It's always like that. I try to choose my own path for Love, Hope and Justice while getting the same results as the one who has taken the more common one. And in the end his life was more comfortable than mine. Ok, let's say I do learn a lot by walking along my own path. A lot of very interesting things he probably never was aware of (unless he read it in a book or somebody told him... the easy way of getting knowledge). But well, I've always choosen the "get your hands dirty" way when it comes to programming. Live like your enemy and you'll understand why he is like he is. And you'll probably able to defeat him with the knowledge of why he's there. I think that's the goal of learning the hard way - you're learning what makes the easy way the easy way. In terms of programming, now I really experienced why Get/Set is good and comfortable. Noone else ever gave me a good reason WHY. They all just said it's better like that. But they couldn't convey the experience of not using it. It's a totally different experience, seriously. Not using Get/Set is the full set of possible freedom. Excellent for prototypes and things you can only plan by testing and experimenting. But using Get/Set enables you, as a programmer, to reinforce your over time already well-developed sense for wrong/right interfaces (because you tried it the hard way). An emphasis on what is the good way to go. And if you did it the hard way, if you really tried to develop your own sense of what is good or not, if you finally realised how good some things are - then you've created your own style. I mean that kind of style which describes how you create your programs, how you plan, how your alghorithm design usually behaves, what a good interface for you is and such things. Your perception. Your ever-changing, inner mantra. Your path. You've just found yourself. Again.


Study time is toolkit time! Really, I've never programmed so much stuff I may need some day. All kinds of sorting alghorithms, converters, classes etc... The good thing is, when I have to code assignments using pointers (and I that will be soon), everything will get very, very quick. I'm not sure how it is when you're programming for a company, but I don't want to miss all the awesome toolkits I already programmed for myself. I hope I can use them later, too. But I probably have to use proprietary technologie or other toolkits... Well. Not that bad. I have time.

And I really need to debug my list-less linkedlist class (means I only have one structure for list items, but not for the entire list). Doesn't work that well and is kinda uncomfortable to use. But still better than STL stuff (shitty stuff, avoid it).



This language is a serious problem. But I like the idea. So I tried to write my own interpreter. This attempt isn't able to execute most of the more complex codes you can find on the web. I don't know wgy. It seems like it's a problem with nested brackets and the "skip" variable, resulting and endless loops and wrong calculations. I don't know. But it's cool to have one now. I mean there's plenty of time and sometimes I'm in need for really, really lowlevelish things. Brainfuck is minimal enough to suit my needs. But to be honest: I suck at brainfuck. I rather prefer some basic calculations and control structures plus memory management.

However, I like the idea of coding recursive interpreters. Of course, the stack isn't always big enough and such. But it's a simple implementation - I don't have to code my own stack, you know... Not that I can't code my own stack, but writing more complex interpreters gets boring after a while. I wrote so many in the past, nowadays I enjoy the simplicity of exploiting already existing technology.

My interpreter is capable of choosing files or standard streams as input/output. Yeah, I know: what a feature! Maybe I should write some brainfuck programs for messing up text files.

Thoughts about game design

Ok. I gave up. This physics shit isn't working and I doubt it'll ever work this way. Let's continue with other parts of the program. A number of things I definitely need to implement:
  • GUI elements for HUD
  • ingame console interface (no menus, just this and keys)
  • key scripts (to assign movement, player actions, etc)
  • class for saving pointed memories in fragmented files
  • an editor for maps, map parts and 3D ascii images
  • other types of light sources (with angle, field and direction)
  • some special effects for light sources
  • binding light sources to objects/map position
  • mouse support/aiming system
  • non-object particle system
  • destructable maps (cool when combined with a "save this map" feature for later construction) - depends on the physics system
  • non-preset-based 3D grid pathfinding system
  • NPC/AI system (a list of goals, desires, characteristic methods, etc... including all my thoughts about how humans think and how I can copy their behaviours and so on)
  • NPC attributes, the overall health/inventory/item thing
  • NPC movement - depends on the physics system
If I get the pointer class thing working, saving games and other things won't be a problem anymore. Let's say I'm trying to archieve the ultimate way of saving whole blocks of program memory.

I also need to drop some initial game design ideas. I still have no idea how the world will be like, what the story could be, etc... No idea. I guess I had one some months before. Hm. I would like to implement the NPCs but they depend on the movement system, which depends on the physics system, which depends on my ability to figure out a better physics solution... Let's ignore the NPC stuff for now. At first I'll implement the console, then the scripting (human-readable stuff, hyuk hyuk), then the key bindings, the pointer/class save thing and finally the editor. An ingame editor. Let's see how it will work. Everything else isn't that necessary atm. One cool thing is that it's now possible to stop the game time whereever you're staying. Means this game is ready for a combination of realtime/turn-based gamers. Ok, not really but somehow it's possible to archieve this. Also, playing the first Stalker prototype helped me to choose a minimal console interface. It's somehow cool to always hack in what you want to do. And so minimal.

I think this game is like wine. The longer the dev time, the better the resulting game. I still want to make a game that involves everything I like about other games/prototypes. Some may say it's too much to implement, but hey... there's time. A lot of time.



I really recommend listening to Bluemars' Cryosleep radio. A place of infinite reflection.

Nobody understands me

But why. Maybe I do think too complex or have thought much more about it than the dude I'm speaking to. And it'll probably never ever change. I guess I have to solve my problems alone, again. I hate beeing lonely-minded. It's haunting me since I became 14 or so. I have a technical problem and nobody knows how to solve it within the given limitations. I know it can be solved, but nobody knows how. And nobody's interested in solving with the limitations in mind. Words cannot express. Language cannot express. The only real expression is a direct, mental infusion. Feel my cold, lonely mind of disabling depth.


Shadow of the Colossus is just a tech demo

It makes you feel bad. Do you enjoy killing beautiful, lonely creatures?


Zombies made my day

I just discovered why I liked Borderlands the second time I tried it: Zombies. It was the fucking nice Zombie DLC which made the whole thing enjoyable. The rare weapons you will hardly find in the first parts of the original game can be easily be found or bought using this DLC. I mean hey - why is the loot so much better? Of course, you will need the loot for the DLC. But not that often. It seems like it's better to start the zombie DLC instead of the original game. I'm immediately interested in looking at Dr. Ned's Zombie Island, but not looking at Borderlands itself. My original rating for Borderlands were wrong. The base game itself is OK. But pretty boring if don't like MMO tasks (except multiplayer, which is really funny). The DLC is awesome. Seriously. If you buy Borderlands and plan to play offline, too, get the Zombie DLC. Maybe it's just me, but it's better and funnier than the original game.



This is the first time I really used my keyboard for something more -erm- complex. If your media player allows seamless looping, listen for a while. This player doesn't.

[Download MP3 version]


What now?

I have this awesome music gear but somehow I don't know what to do now. Everytime I start making a new track there's a moment when my loop sounds nice and I lose interest. Maybe some kind of collaboration experiment? Research in composition techniques? Yeah, that would be interesting. I'll try several ways of "alghorithmic" composition. Like:

Additive arrangement: Take an instrument/drum set and arrange it somehow. Include whatever part you like but keep it as one long track without any other instruments/elements. Add another element and combine it with the previous one. Repeat until you think you're done. Finetune.

Loop arrangement: That's what I usually do (just listed it for completeness). Begin a 8 to 32 beats long loop or more if you wish and add elements which work well together in a seamlessly repeatable loop. Then cut the loop into it's channels/instument tracks and build up the song out of em (including modulation and/or fading over time, etc). It's simple but effective for straight trance or techno tracks. Of course, not all loops need to be active at one time. But if they work perfect together, you won't have problems combining them. Requires Usually requires a lot of different channels to archieve decent structures.

Stick on core: Take the characteristic parts you wish for the track (means you need to do some free, creative work before) and stick other parts on it. Like samples, beats or melody lines. That's a good way to keep the core part of the song alive, the soul you want to emphasize the most.

State morphing: Take a nice loop and it's synth settings. Repeat it x times and then change settings or the score in the next pattern. Repeat. That's how I compose DS-10 tracks. Just alter the waveform, jump between two patterns, add a part in the middle, remove and replace score parts... Simple and enjoyable. Gives a nice result, though. And it comes closer to "done work" each time you add a new pattern. Two bad that most sequencing programms don't support complete synth state changes per pattern comfortably.

A combination of them gives a good work base for me, I guess. Since I'm not a great concept/flow/feel-the-beat dude, it's easier for me to just add stuff on top of previous parts. The loop arrangement thing get's really boring and it isn't that satisfying. Time to start something new! Also, I need to record some DS-10 samples. Drum samples and stuff.

The end

I beat Borderlands. It was really fun this time, but there's no real challenges in the end, especially if you did all the side missions before continuing with the next main mission. It was a simple, but entertaining game if you have the hardware to play it. Yes, it's look is essential. You'll be disappointed when playing with hardware not able to give you a high resolution desert experience. That said we can reduce the game to nice balancing, fun coop and damn good style. That's it, that's Borderland. I will play it again, soon. This time with a soldier instead of a sniper/gunslinger combination. I know there's the possiblities for multiple play-throughs, but I can't see a reason for to play it again with just a harder difficulty. The game has it's limits in single player (like replayability) but not all of them can be found in coop mode. I played some hours with random guys and it really was fun.

I somehow like this game. Simple, well-done if technical incorrect, good design and nice coop. Plus it doesn't suck you in so much. Nice to play for coming down after a hard day or so. And that's why I like it. It's not too deep. It leaves space for other thoughts. It even helped me to continue programming.

Shouldn't games be like this? Offering another, not too deep world for fun and entertainment? Maybe not always. But this game really induces me to think like that. I've played many very deep and atmospheric games, but I'm always sad to leave them. Or let's say most games I played are dramatic. That's it. Dramatic. This game isn't dramatic. It's just fucking cool. Therefore I just feel satisfied and normalized after finishing.

That's not a bad thing, though.