AJS Superscript couplers

kdsadk

New member
Hi all. Does the latest Superscript have support for ACS (Active Coupling Standard), air/ETH/mainres/MW/RCH, cables and hoses? Thanks.
 
Last edited:
Yes, but in these cases you will have to supply your own hose meshes.

Your mesh effects should have the same name as the corresponding ACS callback parameter with either '-front' or '-back' added. Look at the vacbrake effects in my Pullmans for details of how to configure.
 
Thanks for the reply. Like the vacbrake, what is the names used for the air/ETH/mainres/MW/RCH, cables and hoses along with the '-front' and '-back' names?
 
Last edited:
Whatever the ACS tag parameter is, for instance:

multiple-working would be multiple-working-front
rch would be rch-back

You can implement these, either as submeshes or as effects on the default mesh and as animations or static meshes.
 
I'm starting to understand this but, I can't get the airbrake/mainres/ETH and RCH couplers to work because I think the name before, '-front' and '-back', I'm trying to use in the submeshes and KUID table tags is not right. The airbrake/mainres I'm using is, disconnected/crossed/straight, ETH is, disconnected/connected, and RCH is, disconnected/high/low/staggered. Could you please put a list of the correct names here for these couplers in the submeshes and in the KUID table tags?
 
Last edited:
The effect and mesh-names are based on the ACSCallback messages generated by ACS. Typically these look like this:

message ACScallback, airbrake|front|none
message ACScallback, vacbrake|front|none
message ACScallback, multiworking|front|none
message ACScallback, heating|front|none
message ACScallback, rch|front|none

There are three methods supported by Superscript:

1. Animated Meshes (suitable where the coupler has only two states)
The mesh-table name is generated by the first two elements with a hyphen instead of '|'
A single mesh-table entry is required, 'coupler-front' for example.
This requires a false/true animated mesh where false is the disconnected state

2. Static Meshes (suitable for any number of states)
The mesh-table names are generated by the entire message with hyphens instead of '|'
This requires one mesh-table entry for each possible state, eg 'vacbrake-front-none', 'vacbrake-front-high', 'vacbrake-front-single'
But if 'vacbrake-front-none' doesn't need an attachment then you don't need the mesh-table container.

3. Mesh Effects (any number of states, effect must be attached to the default mesh)
I would need to go back to the code to check this.

There are literally thousands of possibilities, so to answer your question directly I would need a list of the possible ACS messages you will be receiving for each channel (or of your ACS config tables) and which method you are proposing to use. With this information I can ensure that the script is doing what it should, I can also make sure that the coupler test routines are working (these might only handle methods 1 and 2 at present)

The assets that I've issued don't use these channels so if code revisions are required I will update.
 
Thanks for the info before. The methods I'm using is animated meshes for, coupler/vacbrake and mesh effects for, airbrake/mainres and multiworking. I've got the coupler and vacbrake working but, the airbrake did not work. The airbrake did initialise with the uncoupled mesh but does not couple crossed or straight when coupling, and multiworking has the same issue, and the mainres did not work at all. Here's the ACS config table for these: mesh-table
{
default
{
mesh "wagon_test_body/wagon_test_body.im"
auto-create 1

effects
{
airbrake-front
{
kind "attachment"
att "a.couple0"
default-mesh <kuid2:101839:95:2>
}

airbrake-back
{
kind "attachment"
att "a.couple1"
default-mesh <kuid2:101839:95:2>
}

mainres-front
{
kind "attachment"
att "a.couple0"
default-mesh <kuid2:101839:94:1>
}

mainres-back
{
kind "attachment"
att "a.couple1"
default-mesh <kuid2:101839:94:1>
}

multiworking-front
{
kind "attachment"
att "a.couple0"
default-mesh <kuid2:2512:60:42>
}

multiworking-back
{
kind "attachment"
att "a.couple1"
default-mesh <kuid2:2512:60:42>
}

buffer0
{
kind "attachment"
att "a.couple0"
default-mesh <kuid2:44090:600:41>
}

buffer1
{
kind "attachment"
att "a.couple1"
default-mesh <kuid2:44090:600:41>
}
}
}

coupler-front
{
mesh "screwlink.im"
anim "screwlink.kin"
att "a.couple0"
att-parent "default"
mesh-asset <kuid2:122285:508:18>
auto-create 1
}

coupler-back
{
mesh "screwlink.im"
anim "screwlink.kin"
att "a.couple1"
att-parent "default"
mesh-asset <kuid2:122285:508:18>
auto-create 1
}

vacbrake-front
{
mesh "vaclow.im"
anim "vaclow.kin"
att "a.couple0"
att-parent "default"
mesh-asset <kuid2:122285:508:18>
auto-create 1
}

vacbrake-back
{
mesh "vaclow.im"
anim "vaclow.kin"
att "a.couple1"
att-parent "default"
mesh-asset <kuid2:122285:508:18>
auto-create 1
}

shadow
{
mesh "wagon_test_shadow/wagon_test_shadow.im"
}
}
extensions
{
heading-122285 "1"
max-permitted-speed-60850 "100kph"

active-coupling-standard-60850
{
version-major "2"
version-minor "0"

front
{
coupler "screwlinklhook"
airbrakeside "left"
airbraketype "twin"
multiple-working "blue-star"
vacbrake "single"
}

back
{
coupler "screwlinklhook"
airbrakeside "left"
airbraketype "twin"
multiple-working "blue-star"
vacbrake "single"
}
}
}
thumbnails
{
}
bogeys
{
0
{
reversed 0
bogey <kuid2:76096:50003:3>
}

1
{
reversed 1
bogey <kuid2:76096:50003:3>
}
}
kuid-table
{
acslib <kuid2:60850:89100:9>
codelib <kuid2:122285:508:18>
airbrake-none <kuid2:101839:95:2>
airbrake-cross <kuid2:101839:90:1>
airbrake-straight <kuid2:101839:91:1>
mainres-none <kuid2:101839:94:1>
mainres-cross <kuid2:101839:92:1>
mainres-straight <kuid2:101839:93:1>
multiworking-none <kuid2:2512:60:42>
multiworking-single <kuid2:2512:61:42>
0 <kuid2:76096:50003:3>
1 <kuid:368699:50066>
2 <kuid2:44090:600:41>
}
script-include-table
{
superscript <kuid2:122285:508:18>
}
 
Last edited:
Back
Top