GameFiles

Original Default LG


Here is the original Terminator 2: Judgement Day (term2.txt) DefaultLG game file

Players
2
P1
P2
[States]
:mame_start
*All
>Open_COM
:mame_stop
*All
>Close_COM
[Signals]
:Left_Gun_Recoil
*P1
>Recoil
:Right_Gun_Recoil
*P2
>Recoil
:Left_Flash_1
:Left_Flash_2
:Left_Flash_3
:Left_Flash_4
:Left_Gun_Green_Led
:Left_Gun_Red_Led
:Right_Flash_1
:Right_Flash_2
:Right_Flash_3
:Right_Flash_4
:Right_Gun_Green_Led
:Right_Gun_Red_Led


For the first 4 lines, I talked about it in the Players page.

After the ‘[States]’ it gets into the output signals. This is were the output signal can be tied to player(s) and command(s). DefaultLG game files are based on a simple principle. The output signal value changed, so a player(s) light gun needs a certain command. So there is output signal, player(s), and command. The output signal has a ‘:’ character in front of it, to designate that it is an output signal. The player(s) has a ‘*’ character in front of it, to designate that it is a player(s). The command has a ‘>’ character in front of it, to designate that it is a command. Below is an example of a damage signal, player and command.

:P1_Damage
*P1
>Damage

It states that when P1_Damage’s value transitions doesn’t end in zero, player’s 1 light gun will have the Damage command executed. Again, output signal, player(s), command. Easy to follow. For the players, it can be 'All', or a certain player, represented by a 'P' and then its number. So for a 2 player game, there will be All, P1, and P2. Also, you can have output signals that are not tied to a player(s) and command. Look below for an example.

:Left_Flash_1
:Left_Flash_2
:Left_Flash_3
:Left_Flash_4

An output signal and player(s) can have multiple commands tied to it. Look below for an example.

:mame_start
*All
>Open_COM
>AspectRatio_4:3
>Joystick_Mode

Only output signal in the ‘[States]’ can change their players around. This is illegal in the ‘[Signals] section. Look below for an example.

:mame_start
*All
>Open_COM
*P1
>AspectRatio_4:3
*P2
>Joystick_Mode

Now lets get into what is illegal in the ordering. You cannot have just an output signal and a command. Look below for an example.

:P1_Damage
>Damage

This would error out when loading the game file. Another illegal thing is to use a game player that is not in the game. If the game is a 2 player game, and a person used ‘*P3’ then it will error out. As there is no game player 3 in a 2 player game.

:P1_Damage
*P3
>Damage

It is illegal to have 2 players in a row. Look below for an example.

:mame_start
*All
>Open_COM
*P1
*P2
>AspectRatio_4:3
>Joystick_Mode

This would error out. As you cannot have ‘*P1’ and then ‘*P2’. There must be a command in between them. Also, only multiple players can only happen in the ‘[States]’ section.

Now that we have gone over what and what not can happen, lets go through the game file.

The first is ‘[States]’. Which is states of the game, that are signal by an output signal. Currently there is only 2. Which are ‘mame_start’ and ‘mame_stop’. The ‘mame_start’ is the game started. Then ‘mame_stop’ is when the game stop. Let look at ‘mame_start’.

:mame_start
*All
>Open_COM

This says, when the game starts, all the players light guns need to do the ‘Open_COM’ command. Then ‘mame_Stop’ is very similar. It says, when the game stops, all the players light guns need to do the ‘Close_COM’ command.

The next section is the ‘[Signals]’ sections. These are the normal game’s output signals. Which can control lights, motors, solenoids, and other things. Let’s look at the first output signal with attached player and command.

:Left_Gun_Recoil
*P1
>Recoil

This says, when the output signal ‘Left_Gun_Recoil’ transitions not ending in zero, then send player 1 light gun the ‘Recoil’ command. Then the next output is almost the same as this one, except it is for player 2 light gun.

Then all the rest of the output signals, do nothing under Hook of the Reaper. As they are not tied to any player and commands. But lets say there is P[1:2]_Damage, how would we connect them to the players and to the damage command. Lets do that below.

:P1_Damage
*P1
>Damage
:P2_Damage
*P2
>Damage

That is how the original DefaultLG game files work, and still work with Hook of the Reaper. Yep, the original DefaultLG game files still work in Hook of the Reaper.