From 5b13b820330630336f537b5995e704fa89a2ea78 Mon Sep 17 00:00:00 2001 From: torcs-ng Date: Mon, 17 May 2010 22:10:20 +0000 Subject: [PATCH] add simplix_gp1600 git-svn-id: https://svn.code.sf.net/p/speed-dreams/code/trunk@2486 30fe4595-0a0c-4342-8851-515496e4dcbd Former-commit-id: 7e4db8e31005b1dfbc1841e0274de64ba91140b0 Former-commit-id: 6008bcb076dd76a9b02bdb1bbed8f73ba559a076 --- src/drivers/simplix/CMakeLists.txt | 12 ++- .../simplix/simplix_gp1600/0/skill.xml | 19 ++++ .../simplix/simplix_gp1600/1/skill.xml | 19 ++++ .../simplix/simplix_gp1600/2/skill.xml | 19 ++++ .../simplix/simplix_gp1600/3/skill.xml | 19 ++++ .../simplix/simplix_gp1600/4/skill.xml | 19 ++++ .../simplix/simplix_gp1600/5/skill.xml | 19 ++++ .../simplix/simplix_gp1600/default.xml | 19 ++++ .../simplix/simplix_gp1600/gp1600/default.xml | 34 +++++++ src/drivers/simplix/simplix_gp1600/readme.txt | 26 +++++ .../simplix/simplix_gp1600/simplix_gp1600.xml | 95 +++++++++++++++++++ .../simplix_gp1600/tracks/Corkscrew.xml | 27 ++++++ src/drivers/simplix/src/unitdriver.cpp | 20 ++++ src/drivers/simplix/src/unitdriver.h | 2 + src/drivers/simplix/src/unitglobal.h | 1 + src/drivers/simplix/src/unitmain.cpp | 35 +++++++ 16 files changed, 382 insertions(+), 3 deletions(-) create mode 100644 src/drivers/simplix/simplix_gp1600/0/skill.xml create mode 100644 src/drivers/simplix/simplix_gp1600/1/skill.xml create mode 100644 src/drivers/simplix/simplix_gp1600/2/skill.xml create mode 100644 src/drivers/simplix/simplix_gp1600/3/skill.xml create mode 100644 src/drivers/simplix/simplix_gp1600/4/skill.xml create mode 100644 src/drivers/simplix/simplix_gp1600/5/skill.xml create mode 100644 src/drivers/simplix/simplix_gp1600/default.xml create mode 100644 src/drivers/simplix/simplix_gp1600/gp1600/default.xml create mode 100644 src/drivers/simplix/simplix_gp1600/readme.txt create mode 100644 src/drivers/simplix/simplix_gp1600/simplix_gp1600.xml create mode 100644 src/drivers/simplix/simplix_gp1600/tracks/Corkscrew.xml diff --git a/src/drivers/simplix/CMakeLists.txt b/src/drivers/simplix/CMakeLists.txt index ac2ea965..1798bb7d 100644 --- a/src/drivers/simplix/CMakeLists.txt +++ b/src/drivers/simplix/CMakeLists.txt @@ -5,8 +5,8 @@ INCLUDE(../../../cmake/macros.cmake) SET(ROBOT_NAME "simplix") SET(ROBOT_INTERFACE LEGACY WELCOME - simplix_indy simplix_trb1a simplix_trb1b simplix_sca simplix_scb simplix_36GP simplix_ls1 - my_simplix_0 my_simplix_1 my_simplix_2 my_simplix_3 my_simplix_4 + simplix_gp1600 simplix_indy simplix_trb1a simplix_trb1b simplix_sca simplix_scb simplix_36GP simplix_ls1 + my_simplix_0 my_simplix_1 my_simplix_2 my_simplix_3 my_simplix_4 my_simplix_5 my_simplix_6 my_simplix_7 my_simplix_8 my_simplix_9) SET(ROBOT_SOURCES @@ -70,7 +70,7 @@ SET(ROBOT_SOURCES src/unitvec3d.h ) -SET(ROBOT_CLONES simplix_indy simplix_36GP simplix_sc simplix_trb1 simplix_ls1) +SET(ROBOT_CLONES simplix_indy simplix_36GP simplix_sc simplix_trb1 simplix_ls1 simplix_gp1600) ROBOT_MODULE(NAME ${ROBOT_NAME} INTERFACE ${ROBOT_INTERFACE} SOURCES ${ROBOT_SOURCES} CLONENAMES ${ROBOT_CLONES}) @@ -117,3 +117,9 @@ SET(ROBOT_SHIPSUBDIRS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 ROBOT_DATA(NAME simplix_trb1 SHIPPREFIX simplix_trb1 SHIPFILES ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) +SET(ROBOT_SHIPSUBDIRS 0 1 2 3 4 5 gp1600 tracks) + +ROBOT_DATA(NAME simplix_gp1600 SHIPPREFIX simplix_gp1600 + SHIPFILES ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) + + diff --git a/src/drivers/simplix/simplix_gp1600/0/skill.xml b/src/drivers/simplix/simplix_gp1600/0/skill.xml new file mode 100644 index 00000000..a06646a7 --- /dev/null +++ b/src/drivers/simplix/simplix_gp1600/0/skill.xml @@ -0,0 +1,19 @@ + + + + + + + + +
+ + + + + + + +
+ +
diff --git a/src/drivers/simplix/simplix_gp1600/1/skill.xml b/src/drivers/simplix/simplix_gp1600/1/skill.xml new file mode 100644 index 00000000..919571d1 --- /dev/null +++ b/src/drivers/simplix/simplix_gp1600/1/skill.xml @@ -0,0 +1,19 @@ + + + + + + + + +
+ + + + + + + +
+ +
diff --git a/src/drivers/simplix/simplix_gp1600/2/skill.xml b/src/drivers/simplix/simplix_gp1600/2/skill.xml new file mode 100644 index 00000000..8d89e49a --- /dev/null +++ b/src/drivers/simplix/simplix_gp1600/2/skill.xml @@ -0,0 +1,19 @@ + + + + + + + + +
+ + + + + + + +
+ +
diff --git a/src/drivers/simplix/simplix_gp1600/3/skill.xml b/src/drivers/simplix/simplix_gp1600/3/skill.xml new file mode 100644 index 00000000..6ae9b2ba --- /dev/null +++ b/src/drivers/simplix/simplix_gp1600/3/skill.xml @@ -0,0 +1,19 @@ + + + + + + + + +
+ + + + + + + +
+ +
diff --git a/src/drivers/simplix/simplix_gp1600/4/skill.xml b/src/drivers/simplix/simplix_gp1600/4/skill.xml new file mode 100644 index 00000000..6ae9b2ba --- /dev/null +++ b/src/drivers/simplix/simplix_gp1600/4/skill.xml @@ -0,0 +1,19 @@ + + + + + + + + +
+ + + + + + + +
+ +
diff --git a/src/drivers/simplix/simplix_gp1600/5/skill.xml b/src/drivers/simplix/simplix_gp1600/5/skill.xml new file mode 100644 index 00000000..8d89e49a --- /dev/null +++ b/src/drivers/simplix/simplix_gp1600/5/skill.xml @@ -0,0 +1,19 @@ + + + + + + + + +
+ + + + + + + +
+ +
diff --git a/src/drivers/simplix/simplix_gp1600/default.xml b/src/drivers/simplix/simplix_gp1600/default.xml new file mode 100644 index 00000000..65408604 --- /dev/null +++ b/src/drivers/simplix/simplix_gp1600/default.xml @@ -0,0 +1,19 @@ + + + + + + + + +
+ +
+
diff --git a/src/drivers/simplix/simplix_gp1600/gp1600/default.xml b/src/drivers/simplix/simplix_gp1600/gp1600/default.xml new file mode 100644 index 00000000..91238c45 --- /dev/null +++ b/src/drivers/simplix/simplix_gp1600/gp1600/default.xml @@ -0,0 +1,34 @@ + + + + + + + + +
+ + + + + + + + + + + + + + + + +
+
diff --git a/src/drivers/simplix/simplix_gp1600/readme.txt b/src/drivers/simplix/simplix_gp1600/readme.txt new file mode 100644 index 00000000..1b6a4686 --- /dev/null +++ b/src/drivers/simplix/simplix_gp1600/readme.txt @@ -0,0 +1,26 @@ +// simplix readme.txt 03. Dez. 2008 +// +// Hints + +Skilling: + +The skilling is used to define the range of lap times for the gamers opponents. +This can be done on two separate levels. +The first level is the global level defined by Andrew Sumner and used for the Career mode of Mart Kelder. +If the supercarpackage of Andrew is installed, there is the file ...\torcs\config\raceman\extra\skill.xml. +It contains one parameter to be set in the range of 0.0 (fast) to 10.0 (slow). + +To Enable/Disable the skilling for all cars of a robot there is a file +...\drivers\robotname\default.xml. +Here you can enable skilling (1) or disable it (0). + +If needed, the individual skill of a car can be set in the +...\drivers\robotname\cartype\default.xml. +The parameter skill in "simplix private" can be set to + -1 (disable skilling for this car), + 0.0 (normal skilling as defined in extra\skill.xml) or + values up to 10.0 (make car drive slower). + +The individual skilling isn't needed here, the trb1 carset is balanced! + + diff --git a/src/drivers/simplix/simplix_gp1600/simplix_gp1600.xml b/src/drivers/simplix/simplix_gp1600/simplix_gp1600.xml new file mode 100644 index 00000000..a23ed88b --- /dev/null +++ b/src/drivers/simplix/simplix_gp1600/simplix_gp1600.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + +
+
+ +
+ + + + + + + + + +
+ +
+ + + + + + + + + +
+ +
+ + + + + + + + + +
+ +
+ + + + + + + + + +
+ +
+ + + + + + + + + +
+ +
+ + + + + + + + + +
+ +
+
+
diff --git a/src/drivers/simplix/simplix_gp1600/tracks/Corkscrew.xml b/src/drivers/simplix/simplix_gp1600/tracks/Corkscrew.xml new file mode 100644 index 00000000..b387dd1f --- /dev/null +++ b/src/drivers/simplix/simplix_gp1600/tracks/Corkscrew.xml @@ -0,0 +1,27 @@ + + + + + + + + +
+ + + + + + + + + + + +
+
diff --git a/src/drivers/simplix/src/unitdriver.cpp b/src/drivers/simplix/src/unitdriver.cpp index 007b54af..7b13ee59 100644 --- a/src/drivers/simplix/src/unitdriver.cpp +++ b/src/drivers/simplix/src/unitdriver.cpp @@ -3410,6 +3410,16 @@ double TDriver::CalcCrv_simplix_INDY(double Crv) } //==========================================================================* +//==========================================================================* +// simplix_GP1600 +//--------------------------------------------------------------------------* +double TDriver::CalcCrv_simplix_GP1600(double Crv) +{ + return MAX(0.75,MIN(3.0,350000.0 * Crv * Crv * Crv)); + //return MAX(0.75,MIN(3.0,600000.0 * Crv * Crv * Crv)); +} +//==========================================================================* + //==========================================================================* // simplix_LS1 //--------------------------------------------------------------------------* @@ -3504,6 +3514,16 @@ double TDriver::CalcHairpin_simplix_LS1(double Crv) } //==========================================================================* +//==========================================================================* +// simplix_GP1600 +//--------------------------------------------------------------------------* +double TDriver::CalcHairpin_simplix_GP1600(double Crv) +{ + return MAX(0.75,MIN(5.0,300000.0 * Crv * Crv * Crv)); + //return MAX(0.75,MIN(5.0,600000.0 * Crv * Crv * Crv)); +} +//==========================================================================* + //==========================================================================* // simplix_sc //--------------------------------------------------------------------------* diff --git a/src/drivers/simplix/src/unitdriver.h b/src/drivers/simplix/src/unitdriver.h index 90189fbe..aeebd314 100644 --- a/src/drivers/simplix/src/unitdriver.h +++ b/src/drivers/simplix/src/unitdriver.h @@ -424,6 +424,7 @@ private: double CalcCrv_simplix_36GP(double Crv); double CalcCrv_simplix_INDY(double Crv); double CalcCrv_simplix_LS1(double Crv); + double CalcCrv_simplix_GP1600(double Crv); double CalcHairpin_simplix(double Crv); double CalcHairpin_simplix_TRB1(double Crv); @@ -431,6 +432,7 @@ private: double CalcHairpin_simplix_36GP(double Crv); double CalcHairpin_simplix_INDY(double Crv); double CalcHairpin_simplix_LS1(double Crv); + double CalcHairpin_simplix_GP1600(double Crv); void UseFilterAccel(){oUseFilterAccel = true;}; void UseAccelOut(){oUseAccelOut = true;}; diff --git a/src/drivers/simplix/src/unitglobal.h b/src/drivers/simplix/src/unitglobal.h index feca8f5d..2b447c35 100644 --- a/src/drivers/simplix/src/unitglobal.h +++ b/src/drivers/simplix/src/unitglobal.h @@ -98,6 +98,7 @@ #define RTYPE_SIMPLIX_36GP 3 // Robot type simplix_36GP #define RTYPE_SIMPLIX_INDY 4 // Robot type simplix_indy #define RTYPE_SIMPLIX_LS1 5 // Robot type simplix_ls1 +#define RTYPE_SIMPLIX_GP1600 6 // Robot type simplix_gp1600 //==========================================================================* //==========================================================================* diff --git a/src/drivers/simplix/src/unitmain.cpp b/src/drivers/simplix/src/unitmain.cpp index 207f7f14..9e2db2e4 100644 --- a/src/drivers/simplix/src/unitmain.cpp +++ b/src/drivers/simplix/src/unitmain.cpp @@ -289,6 +289,17 @@ void SetUpSimplix_ls1() }; //==========================================================================* +//==========================================================================* +// Schismatic entry point for simplix_gp1600 +//--------------------------------------------------------------------------* +void SetUpSimplix_gp1600() +{ + cRobotType = RTYPE_SIMPLIX_GP1600; + SetParameters(NBBOTS, "gp1600"); + //TDriver::UseSCSkilling = true; +}; +//==========================================================================* + //==========================================================================* // Handle module entry for Speed Dreams Interface V1.00 (new fixed name scheme) //--------------------------------------------------------------------------* @@ -374,6 +385,8 @@ int moduleWelcomeV1_00 SetUpSimplix_indy(); else if (strncmp(RobName,"simplix_LS1",strlen("simplix_LS1")) == 0) SetUpSimplix_ls1(); + else if (strncmp(RobName,"simplix_gp1600",strlen("simplix_gp1600")) == 0) + SetUpSimplix_ls1(); else SetUpSimplix(); @@ -576,6 +589,14 @@ static int InitFuncPt(int Index, void *Pt) cRobot[Index-IndexOffset]->ScaleSide(0.95f,0.95f); cRobot[Index-IndexOffset]->SideBorderOuter(0.20f); } + else if (cRobotType == RTYPE_SIMPLIX_GP1600) + { + GfOut("#cRobotType == RTYPE_SIMPLIX_GP1600\n"); + cRobot[Index-IndexOffset]->CalcCrvFoo = &TDriver::CalcCrv_simplix_GP1600; + cRobot[Index-IndexOffset]->CalcHairpinFoo = &TDriver::CalcHairpin_simplix_GP1600; + cRobot[Index-IndexOffset]->ScaleSide(0.85f,0.85f); + cRobot[Index-IndexOffset]->SideBorderOuter(0.75f); + } return 0; } @@ -835,6 +856,20 @@ extern "C" int simplix_ls1(tModInfo *ModInfo) }; //==========================================================================* +//==========================================================================* +// Schismatic entry point for simplix_gp1600 +//--------------------------------------------------------------------------* +extern "C" int simplix_gp1600(tModInfo *ModInfo) +{ + void *RobotSettings = GetFileHandle("simplix_gp1600"); + if (!RobotSettings) + return -1; + + SetParameters(10, "gp1600"); + return simplixEntryPoint(ModInfo,RobotSettings); +}; +//==========================================================================* + //==========================================================================* // Schismatic entry point for my_simplix_0 //--------------------------------------------------------------------------*