Virek Online: The evolution of a Metaplace world

6 01 2010


This post portraits the creation and building of my main Metaplace world Virek Online, up until MP closed their servers on January 1 2010. If you don’t know what Metaplace is, read this post about it or, well, just google it.

When I got into Metaplace’s early closed beta I had the vague idea to make a virtual hangout to embed on my folkmusic-duo Pettersson & Fredrikssons webpage, where fans and friends could chat while listening to our tunes. I envisioned a fantasy tavern with instruments that you could click to select music, or something of the like.

Evil, fiery, fishy

I must admit I was overwhelmed when I arrived. This was bigger, harder and more complex then I thought. And also much less stable and developed. My laptop could hardly run the java-toolset, the embed functionality wasn’t there yet and I definitely didn’t understand much of the scripting and…well anything really.  But. There was promises of a simpler and sleeker interface called the “light tools”, which would resolve many issues and be kinder to noobs like myself. So I started building.

After a while the “light tools” arrived, now with the somewhat less patronizing name “flex tools”, and it was pretty great. Over time most functionality from the java tools was ported over and I started to feel like I actually could do stuff with this. And about this time, I decided to do something a little bit different – what if I’d make an actual, playable, tongue-in-cheek adventure game which borrows lore, npc:s and story elements from Pettersson & Fredrikssons music? I had already named the world “virek online”, since our latest cd was called Virek. It is a dialect word which means “Far-travelled”, so I thought…what if YOU are this “Virek”? The far-travelled one. The one who is destined to save us all. That’s as good a base for a fantasy rpg story as anything, so I started writing a tale.

The story

storytellerI came up with the idea of the Land of the Minstrel Kings, once ruled by two minstrels (suspiciously similar to Pettersson & Fredriksson) but now the evil wizard Braand has wiped the peoples memory and proclaimed himself king. You arrive after a shipwreck and meet the kind and wise court wizard, Jon-Masn, who says you are the chosen one, “Virek”. The name Jon-Masn is taken from a legendary fiddler from my part of sweden, who was told to have magic powers. The name Braand, on the other hand, is taken from our first album – Brand (meaning fire). Anyway, to be able to claim the throne, Braands right hand “The crimson knight” stole the magical Holy Crest (a blinged out version of our duos symbol) from the Minstrel Kings and fled east to the Land of Ice and Snow – Bottn.  Bottn (reminiscent of my homecounty Västerbotten in the north of Sweden) is a harsh and cold place, inhabited only by wicked penguins and a Saami shaman called “Väverskan”. The Crimson Knight is there, and after you kick his ass he reveals that he was decoy and that the wizard has the Crest, and is hiding in the castle. Long story short – you go in the castle, find and fight the wizard who evaporates, but leaves the Crest. You give the Crest back to the Minstrel Kings, who now play for scraps at the tavern, and you are hailed as the Far-Travelled Hero that you are.

That’s most of the story. On your travels you’ll come across a drunk fiddler-poet (Knaft-Jonke), a girl who needs a special pink flower to cure her fathers horrible dermatitis as well as your standard RPG-fare of flying fishes and ghosts. And also, there be meeps (and they give you awesome ice-shooting powers).

Hurdles

As a person with zero coding knowledge, limited graphic skills and who didn’t really knew what game design was there where, to say the least, some pretty big obstacles to come across. That Metaplace was the platform helped alot, especially in the graphics department – it was easy to import images, and after a while when the Google 3D Warehouse importer went live things got even easier. I’d download models to Sketchup, tweak and modify them and upload it to 3D warehouse. Then I could just import that model directly into my world in Metaplace. Very handy, even if image quality varied. When it came to coding, Metaplace stepped in as well – or rather, the users. In the wiki and forum users had uploaded “script snippets” – functions expressed through lines of script which I could copy and use in my world. I slowly started understanding the basics of the script-language by taking scripts apart, modifying them and changing their function. Sort of what I did with the 3D warehouse models. After a while I actually could make simple scripts myself, even if I never got very good at it. Later Metaplace introduced a “marketplace” system, where users could upload modules, complete objects with scripts and images for other users to download and use in their world. This simplified things a great deal and among other things let me install dialog and inventory systems, spawn points and other game mechanics in the world. A big thing was the bundle of functions called “cruises component pack” written by the user Cruise which I – after much direct help from him – managed to start using for many different things, like health/damage and projectiles.

fredriksson_front_rA huge problem for a long time was that of player choice. I had made a big world with different scenes and many NPC:s to talk to, but they where meant to be encountered in a given order. Even if I could make the map-layout and use dialog hints to try to steer the player in a given direction, I could never be certain. At this time, there was no quest-system or similar in the marketplace and I definitely lacked the skills to write one. Enter the inventory. A user and mp-employee called ZimZam had made an inventory system which was flexible and rather easy to use. I used this to let the story propel forward – the court wizard “Jon-Masn” would give you a scroll, which you needed to be able to talk to the next npc, who would then give you a fruitbasket to hand over to someone who otherwise wouldn’t talk to you because she was hungry. And so on. In a bigger story, this would of course not be sufficient, but for this small tale it worked pretty good.

A world in motion

To my surprise, Virek Online got chosen to be “community spotlight” in Metaplace’s blog in sep/oct -08. This led to a few pretty cool things – I got to show off pics from the game outside the site (this was otherwise forbidden due to the beta-agreement), the game got mentioned on Raph Kosters website and it was featured on the front page of MMO-bussiness magazine Worlds In Motion. It was cool, but also felt odd. I was just playing around, and here’s a screenshot of my game in between pics from WOW and Warhammer Online!

Close, but no cigar

vaverskanlLate spring 2009 I was very close to finishing this project. All places built, most functionality was working. The story was smooth. And then things started falling apart. Persistance issues, things didn’t get deleted from the ground as they should, the inventory was malfunctioning. Odd behaviours overall. Turned out, I hadn’t understood a basic premise: all “places” (different scenes) in a world activates when the player logs in. This meant, that as a player logged in every flying fish, every spawner, every scripted behavior was active, clogging the server with requests. And this was probably one of the biggest worlds in Metaplace.  So after a while I came up with a system to only let scripted objects “do stuff” when a player is nearby. This sounds simple, and it probably would have been for a competent coder, but for me it was a great accomplishment and something of a win over the scripting language.

The ending

After that things worked like a charm. A few weeks later, Virek Online was more or less finished. It would need tweaking in a few areas. I should have made the end-boss way harder, there where some bugs, a few sounds was missing, and…well there can always be more polish. But it was playable.

Not many people played it to the end though. Below is the complete list of people who made it to the very end, and who choosed a “prize” to be displayed in the throne room.

The Far-Travelled Heroes of Virek Online are:

Fred_the_third (that’s my alt) , Linnea, Obo, Raph, Reflex, Lunarraid, Isabelle, Inumo, Betyyy, Beacool, Nora, Gesully, Duskie, Sarim, SuperBobo, Alex6007, KrazyJosh1234, Tootles, GabbyGood, vBommel, GregDaniels, Jasmin, Truule

If there’s someone I’ve missed or who actually got to the end, but failed to claim the prize (because of bugs or otherwise) please let me know.

Documentation

Before Metaplace closed down eternally, I vidcapped an entire runthrough of the game. It’s divided in 10 youtube-videos. You can watch them all here: https://silkwoodmusic.wordpress.com/worlds/. Unfortunately, the sound quality is pretty bad for reasons beyond my control. Just note, that the sound was way better then this when the game was played.

Final thanks

I want to end this huge post by giving a huge thanks to the users, developers and staff members who helped me in so many different ways with this game. I have learned so much from it, and had so much fun. I never dreamed of being a game developer, but now that I’ve had a chance to pretend to be one I sort of have a craving to do it again sometime. So please, Metaplace inc, come back with something cool. And stay this time.

Thanks to Raph, Cuppy, Amethyst, Cruise, Zimzam, Crwth, Chooseareality, John, Lostbetween, Lunarraid, Slasrath, Scopique, Dorian, Jason and MANY MORE. I probably forgot most of the people who where super-important for the game, and now I can’t get back and check. If you know I used your modules or received help for Virek Online in any way, let me know please.


Actions

Information

2 responses

12 01 2010
Cuppycake

Great post Fredriksson. 🙂 Virek Online will always be one of my favorite worlds. Thanks for all of the time you spent with us, and for writing this nice reflection of your time in MP!

12 01 2010
admin

Thanks Cuppy. It was a great run, and you did a fantastic job managing the community! Looking forward to the forthcoming redonculus announcements. And congrats to your new job-position!

Leave a comment