スクリプトとは
「スクリプト」は、ある動作命令をあらかじめ作成しておいて必要な時に呼び出して実行する簡易プログラム。LFSのver.Vからスクリプト機能が備わっており、簡単なロジックまたはアイデア次第で便利な使い方ができます。「プログラム」と言っても数行程度で特別な知識も必要なく、使用するのはWindows付属のメモ帳だけで作成できます。
スクリプトの利点
スクリプトはCtrl+ F1〜F12、Alt+ F1〜F12に登録してコントローラのボタンにアサインすることができます。すなわち、通常割り当てできない機能をハンコンやパッドのボタンに割り当てられるようになり、JoytoKeyやLogicool
Profilerなどを使用せずLFSだけでトグルやサークル機能など高度なキーアサインが可能になります。
また、車種別にFFBの強度を設定したり
シフトタイプ別にボタンアサインしておけば
、車種を乗り換えるだけで自動で切り替えることができます。
ハンコン・パッドなど複数のデバイスを併用している場合も、コントローラ毎の割り当てをスクリプトで作成して実行すれば毎回アサインし直さなくとも簡単に切り替えることができます。
スクリプトを置く場所
\data\script
フォルダーの中に置き
ます。スクリプトはテキストファイルで、拡張子は「.lfs」
中を覗くと初めからスクリプトが入っています。
デフォルトのスクリプト
- autoexec.lfs
(LFSが起動したら自動実行)
- 車種名.lfs (車種を選択ごとに自動実行)
|
次の3つは「
車種名.lfs」のスクリプトから呼び出されるスクリプト。
- road.lfs
(H
パターン
シフト車が選択されれば実行)
- sequential.lfs
(シーケンシャルシフト車が選択されれば実行)
- paddle.lfs
(パドル
シフト車が選択されれば実行)
|
これらスクリプトはデフォルトの状態でも人知れず実行されていることになります。
しかし、どのスクリプトの中を見ても何も書かれていないので、当然何も実行されていません。
| autoexec.lfs |
// This script is run when LFS
reaches the main entry screen
// You can use it for initialisations, running scripts, etc.
|
(スクリプト内の「//」は注釈の意味で、その行は無視される。)
スクリプトの実行方法
チャット入力から、
「//」はスクリプト内の注釈と同じ記述ですが、こちらは「/run」の省略形です。
スクリプト名の
拡張子「.lfs」は必要ありません。

▲
スクリプト「GTFP_config.lfs」の実行例
また、「/run
スクリプト名 」を、
| F1〜F8、Ctrl+
F1〜F12、Alt + F1〜F12
の定型文に登録 |
で簡単に実行できます。

▲F6に
スクリプト「GTFP_config.lfs」を設定
・自動実行
「autoexec.lfs」と「
車種名.lfs」だけは特別で、自動で実行されます。
「autoexec.lfs」はLFSが起動した時、「
車種名.lfs」は車種を選択すると自動で実行されます。
road.lfs、sequential.lfs、paddle.lfs は、車種名.lfsのスクリプトを見るとその中から呼び出されているのが分かります。
| XFG.lfs |
//
This script is run when you select the XFG
run road
|
(
/runではなく「run」になっていますが、
スクリプトファイル内のコマンドは「/」が省略可能のようです。)
スクリプトコマンド
コマンドの記述方法は、
doc
フォルダー内の「Commands_Japanese.txt」(244行目)に、スクリプトで使えるコマンド群が書かれています。
「スクリプトとコントローラボタンのためのコマンド:」
スクリプト・外部プログラムを実行するコマンド
/run
X
:スクリプトXを実行 (data\script\X.lfs)
/hrun
X
:ホスト上のスクリプトXを実行 (adminのみ有効)
/exec
E
C
:プログラムEを実行
(Cはコマンドライン)
/wait E
C
:execと同様の使い方。しかし、Eが終了するまでLFSはハングしています
画面表示の
コマンド
/say
[メッセージ]
-チャットのメッセージと同じです
/echo
[text]
-
ローカルスクリーンのみテキスト表示
キーボードのボタンを押すコマンド
/press
[key]
-
キープレスをシミュレート
/shift
[key]
-
SHIFT + key
/ctrl
[key]
-
CTRL + key
/alt
[key]
- ALT + key
キー
/軸/ボタンへの割り当てコマンド
/axis [axis] [function] - 例
/axis 2
throttle
/invert [0/1] [function] - 例 /invert 1
brake
/button [button] [function] - 例 /button 5 shift_up
/key [key]
[function] - 例 /key Q
handbrake
定型文の設定コマンド
/ctrlf
[num]
[text] - Ctrl + F1~12の定型文を変更 例 "ctrlf 1
hello"
/altf [num]
[text] - Alt + F1~12の定型文を変更 例 "altf 1 bye"
その他
/fov
[度数] - 視野
/ff
[0-200]
- フォースフィードバックの強さ
/head_tilt
[度数] - 1g head tilt
/lateral_shift
[m]
- 1g lateral shift
/forward_shift
[m]
- 1g forward shift
/vertical_shift
[m]
-
1g vertical shift
/hidetext
[yes/no]
- テキストの表示/非表示 (SHIFT
+ F)
/autoclutch
[0-1]
-
オートクラッチの off / on
/shifter
[auto/sequential/shifter]
- シフトタイプ
/wheel_turn
[度数] -
コントローラのturn
angleの指定
/view
[fol/heli/cam/driver/custom]
- ビューの変更(追尾/ヘリ/TV/ドライバー/カスタム) |
(スクリプトファイル内では、コマンドの「/」は省略可能のようです。)
各コマンドで使う値
/button と /key コマンドでつかう値
steer_left, steer_right, steer_fast, steer_slow
throttle, brake, shift_up, shift_down, clutch, handbrake
left_view, right_view, rear_view, horn, flash, reset
pit_speed, tc_disable, ignition, zoom_in, zoom_out
reverse, gear_1 - gear_7, ctrl_f1 - ctrl_f12 ,alt_f1 - f12
/axis と /invert コマンドでつかう値
steer, combined, throttle, brake
lookh, lookp, lookr
clutch, handbrake, shiftx, shifty
ボタン・軸の割り当て解除 :
ボタン・軸への割り当てを解除するためには、-1を指定して下さい。
例1 : /button -1 shift_up <- シフトアップボタンの割り当てを解除
例2 : /axis -1 clutch <-
クラッチ軸の割り当てを解除
キーコマンドのためのパラメータ (press / ctrl / shift)
:
文字 A 〜 Z
数字 0 〜 9
F1 〜 F12
up, down, left, right
space, enter, esc, tab
less(<), more(>) |
ややこしそうですが、すべて覚える必要は毛頭ありません。
ローカルスクリーンへのテキスト表示や、
オートクラッチのオン・オフなどスクリプトならではのコマンドもあります。
「/exec」コマンドは他のWindowsアプリケーション、例えばボイスチャットソフトやLFSのアドオンツールなど任意のプログラムを起動させることができます。autoexec.lfs(LFSの起動時に自動実行)に記述しておけばLFSと一緒に起動します。
当然、autoexec.lfsで
自分自身のLFS.exeを/execで指定すれば無限にLFSが起動してしまいます…。

▲
「/exec」コマンドにrFactor.exeを指定…何でも指定できます。
注)プログラムへのパスはフルパスで指定で、"Program
Files"などフォルダ名・ファイル名に空白が入ると実行できない。
LFS
起動時に一緒に「メモ帳」を起動させるスクリプト。(実用性はありません…)
| autoexec.lfs (クリックでスクリプトをDLできます。) |
//
This script is run when LFS
reaches the main entry screen
// You can use it for initialisations, running scripts, etc.
/exec
C:\WINDOWS\system32\notepad.exe
|
スクリプトの作成
ウインカー・ハザードをトグル式にする。
その前に簡単なスクリプトをいくつか作成してみましょう。
チャット・メッセージのスクリプト
| aaa.lfs |
//script test
/say Hi
/say
Hello
/echo
Bye
|
上記のスクリプトをダ
ウンロードして\scriptフォルダーに入れて、LFSのチャット欄から、
と入力して下さい。(「/」キーを押すと自動でチャットBOXが開きます。)
メッセージ部分にHi,Hello,Byeと表示されたはずです。

スクリプトのコマンドは上から順番に実行されます。(Hi
→ Hello
→ Bye)
/sayコマンドはチャットメッセージと同じです。スクリプトを使うと一度に複数のコマンドを実行できます。
/echo
コマンドは自分の画面にしか表示されません。マルチで相手側には「Bye」は送信されません。
これはローカルメッセージでスクリプトを実行した「印」のような使い方ができます。
スクリプトの一発起動(ファンクションキーから)
頻繁に使うスクリプトは定型文から実行します。
オプション−ゲーム、オプション−コントロールからF1〜F8、またはCtrl+F1~12、Alt+F1~12の空いている場所に、
と、スクリプトを実行する定型文を設定して下さい。ボタン一つでスクリプトが実行できます。
スクリプトのコマンドにも定型文を設定するコマンドがあります。
/ctrlf
[num]
[text] - Ctrl + F1~12の定型文を変更 例 "ctrlf 1
hello"
/altf [num]
[text] - Alt + F1~12の定型文を変更 例 "altf 1 bye" |
(F1〜F8
に設定するコマンドはありません)
これをautoexec.lfsの中に記述すればオプションを介さなくても設定できます。 |
|
スクリプトの一発起動2(コントローラのボタンから)
Ctrl+F1~12、Alt+F1~12は
コントローラのボタンにアサインすることができます。(F1〜F8はできない)
コントローラのボタンから呼び出したいスクリプトはここに設定します。
スクリプトの
/button
コマンドでもボタンに
定型文を
割り当てすることができます。
/button
[button] [function]
|
(F1〜F8
に設定するfunctionはありません)
例)
/button 5 ctrl_f1
ボタン5にCtrl+F1をアサイン
/button
12 alt_f5
ボタン12にAlt+F5をアサイン
(ボタン番号はLFSのオプション−コントロールで確認して下さい。)
これをautoexec.lfsの中に記述すればオプションを介さなくても設定できます。 |
|
車種ごとにフォースフィードバックの強さを設定するスクリプト
車種ごと、またはシフトタイプごとに何かを設定させたい場合はデフォルトで入っているスクリプトに記述します。
車種名.lfs、またはroad.lfs、sequential.lfs、paddle.lfs です。
XRT.lfs
|
// This script is run when you
select the XRT
run road
/ff 85
/echo
FFB 85%
|
上の例では、XRTに乗り換えると/ffコマンドでフォースフィードバックの強さを85%にして、/echoコマンドで”FFB 85%”と画面にローカル表示します。(コマンドの先頭文字「/」は省略可能です。)
「run
road」に注目して下さい。「/run」はスクリプトを実行するコマンドです。
このスクリプトから別のスクリプト「road
.lfs」を実行しています。
「run road」はすべてのHパターン車の
車種名.lfs
スクリプトに記述されています。
もしシフトタイプごとに何かを設定したい場合は、road.lfs、sequential.lfs、paddle.lfs に記述します。
paddle.lfs
|
// This script may be useful for
assigning controller buttons and
// other settings when you select a car with a paddle shifter
/button
12 shift_up
/button
13 shift_down
/button
7 left_view
/button
8 right_view
/button
9 rear_view
/autoclutch 1
/shifter sequential
|
road.lfs
|
// This script may be useful for
assigning controller buttons and
// other settings when you select a car with a standard gear stick
/button
1 reverse
/button
2 gear_1
/button
3 gear_2
/button
4 gear_3
/button
5 gear_4
/button
6 gear_5
/button
7 gear_6
/autoclutch 0
/shifter shifter
|
では、ウインカー・ハザードをトグル式にするサンプルスクリプトを紹介します。
Sample
Script 1 (参考:LFS Wiki)
ウインカー・ハザードをトグル式にするスクリプト ダウンロード Indicate_toggle.zip |
スクリプトの実行方法
・コントローラのボタン16・17・18を押す。(または、Ctrl+F1、Ctrl+F2、Ctrl+F3)
|
(赤い文字はスクリプトの解説で、ファイルには記述されていません。)
| autoexec.lfs |
//
This script is run when LFS reaches the main entry screen
// You can use it for initialisations, running scripts, etc.
/button 16 ctrl_f1
ボタン16番にCtrl+F1の定型文を割り当て(左ウィンカー)
/button 17 ctrl_f2 ボタン17番にCtrl+F2の定型文を割り当て
(右ウィンカー)
/button
18 ctrl_f3 ボタン18番にCtrl+F3の定型文を割り当て
(ハザードランプ)
上の3行は
LFSのオプション−コントロールからの手動で
割り当てるのと同じです。
/ctrlf 1 /run indicateLeft Ctrl+F1の定型文に
"/run indicateLeft"と設定
/ctrlf
2 /run indicateRight Ctrl+F2の定型文に"/run
indicateRight"と設定
/ctrlf
3 /run indicateHazards Ctrl+F3の定型文に
"/run indicateHazards"と設定
この3行も
LFSのオプション−ゲームから手動で設定可能です。
上記の6項目を手動で設定すれば、このautoexec.lfsは必要ありません
。しかし面倒なので、LFS起動時に設定させておきます。
|
|
| indicateLeft.lfs |
/press 7
/ctrlf 1 /run indicateStop
/ctrlf 2 /run indicateRight
/ctrlf 3 /run indicateHazards
/echo ^3<<<
|
|
| indicateRight.lfs |
/press 8
/ctrlf 1 /run indicateLeft
/ctrlf 2 /run indicateStop
/ctrlf 3 /run indicateHazards
/echo ^3>>>
|
|
| indicateHazards.lfs |
/press 9
/ctrlf 1 /run indicateLeft
/ctrlf 2 /run indicateRight
/ctrlf 3 /run indicateStop
/echo ^3<< >>
|
|
| indicateStop.lfs |
/press 0
/ctrlf 1 /run indicateLeft
/ctrlf 2 /run indicateRight
/ctrlf 3 /run indicateHazards
/echo ^8Off
|
|
【解説】
LFSはウィンカー・ハザードを点灯させられますが、それぞれキーボードの7(左)、8(右)、9(ハザード)、0(消灯)になっていて4つのボタンが必要になります。これを一度押せば点灯、もう一度押せば消灯のトグル式にすれば3つのボタンで事足ります。
また、画面に<<<などの表示が出てどのランプが点灯したか認識しやすくなります。
スクリプトの実行をコントローラのボタンに直接割り当てることはできないので、一旦Ctrl+F1~F12や、Alt+F1~F12に定型文として割り当てています。autoexec.lfsで
Ctrl+F1〜F3に、それをコントローラのボタンの16〜18番に割り当てています。
ボタン16を押すとindicateLeft.lfs
を実行し、
ボタン17を押すとindicateRight.lfsを実行します。
ボタン18はindicateHazards.lfsです。
順番に見ていくと、
autoexec.lfs
の設定通り、
ボタン16(
左ウインカー)
を押すと「indicateLeft.lfs」が実行されます。
indicateLeft.lfs
/press 7
/ctrlf 1 /run indicateStop
/ctrlf 2 /run indicateRight
/ctrlf 3 /run indicateHazards
/echo ^3<<<
|
1行目の「/press 7」で
7キーを押して
左ウインカーを点灯させていますが、次の
3行目「/ctrlf 1 /run indicateStop」で、今押したCtrl+F1(ボタン16)の定型文の設定を「/run indicateLeft」から「/run indicateStop」に変更しています。
「indicateStop」は0キーを押して消灯させるスクリプトです。
ということは、もう一度同じボタン16を押すとindicateStop
が実行されライトが消灯されます。
今度は「indicateStop.lfs」を見てみると、3行目の「/ctrlf 1 /run indicateLeft」でCtrl+F1(ボタン16)の定型文の設定を
元に戻しています。これでまた同じボタン16を押すと左ウィンカーが点灯します。これの繰り返しでトグル状態になります。
最後に/echoでウィンカーの状態をローカルメッセージ表示させています。^3,^8は文字色の指定です。(^0から^8まで)
サンプルではコントローラのボタン16〜18番に設定しています。
変更する場合は、autoexec.lfs
の4〜6
行目で任意のボタンに変更します。
また、Ctrl+F1、Ctrl
+F2、Ctrl+
F3の定型文も使用しているので差し障りがあれば変更します。(全5ファイル)
例)
Ctrl+F1からCtrl+F8
に変更:「/button
16 ctrl_f8」と、autoexec以外のファイルの
「/ctrlf 1 …」を「/ctrlf
8 …」
Ctrl
+F2からAlt
+F11 に変更:「/button
16 alt_f11」と、autoexec以外のファイルの「/ctrlf 2 …」を「/altf 11 …」 |
Sample
Script 2
ウインカー・ハザードをサークル式にするスクリプト ダウンロード Indicate_circle.zip |
スクリプトの実行方法
・コントローラのボタン16を押す。(または、Ctrl+F1)
|
| autoexec.lfs |
//
This script is run when LFS reaches the main entry screen
// You can use it for initialisations, running scripts, etc.
/button 16 ctrl_f1 ボタン16番にCtrl+F1の定型文を割り当て
/ctrlf 1 /run indicateLeft
Ctrl+F1の定型文に"/run
indicateLeft"と設定
|
|
| indicateLeft.lfs |
/press 7
/ctrlf 1 /run indicateRight
/echo ^3<<<
|
|
| indicateRight.lfs |
/press 8
/ctrlf 1 /run indicateHazards
/echo ^3>>>
|
|
| indicateHazards.lfs |
/press 9
/ctrlf 1 /run indicateStop
/echo ^3<< >>
|
|
| indicateStop.lfs |
/press 0
/ctrlf 1 /run indicateLeft
/echo ^8Off
|
|
【解説】
このスクリプトはもっとボタンを節約します。使用するボタンはたった1つだけです。
ボタンを押すたびに左ウインカー・右ウインカー・ハザード・消灯・左ウインカー・・・と切り替わります。
/echo
でウィンカーの状態もローカルメッセージ表示しています。
サンプルではコントローラのボタン16番に設定しています。
変更する場合は、autoexec.lfs
の
4行目で任意のボタンに
変更します。
また、Ctrl+F1
の定型文も使用しているので差し障りがあれば変更する。(全5ファイル)
例)
Ctrl+F1からCtrl+F18
に変更:「/button
16 ctrl_f8」と、autoexec以外のファイルの
「/ctrlf 1 …」を「/ctrlf
8 …」
Ctrl
+F1からAlt
+F12に
変更:「/button
16 alt_f12」と、autoexec以外のファイルの「/ctrlf 1 …」を「/altf 12 …」 |
Sample
Script 3 (参考:LFS Wiki)
F9−F12のHUD表示をサークル式にするスクリプト ダウンロード HUD_circle.zip |
スクリプトの実行方法
・コントローラのボタン17を押す。(または、Ctrl+F2)
|
| autoexec.lfs |
//
This script is run when LFS reaches the main entry screen
// You can use it for initialisations, running scripts, etc.
/button 17 ctrl_f2 ボタン17番にCtrl+F2の定型文を割り当て
/ctrlf 2 /run viewF9
Ctrl+F2の定型文に"/run viewF9"と設定
|
|
| viewF9.lfs |
/press F9
/ctrlf 2 /run viewF10
|
|
| viewF10.lfs |
/press F10
/ctrlf 2 /run viewF11
|
|
| viewF11.lfs |
/press F11
/ctrlf 2 /run viewF12
|
|
| viewF12.lfs |
/press F12
/ctrlf 2 /run viewOff |
|
| viewOff.lfs |
/press F12
/ctrlf 2 /run viewF9
|
|
|
【解説】
これもサンプル2と同じ要領で、1つのボタンでF9-F12のHUD表示をサークル式に切り替えます。
F_Off.lfsでもう一度F12キーを押してHUDを非表示にしています。

タイヤ温度(F9)と、サスダメージ(F10)だけでいい場合は、
viewF10.lfsの「/ctrlf 2 /run viewF11」を「/ctrlf 2 /run viewOff」に、
viewOff.lfsの「/press F12」を「/press F10
」にすれば、F9〜F10でサークルになります。
Sample
Script 4
F12のダメージリペアのYes/Noを1発で切り替えるスクリプト ダウンロード Repair.zip |
スクリプトの実行方法
・コントローラのボタン18を押す。(または、Ctrl+F3)
|
| autoexec.lfs |
//
This script is run when LFS reaches the main entry screen
// You can use it for initialisations, running scripts, etc.
/button 18 ctrl_f3
ボタン18番にCtrl+F3の定型文を割り当て
/ctrlf 3 /run RepairToggle
Ctrl+F3の定型文に"/run
RepairToggle"と設定
|
|
| RepairToggle.lfs |
/press F12
/press down
/press down
/press left
/press F12
/echo Change Repair
|
|
|
【解説】
ピットイン義務レースでピットイン時にダメージリペアをするつもりはなかったが、思わぬクラッシュでリペアを余儀なくされた場合、走りながらF12キーを押してカーソルで
ダメージリペアをYesにするのはちょっと至難の業です。それをボタン1つでやってしまおうというのがこのスクリプトです。

スクリプトは単純です。実際にキーボードを押すように、/pressコマンドでシミュレートすると簡単に実現できます。
/press
F12
/press down
/press down
/press left
/press F12
/echo Changed Repair |
F12を押す
カーソル下を押す
カーソル下を押す
カーソル左を押す(リペア変更)
F12を押す(HUD表示を消す)
"Changed Repair”とローカル表示 |
(このスクリプトの欠点は、もう一度F12を押さないとリペアがYesかNoか確認できない所です…。)
同じようにタイヤ交換の摩耗率、補給燃料、F11のブレーキバランスなどのライブセッティングにも応用できます。
このように
キープレスをシミュレートするコマンドを使えば、ほとんどの操作がスクリプトから行えます。
ただ、/press B
でホーンを鳴らそうとしてもスクリプトからは一瞬で押されてしまうので、音が鳴らなかったりします。
キーボードのボタンを押すコマンド
/press
[key]
-
キープレスをシミュレート
/shift
[key]
-
SHIFT + key
/ctrl
[key]
-
CTRL + key
/alt
[key]
- ALT
+ key
使えるボタン(Key)
文字 A 〜 Z
数字 0 〜 9
F1 〜 F12
up, down, left, right
space, enter, esc, tab
less(<), more(>) |
ここで紹介したスクリプト以外にも、アイデア次第で有用なスクリプトが作成できると思います。
|