Difference between revisions of "PTL file"

From RRU Knowledge Base
m
 
(14 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{WIP}}
{{WIP}}
One of several [[Level Files]] located in a Mission's level folder, the '''PTL File''' controls the [[Artificial Intelligence]] of the Rock Raiders. It designates what actions the Rock Raider is capable of doing, and the default order of preference. Every Game [[Level]] uses basically the same contents. Tutorial Levels, however, disable certain actions by not including them in the PTL file.  It is suggested that you leave this file alone, as it can seriously and adversely affect the behavior of the Rock Raiders.
'''PTL files''' are [[File formats in LEGO Rock Raiders|configuration files]] used in the Windows version of [[LEGO Rock Raiders (video game)|''LEGO Rock Raiders'']] to control artificial intelligence. They designate cause and effect in game events, what actions [[Rock Raider]]s and [[Rock Raiders creatures]] are capable of doing, and the default order of preference. Every [[LEGO Rock Raiders missions|mission]] has its own PTL file located in its level folder, and will crash while loading if one does not exist. All default PTL files are identical, (with the exception of training missions, which disable certain actions), but they can be individually modified to change the AI in any mission.


Further research has revealed that it not only controls the [[Artificial Intelligence]] of the Rock Raiders, but also of other creatures.
==List of properties==
It even is possible to alter game events using the '''PTL File'''. Such as clearing [[Rubble]] causing [[Rock Monsters]] to emerge.
These probably need to be sorted by whether they can be used as expressions or responses, but it's sorta ambiguous about whether any are actually limited like that or it's just heavily situational.
{| class="wikitable" border="1"
|-
! Property
! Effect
|-
| <code>AttackBuilding</code>
|
|-
| <code>AttackBuildingComplete</code>
|
|-
| <code>BuildPath</code>
|
|-
| <code>BuildPathComplete</code>
|
|-
| <code>Clear</code>
| Defines what to do when a Rock Raider wants to clear rubble.
|-
| <code>ClearBuilding</code>
|
|-
| <code>ClearBuildingComplete</code>
|
|-
| <code>ClearComplete</code>
| Defines what happens when a Rock Raider finishes shoving rubble. This occurs four times for each pile of rubble.
|-
| <code>ClearFallIn</code>
|
|-
| <code>ClearFallInComplete</code>
|
|-
| <code>ClearInitial</code>
|
|-
| <code>ClearInitialComplete</code>
|
|-
| <code>ClearRemovePath</code>
|
|-
| <code>ClearRemovePathComplete</code>
|
|-
| <code>ClearSelection</code>
|
|-
| <code>CollectCrystal</code>
| This property must be listed as both an expression and an action for the game to properly function.


Below is a complete list of "messages" as the exe calls them
If this property is not defined as an expression, a Rock Raider tasked with collecting an energy crystal will instead '''grab the nearest Rock Raider''' (or himself if no others are nearby) and '''deposit him into a Tool Store or Power Station''' (surprisingly, this will not crash the game).
|-
| <code>CollectCrystalComplete</code>
| ''Unknown'', seems to have no effect. Would likely define what happens when <code>CollectCrystal</code> has completed.
|-
| <code>CollectOre</code>
|
|-
| <code>CollectOreComplete</code>
| ''Unknown'', seems to have no effect. Would likely define what happens when <code>CollectOre</code> has completed.
|-
| <code>CollectTool</code>
|
|-
| <code>CrystalToRefinery</code>
|
|-
| <code>CrystalToRefineryComplete</code>
|
|-
| <code>Debug_DestroyAll</code>
|
|-
| <code>Deselect</code>
|
|-
| <code>Dig</code>
| Defines what to do when a wall is ordered to be drilled or a Rock Raider is ordered to drill a wall. If this is set to anything other than <code>Goto</code>, Rock Raiders will not drill walls. However, if the Rock Raider ordered to drill is standing on the ground block immediately in front of the wall in question, this property's defined action will be ignored and the Rock Raider will drill the wall normally.
|-
| <code>DigComplete</code>
| Defines what happens when a Rock Raider has finished drilling a wall. It is usually set to <code>RockFall</code>.
|-
| <code>FirstPerson</code>
|


I have no idea how to arrange this, or what to call properties vs their "answers", especially the ones that can be used as both
'''Setting this property's action to <code>Goto</code> will crash the game when attempting to enter eye or shoulder view.'''
* <code>Debug_DestroyAll</code>
|-
* <code>ClearRemovePathComplete</code>
| <code>FollowAttack</code>
* <code>ClearRemovePath</code>
|
* <code>ClearInitialComplete</code>
|-
* <code>ClearInitial</code>
| <code>GatherRock</code>
* <code>ClearBuildingComplete</code>
|
* <code>ClearBuilding</code>
|-
* <code>UpgradeComplete</code>
| <code>GatherRockComplete</code>
* <code>Upgrade</code>
| Defines what to do after a monster has gathered a boulder. It is usually set to <code>AttackBuilding</code>.
* <code>GenerateFromCryOreComplete</code>
|-
* <code>GenerateFromCryOre</code>
| <code>GenerateCrystal</code>
* <code>GenerateCrystalAndOreComplete</code>
| Causes an energy crystal to be spawned at that location, if possible.
* <code>GenerateCrystalAndOre</code>
|-
* <code>TrainComplete</code>
| <code>GenerateCrystalAndOre</code>
* <code>Train</code>
| Causes an energy crystal and a piece of ore to be spawned together at that location, if possible.
* <code>BuildPathComplete</code>
|-
* <code>BuildPath</code>
| <code>GenerateCrystalAndOreComplete</code>
* <code>ReduceSelection</code>
| Defines what happens after <code>GenerateCrystalAndOre</code> has completed
* <code>CollectTool</code>
|-
* <code>FollowAttack</code>
| <code>GenerateCrystalComplete</code>
* <code>ManSelectedAndMonsterClicked</code>
| Defines what happens after <code>GenerateCrystal</code> has completed.
* <code>GetIn</code>
|-
* <code>AttackBuildingComplete</code>
| <code>GenerateFromCryOre</code>
* <code>AttackBuilding</code>
| Spawns materials defined at that location in the [[CryOre map]], if any.
* <code>PickRandomFloorComplete</code>
|-
* <code>PickRandomFloor</code>
| <code>GenerateFromCryOreComplete</code>
* <code>GatherRockComplete</code>
| Defines what happens after <code>GenerateFromCryOre</code> has completed.
* <code>GatherRock</code>
|-
* <code>GenerateRockMonsterComplete</code>
| <code>GenerateOre</code>
* <code>GenerateRockMonster</code>
| Causes a piece of ore to be spawned at that location, if possible.
* <code>ClearFallInComplete</code>
|-
* <code>ClearFallIn</code>
| <code>GenerateOreComplete</code>
* <code>ClearComplete</code>
| Defines what happens after <code>GenerateOre</code> has completed.
* <code>Clear</code>
|-
* <code>CollectOreComplete</code>
| <code>GenerateRockMonster</code>
* <code>CollectOre</code>
| Causes a monster to emerge. The location is usually completely random on any valid wall (not a corner, not [[solid rock]], not [[reinforced wall|reinforced]], and not blocked by water, lava, or a building) rather than defined by the [[emerge map]]. This is not always the case though; e.g. if set as a definition to <code>Reinforce</code>, the monster will emerge at the wall ordered to be reinforced.
* <code>GenerateOreComplete</code>
|-
* <code>GenerateOre</code>
| <code>GenerateRockMonsterComplete</code>
* <code>CrystalToRefineryComplete</code>
|
* <code>CrystalToRefinery</code>
|-
* <code>CollectCrystalComplete</code>
| <code>GetIn</code>
* <code>CollectCrystal</code>
|
* <code>GenerateCrystalComplete</code>
|-
* <code>GenerateCrystal</code>
| <code>Goto</code>
* <code>RockFallComplete</code>
|
* <code>RockFall</code>
|-
* <code>ReinforceComplete</code>
| <code>ManSelectedAndMonsterClicked</code>
* <code>Reinforce</code>
|
* <code>RepairComplete</code>
|-
* <code>Repair</code>
| <code>Null</code>
* <code>DigComplete</code>
| Causes there to be no effect.
* <code>Dig</code>
|-
* <code>PlaySample</code>
| <code>PickRandomFloor</code>
* <code>TopView</code>
|
* <code>TrackObject</code>
|-
* <code>FirstPerson</code>
| <code>PickRandomFloorComplete</code>
* <code>UserGoto</code>
|
* <code>RockMonsterGotoComplete</code>
|-
* <code>RockMonsterGoto</code>
| <code>PlaySample</code>
* <code>Goto</code>
|
* <code>Deselect</code>
|-
* <code>ClearSelection</code>
| <code>ReduceSelection</code>
* <code>Selected</code>
|
* <code>Select</code>
|-
* <code>Null</code>
| <code>Reinforce</code>
| Defines what to do when a wall is ordered to be reinforced.
|-
| <code>ReinforceComplete</code>
| ''Unknown'', seems to have no effect. Would likely define what happens when <code>Reinforce</code> has completed.
|-
| <code>Repair</code>
|
|-
| <code>RepairComplete</code>
|
|-
| <code>RockFall</code>
|
|-
| <code>RockFallComplete</code>
|
|-
| <code>RockMonsterGoto</code>
|
|-
| <code>RockMonsterGotoComplete</code>
|
|-
| <code>Select</code>
|
|-
| <code>Selected</code>
|
|-
| <code>TopView</code>
|
|-
| <code>TrackObject</code>
|
|-
| <code>Train</code>
|
|-
| <code>TrainComplete</code>
|
|-
| <code>Upgrade</code>
|
|-
| <code>UpgradeComplete</code>
|
|-
| <code>UserGoto</code>
|
|}


 
[[Category:Documentations]]
==Properties==
[[Category:File formats in LEGO Rock Raiders for Windows]]
===DigComplete===
The <code>GatherRockComplete</code> property defines what to do after a [[Rock Raider]] has finished digging a wall. It is usually set to <code>RockFall</code>
===GatherRockComplete===
The <code>GatherRockComplete</code> property defines what to do after a Monster has gathered a boulder. It is usually set to <code>AttackBuilding</code>.
 
===GenerateRockMonsterComplete===
The <code>GenerateRockMonster</code> property defines what to do after a Monster has emerged.
 
==Messages==
===GatherRock===
===GenerateRockMonster ===
The <code>GenerateRockMonster</code> property causes a Monster to emerge. The location is completely random on any valid wall (not a corner, not [[Solid Rock]], without water, lava, or a building in front of it) rather than defined by the [[Emerge map]].
===RockFall===
The <code>RockFall</code> property causes a rock fall animation to play.

Latest revision as of 20:54, 18 December 2018

This article is an unfinished work in progress or contains transferred information that needs to be rewritten or reformatted to fit our standards. Please excuse the mess and do not mark for deletion.

PTL files are configuration files used in the Windows version of LEGO Rock Raiders to control artificial intelligence. They designate cause and effect in game events, what actions Rock Raiders and Rock Raiders creatures are capable of doing, and the default order of preference. Every mission has its own PTL file located in its level folder, and will crash while loading if one does not exist. All default PTL files are identical, (with the exception of training missions, which disable certain actions), but they can be individually modified to change the AI in any mission.

List of properties

These probably need to be sorted by whether they can be used as expressions or responses, but it's sorta ambiguous about whether any are actually limited like that or it's just heavily situational.

Property Effect
AttackBuilding
AttackBuildingComplete
BuildPath
BuildPathComplete
Clear Defines what to do when a Rock Raider wants to clear rubble.
ClearBuilding
ClearBuildingComplete
ClearComplete Defines what happens when a Rock Raider finishes shoving rubble. This occurs four times for each pile of rubble.
ClearFallIn
ClearFallInComplete
ClearInitial
ClearInitialComplete
ClearRemovePath
ClearRemovePathComplete
ClearSelection
CollectCrystal This property must be listed as both an expression and an action for the game to properly function.

If this property is not defined as an expression, a Rock Raider tasked with collecting an energy crystal will instead grab the nearest Rock Raider (or himself if no others are nearby) and deposit him into a Tool Store or Power Station (surprisingly, this will not crash the game).

CollectCrystalComplete Unknown, seems to have no effect. Would likely define what happens when CollectCrystal has completed.
CollectOre
CollectOreComplete Unknown, seems to have no effect. Would likely define what happens when CollectOre has completed.
CollectTool
CrystalToRefinery
CrystalToRefineryComplete
Debug_DestroyAll
Deselect
Dig Defines what to do when a wall is ordered to be drilled or a Rock Raider is ordered to drill a wall. If this is set to anything other than Goto, Rock Raiders will not drill walls. However, if the Rock Raider ordered to drill is standing on the ground block immediately in front of the wall in question, this property's defined action will be ignored and the Rock Raider will drill the wall normally.
DigComplete Defines what happens when a Rock Raider has finished drilling a wall. It is usually set to RockFall.
FirstPerson

Setting this property's action to Goto will crash the game when attempting to enter eye or shoulder view.

FollowAttack
GatherRock
GatherRockComplete Defines what to do after a monster has gathered a boulder. It is usually set to AttackBuilding.
GenerateCrystal Causes an energy crystal to be spawned at that location, if possible.
GenerateCrystalAndOre Causes an energy crystal and a piece of ore to be spawned together at that location, if possible.
GenerateCrystalAndOreComplete Defines what happens after GenerateCrystalAndOre has completed
GenerateCrystalComplete Defines what happens after GenerateCrystal has completed.
GenerateFromCryOre Spawns materials defined at that location in the CryOre map, if any.
GenerateFromCryOreComplete Defines what happens after GenerateFromCryOre has completed.
GenerateOre Causes a piece of ore to be spawned at that location, if possible.
GenerateOreComplete Defines what happens after GenerateOre has completed.
GenerateRockMonster Causes a monster to emerge. The location is usually completely random on any valid wall (not a corner, not solid rock, not reinforced, and not blocked by water, lava, or a building) rather than defined by the emerge map. This is not always the case though; e.g. if set as a definition to Reinforce, the monster will emerge at the wall ordered to be reinforced.
GenerateRockMonsterComplete
GetIn
Goto
ManSelectedAndMonsterClicked
Null Causes there to be no effect.
PickRandomFloor
PickRandomFloorComplete
PlaySample
ReduceSelection
Reinforce Defines what to do when a wall is ordered to be reinforced.
ReinforceComplete Unknown, seems to have no effect. Would likely define what happens when Reinforce has completed.
Repair
RepairComplete
RockFall
RockFallComplete
RockMonsterGoto
RockMonsterGotoComplete
Select
Selected
TopView
TrackObject
Train
TrainComplete
Upgrade
UpgradeComplete
UserGoto