Alpine Level Design: Difference between revisions

From Red Faction Wiki
No edit summary
No edit summary
Line 4: Line 4:
This page lists all major differences between level design and capabilities in Alpine Faction when compared to other versions of the game (Red Faction, Pure Faction, Dash Faction, etc.)
This page lists all major differences between level design and capabilities in Alpine Faction when compared to other versions of the game (Red Faction, Pure Faction, Dash Faction, etc.)


'''IMPORTANT:''' Alpine Faction '''can''' load levels made specifically for Alpine Faction '''and''' levels made for other versions of the game (RF/PF/DF/etc.). However, please note that due to features available only in Alpine Faction, levels made for Alpine Faction can only be loaded when using Alpine Faction.
'''IMPORTANT:''' Alpine Faction can load both levels made specifically for Alpine Faction ''and'' levels made for other versions of the game (RF/PF/DF/etc.). However, please note that due to features available only in Alpine Faction, '''levels made for Alpine Faction can only be loaded when using Alpine Faction'''.


==Lighting==
==Lighting==

Revision as of 20:23, 1 December 2024



This page lists all major differences between level design and capabilities in Alpine Faction when compared to other versions of the game (Red Faction, Pure Faction, Dash Faction, etc.)

IMPORTANT: Alpine Faction can load both levels made specifically for Alpine Faction and levels made for other versions of the game (RF/PF/DF/etc.). However, please note that due to features available only in Alpine Faction, levels made for Alpine Faction can only be loaded when using Alpine Faction.

Lighting

Lightmaps

In Alpine Faction levels, the game does not apply lightmap clamping. This means that the full range of available colors is available - including fully unlit (black) areas. Put another way, the way your lightmaps look when you calculate them in Alpine's level editor is how they will look in game.

Dynamic Lights

Alpine Faction levels can utilize dynamic lights - configured via the "Dynamic" checkbox in light properties. Using the Anchor_Marker event (described below), you can also move dynamic lights using moving groups.

Note: Dynamic lights are far more taxing on game performance than normal (static) lights. You should keep this in mind when designing, and use dynamic lights only where necessary to achieve your desired effect.

Triggers

In multiplayer, unlike levels made for other versions of the game, triggers in Alpine Faction levels can activate events directly. This includes stock game events and Alpine Events (described below).

The following events are not supported in multiplayer and will not function if triggered:

  • Load_Level
  • Endgame
  • Defuse_Nuke
  • Drop_Point_Marker
  • Go_Undercover
  • Win_PS2_Demo
  • Play_Video
  • When_Picked_Up

Alpine Events

The following events are only available for use in Alpine Faction levels.

AF_Catalysts

Icon Event E.png

AF_When_Dead

Upgraded version of the stock "When_Dead" event. Does not require a slot in the savegame file, so there is no limit on the number of "AF_When_Dead" events that you can use in a single map. Also supports repeated activations unlike the stock version.
On Response
None
Off Response
None
Parameters
  • any_dead: (boolean, "Activate When Any Dead") If true, this event sends an on message each time a linked entity or clutter dies. If false, this event only sends a single on message at the time that all linked entities/clutter are dead.
Icon Event E.png

When_Picked_Up

Fires a message to all linked triggers, movers, and events whenever a linked item is picked up by the player. Works in single player only.
On Response
None
Off Response
None
Parameters
No additional parameters.

AF_Flow

Icon Event E.png

Sequence

Each activation of this event routes the message to the next link in sequential order. After the last link, the cycle resets and the first link is called. Note the order of links is determined by the order in which you add them.
On Response
Send an on signal to the next link in the sequence.
Off Response
None
Parameters
  • last_link_index: (int, hidden) Stores the last activated link index. When processing a received on signal, the next index in the links array after this is used.
Icon Event E.png

Difficulty_Gate

Tests if the game is set to the specified difficulty and forwards messages only if true.
On Response
Forward on signal to all links, if the game is set to the specified difficulty.
Off Response
None
Parameters
  • difficulty: (int, "Life") Set the difficulty to test against. 0 = easy, 1 = medium, 2 = hard, 3 = impossible
Icon Event E.png

Valid_Gate

Tests if the specified UID is a valid object and forwards messages only if true. In the case of objects that have life values (ie. clutter and entities), "valid" means alive.
On Response
Forward on signal to all links, if the specified object is valid.
Off Response
None
Parameters
  • check_uid: (int, "Life") Object UID to be checked.
Icon Event E.png

Inside_Gate

Tests if an object (default: the player who activated the event) is in a specified area of the map. Forwards messages if true.
On Response
Forward on signal to all links if test passes.
Off Response
None
Parameters
  • check_uid: (int, "Life") Region to be checked. Can be a trigger UID or a room UID (Room Effect).
  • test_uid: (int, hidden) Object to be checked. Defaults to the player who activated the event.
Icon Event E.png

Gametype_Gate

Performs a test on the gametype of the game. Forwards message to links only if test passes. Works only in multiplayer (test will always fail in single player)
On Response
Perform test and forward message if passed.
Off Response
None
Parameters
  • gametype: (string, "Goal To Set") Specify the test to run. Must be one of the below, specified exactly.
    • dm
    • tdm
    • ctf
Icon Event E.png

Switch_Random

Randomly select one of this event's links and send an on signal to it.
On Response
Send an on signal to a randomly selected link.
Off Response
None
Parameters
No additional parameters.
Icon Event E.png

Fixed_Delay

Identical to the normal Delay event, but cannot be retriggered. Will forward a message to all links after the specified delay. Messages sent to this event while a message is queued are ignored.
On Response
Queue a message to be forwarded after the configured delay.
Off Response
None
Parameters
No additional parameters.
Icon Event E.png

Goal_Gate

Performs a test on a specified goal (integer variable). Forwards message to links only if test passes.
On Response
Perform test and forward message if passed.
Off Response
None
Parameters
  • value: (int, first "Texture Num") Specify the value to use for the test.
  • goal: (string, first "Filename") Specify the goal name to test.
  • value2: (int, second "Texture Num") Specify the second value to use for the test, if a second value is needed (currently only applies to between).
  • test_type: (string, second "Filename") Specify the test to run. Must be one of the below, specified exactly.
    • equal - Goal count equals value.
    • nequal - Goal count does not equal value.
    • gt - Goal count is greater than value.
    • lt - Goal count is less than value.
    • geq - Goal count is greater than or equal to value.
    • leq - Goal count is less than or equal to value.
    • between - Goal count is between value and value2 (inclusive).
    • odd - Goal count is an odd number.
    • even - Goal count is an even number.
    • divisible - Goal count is divisible by value.
    • ltinit - Goal count is less than its initial value.
    • gtinit - Goal count is greater than its initial value.
    • leinit - Goal count is less than or equal to its initial value.
    • geinit - Goal count is greater than or equal to its initial value.
    • eqinit - Goal count is equal to its initial value.
Icon Event E.png

Environment_Gate

Performs a test on the environment of the game. Forwards message to links only if test passes.
On Response
Perform test and forward message if passed.
Off Response
None
Parameters
  • environment: (string, "Goal To Set") Specify the test to run. Must be one of the below, specified exactly.
    • multi - Event is running in multiplayer.
    • single - Event is running in single player.
    • server - Event is running on a server (listen or dedicated).
    • dedicated - Event is running on a dedicated server.
    • client - Event is running on a client.

AF_General

Icon Event E.png

Clone_Entity

Creates a clone of the linked entity with the same properties and settings as its source.
On Response
Create a clone at the event's position.
Off Response
None
Parameters
No additional parameters.
Icon Event E.png

Set_Player_World_Collide

Control whether the player collides with level geometry.
On Response
Collision = true (default)
Off Response
Collision = false
Parameters
No additional parameters.
Icon Event E.png

Set_Level_Hardness

Set the hardness for the loaded level (size of geo craters).
On Response
Set hardness to the specified value.
Off Response
None
Parameters
  • hardness: (int, "Life") The hardness value to set.
Icon Event E.png

Set_Difficulty

Set the difficulty level of the game.
On Response
Set difficulty to the specified value.
Off Response
None
Parameters
  • difficulty: (int, "Life") Set the difficulty to test against. 0 = easy, 1 = medium, 2 = hard, 3 = impossible
Icon Event E.png

HUD_Message

Display a green HUD message in the bottom middle of the screen (like the helper text when you pick up items).
On Response
Display the HUD message for the configured duration.
Off Response
None
Parameters
  • message: (string, "Goal To Set") The message to display.
  • duration: (int, hidden) Duration (in ms) the message will be displayed. If not specified, defaults to 5000 (5 seconds).
Icon Event E.png

Play_Video

Play a .bik format video.
On Response
Play the video specified.
Off Response
None
Parameters
  • filename: (string, "Goal To Set") The filename of the video to play.
Icon Event E.png

Force_Unhide

Force unhide/hide an object with no conditions. Virtually identical to the stock "Unhide" event, except this one will do it regardless of player line of sight or any other factors.
On Response
Unhide linked objects.
Off Response
Hide linked objects.
Parameters
No additional parameters.
Icon Event E.png

Set_Fog_Far_Clip

Sets the far clip plane used for distance fog.
On Response
Set far clip plane to specified value (in metres).
Off Response
None
Parameters
  • far_clip: (int, "Life") Far clip plane distance.

AF_Utility

Icon Event E.png

SetVar

Reconfigure a variable on linked events. Only supports new Alpine Faction events. Supports "delay" (float) as a variable name to set event delay. Other variable names are as indicated on this page. Specify the name of the variable to be set in the script name for SetVar using this scripe name format: "SetVar_VARNAME" where "VARNAME" is the variable name.
On Response
Set var_name to var_value on all linked events.
Off Response
None
Parameters
  • var_name: (string, set via script name) The name of the variable to be set.
  • var_value: (string, "Goal To Set") The value to set var_name to. You must ensure you are providing a valid value for the type of the variable you are setting. If not specified, defaults to a blank string.
Icon Event E.png

Remove_Link

Used to remove links. If "remove_all" is turned off (default), removes links between objects this event is linked to. If "remove_all" is turned on, remove all links between every object this event is linked to and any other objects.
On Response
Remove links.
Off Response
None
Parameters
  • remove_all: (boolean, "Run") Turn on "remove_all".
Icon Event E.png

Goal_Math

Used to perform math operations on goals (integer variables). Applies the operation to any level (non-persistent) goals, as well as any persistent goals that are loaded.
On Response
Apply the operation.
Off Response
None
Parameters
  • value: (int, first "Texture Num") Specify the value to use for the operation.
  • goal: (string, first "Filename") Specify the goal name to which the operation will apply.
  • value2: (int, second "Texture Num") Specify the second value to use for the operation, if a second value is needed (currently only applies to clamp).
  • operation: (string, second "Filename") Specify the operation to apply. Must be one of the below, specified exactly.
    • add - Add value to goal count.
    • sub - Subtract value from goal count.
    • mul - Multiply goal count by value.
    • div - Divide goal count by value.
    • rdiv - Divide value by goal count.
    • set - Set goal count explicitly to value.
    • mod - Return modulus of goal count divided by value.
    • pow - Raise goal count to the power of value.
    • neg - Set goal count negative.
    • abs - Set goal count positive (absolute value).
    • clamp - Clamp goal count between value and value2.
    • max - Set goal count to the highest between goal count and value.
    • min - Set goal count to the lowest between goal count and value.
    • reset - Set goal count to its initial value.
Icon Event E.png

Clear_Queued

Clears queued message (if any) on all linked events. Queued messages are messages that are queued per a configured delay value on that event.
On Response
Clear queued messages.
Off Response
None
Parameters
No additional parameters.
Icon Event E.png

Add_Link

Adds links from the first link in the link array to each other link in the array. Link array is ordered based on the order in which you linked this event to other objects.
On Response
Add links.
Off Response
None
Parameters
No additional parameters.
Icon Event E.png

Anchor_Marker

Used to "drag along" some object types that can't normally be added to moving groups. Simply add the Anchor Marker to the moving group, then link the Anchor_Marker to the objects you want to bring. That object/those objects will have their position locked to the position of the Anchor_Marker event as it travels with the mover. Supports Lights (Dynamic only), Particle Emitters, and Push Regions
On Response
None
Off Response
None
Parameters
No additional parameters.