Coding ====== Part 1 - First part goes in the "Sub OnConnectClose()" section, which starts something like " closePrivButton("welc&pos&clos...." Has to be put in after closePrivButton, but before the EndSub at the end of the section. ------- openGlobalButton( "sinrs_dm_logo",5,98,36,6,4,-1,16,"^1Put your name/team name in this space" ); # Put your name/teamname or server or anything else you want in between the quotes - this text (^1) will be in red (see attached text file if you want to learn how to change the text colour) openGlobalButton( "sinrs_dm_track",5,113,36,5,5,-1,16,"^3Track: ^2" . $LongTrackName . " ^1[" . $ShortTrackName . "]" ); openGlobalButton( "sinrs_dm_caranddriver",5,118,36,5,8,-1,16,"^6Car: ^2". $Car . "^7 - ^6Driver: " . $Nickname . ); openGlobalButton( "sinrs_dm_criteria",5,146,36,4,4,-1,16,"^4Scoring Criteria: " . "&^7Minimum Drift Speed: ^330MPH / 48kph" . "&^7Drift Angles (degrees): ^215^3 min / ^1100 ^3max"); openGlobalButton( "sinrs_dm_back",4,97,38,48,4,-1,32," " ); # Blank backing openGlobalButton( "sinrs_dm_text",5,105,36,8,4,-1,16,"^0DRIFT MASTER ^1(c)Sin'rs" ); # 'DRIFT MASTER is in Black text openGlobalButton( "sinrs_dm_driftblank",5,124,36,6,4,-1,80,"This Drift Score: " ); openGlobalButton( "sinrs_dm_comboblank",5,131,36,6,4,-1,80,"Total Combo Score: " ); openGlobalButton( "sinrs_dm_angleblank",5,138,36,6,4,-1,80,"Drift Angle: " ); openPrivButton( "sinrs_dm_score",30,124,11,6,4,-1,128,"- - - " ); # Blank. Score will overlay once you start scoring drift points openPrivButton( "sinrs_dm_combo",30,131,11,6,4,-1,128,"- - - " ); # Blank openPrivButton( "sinrs_dm_angle",30,138,11,6,4,-1,128,"> - < " ); # Blank openGlobalButton( "sinrs_dm_criteriablank",4,145,38,14,3,-1,32," " ); Part 2 - The next part should overwrite your complete ‘Drifting options’ lapper section. ------- #================# #Drifting options # #================# $DriftDatabase = "./DriftPB.txt"; # This is the filepath for a file containing the collected data. $MinimumDriftSpeed = 48; # Minimum speed in km/h to maintain. Driving below that speed will reset score (48kmph is approx 30MPH) $MinimumDriftAngle = 15; # Minimum angel to maintain. When angle is below value, score is reset $MaximumDriftAngle = 100; # Maximum angel to maintain. When angle is above value, score is reset $GoodDriftScore = 2000; # Value to be reached to execute action on good drift score $MinimumDriftScore = 250; # Minimum drift score required Event OnDriftScore() IF( $AngleVelocity < 0 ) THEN $AngleVelocity_reverse=($AngleVelocity)*(-1); openPrivButton( "sinrs_dm_score",30,124,11,6,4,-1,128," ^7" . $LastDriftScore ); # Gray text with white score openPrivButton( "sinrs_dm_combo",30,131,11,6,4,-1,128," ^2" . $DriftScore ); # Gray text with green score openPrivButton( "sinrs_dm_angle",30,138,11,6,4,-1,128," ^7" . $AngleVelocity_reverse . "^2 =>" ); # Gray text with white score and green arrow ELSE openPrivButton( "sinrs_dm_score",30,124,11,6,4,-1,128," ^7" . $LastDriftScore ); # Gray text with white score openPrivButton( "sinrs_dm_combo",30,131,11,6,4,-1,128," ^3" . $DriftScore ); # Gray text with yellow score openPrivButton( "sinrs_dm_angle",30,138,11,6,4,-1,128," ^1<= ^7" . $AngleVelocity . " " ); # Gray text with white score and red arrow ENDIF EndEvent # Message that will be shown to all on a drivers new personal best drift lap. Event DriftPBAction() cmdLFS( "/rcm " . $Nickname . "^3 made new drift PB: ^7" . $DriftScore . " ^3pts!" ); cmdLFS( "/rcm_all" ); EndEvent # Message that will be shown when total lap drift score is higher or equal to MinimumDriftScore. Event DriftLapAction() cmdLFS("/msg " . $Nickname . " ^3drifted to ^7" . $DriftScore . " ^3pts" ); EndEvent # Message that will be shown to all when driver makes a good drift score Event GoodDriftAction() cmdLFS( "/rcm " . $Nickname . " ^3made excellent drift: ^7" . $LastDriftScore ." ^3pts" ); cmdLFS( "/rcm_all" ); EndEvent # Message that will be shown to all if a driver fails to score a minimum amount Event DriftTooLowAction() cmdLFS( "/rcm " . $Nickname . " ^3was absolutely rubbish!" ); cmdLFS( "/rcm_all" ); EndEvent