KIND tni-controls-plugin
From TrainzOnline
KIND tni-controls-plugin is an asset type which provides an interface to a custom hardware control device, via TrainzNativeInterface. This asset type requires native code support and it's use is restricted to authorised TNI content creators only.
Contents |
KIND Hierarchy
Parent Classes
Child Classes
- none
Supported Tags
Each tni-controls-plugin asset supports the following tags:
kind "tni-controls-plugin" tni-library-name "" controllers { }
tni-library-name
- Type: string
- Desc: Specifies the filename of the plugin DLL to load (minus the platform-specific file extension). This plugin is expected find hardware controls at the OS level, and provide an interface between them and TNIControls.
controllers
- Type: controller-device-list_container
- Desc: Specifies the various controller types supported by this plugin (e.g. a RailDriver device, a joystick, or a gamepad). The specification for the controllers themselves are documented separately here.
Example Config.txt
Sample config.txt file for a tni-controls-plugin asset, with some standard tags excluded for brevity:
kuid <kuid:401543:1080> kind "tni-controls-plugin" trainz-build 4.6 username "RailDriver Plugin" tni-library-name "TNIRailDriver" category-class "YL" description "TNI plugin for RailDriver controller" controllers { raildriver { name-token "device-name-raildriver" desc-token "device-desc-raildriver" controls { reverser { name-token "control-name-reverser" type "lever" } throttle { name-token "control-name-throttle" type "lever" } etc. } } } string-table { device-name-raildriver "RailDriver Desktop Cab Controller" device-desc-raildriver "RailDriver Desktop Train Cab Controller, with prototypical levers and controls for the ultimate interface to computer-based railroading." control-name-reverser "RailDriver Reverser" control-name-throttle "RailDriver Throttle" etc. }