We have a chat with Alexander Åström – client-programmer with a beard.
Who are you… at the company I mean?
I’m Alexander (Haradur on the forums) and I’m the client-programmer… I work on the things that happens on the client. *laughs*
What transpires with the rendering, the UI, what occurs when you press buttons and the like.
So the client can be described as a kind of bridge between the players and the server?
Yes, exactly. The players control what happens in the client and the client sends commands to the server, after which the server responds by telling the client what other players and creatures do and so forth.
What’s the work-process look like? Is there a lot of planning involved?
Well, first we discuss what we want to do, then we hammer out the design and the order in which to them in etc. Once we know what to do, we sit down discuss the best ways of how to go about it with those who should be involved in the assignment. Me and Erik* (to synchronize coding between server and client), me and Emil** (to work out the visual design) or all three.
*Erik Nytting – Wurm Server-Programmer
**Emil Norrman – Wurm Senior Art Director
I’ve heard about this. Is this when the delegation process begins? To do as little as possible? *laughs*
Do you usually come out on top?
It’s 50/50 basically. Sometimes you have to surrender when all the evidence points to someone else being more right than you.
“I’ve played games constantly”
So I was wondering, have you been interested in games your whole life?
As a child we had an Amiga at home that I played a lot… Alien Breed and other stuff. Since then I’ve played games constantly. From when I was a child, all the time growing up… I still do.
Are there any particular kind of games you enjoy?
Well, right now it’s Dark Souls 2*, Mario Kart, WoW and Battlefield… so it spans across all kinds of genres.
*Action RPG by From Software
So there’s no overarching design-philosophies you enjoy? For example, I’ve noticed that I enjoy more challenging games with focus on the mechanics.
How did the gaming interest translate into working in programming?
Why I started programming I don’t know. I just thought it might be a fun field to work in. I was working as a chef previously, when I was told about a KY-education* in game programming, which I applied for and was admitted to. It went alright, although I understood basically nothing in the beginning.
*Education with the goal of making you viable for a particular job upon completion.
You hadn’t done any programming before?
Nope, none. The course went on during a period of 3 years, of which the last year consisted of an internship which took place here at Code Club. I was told about Wurm and Rolf (CEO at Code Club) by my stepfather, who’d worked at a printing-company with him here in Motala. He suggested that I should call Rolf and ask for an internship. Rolf thought it was a good idea and so I moved here with my live-in girlfriend.
Did you get the job directly after the internship was over?
Yeah, when the internship drew to a close, I asked if there were any possibility for a job and it did.
You got the Rolf seal-of-approval!
How’s working on Wurm from the perspective of a client-programmer? Wherein lies the challenges in developing a MMO?
The main challenge with a sandbox MMORPG is that you want to be able to render as much as possible on the screen – animals, items, buildings etc. In addition, unlike a regular MMO where the developers know that in this particular zone there’s a set number of things you can kill and respawn, the players decide where objects will be positioned in Wurm. People can have 50 cows in one spot if they want. Though they’d probably get infected and sick…
Nah, just regular old sick.
But the rendering-process is a challenge to us. We have to make sure that we can display all those animals on-screen all while having varying textures on different objects and making everything run well… we want people to be able to play Wurm with pretty bad computers. Java can be an hinderance some times, depending on if you run 64-bit or 32-bit Java. If you have 32-bit Java’s only able to allocate 1.6 gig’s of ram, regardless of how much ram your pc has.
How does the rendering work? Do you render depending on where players are?
Yep, the server decides what should be rendered.
So do animals for example get stored as a coordinate?
The animal lies in the database housed on the server, which stores position, hp and all manner of attributes the animal has.
So if 2 animals fight, and no one is there to observe it’s like the tree falling in the woods?
*laughs* If it only happens on the server… does it still make a sound?
Is there anything in particular you remember during your time here? Or maybe while playing Wurm?
Me and a couple of friends were out searching for unicorns to kill, when we found a cavern where like 30 unicorns had descended into. Good for our fightskill-gain. In those days they had trouble getting out of the caves as well…
So caves are the unicorns natural enemy?
I noticed about unicorns that they can stand on mountains on a near 90 degree slope.
Yeah, they are kind of like spiders! *laughs*
Little known fact about unicorns – they have suction-cups underneath their hoofs.
By the way, are there any areas of Wurm that you feel need improving? And respectively, what do you enjoy most about it?
One thing that needs to improve is the combat, which I feel isn’t optimal at the moment. While factors such as positioning and stuff matters, I’d rather have some more interaction between the player and the thing you are hitting. We are constantly working on improving it though!
My favourite aspect of Wurm is the freedom. Build however you want, and decide yourself what you want to do. Get a group of friends together and just go somewhere.
Finally – can you cook a burrito?
No, I can’t. *laughs*
You can’t? “no burrito” i’m writing here…
Thanks for your time Alex!