Contents
ミニホスト情報
Online-Status アイコン
疑似3画面表示

 LFSのスクリプトを活用する
 サンプルスクリプト1
サンプルスクリプト2
サンプルスクリプト3
サンプルスクリプト4

■ミニホスト情報

 自分のブログ・サイトにミニホスト情報を設置する方法。

・インラインフレームを使用
<iframesrc="http://www.lfsworld.net/hoststatus/?h=ホスト名" frameborder="1" width="200" height="115"></iframe>
( frameborderは枠線、widthはヨコ幅、heightはタテ幅)
 
 
例)ホスト名:Blackwood XFG XRG
<iframesrc="http://www.lfsworld.net/hoststatus/?h= Blackwood%20XFG%20XRG" frameborder="1" width="200" height="115"></iframe>

  



 ホスト名に空白・日本語(アルファベット以外)がある場合は こちらで変換
 


  ホスト名の色変更・リンクは、ホスト名の後ろに以下を追加。
  &c=1  (黒)
  &c=2  (白)
  &c=3  (灰色)
  &c=4  (青)
  &hostlink (Join2LFSへのリンク)

■Online Status アイコン

 ・自分のブログ・サイトにオンラインアイコンを設置する方法。
    
   
<img alt="" src="http://www.lfsworld.net/isonline.ユーザーネーム.gif">
 例)ユーザーネーム:yamakawa
       <img alt="" src="http://www.lfsworld.net/isonline.yamakawa.gif">

   
 

 ・大きさを指定 
<img alt="" src=http://www.lfsworld.net/isonline.ユーザーネーム.gif  width="ヨコ幅" height="タテ幅">
例)ユーザーネーム: yamakawa ヨコ幅:600ピクセル タテ幅:126ピクセル
       <img alt="" src=http://www.lfsworld.net/isonline.yamakawa.gif width="600" height="126">

 


■疑似3画面

   
  ▲ウィンドウモードで起動して   ▲横方向に引き延ばしてある程度の比率になると、タイトル・メニューが真ん中に

 

  比率によっては3画面以上、最大の11画面にも(要View設定)
 

■LFSのスクリプトを活用する

スクリプトとは

「スクリプト」は、ある動作命令をあらかじめ作成しておいて必要な時に呼び出して実行する簡易プログラム。
LFSのver.Vからスクリプト機能が備わっており、簡単なロジックまたはアイデア次第で便利な使い方ができます。「プログラム」と言っても数行程度で特別な知識も必要なく、使用するのはWindows付属のメモ帳だけで作成できます。


スクリプトの利点

スクリプトはCtrl+ F1〜F12Alt+ 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 スクリプト名
または
// スクリプト名
「//」はスクリプト内の注釈と同じ記述ですが、こちらは「/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.lfssequential.lfspaddle.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のチャット欄から、

/run aaa
または、
// aaa

と入力して下さい。(「/」キーを押すと自動でチャットBOXが開きます。)

メッセージ部分にHi,Hello,Byeと表示されたはずです。


スクリプトのコマンドは上から順番に実行されます。(Hi → HelloBye)

/sayコマンドはチャットメッセージと同じです。スクリプトを使うと一度に複数のコマンドを実行できます。

/echo コマンドは自分の画面にしか表示されません。マルチで相手側には「Bye」は送信されません。
これはローカルメッセージでスクリプトを実行した「印」のような使い方ができます。


スクリプトの一発起動(ファンクションキーから)

頻繁に使うスクリプトは定型文から実行します。
オプション−ゲーム、オプション−コントロールからF1〜F8、またはCtrl+F1~12、Alt+F1~12の空いている場所に、


/run aaa

と、スクリプトを実行する定型文を設定して下さい。ボタン一つでスクリプトが実行できます。

スクリプトのコマンドにも定型文を設定するコマンドがあります。
/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.lfssequential.lfspaddle.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.lfssequential.lfspaddle.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.lfs4〜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(>)

ここで紹介したスクリプト以外にも、アイデア次第で有用なスクリプトが作成できると思います。

 






(C)2009 RACING JAM. All Rights Reserved.