G System Developers Handbook

Raphael Langerhorst

Anton Melser

0.6.0

Abstract

The G System is a framework for building large scale virtual realities, simulations, experiments and games.


Table of Contents

1. Introduction
Work in Progress
What is the G System?
Abstract
The G System in the World Wide Web
G System licenses
Overview of the G System Components
Project Goals
Purpose of the G System Developers Handbook
Handbook Structure
Ideas backing up the Project
What is it all about?
A Framework and its Universe
Evolution
2. The Project
A little bit of History
The Team, Mailing Lists, Contact
The G System Team
Contact
Getting Involved - Joining the Team
Introduction
Choose what you want to work on
Join the appropriate mailing lists
Learn the fundamental technologies that you need
Read the G System Developers Handbook
Guidelines for G System development
Introduction
Development Environment
Libraries used for G System Development
Tools used for G System Development
Step by step guide for setting up an example environment for G System development
Introduction
The Operating System
Installing pkgsrc
Packages to install
Tweaking NetBSD
Environment variables
Setting up the PostgreSQL database management system
Setting up the XMPP/Jabber server
Getting the G System source code
Configuring the G Universe Server and the G Universe Client
Running the G Universe Server and the G Universe Client
Building the documentation
Using KDevelop
3. Project and Feature Plan, Raodmap
Roadmap
Featurelist
Introduction
G Core System (GCS)
G World Engine (GWE)
G Client Engine (GCE)
G Basic Elements (GBE)
G Universe: The universe created with the G System
TODO list
Introduction
To be done during 0.6 release cycle
JUNIOR JOBS
General things to be done, HIGH PRIORITY
Other general things to be done
Documentation
Source Code
OPEN ISSUES
4. Understanding fundamental G System Technologies
Introduction
Qt
Subversion
XMPP - Extensible Messaging and Presence Protocol
5. Source Management
The Subversion Repository
What is Subversion?
The G Source Code Repository
Compiling and Installing
Documentation
Website
6. Architecture
Overview
Introduction
Parts of the G System
Evolution and the G System - putting it together
The G Core System (GCS) - defining the element structure
Introduction
Elements
Objects, element data
Agents
Interaction between elements - influence handling
Hierarchical world structuring
Some notes on the GCS
The G World Engine (GWE) - connecting elements
The Purpose of the GWE
GWE Design
Network Infrastructure
Elements and the GWE
Clients and GWE Servers
GWE Sepcifications and Protocol
GWE as a GCS Container
GWE network communication behaviour
XML Constructs for GWE Communication
G Basic Elements (GBE) - bringing the system to life
Deterministic Random World Generation
Element hierarchy management
The G Client Engine (GCE) - making it visible
G Universe Server
G Universe Client
GOD
Agent Plugin Architecture
Overview
Plugin management in the GWE
Developing an agent plugin
7. Using and Extending the G System Framework
Tutorial: Basic Agent Design
Introduction
Step one: sending influences
Step two: receiving influences
Step three: writing the application
Source Files
8. Contributing to the G System Project
The purpose of the G System
Joining the team
Donations

G System Documentation Home