To Sail the High Seas

Today, I’m excited to announce (what is this, a press release? lol) that I’m embarking on a new adventure as Senior Game Designer at Ubisoft Singapore!

I am forever thankful for the opportunity Mighty Bear Games gave me, and for all the great people I had the privilege of working with (and learning from!) there over the past five years, but now it’s time for me to set sail into uncharted waters full of pirate ships, skulls and possibly also some bones!

Time to buy myself an eyepatch, and also a parrot costume for my cat. So she can sit on my shoulder and squawk. Yarr!

I design, therefore I am

About Game Design, Imposter Syndrome and Soul-searching

Through most of my professional life, I had this nagging feeling in the back of my head that I was not good enough, that I didn’t know what I was doing, and that sooner or later someone would expose me for what I really was – a fraud. Imposter Syndrome hit me hard both when I was a designer at Funcom and when I later went on my own indie adventure.

That situation was not much different when, around four years and seven months ago, I accepted an offer to join a relatively fresh startup studio in Singapore as a game designer, after they initially caught my attention by developing a casual MMORPG on mobile called World of Legends, which would become the first mobile game I ever worked on.

At the time, Mighty Bear Games had somewhere between 12-15 employees. and I was immediately thrown in at the deep end on day one, when I was tasked to take over the reins of the game’s economy and combat design/balancing from the other designer on the team, who had started planning his early retirement from the industry just before I joined!

I still have nightmares about the Excel-sheets I took over, which could only have been created by some mad genius Excel wizard; numerous humongous, interlinked documents with sections that had to be manually updated and exported to CVS files, before being imported into the game’s data server through a careful process and in a very particular order. Modifying one document would have cascading effects to half a dozen others, some of which could take upwards of 5 minutes to load up as a result. Thanks, BK <3

Anyway, it kept me busy, and I learned a lot about Excel in a short amount of time as a result. World of Legends itself eventually made it to global launch on both Android and iOS, but was unfortunately shut down not long after because the number of players coming in, and the revenue those players generated, was not enough to justify continued development of the game.

However, the studio gained lots of valuable experience in the process (and learned first-hand that making MMORPGs is hard), and we moved on to the next projects with boundless zest:

Games I worked on at MBG

Since joining Mighty Bear that fateful day back in 2018, I’ve written game feature designs, scripted AI logic, balanced combat systems and game economies, pitched designs for new games and even done some level design. I’ve contributed across multiple teams in the creation of an MMORPG, two games for Apple Arcade (Battle Royale + Arena Brawler), a Match-3 Adventure, a Merge-game and – most recently – another Battle Royale game in the Web3 space.

Thanks to the opportunity Mighty Bear Games gave me I’ve gained a ton of designer XP and have leveled up my design skills multiple times over, but more importantly, I now feel like I finally know who I am and what I can do.

As a result, I no longer internalize the self-doubt and fear that haunted me for so long, and though there might still be a small lingering remnant of that all-too-familiar feeling of inadequacy lurking somewhere deep in the shadows of my soul, I can now look back at everything I’ve experienced and accomplished and feel confident that I could go into any team and contribute in meaningful ways, regardless of where I go or what game I work on next.

Going forward, I’m eager to continue growing as a game designer and excited to apply the skills and lessons I learn along the way to create new gaming experiences that can stand the test of time!

Singapore is hot and humid – news at 11

Arab Street, Singapore, on a rainy day

I was aware of this even before I came to Singapore, but I would nevertheless like to take a moment just to restate the obvious: Singapore is hot and humid. Not only is it hot and humid, it is also full of ants, spiders and cockroaches – a combination that in theory should make this a less than ideal location for me to live, yet in practice, it’s not too bad. The ants are out of sight and mind as long as things are kept neat and clean, the spiders (brrr, spiderssss) mostly stay hidden in moist, dark corners, and the cockroaches are… well… intimidating, but thankfully only encountered rarely.

Aside from these minor issues, there are many things about Singapore I love. My wife being from Singapore and also living here is one such thing. Supermarkets (and other establishments like cafés, restaurants, fitness gyms) that are open 24/7 and can be found within 10 minutes walk from where I live is another. A huge contrast compared to my home village/island/municipality back in Norway, where the only thing open 24/7 is a soda-vending machine outside our local gas-station. A seemingly endless variety in food – whether from local hawker stalls, fast-food places or restaurants, there’s always something new to try. Okay, so I’m not the most adventurous person in the world when it comes to trying food, but even so, I have tried a whole bunch of different foods in Singapore. Not everything has been equally great, but that’s okay! Internet speeds are insane. Singapore had the highest average peak Internet speed and third highest average speed in the world, in 2016. Fiber everywhere!

I can get anywhere I want in Singapore within 50 minutes tops (and usually much less), due to the MRT trains and bus-routes that criss-cross the city, combined with taxi-services like Grab/Uber. While I miss driving a car of my own, I don’t like driving in city traffic; I prefer the less crowded, open country roads. Also, cars in Singapore are insanely expensive. Not sure how anyone actually affords owning a car here.  Continue reading “Singapore is hot and humid – news at 11”

From the brink of oblivion, I summon thee; blog, return to life!

Welcome to three years later! You can now witness, first hand, my blog’s revival; like a phoenix rising from the ashes, it will ascend through the swirling maelstrom of time and retake its position as one of the blogosphere’s most obscure, unknown and least read weblogs.

A number of events have taken place since I wrote my last entry, so let me get you up to speed: Language-studies, romance, part-time (60%) work as a system developer, trip to Iceland, trips to Singapore, vacations in Norway, engagement ring, more trips to Singapore, more part-time work (80%) and less time (20%) for game project, wedding-feast, and more! Most recently, I moved to Singapore, where I am currently residing on an LTVP (Long-Term Visit Pass) and have just started looking around for potential work in the Singaporean game development industry. That about sums it up for now, I think?

Anyway, this first post of the new era will be rather short, but rest assured that I will (again) try to post more regularly in the coming days, weeks and/or months. Or years. If this plan holds water, expect to see posts concerning the fate of a certain game project, as well as tales of my new adventures in Singapore(!) and other random nonsense.

Time for an update regarding The Tavern

The website for the game I mentioned working on in my previous blog post, The Tavern, is now finally up and running. It has taken longer to get the page ready than I originally anticipated, but… meh, that’s life. Things happen, and not always in the optimal order. In any case, it’s up there now, at http://www.thetaverngame.com/. Check it out if you wish.

Just in case you don’t know what The Tavern is, and you’d rather not go through the trouble of clicking the link to find out, I’ll save you the trouble and post a descriptive blurb + some early screenshots right here:

The Tavern is a short-story oriented, event-driven “Socially Multiplayer Online Roguelike-like Roleplaying Game” (or a SMORRPG, for short), set in a pseudo-medieval sword and sorcery-like fantasy world. The game has a split focus between solo adventuring and socializing/interacting with other players in social hubs, aka taverns.

Taverns are gathering spots for adventurers and would-be heroes of all kinds, and serve as social hubs where the players can hang out, show off their characters, socialize and interact with other players in various ways. This is also where players can find Adventures.

An Adventure is a self-contained short-story where the player must choose a path through the world in order to finish the story and resolve the objective of the Adventure. Randomization, branching choices, unique events, rare monster encounters and special character class abilities all help making each adventure a unique experience for the player.

In other news, I still don’t know how to end blog posts, so I’ll just write out something random down here. It’s not very likely that anyone bothers to read all the way to the end, anyway. And in case you actually did read to the end, well… what do you want, a cookie? Sheesh.

It is official – I now co-own an indie game dev studio!

Well, bureaucracy has been overcome, and Way North Studios AS is at last an officially registered company in Norway. Huzzah!

To celebrate, we registered a domain name (http://www.thetaverngame.com) for the game we’re making (codename, and actual name: The Tavern) and put up a small prototype test/teaser thing. Be warned! It requires the Unity Webplayer plugin and it’s not super impressive. It doesn’t actually do anything except just sit there and play some ambient effects at you as the artificial wind blows through the trees surrounding the placeholder tavern building (it’s just a model!).

It does, however, give an indication of what we want the game’s graphics to look and feel like.

For the horribly interested, visit the Games-section of the Way North Studios webpage for a few early details concerning the game.

Disclaimer: Anything and everything we say about the game currently is subject to change in the coming weeks and months.

 

 

Bureaucracy, huh, yeah! What is it good for…?

…absolutely nothing!

Having been back in Norway for nearly three weeks already,  I can hardly sit still in anticipation of finally being able to get up in the mornings and go to work at a location actually intended for getting work done, using a computer that’s not more than a decade old and doesn’t try to oppose me at every click of the mouse, at the supermegaawesome office of the top-secret (shh!) and not-yet-officially-launched indie game development studio I’m co-founding – Way North Studios!

*gets up and dances a jig*

What’s the hold-up? Partly, waiting for the new computers, paperclips and/or dance-dance-revolution mats? we ordered to arrive (any day now – woho!). Partly, bureaucracy (meh!) we need to trudge through in order to finalize the registration of our dev studio as a proper company in Norway, as well as to get all our Internets, insurances, hidden cameras, circus-operating permits, alarms and lethal guard hamsters sorted out, amongst other crucial and critical things.

Meanwhile, I pour over design documents, make plans for art and asset pipelines, try to choose what version control scheme to go with (currently leaning towards Mercurial), figure out how to deal with data-storage and the safekeeping of said data and – whenever my current computer is being agreeable – explore and uncover all the secrets and forbidden techniques hidden away in Unity.

In other news, I managed to find my Collector’s Edition coin (a Septim) from Oblivion in an unopened, sealed plastic bag – just lying at the back of a shelf all innocent like. Naturally, I promptly opened it and declared it forever my lucky game development coin. For the curious – it’s made of solid fake gold, is about 36 mm in diameter and 2 mm thick, and this is what it looks like:

Oblivion Collector's Edition Septim Coin
Oblivion Collector’s Edition Septim Coin

 

 

We’ll get along just fine, my preciousssss Ssseptim. You’d better bring me luck, or I’ll melt you down! (Just kidding, I wouldn’t do that (I totally would, though))

 

 

Passing time in Montreal with Unity and shields

In these my last days and weeks in Montreal, I spend most of my spare time poring over documentation, tutorials and example-projects for Unity – and to some extent, Blender – soaking up as much knowledge about and experience with these tools as I possibly can. The goal: to become self-sufficient and able to create games and/or prototypes of games in Unity, entirely on my own. Not necessarily to go at it all on my own, but I figure it will be a good foundation for whatever comes next.

My existing “foundation” has been slowly built over the past 13 years and includes (but is not limited to) exposure to and experience with C++, C JavaScript, AI scripting using visual tools as well as asset-handling/basic animation work in 3ds Max, gameplay design and gameplay-related worldbuilding efforts. I am by no measure close to being an expert in any of these matters individually, but I am hoping that the collective sum of experience and knowledge that I have obtained over these years – from both inside and outside of the industry itself – can serve as a springboard of sorts into the world of Unity and independent game development.

UnityScript vs C#

UnityScripting in action
UnityScripting in action
Speaking of Unity, and scripting; I’m finding obscure joy in converting various Unity tutorial scripts from C# to JavaScript. “JavaScript!? Why on earth would you do that?” you might ask. Well, firstly – it’s not regular JavaScript, which is why many users prefer the nickname instead: UnityScript. Assuming I’ve understood it correctly, UnityScript is an object/component-oriented, .NET-based (Mono) JavaScript implementation based on the Boo programming language. In practice, it seems to me that it is used very similarly to C# in Unity, albeit with slightly different syntax, certain peculiarities and some potential limitations (depending on what you’re using it for).

Secondly, while converting tutorials from one language to the other I’m learning how it’s done in both languages at the same time, and though I’ll sometimes run into stumbling blocks where language-specific implementation of code is required, it forces me to apply my braincells, dig deeper and really figure out what’s going on and why.

Of course, that would be true when converting the other way around as well, but since I happen to like Unity’s Javascript-syntax and C# not so much, that’s what I’m going for. Worst case scenario, if there’s something I’m unable to achieve in UnityScript I might be forced to also use C# scripts in the same project. I might see things differently if I end up collaborating with someone who prefers C#, but I’ll cross that bridge when I come to it. *shrug*

Meanwhile, at work…

Example of shield-clipping in AoC
Example of shield-clipping in AoC
My final days at work mostly consist of tinkering with AI scripts for an (unreleased) dungeon that I have been working on, updating the documentation for said scripts in preparation to hand it off to whoever will work on it next, as well as diving into an issue that’s been a thorn in my side for quite some time, but which hasn’t had the highest of priorities: Shields.

More specifically, shields that clip through the heads of characters, stick through their hands/arms, are incorrectly positioned/rotated when equipped and/or are seen from the side in the inventory instead of the front (making it hard to actually see what they look like).

Having previously already gone through every single shield-asset in the game and documented what was wrong/needed fixing with each, I’ll now be trying to fix as many of those issues as I can before I pack my things and jump on a plane back to Norway.

Lessons learned by working at Funcom for five years

I have an upcoming jubilee of sorts in a few months, at which point I can celebrate having endured life in the game development industry for five (measly) years. This cause for celebration is somewhat diminished by the fact that Funcom announced earlier this month that they are restructuring and consolidating offices – which means that I, along with the majority of the other developers at Funcom’s Montreal office, are being let go. For my part this means that I have at most two and a half month left before my official last day at FC, and having started working for FC in late March 2008, this means I might just about pass the five-year mark (yay!) before I’m officially out of a job (nay!).

Throughout these last soon-to-be five years I’ve had the pleasure and privilege of working with a diverse bunch of awesome people (and I hope that I’ll be able to work with some of them again in the future!) on two different MMORPG projects, and I would not change that for the world, but what exactly have I learned after this time spent working in the game development industry? Which of the preconceived assumptions and expectations I brought with me have held up, and which have been thoroughly shattered? What knowledge have I acquired that I can bring with me where-ever I go next?

I’ve played with the idea of writing a post along these lines in the past year or so, but what I’ve found out is that it’s not easy to summarize several years worth of experience in a simple blog post. Instead, I will try to focus on some of the more obvious lessons I have learned, the ones I can point at and say “that might have been useful to know/realize the value of when I first started”. Some – or maybe all – of them are perhaps obvious enough that they’re hardly worth mentioning, but then again – everything is obvious is hindsight.
Continue reading “Lessons learned by working at Funcom for five years”

Character resets and permanent death

Zubon posted over at Kill Ten Rats about resetting characters (examples given: Torchlight, Kingdom of Loathing) being preferable to resetting worlds (examples given: Torchlight II, Borderlands 1 and 2) when reaching the end of a game. The former entails resetting (or retiring+re-creating) a character to scratch and giving it some boost or other (stats, skill-points, items, gold) to give it a flying start, while for the latter you reset the game-world and increase difficulty to match the current status of the character.

While an interesting topic of discussion on it’s own, this got me thinking.

Resets in virtual worlds

Character resets in games like the ones mentioned above is nothing new – it has been done in MUDs and BBS door-games (like Legend of the Red Dragon) for decades already, after all. It would still be novel in a modern virtual world, however, and personally I would love to see a virtual world where the following mechanics are combined:

  1. Optional or forced retirement of characters that have reached a certain threshold (character lifespan, fame, fortune, epic achievements)
  2. Permanent death(!)
  3. Restarting after either of the above events as a heir of the original character with some form of inheritance/boost (stats, more powerful than usual heirloom item, title, etc)

Continue reading “Character resets and permanent death”