Skip to content
Mo Morsi edited this page Sep 18, 2013 · 1 revision

!SLIDE[tpl=omega-client] slides-canvas-1

Screenshot...

!SLIDE center

Architecture

arch

!SLIDE

Components

arch

!SLIDE slides-motel-intro

Motel

Movable

Object

Tracking

Encompassing

Locations

!SLIDE small

Motel

Location = Coordinates + Orientation + Movement Strategy

May also have a parent id to arrange the locations into heirarchies.

!SLIDE smbullets small slides-motel-strategies

Motel

Movement Strategies Periodically Move the Entity

  • Stopped: Entity is not moving
  • Linear: Entity is moving along a linear axis
  • Elliptical: Entity is moving along an elliptical path
  • Rotate: Entity is rotating along a specified axis-angle
  • Follow: Entity is following another entity
  • More can be easily added

!SLIDE small

Cosmos

Cosmos = The Universe

Galaxies, Solar Systems, Stars, Planets, Moons, Asteroids, Resources, Jump Gates

Each mapped to a location in Motel

Read only, write access by privileged users

Comes w/ nice DSL to set things up

!SLIDE slides-cosmos-map

Cosmos

galaxy-map

Map of Galaxy Hera - Click to view full size

!SLIDE smaller smbullets slides-manu-intro

Manufactured

Ships, Stations, other player controlled entities

Write access to users who have privileges to modify entities.

Ship actions:

  • movement (in system and inbetween)
  • mining
  • attacking
  • dock/undock
  • transfer resources
  • collect loot

Station actions:

  • movement (inbetween systems)
  • constructing other entities

!SLIDE smaller

Missions

  • Missions = High levels goals and requirements

  • Users may attempt to complete to earn rewards

  • Server admin uses missions subsystem to setup events

  • Events can run many various tasks (populate resources, refresh enemies and loot, etc)

!SLIDE smaller

Stats

  • High level simulation statistics,

  • Collected from other subsystems,

  • Filtered to ensure no sensitive data is made available,

  • Presented publically

!SLIDE smaller

Users

  • Users, sessions, and role based access system used by other subsystems

  • Modules may require specified privileges to invoke specific actions and/or operate on specific data

  • An admin may group these permissions into various roles and assign / revoke those from users at will.

!SLIDE smaller

Omega

  • The glue behind everything.

  • Provides a centralized registry mechanism and other helper utilities which the other subsystems make use of

  • Provides a rich client interface and DSL which to query and access all the subsytems

!SLIDE

Demo