Coders, those responsible for creating the code, the framework of the world. Your job is long, and ever-more complex. We provide an astounding array of technical articles, how-to resources, distribute code, codebases, and many other resources to help you progress, to keep from reinventing the wheel. To shine.
It's a bit pointless having a great virtual world, if you can't take advantage of the network it's connected to. For small worlds, that means the internet. For larger worlds, you are going to be looking at spreading the workload over multiple servers, possibly even multiple clients under a peer to peer or hierarchical infrastructure. To do this, you need to have the best grasp of networking you can get.
At the time of publication, it was the best book on the subject of networking real-time, multiple user, persistent environments. Although it is still on the market today, the problem is, it is almost hopelessly dated, still insisting on a hierarchical architecture, which was perfect at the time, but just cannot cope with large worlds today.
Scalability is a fundamental cornerstone of any virtual world. Scalability is the ability to provide the same level of service to ten users as you would to one. Likewise, providing for one hundred, or a thousand users, should theoretically pose no difficulty for a scalable system.
Theory and practice don't alwways work in harmony though, particularly where virtual worlds are concerned. The resources in this section are here to help you scale your creations so they can handle more and more players, without overtaxing their systems.
Algorithms for an Infinite Universe
Based more for games on a single machine, this excellent little article discusses generation of a world on the fly, using minimal resources. Parts of this article are suitable for exploitation in virtual worlds.
Enabling Player-Created Online Worlds with Grid Computing and Streaming
The most popular model for modern MMOs is the shard model - small clusters of servers, each running a separate copy of the world, and each world mostly static. To have a truly dynamic world, with content galore, and experience without end, you need a different model. You need a single world, spread across countless servers...
Podcast: Procedural Content Generation & Spore
A 90 minute long podcast between two of the greats of the procedural content paradigm: Will Wright and Brian Eno. The discussion crosses every aspect of content generation, with generative system basics, SimCity, emergent behaviours in music, DNA strands creating life, and the Sims. The talk culminates in a half-hour run through of the game Spore.
Procedural Content Generation
Procedural Content Generation - using semi-random parsing algorithms to add oodles of cojntent dynamically.
Supposed to makje it really easy to create large interesting worlds - that claim is utter nonsense, but that does not mean PCG be useless, it's actually fairly handy...
The Bug Process
Bug tracking is a major headache when you?re shipping any code product. In a MMO or social VR world where the world is persistent, and you have test builds and live builds scattered across several servers, bug tracking can become a major migraine. How then, is best to track and kill these annoying bugs in persistent products?
Using Linked Lists to Represent Game Objects
An introduction to the uses of linked lists, for creating, manipulating, and destroying large numbers of objects at any one time. A very good technique to know for large worlds, or complex situations.
Back To Top
The humble mobile phone is no-longer the poor relation of the computing industry. Nowadays your players can keep up to date with events in-world via the streaming feeds, and even continue to participate!
The development centre for J2ME, one of the latest, and brightest of Mobile Phone development systems.
Back To Top
Finishing a Game
Whilst as the title suggests, this is written with game developers in mind, because of the similarity of the tools, techniques and development process of creating a new simulation platform or a new VR environment from scratch, this long and detailed article helps you discover why a project keeps on stalling, and the flaws in you and your own approach that are causing this to keep happening.
A good site, geared mainly towards graphics, it dabbles in some other areas, and has an interesting selection of daily links.
Another game development site, it has several excellent papers, tutorials, and a respectable forum system.
An outstanding site, geared for game developers, it also has many applicable resources, and some outstanding forums.
General gaming news site, also has many good papers and tutorials relavant to virtual worlds, and a healthy forum.
Rogue-like games are, really, just that, games. However, they share some characteristics of virtual worlds as well, and so, developer's newsgroup is well worth a look.
Top Ten Reasons you are coding on the Wrong Mud
A humourous article, obviously geared for MUDs, but equally applicable to any virtual environment, should you find yourself coding for it, and these things (or their equivalent) start occurring. It may seem silly, but things like this do still occur. Even to so-called commercial worlds.
Back To Top
Is it possible? Can virtual worlds, those places with demanding keyboard, or sensory input, pinnacle of the entertainment theatre, really be ported over to the console world?
A look at two types of non-PCworlds; a nostalgic look back at the Apple computers, and a look forward at the possibilities of utilising consoles for online worlds.
Back To Top
The codebase: a predesigned framework for a virtual world. Codebases take a lot of the hard work out of building a world, with many giving you a bare bones, skeletal world to begin with.
3D Engines > Vpython
Vpython, short for "Visual Python" is a 3D library specifically written for the open-source, cross-platform language, Python.
With the current surge in uses of the iphone as a distributed computing device, and several industries, most notably medical healthcare taking it up in increasing numbers, there has not been a better time to learn to code this small, sleek device.
Codebase: ActiveWorlds 3.6
A look at the ActiveWorlds graphical codebase, its extensibility, pros, cons, and its suitability as a base for your world.
Vie MUD was a Multi-User Domain (MUD) based off the DIKU MUD codebase. Vie spawned five versions, Vie 1-5. Each was publicly released, as a separate codebase to build a new MUD off of.
Back To Top
During the past few decades, there has been a continuing explosion in differing technologies for virtual reality. Hardware of all types has come out and joined different markets, languages have been born, grown and perished, a general cataphony of technologies exist. How do you work in this mess? How do you take advantage of all the technologies the field has to offer when there are so many competing standards?
Java Virtual Environment Device Interfaces
Java Virtual Environment Device Interfaces or JVEDI are specialised driver interfaces, written in Java, to allow VRML based VR worlds to access more advanced interface devices. The JVEDI project was last active in 2000, at the height of VRML usage, however the drivers still exist today, courtesy of the Visualisation and Virtual Reality Group.
Back To Top
There are a large number of new developers coming into the market for physics engines that need help through this complex process. Current introductory books are inadequate; they don't bring enough real-world programming experience to the task. There is a need for an introductory book on game physics with solid coding guidance but which limits the math content. This book tries to fill that void.