Index: branches/bsp_model/src/lib/collision_reaction/cr_physics_ground_walk.cc
===================================================================
--- branches/bsp_model/src/lib/collision_reaction/cr_physics_ground_walk.cc	(revision 8516)
+++ branches/bsp_model/src/lib/collision_reaction/cr_physics_ground_walk.cc	(revision 8524)
@@ -23,6 +23,4 @@
 #include "world_entity.h"
 #include "cr_physics_ground_walk.h"
-
-#include "debug.h"
 
 #include <vector>
@@ -57,5 +55,5 @@
   CollisionEvent* ce = collision->getCollisionEvents().front();
   Vector normal = ce->getGroundNormal();
-  normal.normalize();
+  // normal.normalize();
 
   // put it back
@@ -64,11 +62,39 @@
 //   PRINTF(0)("current pos:\n");
 //   collision->getEntityB()->getAbsCoor().debug();
+  
+  
+  Vector height = ce->getCollisionPosition() - collision->getEntityB()->getAbsCoor();
+  if(ce->getGroundNormal().len() <= 0.1f)
+  {
+    collision->getEntityB()->setAbsCoor(collision->getEntityB()->getLastAbsCoor());
+    return;
+  }
+  if(height.y < -3.6)
+  {
+    downspeed++;
+    collision->getEntityB()->setAbsCoor(collision->getEntityB()->getAbsCoor() + Vector(0.0,-0.03*downspeed,0.0));
+    
+  }
+  else
+  {
+    if(height.y > -3.5  && height.y <    3.9)
+    {
+      //if(downspeed <= 0) downspeed =1;
+      collision->getEntityB()->setAbsCoor(collision->getEntityB()->getAbsCoor() + Vector(0.0,height.y+3.55,0.0));   
+      //collision->getEntityB()->setVelocity(Vector(0.0,0.0,0.0));    
+    }
+      downspeed = 0;
+  }
+  
 
+  /*
   PRINTF(0)("Collision with Ground: \n");
   collision->getEntityB()->getAbsCoor().debug();
+  collision->getEntityB()->setVelocity(Vector());
+  collision->getEntityB()->setAbsCoor(this->lastPositions[1]);
+  
+  */
+}
 
-  //collision->getEntityB()->setVelocity(Vector());
-  //collision->getEntityB()->setAbsCoor(this->lastPositions[5]);
-}
 
 
Index: branches/bsp_model/src/lib/collision_reaction/cr_physics_ground_walk.h
===================================================================
--- branches/bsp_model/src/lib/collision_reaction/cr_physics_ground_walk.h	(revision 8516)
+++ branches/bsp_model/src/lib/collision_reaction/cr_physics_ground_walk.h	(revision 8524)
@@ -29,4 +29,5 @@
 
     Vector       lastPositions[10];           //!< last 10 positions
+    float        downspeed;
 };
 
Index: branches/bsp_model/src/lib/graphics/importer/bsp_manager.cc
===================================================================
--- branches/bsp_model/src/lib/graphics/importer/bsp_manager.cc	(revision 8516)
+++ branches/bsp_model/src/lib/graphics/importer/bsp_manager.cc	(revision 8524)
@@ -942,5 +942,5 @@
   this->outputFraction = 1.0f;
   
-  Vector position = worldEntity->getAbsCoor();
+
 
 
@@ -958,6 +958,6 @@
   dest.z  += forwardDir.z;
   */
-
-  dest = worldEntity->getAbsCoor() - upDir*40.0;
+  Vector position = worldEntity->getAbsCoor() + upDir*5.0f ;
+  dest = worldEntity->getAbsCoor() - upDir*40.0f; //
   Vector out = dest;
 
@@ -986,10 +986,24 @@
 //   position1.debug();
 
+  if(!this->outputStartsOut )
+  {
+    this->collPlane = new plane;
+    this->collPlane->x = 0.0f;
+    this->collPlane->y = 0.0f;
+    this->collPlane->z = 0.0f;
+    collision = true;
+  }
+  else
+  {
+    
+    
+    
+    
   if( this->outputFraction == 1.0f)
   {
-    if(this->outputAllSolid)
+    if(this->outputAllSolid )
     {
       this->collPlane = new plane;
-      this->collPlane->x = 1.0f;
+      this->collPlane->x = 0.0f;
       this->collPlane->y = 0.0f;
       this->collPlane->z = 0.0f;
@@ -1013,4 +1027,6 @@
   }
 
+  
+  }
   // Return the normal here: Normal's stored in this->collPlane;
   if( collision) {
@@ -1018,4 +1034,5 @@
     worldEntity->registerCollision(this->parent, worldEntity, Vector(this->collPlane->x, this->collPlane->y, this->collPlane->z), out);
   }
+  else  worldEntity->registerCollision(this->parent, worldEntity, Vector(0.0, 1.0, 0.0), dest);
 
 }
Index: branches/bsp_model/src/world_entities/creatures/md2_creature.cc
===================================================================
--- branches/bsp_model/src/world_entities/creatures/md2_creature.cc	(revision 8516)
+++ branches/bsp_model/src/world_entities/creatures/md2_creature.cc	(revision 8524)
@@ -124,5 +124,5 @@
   cycle = 0.0;
 
-  travelSpeed = 15.0;
+  travelSpeed =300.0;
   this->velocity = Vector(0.0,0.0,0.0);
 
@@ -293,5 +293,5 @@
   Vector accel(0.0, 0.0, 0.0);
   /*
-  Vector rot(0.0, 0.0, 0.0); // wird benötigt für Helicopter
+  Vector rot(0.0, 0.0, 0.0); // wird ben�igt fr Helicopter
   */
   //float rotVal = 0.0;
Index: branches/bsp_model/src/world_entities/space_ships/collision_probe.cc
===================================================================
--- branches/bsp_model/src/world_entities/space_ships/collision_probe.cc	(revision 8516)
+++ branches/bsp_model/src/world_entities/space_ships/collision_probe.cc	(revision 8524)
@@ -67,5 +67,5 @@
   this->loadModel("models/dr_freak.md2");
 
-  this->localVelocity = Vector(0,-4,0);
+  this->localVelocity = Vector(0,0,0);
 }
 
