Index: branches/playability/src/util/hud.cc
===================================================================
--- branches/playability/src/util/hud.cc	(revision 10289)
+++ branches/playability/src/util/hud.cc	(revision 10291)
@@ -407,5 +407,5 @@
   std::list<OrxGui::GLGuiEnergyWidgetVertical*>::iterator weaponWidget;
   Vector2D pos = Vector2D(overlayWidth + this->rightRect->getAbsCoor2D().x, 0.5*this->resY);
-  PRINTF(0)("Cur Pos: %f,%f\n",pos.x,pos.y);
+  //PRINTF(0)("Cur Pos: %f,%f\n",pos.x,pos.y);
   // out of reasons i can't get behind, this version is segfaulting when calling getSizeX2D or getSizeY2D. the other
   // element2D- related function works tough.. :s
Index: branches/playability/src/world_entities/camera.cc
===================================================================
--- branches/playability/src/world_entities/camera.cc	(revision 10289)
+++ branches/playability/src/world_entities/camera.cc	(revision 10291)
@@ -170,5 +170,5 @@
       this->fovy= viewTopFovy;
       this->toFovy = viewTopFovy;
-      this->setRelCoorSoft(Vector(-0.05, this->viewTopDistance , 0), 0.5);
+      this->setRelCoor(Vector(-0.05, this->viewTopDistance , 0));
       this->target->setRelCoor(0,0,0);
     }
Index: branches/playability/src/world_entities/camera.h
===================================================================
--- branches/playability/src/world_entities/camera.h	(revision 10289)
+++ branches/playability/src/world_entities/camera.h	(revision 10291)
@@ -44,4 +44,6 @@
 
   void setAspectRatio(float aspectRatio);
+  inline float getAspectRatio() {return this->aspectRatio;};
+
   void setClipRegion(float nearClip, float farClip);
 
@@ -52,4 +54,6 @@
     this->toFovy = fovy;
   };
+
+  inline float getFovy() {return this->fovy;};
   /** @param fovy new field of view factor (in degrees) to iterate to */
   void setToFovy(float toFovy) { this->toFovy = toFovy; };
Index: branches/playability/src/world_entities/space_ships/space_ship.cc
===================================================================
--- branches/playability/src/world_entities/space_ships/space_ship.cc	(revision 10289)
+++ branches/playability/src/world_entities/space_ships/space_ship.cc	(revision 10291)
@@ -65,4 +65,5 @@
 
 #include "track/track.h"
+#include "math.h"
 
 
@@ -349,6 +350,11 @@
 
   //this->airFriction = 0.5f;
-  this->travelDistancePlus = Vector2D(38.0, 43.0);
-  this->travelDistanceMinus = Vector2D(-38.0, -43.0);
+  //this->travelDistancePlus = Vector2D(38.0, 43.0);
+  //this->travelDistanceMinus = Vector2D(-38.0, -43.0);
+  this->travelDistancePlus = Vector2D(0,0);
+  this->travelDistancePlus = Vector2D(0,0);
+  this->isTravelDistanceInit = false;
+  this->actionWidthPercentage = 0.7;
+
   this->cameraSpeed = 40;
   this->cameraLook = 0.0f;
@@ -397,4 +403,5 @@
   LoadParam(root, "cameraDistance", this, SpaceShip, setCameraDistance);
   LoadParam(root, "cameraFovy", this, SpaceShip, setCameraFovy);
+  LoadParam(root, "actionWidthPercentage", this, SpaceShip, setActionWidthPercentage);
 
   State::getCamera()->setViewMode(Camera::ViewTop);
@@ -553,4 +560,10 @@
   this->trailR->tick(time);
 
+  if (!this->isTravelDistanceInit)
+  {
+    this->updateTravelDistance();
+    this->isTravelDistanceInit = true;
+  }
+
   //orient the spaceship in direction of the mouse
   /*
@@ -578,7 +591,13 @@
     this->bLeft = event.bPressed;
   else if( event.type == KeyMapper::PEV_RIGHT)
+  {
     this->bRight = event.bPressed;
+    printf("ShipCoorX: %f \n", this->getRelCoor().x);
+  }
   else if( event.type == KeyMapper::PEV_FORWARD)
+  {
     this->bForward = event.bPressed; //this->shiftCoor(0,.1,0);
+    
+  }
   else if( event.type == KeyMapper::PEV_BACKWARD)
     this->bBackward = event.bPressed; //this->shiftCoor(0,-.1,0);
@@ -823,4 +842,5 @@
         this->travelNode->setAbsCoor(this->getAbsCoor());
         this->travelNode->updateNode(0.01f);
+        this->isTravelDistanceInit = false;
 
         this->setParent(this->travelNode);
@@ -844,4 +864,6 @@
         State::getCamera()->setParentMode(PNODE_MOVEMENT);
 
+        //this->updateTravelDistance();
+
         this->debugNode(1);
         this->travelNode->debugNode(1);
@@ -865,5 +887,4 @@
   float airCoeff = 2.5;
   float pi = 3.14;
- 
 
   switch(this->getPlaymode())
@@ -915,4 +936,5 @@
       if( this->bForward )
       {
+        //printf("ShipCoorX: %f \n", this->getRelCoor().x);
         if(this->getRelCoor().x < this->travelDistancePlus.x)
         {
@@ -973,4 +995,5 @@
       if( this->bRight)
       {
+        //printf("ShipCoorZ: %f \n", this->getRelCoor().z);
         if(this->getRelCoor().z < this->travelDistancePlus.y)
         {
@@ -1096,2 +1119,19 @@
   State::getCamera()->setViewTopFovy(fovy);
 }
+
+void SpaceShip::updateTravelDistance()
+{
+  float x = fabsf(State::getCamera()->getAbsCoor().y) * tan(State::getCamera()->getFovy()*M_PI /360.0);
+  float y = x / State::getCamera()->getAspectRatio();
+  //State::getCamera()->setAbsCoor(-5, 1000, 0);
+
+
+  //State::getCamera()->getAbsCoor().print();
+  printf("CameraRelCoorY: %f \n", State::getCamera()->getRelCoor().y);
+
+  printf("x: %f, y: %f \n", x, y);
+  this->travelDistancePlus = Vector2D(x, y);
+  this->travelDistanceMinus = Vector2D(-x, -y);
+
+  //this->isTravelDistanceInit = true;
+}
Index: branches/playability/src/world_entities/space_ships/space_ship.h
===================================================================
--- branches/playability/src/world_entities/space_ships/space_ship.h	(revision 10289)
+++ branches/playability/src/world_entities/space_ships/space_ship.h	(revision 10291)
@@ -78,10 +78,12 @@
     virtual void damage(float pDamage, float eDamage);  //!< pDamage physical damage, eDamage electronic damage
 
-    //included by Michel: ((
+    //included by Michel: 
     virtual void enterPlaymode(Playable::Playmode playmode);
     void setPlaymodeXML(const std::string& playmode); //recieves the playmode from a string (useful for script implementation)
+    inline void setActionWidthPercentage(float f) {this->actionWidthPercentage = f; updateTravelDistance();};
+    void updateTravelDistance();
     virtual void movement (float dt);
 
-    //))
+    //
 
     void nextWeaponConfig();
@@ -175,4 +177,7 @@
     Vector2D              travelDistancePlus;     //!< Travel-Distance away from the TravelNode
     Vector2D              travelDistanceMinus;
+    bool                  isTravelDistanceInit;
+
+    float                 actionWidthPercentage;
 
 // Camera
