Index: /code/branches/script/src/orxonox/GraphicsEngine.cc
===================================================================
--- /code/branches/script/src/orxonox/GraphicsEngine.cc	(revision 910)
+++ /code/branches/script/src/orxonox/GraphicsEngine.cc	(revision 911)
@@ -36,4 +36,5 @@
 #include <OgreTextureManager.h>
 
+#include "core/CoreIncludes.h"
 #include "core/Debug.h"
 #include "GraphicsEngine.h"
@@ -46,7 +47,9 @@
   GraphicsEngine::GraphicsEngine()
   {
+    RegisterObject(GraphicsEngine);
+    this->bOverwritePath_ = false;
+    this->setConfigValues();
     // set to standard values
     this->configPath_ = "";
-    this->dataPath_ = "";
     scene_ = NULL;
   }
@@ -55,4 +58,12 @@
   GraphicsEngine::~GraphicsEngine()
   {
+  }
+
+  void GraphicsEngine::setConfigValues()
+  {
+    SetConfigValue(dataPath_, dataPath_).description("relative path to media data");
+    //if(this->bOverwritePath_)
+      ResetConfigValue(dataPath_);
+
   }
 
@@ -87,6 +98,11 @@
   }
 
-  bool GraphicsEngine::load()
+  bool GraphicsEngine::load(std::string dataPath)
   {
+    if( dataPath != "" ) {
+      dataPath_ = dataPath;
+      bOverwritePath_ = true;
+      setConfigValues();
+    }
     loadRessourceLocations(this->dataPath_);
     if (!root_->restoreConfig() && !root_->showConfigDialog())
@@ -108,4 +124,9 @@
     // Load resource paths from data file using configfile ressource type
     ConfigFile cf;
+    /*dataPath = "/home/piranha/orxonox/trunk/";
+    //dataPath += "resources.cfg";
+    std::cout << "*******************" << std::endl;
+    std::cout << dataPath << std::endl;
+    std::cout << "*******************" << std::endl;*/
     cf.load(dataPath + "resources.cfg");
 
Index: /code/branches/script/src/orxonox/GraphicsEngine.h
===================================================================
--- /code/branches/script/src/orxonox/GraphicsEngine.h	(revision 910)
+++ /code/branches/script/src/orxonox/GraphicsEngine.h	(revision 911)
@@ -14,4 +14,5 @@
 
 #include "OrxonoxPrereqs.h"
+#include "core/BaseObject.h"
 
 
@@ -21,5 +22,6 @@
    * graphics engine manager class
  */
-  class _OrxonoxExport GraphicsEngine {
+  class _OrxonoxExport GraphicsEngine : public BaseObject
+  {
     public:
       GraphicsEngine();
@@ -27,6 +29,7 @@
       // find a better way for this
       inline Ogre::Root* getRoot() { return root_; };
+      void setConfigValues();
       void setup();
-      bool load();
+      bool load(std::string path);
       void loadRessourceLocations(std::string path);
       Ogre::SceneManager* getSceneManager();
@@ -39,4 +42,5 @@
       std::string         dataPath_;    //!< path to data file
       Ogre::SceneManager* scene_;       //!< scene manager of the game
+      bool               bOverwritePath_; //!< overwrites path
 
   };
Index: /code/branches/script/src/orxonox/Orxonox.cc
===================================================================
--- /code/branches/script/src/orxonox/Orxonox.cc	(revision 910)
+++ /code/branches/script/src/orxonox/Orxonox.cc	(revision 911)
@@ -251,5 +251,5 @@
     ogre_->setup();
     root_ = ogre_->getRoot();
-    if(!ogre_->load()) die(/* unable to load */);
+    if(!ogre_->load(this->dataPath_)) die(/* unable to load */);
 
     //defineResources();
@@ -270,8 +270,8 @@
     ogre_->setup();
     root_ = ogre_->getRoot();
-    defineResources();
-    setupRenderSystem();
+    ogre_->load(this->dataPath_);
+    /*setupRenderSystem();
     createRenderWindow();
-    initializeResourceGroups();
+    initializeResourceGroups();*/
     setupInputSystem();
     Factory::createClassHierarchy();
@@ -305,5 +305,5 @@
     ogre_->setup();
     server_g = new network::Server(); // FIXME add some settings if wanted
-    if(!ogre_->load()) die(/* unable to load */);
+    if(!ogre_->load(this->dataPath_)) die(/* unable to load */);
     // FIXME add network framelistener
   }
@@ -318,8 +318,8 @@
     else
       client_g = new network::Client(serverIp_, 55556);
-    if(!ogre_->load()) die(/* unable to load */);
+    if(!ogre_->load(this->dataPath_)) die(/* unable to load */);
     ogre_->getRoot()->addFrameListener(new network::ClientFrameListener());
   }
-
+/*
   void Orxonox::defineResources()
   {
@@ -349,12 +349,12 @@
       }
     }
-  }
-
+  }*/
+/*
   void Orxonox::setupRenderSystem()
   {
     if (!root_->restoreConfig() && !root_->showConfigDialog())
       throw Ogre::Exception(52, "User canceled the config dialog!", "OrxApplication::setupRenderSystem()");
-  }
-
+  }*/
+/*
   void Orxonox::createRenderWindow()
   {
@@ -366,5 +366,5 @@
     Ogre::TextureManager::getSingleton().setDefaultNumMipmaps(5);
     Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups();
-  }
+  }*/
 
   /**
Index: /code/branches/script/src/orxonox/Orxonox.h
===================================================================
--- /code/branches/script/src/orxonox/Orxonox.h	(revision 910)
+++ /code/branches/script/src/orxonox/Orxonox.h	(revision 911)
@@ -56,8 +56,7 @@
       void playableServer(std::string path);
       void standalone();
-      void defineResources();
-      void setupRenderSystem();
-      void createRenderWindow();
-      void initializeResourceGroups();
+      //void setupRenderSystem();
+      //void createRenderWindow();
+      //void initializeResourceGroups();
       void createScene(void);
       void setupScene();
