Page 1 of 1

prefixes/flags/switches in actor and material identifiers

Posted: Mon Nov 12, 2018 2:06 pm
by Toshiba-3
A post to sum up what we know (and don't) so far.

for the actors

& prevents an element from being preprocessed within the mesh of the level. The element is thus available for grooves, smashables, etc. Its model can be instanced.
example: &moveablecrane.act

&% is the same as above but the % in second position makes it face the camera at all times (like sprites). As far as I know, only work in C1 and only for level props.
example: &%GASSO.ACT

&43 is again like the first one up there but the digit after the & indicates the noncar object type that corresponds to the element. The element has its own mass, collision and a few more characteristics. It can be moved around the level once snapped out of position.
example: &43lamppost102

&54! the additional ! in fourth position tells the game that the noncar object has already snapped out of place, and thus requires no additional force to be moved around.
example: &54!bench054

&£65 this is your usual powerup (so C2 only). £ indicates the actor is a powerup, the following digit tells which powerup from the list in POWERUP.TXT
example: &£65pedrepulse012

@ was used during the level developments (for both C1 and C2) to indicate duplicated props and I don't know if it has any effect in the preprocessed levels. They were used for the bigger modular elements populating the environment (rocks, parts for buildings, containers). Models were instanced. Maybe the size is the interesting factor as & elements have a size limit, and @ might be able to go beyond for elements that don't need to be interacted with?
example: @watertower02

for the materials

! indicates the material is non-solid/passthrough. If applied to a horizontal mesh, it triggers the default water effects.
examples: !vines.mat, !river

!! same as above but instantly respawn the vehicle, if I'm not mistaken.
example: !!sea.mat

> same as ! but never triggers the water effects (C2 only). Maybe >! works too to respawn.
example: >clouds2.mat

0-9 digit as the first character of a material identifier links the material to specific behaviour defined in the level txt file (material modifier). If there's no number the default material modifier will be used. 0 (0grass2.mat) triggers the first material modifier after the default one, 1 the second, and so on.
examples: 0mud3.mat, 5snopath.mat, 8gravel.mat

\50 when inserted in second position will define the material as a blend material. The game will apply a 25 50 or 75% opacity according to the digit following the \. This is for C1, and probably C2 software mode. It can be used with ! or 0-9 in first position.
examples: w\50ow1.mat, !\25flame.mat, 5\50ice.mat

# should indicate the side, top and bottom materials of a water-filled tunnel but we don't know which effect is supposed to occur once enabled. C1 for sure, some C2 materials have it too.
example: #suebtop

@ doesn't seem to be implemented but it's obvious it was meant to make materials full bright (only appears in C2).
example: @maglight

^ is used in the Beaver woods level, materials at each end of the train tunnel have it. No idea.
example: ^trainrldk

Re: prefixes/flags/switches in actor and material identifier

Posted: Mon Nov 12, 2018 2:10 pm
by Toshiba-3
Screenshots to illustrate that new-fangled &% sprite effect thing:

the GASSO sign the first C1 race actually makes use of it, no one ever noticed I suppose?

Investigating further, I found very early C1 levels were using &% sprites for lamp posts and traffic lights:

Re: prefixes/flags/switches in actor and material identifier

Posted: Mon Nov 12, 2018 11:48 pm
by Mastro 666
This will come in handy. :cool: :thumbsup:

Thanks for the info. It's weird how I never realized the GASSO sign trick. :investigate:

Re: prefixes/flags/switches in actor and material identifier

Posted: Wed Nov 14, 2018 12:48 pm
by Harmalarm
Nice summary of all the prefixes Tosh. I didn't know about some of these, so it's great to have them all tested like this.

Interesting find about the use of pure sprites in the early c1 levels. I always thought the lanterns and traffic lights seemed a bit odd with those two intersecting planes, but now I get where they come from.

Re: prefixes/flags/switches in actor and material identifiers

Posted: Wed Jul 31, 2019 12:08 pm
by Toshiba-3

@ for actors is still implemented, and indicates duplicated models. I don't quite understand its benefit. Might be a relic from before preprocessing?

% for billboarding actors. Well it's a bit more complicated that what I thought. During preprocessing, the version of PT2 Stainless used would take all actors with % and place them under a different dummy parent also starting with %. That parent is what makes the difference. Have to investigate further.

Re: prefixes/flags/switches in actor and material identifiers

Posted: Sat Oct 12, 2019 4:40 pm
by Toshiba-3
Easy peasy. Harmalarm will try to add support for these in the 3dsMax CarmaTools. Sadly not supported in Carmageddon 2, even in software mode.
I'm positive one could simply preprocess a level in PT2, then reopen the preprocessed level in PT2, do the required hierarchy tweaks, and simply save it.


Re: prefixes/flags/switches in actor and material identifiers

Posted: Sat Oct 12, 2019 6:13 pm
by Mastro 666
Great news Tosh!

:twisted: GASSO BTFO!