Перейти к содержимому


- - - - -

насчёт LFS LAPPER


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 49

#1 Пробегавший мимо Intrepid-K.Calko...

Пробегавший мимо Intrepid-K.Calko...
  • ____

Отправлено 14 Октябрь 2007 - 00:32

Люди вот такая проблемка!!!скачал лаппер а можно ссылку для настройки его плззз если можна то на руусском /uglyhammer.gif' class='bbc_emoticon' alt=':uglyhammer:' />
  • 0

#2 Пробегавший мимо Intrepid-K.Calko...

Пробегавший мимо Intrepid-K.Calko...
  • ____

Отправлено 14 Октябрь 2007 - 01:05

я хочу зделать сервак не дриф не драг а на ПБ дайте настройку или скиньте LFSLapper.Cfg настроенный(напишите каккую команду писать чтобу парлдь написать_ /rolleyes.gif' class='bbc_emoticon' alt=':uglyhammer:' /> пожаалуйста
  • 0

#3 Пробегавший мимо fish...

Пробегавший мимо fish...
  • ____

Отправлено 27 Март 2008 - 15:45

Привет я поставил LFSLapper всьо работает но непоказывает очки за дрифт,показывает только когда проежаеш круг общий PB,а как зделать чтоб после каждого поворота?
Что делать?
Помогите плз

Сообщение отредактировал fish: 27 Март 2008 - 18:57

  • 0

#4 Biskvit

Biskvit

    Заводской пилот

  • Рейсеры
  • PipPipPipPipPip
  • 271 сообщений
  • LFS-статус:S2 Licensed
  • LFS account:Biskvit

Отправлено 27 Март 2008 - 21:54

Смотреть секцию Drift score в конфиге.
  • 0

#5 Пробегавший мимо fish...

Пробегавший мимо fish...
  • ____

Отправлено 28 Март 2008 - 03:08

Смотреть секцию Drift score в конфиге.

А что именно там надо поменять ато я в етом ничего непонимаю :dunno /blink.gif' class='bbc_emoticon' alt=':)' />

Сообщение отредактировал fish: 28 Март 2008 - 03:08

  • 0

#6 ZolArT

ZolArT

    Заводской пилот

  • Рейсеры
  • PipPipPipPipPip
  • 370 сообщений
  • Контроллер:мышь
  • LFS-статус:Demo racer
  • LFS account:ZolArT

Отправлено 28 Март 2008 - 11:50

А что именно там надо поменять ато я в етом ничего непонимаю :dunno :)

#####################################################################
# Drifting options #
#####################################################################
# You can use /pm here
#-------------------------------------------------------------------


# This is filepath of file containing collected data.
# Will be created if it doesnt exist yet.
# You must ensure read/write access to this path.

DriftDatabase = ./DriftPB.txt;

# Actions to do on new personal best drift lap.
# If more actions, separate them with '|'.
# Possible variables to use:
# {Nickname} - Nickname of driver
# {Username} - Username of driver
# {DriftScore} - Drift score
# {Car} - Car used
# {SessLaps} - Number of laps on current car and track for session
# {Laps} - Number of Lap on current track and Car
# {TotalPitTime} - Total Time stop in pit place

#DriftPBAction = /rcm {Nickname}^3 made new PB: ^7{DriftScore} ^3pts!|/rcm_all;
DriftPBAction = /msg {Nickname}^3 made new PB: ^7{DriftScore} ^3pts!;

# Actions to do to when total lap drift score is higher or equal to MinimumDriftScore.
# If more actions, separate them with '|'.
# Possible variables to use:
# {Nickname} - Nickname of driver
# {Username} - Username of driver
# {DriftScore} - Drift score
# {Car} - Car used
# {SessLaps} - Number of laps on current car and track for session
# {TotalPitTime} - Total Time stop in pit place
# {Laps} - Number of Lap on current track and Car

DriftLapAction = /msg {Nickname} ^3drifted to ^7{DriftScore} ^3pts;

# Message to get on end of each drift.
# Possible variables to use:
# {Nickname} - Nickname of driver
# {Username} - Username of driver
# {DriftScore} - Total drift score
# {LastDriftScore} - Last drift score
# {Car} - Car used
# {SessLaps} - Number of laps on current car and track for session
# {Laps} - Number of Lap on current track and Car
# {TotalPitTime} - Total Time stop in pit place

OnDriftScore = /pm Score: ^7{DriftScore} ^3+{LastDriftScore};

# Action to execute on good drift score.
# Possible variables to use:
# {Nickname} - Nickname of driver
# {Username} - Username of driver
# {LastDriftScore} - Last drift score
# {Car} - Car used
# {SessLaps} - Number of laps on current car and track for session
# {Laps} - Number of Lap on current track and Car
# {TotalPitTime} - Total Time stop in pit place

GoodDriftScore = 4000;
GoodDriftAction = /msg {Nickname} ^3made excellent drift: ^7{LastDriftScore} ^3pts;

# Minimum drift score required.

MinimumDriftScore = 10;

# Actions to do at end of lap if MinimumDriftScore is not achieved.
# If more actions, separate them with '|'.
# Possible variables to use:
# {Nickname} - Nickname of driver
# {Username} - Username of driver
# {DriftScore} - Drift score
# {Car} - Car used
# {SessLaps} - Number of laps on current car and track for session
# {Laps} - Number of Lap on current track and Car
# {TotalPitTime} - Total Time stop in pit place

#DriftTooLowAction = /msg {Nickname}^3 disqualified|/spec {Nickname};
DriftTooLowAction = /msg {Nickname}^3 is one lousy drifter ({DriftScore} pts);

# Minimum speed in km/h to maintain. Driving below that speed will reset score.

MinimumDriftSpeed = 50;

MinimumDriftAngle = 15;
MaximumDriftAngle = 100;


  • 0

#7 Пробегавший мимо fish...

Пробегавший мимо fish...
  • ____

Отправлено 28 Март 2008 - 13:14

ZolArT Всьо рабоатет!Спасибо :prey
  • 0

#8 TurboSnail

TurboSnail

    Интересующийся

  • На квалификации
  • Pip
  • 25 сообщений
  • Откуда:Москва
  • Контроллер:мышь
  • LFS-статус:S2 Licensed
  • LFS account:denis-takumi

Отправлено 04 Июнь 2008 - 14:15

а у меня вопрос поинтереснее, а кто нить руссифицировал лаппер, если да то как???
  • 0
буду краток, я идиот

#9 ekze

ekze

    ^_^

  • RRT.A-Spec/Admin
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 5 376 сообщений
  • Откуда:Город-герой Ленинград
  • Контроллер:Logitech G27
  • LFS-статус:S2 Licensed
  • LFS account:ekze

Отправлено 04 Июнь 2008 - 15:08

Перевести все строчки на русский ((8
Перед каждой русской фразой ставить ^C (C латинская), чтобы строчка отправлялась в кириллической кодировке.
  • 0
Изображение

#10 TurboSnail

TurboSnail

    Интересующийся

  • На квалификации
  • Pip
  • 25 сообщений
  • Откуда:Москва
  • Контроллер:мышь
  • LFS-статус:S2 Licensed
  • LFS account:denis-takumi

Отправлено 04 Июнь 2008 - 16:48

СПАСИБО :prey
  • 0
буду краток, я идиот

#11 Electr0NiK

Electr0NiK

    Мимо проходил..

  • На квалификации
  • 7 сообщений
  • Контроллер:мышь
  • LFS-статус:Demo racer
  • LFS account:Electr0NiK

Отправлено 17 Июнь 2008 - 07:04

Перевести все строчки на русский ((8
Перед каждой русской фразой ставить ^C (C латинская), чтобы строчка отправлялась в кириллической кодировке.

Инетерессно, вот дописал я ^C перед фразами, теперь выглядит это так:

OnConnect = /msg ^CК нам присоеденился {Nickname}|
			/pm ^7^CДобро пожаловать на наш сервер (^1LFSLapper ^7powered)|
			/pm ^2^CВведите ^7!help ^2^Cчтобы увидеть доступные команды.|

.. а в игре выводит вопросы:

? ??? ????????????? host	
????? У????????? ?? ??? ?????? (LFSLapper powered)
??????? !help ????? ??????? ?????????.


В приветствии после добавления "^с" нормально отображаются русские символы.
Lapper ver. 5.54

Что я сделал не так?

Сообщение отредактировал Electr0NiK: 17 Июнь 2008 - 07:05

  • 0

[img]http://www.lfsworld.net/isonline.Electr0NiK.gif[/img]

[img]http://ipicture.ru/uploads/080617/10803/LuZuInU7MR.gif[/img]


#12 Пробегавший мимо Klice...

Пробегавший мимо Klice...
  • ____

Отправлено 17 Июнь 2008 - 10:32

Дело в кодировке, должна быть UTF-8
  • 0

#13 T@R@S

T@R@S

    Интересующийся

  • На квалификации
  • Pip
  • 46 сообщений
  • Откуда:Ukraine, Dnipropetrovs'k
  • Контроллер:Logitech MOMO
  • LFS-статус:S2 Licensed
  • LFS account:TarasBereza

Отправлено 02 Июль 2008 - 13:38

у меня запускается сервер без проблем, без единой ошибки, к нему Lapper, но когда захожу в игре на сервер пишет: НЕ ПОЛУЧИЛ ДАННЫХ О ТРАССЕ

Подскажите, пожалуйста, в чём проблема?
  • 0


#14 ekze

ekze

    ^_^

  • RRT.A-Spec/Admin
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 5 376 сообщений
  • Откуда:Город-герой Ленинград
  • Контроллер:Logitech G27
  • LFS-статус:S2 Licensed
  • LFS account:ekze

Отправлено 02 Июль 2008 - 13:45

Мало информации.
Скажи, какая у тебя
- версия сервера
- версия клиента
- стоит ли фаервол
- кинь конфиг сервера
  • 0
Изображение

#15 -tigerman-

-tigerman-

    Интересующийся

  • Рейсеры
  • Pip
  • 50 сообщений
  • Откуда:Томск/Россия
  • Контроллер:Logitech G25
  • LFS-статус:S2 Licensed
  • LFS account:-tigerman-

Отправлено 02 Июль 2008 - 16:49

ekze, ты еще забыл спросить про лицензию. :p
  • 0
Слишком хорошо - это уже не хорошо!

#16 ekze

ekze

    ^_^

  • RRT.A-Spec/Admin
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 5 376 сообщений
  • Откуда:Город-герой Ленинград
  • Контроллер:Logitech G27
  • LFS-статус:S2 Licensed
  • LFS account:ekze

Отправлено 02 Июль 2008 - 16:53

Чтобы поднимать демо-сервер, лицензия не нужна ^^
Да и даже для поднятия S2 она не нужна.
  • 0
Изображение

#17 krest

krest

    Интересующийся

  • На квалификации
  • Pip
  • 47 сообщений
  • Откуда:Беларусь , Минск
  • Контроллер:Logitech G25
  • LFS-статус:S2 Licensed
  • LFS account:krest

Отправлено 02 Июль 2008 - 18:00

ЫЫыыы.... помогите плз !!! вы ж умные , должны знать... чё за лажа ?! всё не слава богу... запускаю лаппер , думает думает , а потом вот что пишет... Пжалуйста помогите !!!!

Прикрепленные изображения

  • mmmmmmmmmmmmmm.jpg

  • 0
Званых свобода крылатит силой причастия, открывая двери в чертоги избранных...

#18 ekze

ekze

    ^_^

  • RRT.A-Spec/Admin
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 5 376 сообщений
  • Откуда:Город-герой Ленинград
  • Контроллер:Logitech G27
  • LFS-статус:S2 Licensed
  • LFS account:ekze

Отправлено 02 Июль 2008 - 18:08

Возможно, фаервол блокирует соединение, либо в настройках сервера не прописан необходимый порт для InSim соединения с LFS Lapper.
  • 0
Изображение

#19 krest

krest

    Интересующийся

  • На квалификации
  • Pip
  • 47 сообщений
  • Откуда:Беларусь , Минск
  • Контроллер:Logitech G25
  • LFS-статус:S2 Licensed
  • LFS account:krest

Отправлено 02 Июль 2008 - 18:20

фаервола нету... а вот второе.. ээм... это в конфиге лаппера должно быть прописано?!

ыы.. а вообще кто нить может кинуть лаппер ?! а то я чувствую что это лаппер у мну такой... скачал где то у чёрта на куличках... походу самопальный какой то икривой... киньте плз ! т.к. на сайте я не нашёл

Хм.. кажись сделал ... на сервер лаппер заходит , но тут же пишет New quest timed out и кидает... ЧТО ЗА МАРАЗМ ?!
  • 0
Званых свобода крылатит силой причастия, открывая двери в чертоги избранных...

#20 Пробегавший мимо Alien123...

Пробегавший мимо Alien123...
  • ____

Отправлено 15 Декабрь 2008 - 15:40

Здравствуйте! Скачал Лаппер вроде 5.40 версии...запускается норм, но не отображает очки за дрифт! Хотя прописывает в DriftPB.txt...
В чем причина? Помогите....

Сам код конфига...
[code=auto:0]
/*
List of All variable that can be used in player events

$Nickname -> Nickname
$Username -> UserName
$Laps -> Total number of laps done on the current track and with the current car
$SessLaps -> Total number of laps done this session on current track and with the current car
$TotalPitTime -> Totaltime used for a pitstop
$Car -> Current car of the player
$Posabs -> Current absolute position
$Posqual -> Current qualification position
$Groupqual -> Current group qualification
$SwearWordsRem -> Remaining number of swearwords to be used before SwearWordsAction2 is triggered
$H_Mass -> User mass required on this server
$H_TRes -> User intake restriction required on this server
$P_Mass -> Current player Mass
$P_TRes -> Current player restriction
$SplitTime -> Last Split time done by player

$Split1 -> Last First Split, updated when doing new Split1
$Split2 -> Last First Split, erased when doing Split1
$Split3 -> Last First Split, erased when doing Split1
$LapTime -> Current Lap Time, erased when doing New LapTime
$PBLapTime -> Current PB on current Combo
$diffLapTimeToPB -> Laptime - PBLTime, Last PBLTime is new realised

$SectorSplit1 -> Last First sector Split, updated when doing new Split1
$SectorSplit2 -> Last second sector Split, erased when doing Split1
$SectorSplit3 -> Last third sector Split, erased when doing Split1
$SectorSplitLast -> Last Last sector Split, erased when doing Split1

$BestSectorSplit1 -> Best Split duration for the sector 1
$BestSectorSplit2 -> Best Split duration for the sector 2
$BestSectorSplit3 -> Best Split duration for the sector 3
$BestSectorSplitLast -> BestSplit duration for the last sector

$DiffSectorSplit1 -> $SectorSplit1 - $BestSectorSplit1
$DiffSectorSplit2 -> $SectorSplit2 - $BestSectorSplit2
$DiffSectorSplit3 -> $SectorSplit3 - $BestSectorSplit3
$DiffSectorSplitLast -> $SectorSplitLast - $BestSectorSplitLast

$isBestSectorSplit1 -> 1 if this sector split is best than previous Best, otherwise 0
$isBestSectorSplit2 -> 1 if this sector split is best than previous Best, otherwise 0
$isBestSectorSplit3 -> 1 if this sector split is best than previous Best, otherwise 0
$isBestSectorSplitLast -> 1 if this sector split is best than previous Best, otherwise 0

$BestSpeed -> Best Speed done on this combo by player
$UnitSpeed -> Speedunit of the current player
$AvgSpeed -> Avg Speed on last Lap Time
$Tpb -> Theoretical PB
$DriftScore -> Drift score
$typ -> {typ} - = "Sess" if split PB for Session "PB" if split PB for PB file;
$AngleVelocity -> Last Angle velocity in degrees
$LastDriftScore -> Last drift score
$AccelerationStartSpeed -> Starting speed
$AccelerationEndSpeed -> Ending speed
$AccelerationTime -> Acceleration time achieved from start to end speed
$MaxAllowedLapTime1 -> Max Allowed Time before trigger Event OnMaxAllowedLapTime1
$MaxAllowedLapTime2 -> Max Allowed Time before trigger Event OnMaxAllowedLapTime2
$Dist -> Distance done on current combo/track by player
$SessDist -> Distance done on current combo/track by player this session

$RotateIn -> Race remain before Rotation


List of all variables that can be used in all events

$HostName -> Current host Name
$ShortTrackName -> Track Name in Short format : SO6
$LongTrackName -> Track Name in long format : South City Chicane
$ShortTime -> Server Time in short format
$LongTime -> Server Time in long format
$ShortDate -> Date in short format
$LongDate -> Date in long format
$CurrRotateCar -> Current rotated Car
$CurrRotateTrack -> Current rotated Track
$CurrLongRotateTrack -> Current rotated Track
$NextRotateCar -> Next rotated Car
$NextRotateTrack -> Next rotated Track
$NextLongRotateTrack -> Next rotated Track



Additionnal variable that can be used in OnBeginPit.

$Work -> Work do on current car player after Pit


Additionnal variables that can be used in votation.

$Vote -> Number of player that have voted to restart, qualify or end
$Players -> Number of player that can vote ( player on track )
$Remain -> Number of votes remaining after votation conclude
$Need -> Number of votes to do action (qualify, restart, end)


Additionnal variables that can be used in OnNotMatchFlags.

$RequiredFlags -> Flag(s) required on this server
$PlayerFlags -> Flag(s) for the current player


Additionnal variable that can be used in OnFastDriveOnPitL1 or OnFastDriveOnPitL2.

$RemainFDIP -> Number of remaining penalties for fast driving in pits


Additionnal variable that can be used in OnAuthReached.

$auth -> Authorization reached
*/

/*
Command block to run when a LFS Special event is triggered
Event EventId()
...
EndEvent

Command block used by backcall command like button or scheduled action or when received a command by player
Sub SubId()
...
EndSub

Register MsgAction("!test",MA_test);
You can register a subfunction to call when a player typed a special text
Firts arg = text typed in
Second arg = Sub to call when a player typed this text

Register ScheduleAction( "0 0 0 * * *", SA_mid );
You can register a subfunction to call when a time is reached
Firts arg = cron format ss mm hh dd MM YYYY
Second arg = Sub to call when player type this text

Command allowed on Event and Sub

cmdLFS("Command_text");
Send a command to Lapper, see command.txt in LFS Doc

privMsg( "Message_text");
Send a private message to the player that has triggered the event

openPrivButton( "help",25,28,150,10,5,-1,0,"^2Commands list" );
openPrivButton( "help",25,28,150,10,5,-1,0,"^2Commands list", backcall );
Open a button for the current player
1 - Unique id for this button
2 - Left coordinate for this button ( 0-200 )
$origL = (value between 0-200); - when this value is used, every next value can be made relative to this one (example: $origL + 5;)
3 - Top coordinate for this button ( 0-200 )
$origT = (value between 0-200); - when this value is used, every next value can be made relative to this one (example: $origT + 5;)
4 - Width of the button ( 0-200 )
5 - Heigth of the button ( 0-200 )
6 - Space between line in multiline button
7 - Duration in seconds for the button to be displayed (use -1 if you don't want an automatic close)
8 - Format of the button, look at insim.txt for values
9 - Button caption, for multiline, separate each line with &
10 - Option name of the backcalled sub

closePrivButton("welc&pos&clos&ref");
Close one or more button(s), you specify ID of the button to close, multiple ID's have to be separated by a &

openGlobalButton( "bargr1",60,1,10,6,6,30,96,"Restart:" );
Same as openPrivButton, but open button for all players connected

closeGlobalButton("welc&pos&clos&ref");
Same as closePrivButton, but close button for all players connected

console( "My test");
To display message on the Lapper console

There are another functions, look in config file

Codes that can be used on button format:

0 - transparent button
16 - light button
32 - dark button
64 - align text to left
128 - align text to right

If you want to make a light colored button with text aligned to the left, combine the codes to one new code, for example 16+64 = http://www.liveforsp...tyle_emoticons/default/mega_shok.gif
*/

/*
To create colored text, use the following codes in front of the text you want to color:

^0 - black
^1 - red
^2 - green
^3 - yellow
^4 - blue
^5 - violet
^6 - cyan
^7 - white
^8 - no color

Other variables that could be used on expressions
&& -> and
|| -> or
+ -> plus
- -> minus
/ -> devide
* -> multiply
^ -> pow
== -> equal to
!= -> not equal to
> -> bigger then
< -> smaller then
<= -> smaller then and equal to
>= -> bigger then and equal to
*/

#################
#General options#
#################

$Host = 127.0.0.1; # Host IP. When more network interfaces are present, set it to IP of your host.

$Port = 29999; # Insim UDP port. Open this port after starting LFS Server by typing /insim=29999 in chat or include it in config-file LFS Server

$Password = "МОЙ ПАСС!"; # Put in the admin password used on the LFS Server

$TrackInfoFile = "trackInfo.cfg"; # Path to the TrackInfoFile used to compare splits

$TCPmode = true; # Connection to LFS in UDP mode or TCP mode

$EnableRegisterWeb = true; # When set to "true" your LFS Server is displayed on the FRH Team website

$DateFormat = "dd/MM/yyyy"; # Date format used for the PB files
# Look at C#-format for date/time, little help
# HH = Hour in 0-23 format
# hh = Hour in 0-12 format
# mm = Minute
# tt = PM or AM
# dd = Day
# MM = Month
# yyyy = year with 4 digits

$TimeFormat = "HH:mm"; # Time format used for the PB files

$MessageTime = 5000; # Time in milliseconds for a racecontrol message (started by: rcm_all) to be displayed on screen

#$PubStatIdk = ""; # Indentification code for a connection to PubStat.
# To obtain a PubStatId go to www.lfsworld.net , select My LFSW Setting, tab Pubstat Access
# Remove # before PubStatIdK to activate this option

$ShowPlayerControl = False; # Set option to "true" if you want to show the control configuration of players when leaving the pits.

##############
#FTP transfer#
##############
# Results files can also be transferred to an FTP server
# Define the following parameters to use this feature
# Remove # before line to activate it
# -------------------------------------------------------------------

#$FtpServer = "your ftp server"; # Name/IP-address of your FTP server
#$FtpLogin = "your login"; # Loginname for your FTP server
#$FtpPasswd = "your password"; # Password for your FTP server
#$FtpRemotePath = "your remote dir"; # Directorname

##############################
#Synchronise Lapper databases#
##############################

#$SyncID="frh01"; # Unique ID for this instance of Lapper
#$SyncDir="synchro"; # Name of synchronisation directory. Every Lapper should have this directory name in order to synchronise
#$SyncIDsToSync="frh02|frh03"; # Lapper ID's to synchronise with
# Seperate ID's with |
# You can't use current SyncID here

#############
#Default Car#
#############
# Default car to show, when no car is specified in command !top or !drf and when a player haven't used a car on this server
# You can combine several cars by using + (example: "XFG+XRG";)
# -------------------------------------------------------------------

#$DefaultTopCar = "UF1";
$DefaultTopCar = "XFG";
#$DefaultTopCar = "XRG";
#$DefaultTopCar = "XRT";
#$DefaultTopCar = "RB4";
#$DefaultTopCar = "FXO";
#$DefaultTopCar = "LX4";
#$DefaultTopCar = "LX6";
#$DefaultTopCar = "RAC";
#$DefaultTopCar = "FZ5";
#$DefaultTopCar = "MRT";
#$DefaultTopCar = "XFR";
#$DefaultTopCar = "UFR";
#$DefaultTopCar = "FOX";
#$DefaultTopCar = "FO8";
#$DefaultTopCar = "FXR";
#$DefaultTopCar = "XRR";
#$DefaultTopCar = "FZR";
#$DefaultTopCar = "BF1";
#$DefaultTopCar = "FBM";

###################################
#Event triggered when lapper start#
###################################
Event OnLapperStart()
EndEvent

###################################
#Authorization Options ( license )#
###################################
#Authorization Options
#
#$Auth1 $Auth2 ... $Auth10 variable
#Syntax : $AuthX = "Carname:Trackname:MinimumTime&Carname:Trackname:MinimumTime&...| Carname:Trackname:MinimumTime&Carname:Trackname:MinimumTime&... | ...";
#& -> And condition
#| -> Or condition
#
#$AuthAllowPlayer="Auth1|...|AuthX|@username1,username2,...,usernameN";
#or
#$AuthAllowPlayer="All";
#-------------------------------------------------------------------

#$Auth1 = "XFG:BL1:1.30.10 | XRT:SO4:1.20.20";
#$Auth2 = "XFG:BL1:1.10.10 | XRT:SO4:1.20.20";
#$Auth3 = "XFG:BL1:1.05.10";

$AuthAllowPlayer = "All";

$AuthMinPlayer = 0; # Minimum number of players on the server to auto enable authorization
# If number of players is below value, alle players are allowed
# If number of players is above value, only AuthAllowPlayer are allowed

Event OnAuthAllowed()
cmdLFS( "/msg " . $Nickname . "^3 allowed on this server" );
Endevent

Event OnAuthNotAllowed()
cmdLFS("/spec " . $Nickname . "^3 allowed on this server");
cmdLFS("/msg " . $Nickname . "^3 not allowed on this server");
Endevent

# Local viariable that can be used
# $auth -> Authorization reached

Event OnAuthReached()
privMsg("^3You have got level" . $auth );
EndEvent

##################
#Swearword filter#
##################
#Specify a list of swearwords seperated by ,
#Specify a file with swearwords, one word per line
#-------------------------------------------------------------------

$SwearWordsList = "fuck,asholes,bastard,idiot";
#$SwearWordsList = "&./swear.txt";
$SwearWordsMax = 2; # Maximum number of allowed swearwords per session

Event SwearWordsAction1()
privMsg( "^1Don't use this words on this server" );
privMsg( "You will be spectated in ^2" . $SwearWordsRem . " ^1 more attempt(s)" );
EndEvent

Event SwearWordsAction2()
privMsg( "Too many swearwords, spectated" );
cmdLFS( "/spec " . $Nickname );
EndEvent

###########
#Handicaps#
###########
#You can specify 3 levels of handicap : for car, for car and track, for user
#Priority Level low to hight : HandicapCars, HandicapCarsTracks, HandicapUser
#-------------------------------------------------------------------
#Handicap cars
#
#Syntax :
#
#$HandicapCars = "car:mass:irest,car:mass:irest,...,car:mass:irest";
#
#car : LFS short car name
#mass : mass handicap in kg
#irest : Air intake restriction in percent
#-------------------------------------------------------------------
#Handicap cars/tracks
#
#Syntax :
#
#$HandicapCarsTracks = "car/track:mass:irest,car/track:mass:irest,...,car/track:mass:irest";
#
#car : LFS short car name
#track : LFS short track name
#mass : mass handicap in kg
#irest : Air intake restriction in percent
#-------------------------------------------------------------------
#$HandicapUser # a list of players and their handicap
# # if you prefix with & , You can indicate a file name that contains a list of racers, one racer per line
# # if you prefix with @, You can list username separated with ,
#
#Syntax :
#
#$HandicapUsers = "&./your_file";
#$HandicapUsers = "@userName:mass:irest,userName:mass:irest,...userName:mass:irest";
#
#$RefreshHandicapUsers # allow Lapper to refresh HandicapUsers on each player leaving pits
# Usefull if HandicapUsers is a file and is updated frequently by an external program
#-------------------------------------------------------------------

#$HandicapCars = "XFG:100:10,XRT:50:10";

#$HandicapCarsTracks = "XFG/BL1:100:10,XRT/AS1:50:10";

#$RefreshHandicapUsers = true;
#$HandicapUsers = "&./your_hand.flt";
#$HandicapUsers = "@Gai-Luron:100:20,gwendoline:100:30,_-ALUCARD-_,lagamel:50:10,lister88,c-quad,shimanofr,bruno7529,boby5,kevinb,edgar,berlioz,la tortue,neron59,eur-can,stff,2psbob,oliv76000";

# Actions to execute, when the handicap of a player is below specified HandicapUsers
# Possible variables to use:
#
#$Nickname - Nickname of driver
#$Username - Username of driver
#$H_Mass - User mass required
#$H_TRes - User Intake restriction required

Event OnToLowHandicap()
cmdLFS("/spec " . $Nickname );
cmdLFS("/msg " . $Nickname . "^3 spectated for to low handicap" );
cmdLFS("/msg ^3need " . $H_Mass . "kg and " . $H_TRes . "% of intake restriction!");
EndEvent

#################
#Control Allowed#
#################
# Racer flags
# "Y" = Yes
# "N" = No
# "*"" = Yes or No
# Local variable
# $PlayerFlags = The current Player flags
# $RequiredFlags = The current Required flags
#-------------------------------------------------------------------

$SwapSide = "*";
$AutoGears = "*";
$Shifter = "*";
$HelpBrake = "*";
$AxisClutch = "*";
$AutoClutch = "*";
$Mouse = "*";
$KbNoHelp = "*";
$KbStabilised = "*";
$CustomView = "*";

Event OnNotMatchFlags()
privMsg( "Flags not match required flags" );
privMsg("Yours flags -> " . $PlayerFlags );
privMsg("Required flags -> " . $RequiredFlags );
privMsg("Spectated" );
cmdLFS("/spec " . $Username );
EndEvent

##############
#Race Control#
##############
#Voting:
#
#$InRaceLapsVoteMinMax = Laps in between where votes are allowed in race
#$InRaceLapsVoteMinMax = 0-0 Votes are never allowed
#$InRaceLapsVoteMinMax = -5 Votes are allowed between lap 1 and 5
#$InRaceLapsVoteMinMax = 2- Votes are allowed between laps 2 and the end of the race
#$InRaceLapsVoteMinMax = - Votes are always allowed
#
#$VoteRestart = percentage of players that have to vote to restart a race. To let LFS admin this function, set it to -1
#onVoteRestartChange = Command to do when player votes to restart
#onVoteRestartReach = Command to execute when VoteRestart is reached
#onVoteRestartZero = Command to execute when no nb of player reach zero

#$VoteQualify = percentage of players that have to vote to start a qualification. To let LFS admin this function, set it to -1
#onVoteQualifyChange = same as restart but for qualify
#onVoteQualifyReach = same as restart but for qualify
#onVoteQualifyZero = same as restart but for qualify
#
#$VoteEnd = percentage of players that have to vote to end a race. To let LFS admin this function, set it to -1
#onVoteEndChange = same as restart but for endrace
#onVoteEndReach = same as restart but for endrace
#onVoteEndyZero = same as restart but for endrace
#-------------------------------------------------------------------
#Local variable:
#
#$Vote - Number of players that have voted
#$Remain - Number of players remaining to vote
#$Need - Number of players needed for an action
#$VoteLifeSec = Number of seconds to keep the vote alive after voting
#-------------------------------------------------------------------
#Auto restart:
#
#$AutoRestartRaceMn = Minutes between the end of a race (last player finished) and an automatic restart
#$AutoRestartRaceMn = 0; No restart
#
#Rotation only work if AutoRestartRaceMn is set
#EnableRotation = Allow or disallow rotation for track and/or car
# Values : true or false
#$RotateTracks = "tracks to rotate"; separated by ','
#$RotateCars = "cars to rotate"; separated by ',' Use LFS definition for car, if not set, no car rotation
#$RotateEveryNbRaces = Number of races to do before rotation;
#-------------------------------------------------------------------

$InRaceLapsVoteMinMax = "-";

$VoteRestart = -1;

Event onVoteRestartChange()
openGlobalButton( "bargr1",60,1,10,6,6,30,96,"Restart:" );
openGlobalButton( "bargr2",70,1,20,6,6,30,96,"(" . $Vote ."/" . $Players . ") Need " . $Need );
EndEvent

Event onVoteRestartReach()
closeGlobalButton( "bargr1&bargr2" );
cmdLFS("/restart");
EndEvent

Event onVoteRestartZero()
closeGlobalButton( "bargr1&bargr2" );
EndEvent

$VoteQualify = -1;

Event onVoteQualifyChange()
openGlobalButton( "bargq1",90,1,10,6,6,30,96,"Qualify" );
openGlobalButton( "bargq2",100,1,20,6,6,30,96,"(" . $Vote . "/" . $Players . ") Need " . $Need );
EndEvent

Event onVoteQualifyReach()
closeGlobalButton("bargq1&bargq2" );
cmdLFS("/qualify" );
EndEvent

Event onVoteQualifyZero()
closeGlobalButton("bargq1&bargq2" );
EndEvent

$VoteEnd = -1;

Event onVoteEndChange()
openGlobalButton( "barge1",120,1,10,6,6,30,96,"End:" );
openGlobalButton( "barge2",130,1,20,6,6,30,96,"(" . $Vote . "/" . $Players . ") Need " . $Need );
EndEvent
Event onVoteEndReach()
closeGlobalButton( "barge1&barge2" );
cmdLFS("/end");
EndEvent

Event onVoteEndZero()
closeGlobalButton( "barge1&barge2" );
EndEvent

$VoteLifeSec = 30;

$AutoRestartRaceMn = 0;

$EnableRotation = false;
$RotateTracks = "SO6R,BL1,FE3";
$RotateEveryNbRaces = 4;
$RotateCars = "XFG+UF1,TBO,XFR+UFR";

Event OnRotateCar()
cmdLFS("/msg Car changed, go to pit! Current car = " . $CurrRotateCar);
EndEvent
Event OnRotateTrack()
cmdLFS("/msg Track changed, please wait!" );
cmdLFS("/msg Current Track = " . $CurrLongRotateTrack);
EndEvent


#################################################
#Connect messages when a player joins the server#
#################################################

Event OnConnect()
openPrivButton( "welc",25,50,150,15,12,-1,0,"^7Welcome " . $Nickname . " ^7to ^1LFSLapper ^7powered server !&^2Type ^7!help ^2after leaving garage to see commands." );
openPrivButton( "pos",25,http://www.liveforspeed.ru/public/style_emoticons/default/mega_shok.gif,150,10,8,-1,0,"^7Your actual friendly Position (all visitors) : ^7" . $Posabs
. "&^2Your actual League prequalify Position : " . $Posqual . " ^6Estimate Pool : " . $Groupqual
. "&Don't use swearwords on this server"
. "&respect other player"
. "&otherwise you can be banned "
);
openPrivButton( "clos",78,120,20,10,10,-1,32,"Accept",OnConnectClose );
openPrivButton( "ref",103,120,20,10,10,-1,32,"Deny",OnConnectCloseKick );
http("http://www.frh-team.net/reglapper/getserver2.php" );
EndEvent

Sub OnConnectClose()
closePrivButton("welc&pos&clos&ref");
/*
IF( $Nickname == "unnamed" )
THEN
cmdLFS( "/kick " . $Username );
ENDIF
*/
EndSub

Sub OnConnectCloseKick()
closePrivButton("welc&pos&clos&ref");
cmdLFS("/kick " . $Username );
EndSub

#####################################################
#DisConnect messages when a player leaves the server#
#####################################################

Event OnDisConnect()
cmdLFS( "/msg " . $Nickname . " left the server" );
EndEvent

#############################################$#
#Splitting (general action when passing split)#
###############################################

Event OnSplit1()
EndEvent

Event OnSplit2()
EndEvent

Event OnSplit3()
EndEvent

Event OnLap()
/*
IF( $DiffLapTimeToPB >= 0 )
THEN
$color = "^1";
$diff = $DiffLapTimeToPB;
ELSE
$color = "^2";
$diff = - $DiffLapTimeToPB;
ENDIF

privMsg( "New lap " .$color . $LapTime . "(" . $diff . ")" );
*/
EndEvent

#######################################################
#Splitting (compare player split to best player split)#
#######################################################

$ShowSplitPB = true; # Set to false if you don't want to see messages about splits

Event OnSpbSplit1()
IF( $isBestSectorSplit1 == 1 )
THEN
$color = "^2";
ELSE
$color = "^1";
ENDIF
openPrivButton( "id_spb",50,55,100,10,10,5,0,$typ
. " ^7SP1"
. ": " . $SectorSplit1 . " "
. $color
. "(" . $DiffSectorSplit1 . ")"
. "&^7TPB:" . $Tpb);
EndEvent

Event OnSpbSplit2()
IF( $isBestSectorSplit2 == 1 )
THEN
$color = "^2";
ELSE
$color = "^1";
ENDIF
openPrivButton( "id_spb",50,55,100,10,10,5,0,$typ
. " ^7SP2"
. ": " . $SectorSplit2 . " "
. $color
. "(" . $DiffSectorSplit2 . ")"
. "&^7TPB:" . $Tpb);
EndEvent

Event OnSpbSplit3()
IF( $isBestSectorSplit3 == 1 )
THEN
$color = "^2";
ELSE
$color = "^1";
ENDIF
openPrivButton( "id_spb",50,55,100,10,10,5,0,$typ
. " ^7SP3"
. ": " . $SectorSplit3 . " "
. $color
. "(" . $DiffSectorSplit3 . ")"
. "&^7TPB:" . $Tpb);
EndEvent

Event OnSpbLast()
IF( $isBestSectorSplitLast == 1 )
THEN
$color = "^2";
ELSE
$color = "^1";
ENDIF
openPrivButton( "id_spb",50,55,100,10,10,5,0,$typ
. " ^7SPL: "
. $SectorSplitLast . " "
. $color
. "(" . $DiffSectorSplitLast
. ")&^7TPB:" . $Tpb . " Avg:" . $AvgSpeed . " " . $UnitSpeed );
EndEvent

####################################################
#Actions to do on splits relative to trackinfo.cfg#
####################################################
#Local variable: {SplitTime} - Split time
#-------------------------------------------------------------------

Sub TRI_split1_0()
cmdLFS( "/msg Great 1st split (" . $SplitTime . ") by " . $Nickname . "^8!" );
EndSub
Sub TRI_split1_1()
cmdLFS( "/msg Good 1st split (" . $SplitTime . ") by " . $Nickname . "^8!" );
EndSub
Sub TRI_split2_0()
cmdLFS( "/msg Great 2nd split (" . $SplitTime . ") by " . $Nickname . "^8!" );
EndSub
Sub TRI_split2_1()
cmdLFS( "/msg Good 2nd split (" . $SplitTime . ") by " . $Nickname . "^8!" );
EndSub
Sub TRI_split3_0()
cmdLFS( "/msg Great 3rd split (" . $SplitTime . ") by " . $Nickname . "^8!" );
EndSub
Sub TRI_split3_1()
cmdLFS( "/msg Good 3rd split (" . $SplitTime . ") by " . $Nickname . "^8!" );
EndSub
Sub TRI_lap_0()
cmdLFS( "/msg Great lap (" . $LapTime . ") by " . $Nickname . "^8!" );
EndSub
Sub TRI_lap_1()
cmdLFS( "/msg Great lap (" . $LapTime . ") by " . $Nickname . "^8!" );
EndSub

#########################
#List of user qualifying#
#########################
#RefreshQualUsers : allow Lapper to refresh QualUsers on each outgoing pits, Usefull if QualUsers is a file and this is changed frequently by an external program
#QualUser : is a list of racers that participed in the qualification, required for function !nearqual !topqual and !statsqual
#if you prefix with & , You can indicate a file name that contains a list of racers, one racer per line (example : QualUsers = ./userfile.txt;)
#if you prefix with @, You can list usernames separated with ',' (example : QualUsers = @Gai-Luron,gwendoline,_-ALUCARD-_,lagamel;)
#You can specify which car is used by a user adding car after username separated by ':' (example : Gai-Luron:XFR,lagamel:UFR)
#You can specify the scheme of group of this qualification using a special username called DefGroup
#Defgroup Take 3 argument separated with ':'
#1 - Is the number Max of Group for this qualification
#2 - Is the number max of user per group
#3 - Is the minimum of user in the last group, recalc previous group as possible if number is low
#If you ommit scheme of groups, the group of qualification do not appear
#-------------------------------------------------------------------

$RefreshQualUsers = true;
#$QualUsers = "&./your_file.flt";
$QualUsers = "@DefGroup:5:5:2,Gai-Luron,MataGyula,nesrulz,gwendoline,_-ALUCARD-_,lagamel,lister88,c-quad,shimanofr,bruno7529,boby5,kevinb,edgar,berlioz,la tortue,neron59,eur-can,stff,2psbob,oliv76000";

###################
#Scheduled actions#
###################
#Syntax: ss mm hh dd MM YYYY
#-------------------------------------------------------------------

Register ScheduleAction( "0 0 0 * * *", SA_mid );
Sub SA_mid()
cmdLFS("/rcm Midnight warning to all working men!");
cmdLFS("/rcm_all");
EndSub

Register ScheduleAction( "0 0 0 1 1 *", SA_newyear );
Sub SA_newyear()
cmdLFS("/rcm Happy New Year!");
cmdLFS("/rcm_all");
EndSub

#################
#Command actions#
#################
#$allow is optional if you wish to specify users, that are allowed to execute action
#You can specify more users if you separated them by ','
#You can use a file to specify users, one user per line (example : $allow = "&./your_file.flt";)
#If ! before a name, force nickName authentification if UseUsernameForAuthentication=true
#If ! before a name, force userName authentification if UseUsernameForAuthentication=false
#You can use regexp expression in userName pattern, type regex=your regular expression
#
#Example: if UseUsernameForAuthentication=true
# !regex=^\[COP\].*
# Find all user with a nickname that begins with [COP]
# regex=^Gai.*
# Find all user with a username that begins with Gai
# See regular expression on web for more info how it work
#
#Use & sign at end of patterns
#-------------------------------------------------------------------

$UseUsernameForAuthentication = true;

Register MsgAction("!test",MA_test);
Sub MA_test()
$allow = "Gai-Luron,lagamel";
cmdLFS("/rcm " . $Nickname . " is testing...");
cmdLFS("/rcm_ply " . $Nickname );
EndSub

Register MsgAction("!license",MA_license);
Sub MA_license()
$allow = "Gai-Luron,lagamel";
setLicense( $argv );
EndSub

Register MsgAction("!ban",MA_ban);
Sub MA_ban()
$allow = "Gai-Luron";
cmdLFS( "/ban " . $argv . " 1" );
EndSub

Register MsgAction("!kick",MA_kick);
Sub MA_kick()
$allow = "Gai-Luron";
cmdLFS( "/kick " . $argv );
EndSub

Register MsgAction("!powered",MA_powered);
Sub MA_powered()
http("http://www.frh-team.net/reglapper/getserver2.php");
EndSub

Register MsgAction("!pos",MA_pos);
Sub MA_pos()
privMsg( "Your friendly position is " . $Posabs );
EndSub

Register MsgAction("!posqual",MA_posqual);
Sub MA_posqual()
privMsg( "Your qualification position is " . $Posqual );
EndSub

Register MsgAction("!groupqual",MA_groupqual);
Sub MA_groupqual()
privMsg( "Your groupqual is " . $Groupqual );
EndSub

Register MsgAction("!ver",MA_ver);
Sub MA_ver()
http("http://www.frh-team.net/reglapper/getserver2.php");
lapperVersion();
EndSub

Register MsgAction("!auth",MA_auth);
Sub MA_auth()
authLevel();
EndSub

Register MsgAction("!cleanspb",MA_cleanspb);
Register MsgAction("!razspb",MA_cleanspb);
Sub MA_cleanspb()
cleanSpb();
EndSub

Register MsgAction("!spb",MA_spb);
Sub MA_spb()
showSpb();
EndSub

Register MsgAction("!hand",MA_hand);
Sub MA_hand()
showHand( $argv );
EndSub

Register MsgAction("!statsqual",MA_statsqual);
Sub MA_statsqual()
statsQual( $argv );
EndSub

Register MsgAction("!dstats",MA_dstats);
Sub MA_dstats()
dStats( $argv );
EndSub

Register MsgAction("!stats",MA_stats);
Sub MA_stats()
stats( $argv );
EndSub

Register MsgAction("!nearqual",MA_nearqual);
Sub MA_nearqual()
nearQual( $argv );
EndSub

Register MsgAction("!near",MA_near);
Sub MA_near()
near( $argv );
EndSub

Register MsgAction("!topqual",MA_topqual);
Sub MA_topqual()
topQual( $argv );
EndSub

Register MsgAction("!top",MA_top);
Sub MA_top()
top( $argv );
EndSub

Register MsgAction("!drf",MA_drf);
Sub MA_drf()
drf( $argv );
EndSub

Register MsgAction("!distance",MA_distance);
Sub MA_distance()
privMsg("Distance done on " . $Car . "/" . $ShortTrackName . " = " . $Dist . ", session = " . $SessDist );
EndSub

Register MsgAction("!laps",MA_laps);
Sub MA_laps()
privMsg( "Laps done on " . $Car . "/" . $ShortTrackName ." = " . $Laps . ", session = " . $SessLaps );
EndSub

Register MsgAction("!pit",MA_pit);
Sub MA_pit()
privMsg( "Time in pitting " . $TotalPitTime );
EndSub

Register MsgAction("!track",MA_track);
Sub MA_track()
privMsg( "Track in use :" . $ShortTrackName . " = " . $LongTrackName );
EndSub

Register MsgAction("!time",MA_time);
Sub MA_time()
privMsg( "Server time clock reference : " . $LongTime );
EndSub

Register MsgAction("!help",MA_help);
Sub MA_help()
openPrivButton( "help",25,28,150,10,5,-1,0,"^2Commands list" );
openPrivButton( "help2",25,38,150,6,5,-1,96,"^2General commands"
. "&^3!top ^8[table offset] [3-letter car name] ['filter' pattern]"
. "&^3!drf ^8[table offset] [3-letter car name] ['filter' pattern]"
. "&^3!stats ^8[playername pattern]"
. "&^3!dstats ^8[playername pattern]"
. "&^3!near ^8Gap with 14 pilots near you on the ranking"
. "&^3!spb ^8Split times and TPB (Theoretical PB)"
. "&^3!razspb ^8Start new spb session (eg when changing car)"
. "&^3!track ^8Name of actual track"
. "&^3!time ^8Server time (to leagues mettings)"
. "&^3!ver ^8Version of LFSLapper"
. "&"
. "&^2Special league commands"
. "&^3!topqual ^8Rank to pilots specified on *.flt file"
. "&^3!statsqual ^8Actual Position on prequalify session"
. "&"
. "&^2New functions"
. "&^3!laps ^8Total laps number + session laps number"
. "&^3!hand ^8Handicap by pilot ordered by league-host admin"
. "&^3!pit ^8Total pit stop time"
. "&^3Shft+i ^8Configure your display messages" );
openPrivButton( "close",90,145,20,10,8,-1,32,Ok,MA_closeHelp );
EndSub

Sub MA_closeHelp()
closePrivButton("help&help2&close");
EndSub

#####################################
#Action on teleport to pit (Shift+P)#
#####################################

/*
Event EnterPitAction()
privMsg( $Nickname . "^8 teleported to pits!" );
EndEvent
*/

# Actions to execute when player spectates or disconnects (leaves race).

/*
Event LeaveRaceAction()
privMsg( $Nickname . "^8 left the race!";
EndEvent
*/

###############################
#Action a player flooding chat#
###############################

Event FloodAction()
privMsg( $Nickname . "^3 kicked for flooding" );
cmdLFS( "/kick " . $Username );
EndEvent

$MaxFloodLines = 4; # Maximum number of consecutive lines allowed

$MaxFloodLinesTime = 5000; # Maximum time between two consecutive lines in milliseconds to count as flooding

######################
#Action on race start#
######################

Event RaceStartAction()
cmdLFS( "/rcm ^3Please, brake in time!" );
cmdLFS( "/rcm_all" );
EndEvent

#########################
#Action to do on session#
#########################

/*
$MaxSessionLaps = 2;

Event OnMaxSessionLaps()
privMsg( "Max session laps reacheds" );
EndEvent
*/

###############################
#Options on spinning detection#
###############################

$MinAngleVelocity = 250; # Minimum angle velocity to trigger action. Possible values: 0 - 720

# Action to execute when angle velocity is higher than MinAngleVelocity.

/*
Event
cmdLFS( "/spec " . $Nickname );
cmdLFS( "/msg " . $Nickname . " ^3 removed from track for wrecking" );
EndEvent
*/

Event AngleVelocityAction()
cmdLFS( "/msg ^1Danger! ^8" . $Nickname . " ^2lost control!" );
EndEvent

$MaxNbInStunt = 20; #MaxNbInStunt is max time (in 100 ms) allowed in stunt mode before MaxNbInStuntAction is executed. If -1 No MaxNbInStuntAction are activated

Event MaxNbInStuntAction()
cmdLFS( "/spec " . $Nickname );
EndEvent

#################################
#Actions when player is too slow#
#################################

#$MaxAllowedLapTime1 = 100; # % Max allowed time to complete a lap relative to MaxLapTime in trackInfo.cfg

/*
Event OnMaxAllowedLapTime1()
privMsg( "you are too slow! Max : " . $MaxAllowedLapTime1 );
privMsg( "kick on " . $MaxAllowedLapTime2 );
EndEvent
*/

#$MaxAllowedLapTime2 = 150; # % Max allowed time to complete a lap relative to MaxLapTime in trackInfo.cfg

/*
Event OnMaxAllowedLapTime2()
privMsg( "You are very slow, spectated!" );
cmdLFS( "/msg " . $Nickname . " is too slow, spectated!" );
cmdLFS( "/spec " . $Username );
EndEvent
*/

##################################
#Options for idle player on track#
##################################

#$IdleExclude = "Lagamel,Gai-Luron"; # Usernames excluded for idle check

$OnIdleTimeout1 = 20; # Idle timeout for OnIdleAction1 in seconds

Event OnIdleAction1()
privMsg( "^3You are idle and will be spectated in 10 seconds" );
EndEvent

$OnIdleTimeout2 = 30; # Idle timeout for OnIdleAction2 in seconds

Event OnIdleAction2()
cmdLFS( "/spec " . $Nickname );
privMsg( "^3You are spectated for non-activity" );
EndEvent

##################
#Drifting options#
##################
# This is the filepath for a file containing the collected data.
# This file will be created if it doesnt exist yet.
# You must ensure read/write access to this path.
#-------------------------------------------------------------------

$DriftDatabase = "./DriftPB.txt";

# Actions to do on new personal best drift lap.

/*
Event DriftPBAction()
cmdLFS( "/rcm " . $Nickname . "^3 made new PB: ^7" . $DriftScore . " ^3pts!" );
cmdLFS( "/rcm_all" );
EndEvent

Event DriftPBAction()
cmdLFS( "/msg " . $Nickname . "^3 made new PB: ^7" . $DriftScore . " ^3pts!" );
EndEvent
*/

# Actions to do to when total lap drift score is higher or equal to MinimumDriftScore.

/*
Event DriftLapAction()
cmdLFS("/msg " . $Nickname . " ^3drifted to ^7" . $DriftScore . " ^3pts" );
EndEvent
*/

# Message to get on end of each drift.
# Possible variables to use:

/*
Event OnDriftScore()
privMsg( "Score: ^7" . $DriftScore . " ^3" . $LastDriftScore );
EndEvent
*/

$GoodDriftScore = 4000; # Value to be reached to execute action on good drift score

/*
Event GoodDriftAction()
privMsg( $Nickname . " ^3made excellent drift: ^7" . $LastDriftScore ." ^3pts" );
EndEvent
/*

$MinimumDriftScore = 10; # Minimum drift score required

# Actions to do at end of lap if MinimumDriftScore is not achieved.

/*
Event DriftTooLowAction()
privMsg( $Nickname . "^3 disqualified" );
cmdLFS( "/spec " . $Nickname };
EndEvent
/*

$MinimumDriftSpeed = 50; # Minimum speed in km/h to maintain. Driving below that speed will reset score
$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

################################
#Options for hotlapping options#
################################

$Database = "./PB.txt"; # This is the filepath of a file containing the collected data
# This file will be created if it doesnt exist yet
# You must ensure read/write access to this path

# Action to do on new personal best lap.
# PBQualAction for the racer who make qualif ( in QualUser )
# PBAction the other racer

/*
Event PBAction()
cmdLFS( "New PB by " . $Nickname . "^8 (" . $Car . "): " . $LapTime;
EndEvent
*/

Event PBAction()
cmdLFS("/msg New PB by " . $Nickname . "^8 (" . $Car . "): " . $LapTime );
cmdLFS("/msg Friendly rank : " . $Posabs );
cmdLFS("/msg Session laps done = " . $SessLaps );
cmdLFS("/msg Total laps done (server) = " . $Laps );
cmdLFS("/msg Average speed: " . $AvgSpeed . " " . $UnitSpeed );
 &n<
  • 0

#21 Пробегавший мимо Alien123...

Пробегавший мимо Alien123...
  • ____

Отправлено 15 Декабрь 2008 - 15:44

Продолжение...

################################
#Options for hotlapping options#
################################

$Database = "./PB.txt";	# This is the filepath of a file containing the collected data
			# This file will be created if it doesnt exist yet
			# You must ensure read/write access to this path

# Action to do on new personal best lap.
# PBQualAction for the racer who make qualif ( in QualUser )
# PBAction the other racer

/*
Event PBAction()
	cmdLFS( "New PB by " . $Nickname . "^8 (" . $Car . "): " . $LapTime;
EndEvent
*/

Event PBAction()
	cmdLFS("/msg New PB by " . $Nickname . "^8 (" . $Car . "): " . $LapTime );
	cmdLFS("/msg Friendly rank : " . $Posabs );
	cmdLFS("/msg Session laps done = " . $SessLaps );
	cmdLFS("/msg Total laps done (server) = " . $Laps );
	cmdLFS("/msg Average speed: " . $AvgSpeed . " " . $UnitSpeed );
	cmdLFS("/rcm Friendly " . $Car . " rank: ^7" .  $Posabs );
	cmdLFS("/rcm_ply " . $Username );
EndEvent

Event PBQualAction()
	cmdLFS("/msg League - New QT by " . $Nickname . "^8:" . $LapTime );
	cmdLFS("/msg Friendly rank (all visitors): ^7" . $Posabs );
	cmdLFS("/msg ^2Qualify pos.: " . $Posqual );
	cmdLFS("/msg ^6Actual Pool: " . $Groupqual );
	cmdLFS("/msg Average speed: " . $AvgSpeed . " " . $UnitSpeed );
	cmdLFS("/rcm " . $Nickname . " ^2Pos:" . $Posqual . " - Pool:" . $Groupqual );
	cmdLFS("/rcm_All");
EndEvent

##########################
#Options for acceleration#
##########################

$AccelerationStartSpeed = 1; # At which speed to start measuring time. In km/h
$AccelerationEndSpeed = 100; # At which speed to stop measuring time. In km/h

$AccelerationStartSpeedMph = 1; # At which speed to start measuring time. In Mph
$AccelerationEndSpeedMph = 60; # At which speed to stop measuring time. In Mph

$AccelerationPrivateMaxTime = 10; # Maximum acceleration time in seconds to show message

#Message to show to players.
#Possible variables to use:
#{AccelerationStartSpeed} - Starting speed
#{AccelerationEndSpeed} - Ending speed
#{AccelerationTime} - Acceleration time achieved from start to end speed
#{UnitSpeed} Unit of the Speed of the player connected

Event OnAcceleration()
	privMsg( "^8Accelerated in ^3" . $AccelerationTime . "^8 seconds to " . $AccelerationEndSpeed . " " . $UnitSpeed ."!" );
EndEvent

######################
#Actions for pit stop#
######################
#Local variable tou can use
#$Work - Work on pit (only for OnBeginPit)
#-------------------------------------------------------------------

Event OnBeginPit()
	cmdLFS( "/msg " . $Nickname . "^8 makes a pit stop" );
	privMsg( "Pit begin! Work:" . $Work );
EndEvent

Event OnEndPit()
	cmdLFS( "/msg " . $Nickname . "^8 left pits in " . $PitTime );
	privMsg( "Pit stop finished in " . $PitTime ." - Total Pit: " . $TotalPitTime );
EndEvent

######################
#Actions on penalties#
######################
#Possible variables to use:
#
#OnFastDriveOnPitL1 = Actions on 30 Sec Penalty or drive-through
#OnFastDriveOnPitL2 = Actions on 45 Sec Penalty or Stop&Go
#MaxFastDriveOnPit = Max Fast Drive on Pit allowed per race
#OnMaxFastDriveOnPit = Actions on Max Fast Drive on Pit allowed
#OnFalseStartL1 = 30 Sec Penalty or drive-through
#OnFalseStartL2 = 45 Sec Penalty or Stop&Go
#
#Local Variable can be used:
#
#{RemainFDIP} = Remain count for fast drive in pit
#-------------------------------------------------------------------

Event OnFastDriveOnPitL1()
	cmdLFS( "/msg " . $Nickname . "^1 Warning for fast driving in pit" );
	privMsg( "^1WARNING-KICK POSSIBLE" );
EndEvent

Event OnFastDriveOnPitL2()
	cmdLFS( "/msg " . $Nickname . "^1 Spectated for fast driving in pit" );
	privMsg( "^1KICK IN " . $RemainFDIP . " TRY" );
	cmdLFS( "/spec " . $Username );
EndEvent

Event OnMaxFastDriveOnPit()
	cmdLFS( "/msg " . $Nickname . "^1 kicked for fast driving in pit" );
	cmdLFS( "/rcm ^1YOU ARE KICKED" );
	cmdLFS( "/rcm_ply " . $Username );
	cmdLFS( "/kick " . $Username );
EndEvent
$MaxFastDriveOnPit = 2;

Event OnFalseStartL1()
EndEvent

Event OnFalseStartL2()
EndEvent

####################
#Overriding options#
####################

  • 0

#22 Пробегавший мимо repeat...

Пробегавший мимо repeat...
  • ____

Отправлено 15 Декабрь 2008 - 17:38

всё что между
/*

*/


считается комментариями, т.е. не работает. убери в дрифт секции их.
  • 0

#23 Пробегавший мимо SPARDS...

Пробегавший мимо SPARDS...
  • ____

Отправлено 30 Январь 2009 - 22:23

фаервола нету... а вот второе.. ээм... это в конфиге лаппера должно быть прописано?!

ыы.. а вообще кто нить может кинуть лаппер ?! а то я чувствую что это лаппер у мну такой... скачал где то у чёрта на куличках... походу самопальный какой то икривой... киньте плз ! т.к. на сайте я не нашёл

Хм.. кажись сделал ... на сервер лаппер заходит , но тут же пишет New quest timed out и кидает... ЧТО ЗА МАРАЗМ ?!

как решили проблему? у мня никак не получается заставить его конектится
  • 0

#24 Пробегавший мимо SPARDS...

Пробегавший мимо SPARDS...
  • ____

Отправлено 01 Февраль 2009 - 20:53

Помогите законектить Лапер ((... все делаю верно инсим по умолчанию 29999, йп прописан... но не конектится...
  • 0

#25 Пробегавший мимо MuXaHu3M...

Пробегавший мимо MuXaHu3M...
  • ____

Отправлено 13 Март 2009 - 22:01

скинь конфиг строки setup.cfg где именно про инсим
скорее всего дело в двух // типа он опционально
  • 0

#26 Пробегавший мимо Куніцкі Арцём...

Пробегавший мимо Куніцкі Арцём...
  • ____

Отправлено 30 Май 2009 - 23:45

О спецы, подскажите как в airio сделать авторотацию трасс\машин.
Чойто нашёл на оффоруме, конфиг подправил, !rld на сервере, и ничего не происходит о_О.

# Track rotation scheme happening on every display of race end screen.
# Number of races after which to rotate tracks by ending race - integer
# "track[|laps/-mins[|car+car+]] > track..." in the scheme - string
# Instead of laps, minutes can be set as a negative value, the race is
# then for specified number of minutes plus one lap for the leader.
# Track name may be followed by underscore and layout name.
RotateRaces=1
RotateTracks=WE1R|3|UFR+XFR>Bl1R|4|UFR+XFR>SO1R|6|UFR+XFR>KY2R|4|UFR+XFR>FE2R|4|UFR+XFR>AS2R|4|UFR+XFR
  • 0

#27 cobalt

cobalt

    Заводской пилот

  • Рейсеры
  • PipPipPipPipPip
  • 351 сообщений
  • Откуда:Москва
  • Контроллер:Logitech G25
  • LFS-статус:S2 Licensed
  • LFS account:Cobalt_RUS

Отправлено 31 Май 2009 - 17:09

# Track rotation scheme happening on every display of race end screen.

Если текущий трек из списка ротации, то смена произойдет на следующую трассу
после окончания гонки. За которое проголосовать нужно или через 120 сек (по дефолту) вызовет тракер.
И выполни команду !track - она покажет, какой следующий трек будет.

з.ы. а что не создал отдельную тему? :D
  • 0


#28 Пробегавший мимо Куніцкі Арцём...

Пробегавший мимо Куніцкі Арцём...
  • ____

Отправлено 31 Май 2009 - 23:41

Спасибо работаит :-)
И ещё. Можно ли поставить чтобы меняло трек с различными погодными условиями ?
  • 0

#29 cobalt

cobalt

    Заводской пилот

  • Рейсеры
  • PipPipPipPipPip
  • 351 сообщений
  • Откуда:Москва
  • Контроллер:Logitech G25
  • LFS-статус:S2 Licensed
  • LFS account:Cobalt_RUS

Отправлено 01 Июнь 2009 - 01:08

Можно ли поставить чтобы меняло трек с различными погодными условиями ?

В текущей версии такого нет.
  • 0


#30 Пробегавший мимо artem.mc...

Пробегавший мимо artem.mc...
  • ____

Отправлено 01 Июнь 2009 - 22:44

А кто знает как зделать мониторинг в блок на сайт (сервер LFS работает под Линухом)?
  • 0




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 скрытых


Тематические ресурсы-партнеры: