Tel: 0113 3947 920
Email: matthew@dubitlimited.com

Dubit Platform: Simple, Customizable, & Proven

We’ve been creating virtual worlds for 10 years. We’ve found that nearly every world has the same core set of features and game engines. Rebuilding these for each project is a waste of time – you need to focus on what’s going to make your world fun, not on building friends lists, admin tools, and payment gateways. That’s why we created our virtual world platform: to provide you with all the features and engines you can imagine, all scaleable, tried & tested.

This world-class platform is available for developers or you can commission us to build your own bespoke world.

You don’t just have to take our word for it. Our technology has been used on projects all over the world, including Cartoon Network’s first virtual world, the BBC’s first browser world, BSKYB’s first virtual world, Wizard of Oz world, Monty Python world, and by entrepreneurial startups who want to get to market quickly.

Download the Dubit Platform whitepaper.

What does the platform do?

The Dubit Platform is a fully customizable empty virtual world with all the core components you’d expect, including customizable avatars, rooms, friends lists, moderation tools, shops, private rooms, payment gateways, chat filtering, scaling, and loads more. All aspects of the platform are extensible – no two worlds on the Dubit Platform look the same.

Every world needs these core features, but they don’t make the game more fun. It’s the things to do in the world that make it fun. Where the first generation of virtual worlds relied on mini games for the fun, the next generation are adopting MMO game dynamics – quests, narrative, puzzles, skills, levels, and adventures. To create this content, modern MMOs use scripts to quickly and easily tell the non-player characters and the game world what to do – like a script for a stage show tells the actors what to do.

Without the technology to read scripts a game is limited to what has already been programmed or what can configured in the database. With the technology to read scripts a game designer is only limited by their imagination – they can invent completely new quests, add new locations, create non-player characters, and on.

The Dubit Platform is the only virtual world platform with scripting technology design specifically for virtual worlds.

How does the scripting technology work?

We built tools so that anyone can easily write new scripts.

Today, using the Dubit Platform Editor, we’ve halved the time to create a high quality virtual world. Using our proprietary GAML scripting language it’s possible to quickly develop quests, narratives, branching conversations, puzzles and games. Persistence is baked right into GAML, so when a player finishes a quest, GAML wont forget.

Platform Technology

The platform is comprised of four major modules – the server infrastructure, the core interface components, game engine, and the GAML scripting language.

  • The server infrastructure manages the multiuser messages, database work, avatar rendering, and back office functions.
  • The core interface components make up the user interface and cover everything from registration and payment gateway integration through to customizable user rooms and chat filtering.
  • While the game engine covers everything that happens in the world – rendering, avatars, movement, collision, sounds, and more – it’s the GAML scripting language glues all these pieces together.

Technology Features

The Dubit Platform has a number of unique technology advantages:

  • 2D, 2.5D, and 3D High Speed Rendering: Fast and performant rendering of large scrollable areas supporting sounds, animations, videos, light, and collision detection.
  • Firewall Tunneling: The server supports five communication protocols (xhr-polling, xhr-multipart, htmlfile, websocket, flashsocket) so that we can be confident of connectivity no matter what browser and firewall combination.
  • Scalable Presence: Players do not need to be on the same server to see their friends online. Leveraging the highly scalable Erlang language we have developed a contact list that is not limited to a single server or shard.
  • Cross Server Communication: Players can communicate with their friends between servers and shards.
  • Path Finding: No more bumping into objects or awkward map traversal, the fast path finding algorithm will quickly find a route around an obstacle and is not limited to tile based grids. Even with path finding players can still use their keyboard controls.
  • Physics: Rooms support basic physics interactions, including collision, elasticity, pushing objects, vents, and more.
  • Connect to iOS, android, HTML 5: The platform uses a simple to decode JSON protocol that integrates with iOS, Android, and HTML 5 platforms.
  • Automatic Instancing: The server has the ability to automatically instance an area view and to create copies of it as needed based on configurable capacity settings.
  • Game Features

A standard platform installation is like an empty virtual world without any content, games, rooms, or avatars. There are all the core features, the content needs plugging in, and any extensions writing. The standard feature set is split into three areas: custom content, platform components, and GAML components.

Custom Content
These are the features that are developed as custom code or custom artwork for each project.
Platform Components
These features are typically found in all casual gaming worlds and are packaged together in the Platform Core Components.
GAML Components
Games, quests, and adventures can be created using only our GAML script and editor tools. These are the available features.
Authentication
User authentication and security
  • Guest Access
  • U14 Registration
  • Salted & Hashed Passwords
World
Chat environment design and implementation
  • Environments
  • Keyboard control
  • Mouse control
  • Private chat environments
  • Instanced environments
  • Camera & Photo Album
  • 2D & 2.5D Engine
  • 3D Engine
  • Collision Detection
  • Pathfinding
  • Notifications & Growls
  • Sounds Effects
  • Background Music
  • Video
Social
Communication and user interaction
  • Avatar actions
  • Tags
  • Chat message builder
  • Profanity filter (White & black list)
  • Emoticons
  • Friends list
  • Ignore list
  • Facebook Integration
  • Player Profiles
  • Achievements
Gaming
Single, multiplayer, and group games
  • Mini games
  • Quests, treasure hunts, NPC, etc
  • Collectables
  • Single Player Game API
  • Multi-Player Game API
  • Instant Match
  • Activity Bars
  • Backpack
  • Collections
  • Configurable Levels
  • Experience Points
  • Progress Meters
  • NPC Branching Conversation
  • Quests
  • Skills
  • Verb Bar
Economy
Virtual economy and digital item sales
  • Free Points
  • Paid Credits
  • Micro-payments
  • Subscriptions
  • Pro accounts
Personalization
Identity and bragging rights
  • Avatars
  • Clothes
  • Shops
  • Wardrobe
  • Customizable Avatar Engine
  • Customizable User Room Engine

Platform Architecture

A simplified overview of the architecture is shown in the diagram below

Nexus Multiuser Server: Built on top of the Apache Mina project, each node in our multiuser server cluster handles many thousand concurrent players. The multiuser server routes messages between players in the world, in extreme circumstances delivering over 250,000 messages per second.

Erlang Presence Server: Developed in Erlang using the hugely scalable eJabberd project, the presence server directs contact list messages, private chat messages, and notifications between players on different Nexus game servers.

Ruby on Rails Web Services: Responsible for proxying access to the MySQL database. The web services are consumed by the Nexus Multiuser Server and the Flash Client, returning profile, shop, product, and wardrobe data. For heavy lifting, the Rails services are backed up by Java services running on Glassfish.

Ruby Admin Website: Avatar clothes, furniture, and products are uploaded and managed through the admin website.

Java Render Server: Reduces avatar load time by compressing and combining assets into single files. Cuts avatar load times 10 fold.

Persistence Database: Anything that happens within your world can be automatically saved to the persistence database. For example, completing a quest, picking up an item, leveling up, unlocking a door, would all be transparently saved to the persistence database.

Server Scalability

The technology has been used in live projects supporting over 5 million weekly players and tested to over 40,000 concurrent players. For a Nexus server running on an Amazon EC2 High CPU instance the system can support 7,500 concurrent players per instance, delivering over 300,000 message per second (in real life no game gets close to this) which equates to a throughput of over 320 Mb/s. Detailed benchmarks are available on request.

 

Recent tweets...