Demo Editing/Demo Problems And FAQs: Difference between revisions

From Homecoming Wiki
Jump to navigation Jump to search
imported>Scuzzbopper (historical)
m (→‎Destructible Model: fixing link)
imported>Felderburg (historical)
(Removed wip, gave it a better intro text per note. Also added modified player guide notice, directing people to the Titan Forums for better info,)
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{TOCright}}
{{TOCright}}
{{wip}}
<center>
{{stub}}
{| class="wikitable" width="60%"
|-
! style="text-align:center;background:#AAC4FF;" | Player Guide Notice
|-
| style="text-align:center;background:#F4F9FF;" | This article is a [[Player Guide]]. '''Paragon Wiki''' takes no responsibility for the content within.<br />Questions and concerns should be posed to the '''[{{SERVER}}{{SCRIPTPATH}}/index.php?title={{FULLPAGENAMEE}}&action=history authors]''' of the article using the article's [[{{TALKSPACE}}:{{PAGENAME}}|talk page]].<br />
<br />
'''This guide may be outdated; editors should go to the [http://www.cohtitan.com/forum/index.php/board,167.0.html Titan Forums Demo Recording forum] for updated information and resources.'''
|}
</center>


== Overview ==
== Overview ==


<span style="color:orange;">Intro text needed: Encountered problems (and questions) for which there may be solutions/work-arounds (as opposed to just known issues for which there are no "fixes").</span>
This article addresses questions and problems with demo editing for which there may be solutions/work-arounds (as opposed to just known issues for which there are no "fixes"). If a demo is having issues with one of the subjects below, the solutions listed are known to usually work.


== Model Does Not Appear During Playback ==
== Model Does Not Appear During Playback ==


Demo editing frequently includes working with NPC ''entities'' in the demo code, such as replacing an existing NPC or NPC model with another, or inserting new NPCs into a demo. When this is done, the problem sometimes arises that the modified or added NPC ''entity'' does not appear when the edited demo is played back. When this occurs, there are several possibilities as to why the NPC may not be visible. Some of the most common reasons are as follows:
Demo editing frequently includes working with NPC ''entities'' in the demo code, such as replacing an existing NPC or NPC model with another, or inserting new NPCs into a demo. When this is done, the problem sometimes arises that the modified or added NPC ''entity'' does not appear when the edited demo is played back. When this occurs, there are several possibilities as to why the NPC may not be visible. Some of the most common reasons are as follows:


* The NPC model name may be invalid or misspelled.
* The NPC model name may be invalid or misspelled.
Line 20: Line 28:
=== Model Name Invalid ===
=== Model Name Invalid ===


This is probably the most obvious possibility, but one that bears mentioning. If the model name specified by the '''NPC''' command is misspelled or invalid, no model will be displayed during the demo playback. The model name should be checked to make sure that it exists and is spelled correctly.
This is probably the most obvious possibility, but one that bears mentioning. If the model name specified by the '''NPC''' command is misspelled or invalid, no model will be displayed during the demo playback. The model name should be checked to make sure that it exists and is spelled correctly.


=== Destructible Model ===
=== Destructible Model ===


How to manage destructible models is discussed in further detail in the [[Demo Editing/Demo How To Info#How To Manage Destructible Objects | Demo Editing How To Info]]. In relation to this particular issue, an NPC model which is ''destructible'' (one which can be damaged or destroyed in-game) will typically no appear during demo playback if it is missing the associated '''HP''' and '''HPMAX''' demo command lines.
How to manage destructible models is discussed in further detail in the [[Demo Editing/Demo How To Info#How To Manage Destructible Objects|Demo Editing How To Info]]. In relation to this particular issue, an NPC model which is ''destructible'' (one which can be damaged or destroyed in-game) will typically not appear during demo playback if it is missing the associated '''HP''' and '''HPMAX''' demo command lines.  


This can be checked by adding both the '''HP''' and '''HPMAX''' command lines for the NPC, and setting the values for '''HP''' to be the same as for '''HPMAX'''. This will tell the game engine to use the default or undestroyed appearance for the model, and should cause it to be visible if it is an issue of the model being destructible.
This can be checked by adding both the '''HP''' and '''HPMAX''' command lines for the NPC, and setting the values for '''HP''' to be the same as for '''HPMAX'''. This will tell the game engine to use the default or undestroyed appearance for the model, and should cause it to be visible if it is an issue of the model being destructible.


=== Mission Objective (SEQ) Models ===
=== Mission Objective (SEQ) Models ===


Non-destructible mission objective ''entities'' (''entities'' designated by the '''SEQ''' command) are not visible during demo playback. If the problem of a model not appearing is associated with an ''entity'' being added by the '''SEQ''' command (or by trying to use an '''SEQ''' model with the '''NPC''' command), this is because these ''entities'' do not appear during demo playback.
Non-destructible mission objective ''entities'' (''entities'' designated by the '''SEQ''' command) are not visible during demo playback. If the problem of a model not appearing is associated with an ''entity'' being added by the '''SEQ''' command (or by trying to use an '''SEQ''' model with the '''NPC''' command), this is because these ''entities'' do not appear during demo playback.


The only known way to circumvent this limitation is to find an '''NPC'''-based model with the same appearance as the '''SEQ'''-based model has in-game. Given an equivalent '''NPC'''-based model, the '''SEQ''' command line can be replaced by an '''NPC''' command line with this other model. This should cause an equivalent-appearing object to be visible during demo playback.
The only known way to circumvent this limitation is to find an '''NPC'''-based model with the same appearance as the '''SEQ'''-based model has in-game. Given an equivalent '''NPC'''-based model, the '''SEQ''' command line can be replaced by an '''NPC''' command line with this other model. This should cause an equivalent-appearing object to be visible during demo playback.
<!-- Possible addition or sub-page here would be a table of equivalent NPC-SEQ model names, possibly with images. -SB -->


=== POS Value Issues ===
=== POS Value Issues ===


Particularly for users new to demo editing, one possibility for an ''entity'' not being visible during demo playback is that there may be a problem with the '''POS''' values attached to the ''entity'' that is not showing up. The '''POS''' command line establishes the position of an ''entity'' on the map. If the '''POS''' value specified places an ''entity'' inside or behind the map geometry or elements (relative to the camera), then it may not be visible when the demo is played back. For example, the '''POS''' command could cause an ''entity'' to be placed inside a building, behind a wall, or underground.
Particularly for users new to demo editing, one possibility for an ''entity'' not being visible during demo playback is that there may be a problem with the '''POS''' values attached to the ''entity'' that is not showing up. The '''POS''' command line establishes the position of an ''entity'' on the map. If the '''POS''' value specified places an ''entity'' inside or behind the map geometry or elements (relative to the camera), then it may not be visible when the demo is played back. For example, the '''POS''' command could cause an ''entity'' to be placed inside a building, behind a wall, or underground.


Additionally, the '''POS''' value specified could also place an ''entity'' behind the camera, out of visible range, or otherwise "off screen." If an ''entity'' is not visible when the demo is played back, check the '''POS''' command to make sure the values appear correct for what you intended and place the ''entity'' such that it will be visible to the camera.
Additionally, the '''POS''' value specified could also place an ''entity'' behind the camera, out of visible range, or otherwise "off screen." If an ''entity'' is not visible when the demo is played back, check the '''POS''' command to make sure the values appear correct for what you intended and place the ''entity'' such that it will be visible to the camera.


Also, a very few models use the top of the model as the model "base" when determining the ''entity's'' vertical placement. For example, the ''base'' of [[Ms. Liberty]]'s model is at the model's feet, so a '''POS''' of 0 0 0 means that, if the ground has an elevation of "0", Ms. Liberty will be above ground and visible. However, for example, the Vanguard shooting range target models use the ''top'' of the target as its ''base''. This means that, with a ground level of "0" and a '''POS''' of 0 0 0, this model will be completely submerged underground, requiring a vertical elevation of its '''POS''' values to make it visible.
Also, a very few models use the top of the model as the model "base" when determining the ''entity's'' vertical placement. For example, the ''base'' of [[Ms. Liberty]]'s model is at the model's feet, so a '''POS''' of 0 0 0 means that, if the ground has an elevation of "0", Ms. Liberty will be above ground and visible. However, for example, the Vanguard shooting range target models use the ''top'' of the target as their ''base''. This means that, with a ground level of "0" and a '''POS''' of 0 0 0, one of these models will be completely submerged underground, requiring a vertical elevation of its '''POS''' values to make it visible.


=== PYR Value Issues ===
=== PYR Value Issues ===


Similar to the '''POS''' issue, though less frequently encountered, the '''PYR''' values specified for an ''entity'' can cause to not be visible during demo playback. One possibility for this is that the orientation specified by the '''PYR''' command may place the ''entity'' inside map geometry or underground, similar the situation which can be created by the ''entity's'' '''POS''' values.
Similar to the '''POS''' issue, though less frequently encountered, the '''PYR''' values specified for an ''entity'' can cause to not be visible during demo playback. One possibility for this is that the orientation specified by the '''PYR''' command may place the ''entity'' inside map geometry or underground, similar the situation which can be created by the ''entity's'' '''POS''' values.


=== Player Too Far From Camera ===
=== Player Too Far From Camera ===


<span style="color:orange;">'''Player''' position determines render distance. If '''CAM POS''' is too far from '''Player POS''', objects, as viewed from camera, won't appear.</span>
<span style="color:orange;">'''Player''' position determines render distance. If '''CAM POS''' is too far from '''Player POS''', objects, as viewed from camera, won't appear.</span>


== ''Player'' FX Do Not Display ==
== ''Player'' FX Do Not Display ==


Previously, demos have at times experienced problems where not all '''FX''' will display properly for the '''Player''' (the specific demo ''entity'' designated by the '''Player''' demo command. Usually, '''FX''' attached to other player characters or to NPCs function normally with this issue and it is specifically and solely the '''Player'''-designated player character that experiences the problem. With this problem, some '''FX''' may play normally for the '''Player''' while others do not.
Previously, demos have at times experienced problems where not all '''FX''' will display properly for the '''Player''' (the specific demo ''entity'' designated by the '''Player''' demo command. Usually, '''FX''' attached to other player characters or to NPCs function normally with this issue and it is specifically and solely the '''Player'''-designated player character that experiences the problem. With this problem, some '''FX''' may play normally for the '''Player''' while others do not.
<!-- People asked me about this and I saw it during I11.  Don't know if resolved with I12. -SB -->
<!-- People asked me about this and I saw it during I11.  Don't know if resolved with I12. -SB -->


This problem can be by-passed by re-designating the ''entity'' designated as the '''Player''' for the demo recording. Although, the '''Player''' is, by default, the POV player character of the demo recording, this designation can be given to another, different ''entity''.   One way this can be done is by adding one of the invisible ''entity'' models, such as ''"Puddle"'' to a demo file and re-designate that ''entity'' as the '''Player'''. To do this begin by finding the current '''Player''' entity in the demo file. For example:
This problem can be by-passed by re-designating the ''entity'' designated as the '''Player''' for the demo recording. Although, the '''Player''' is, by default, the POV player character of the demo recording, this designation can be given to another, different ''entity''. One way this can be done is by adding one of the invisible ''entity'' models, such as ''"Puddle"'' to a demo file and re-designate that ''entity'' as the '''Player'''. To do this begin by finding the current '''Player''' entity in the demo file. For example:


  1 0 Version 2
  1 0 Version 2
Line 67: Line 76:
Where "Super Dude" is currently designated as the '''Player''' and has an '''Entity ID''' of "1".
Where "Super Dude" is currently designated as the '''Player''' and has an '''Entity ID''' of "1".


If this character is having difficulty with an '''FX''' appearing, edit the demo file to insert a new entity as the '''Player'''. Remember that this ''entity'' must be given a new unique '''Entity ID''' distinct from the ID number of the player character with the '''FX''' difficulty. For example:
If this character is having difficulty with an '''FX''' appearing, edit the demo file to insert a new entity as the '''Player'''. Remember that this ''entity'' must be given a new unique '''Entity ID''' distinct from the ID number of the player character with the '''FX''' difficulty. For example:


  1 0 Version 2
  1 0 Version 2
Line 82: Line 91:
  0 1 NEW "Super Dude"
  0 1 NEW "Super Dude"


''Puddle'' is an invisible NPC model, so by inserting ''Puddle'' as the '''Player''' this will remove that designation from the player character model with the '''FX''' difficulty. This will usually restore normal '''FX''' function to the POV player character (which should continue to function normally in spite of losing the '''Player''' designation). As ''Puddle'' is an invisible model, and you are not attaching any other visual effect or action to it apart from bearing the burden of the '''Player''' flag, it will not have any further impact on the demo.
''Puddle'' is an invisible NPC model, so by inserting ''Puddle'' as the '''Player''' this will remove that designation from the player character model with the '''FX''' difficulty. This will usually restore normal '''FX''' function to the POV player character (which should continue to function normally in spite of losing the '''Player''' designation). As ''Puddle'' is an invisible model, and you are not attaching any other visual effect or action to it apart from bearing the burden of the '''Player''' flag, it will not have any further impact on the demo.


[[Category:Player Guides]]
[[Category:Player Guides]]

Latest revision as of 17:51, 28 March 2014

Player Guide Notice
This article is a Player Guide. Paragon Wiki takes no responsibility for the content within.
Questions and concerns should be posed to the authors of the article using the article's talk page.


This guide may be outdated; editors should go to the Titan Forums Demo Recording forum for updated information and resources.

Overview

This article addresses questions and problems with demo editing for which there may be solutions/work-arounds (as opposed to just known issues for which there are no "fixes"). If a demo is having issues with one of the subjects below, the solutions listed are known to usually work.

Model Does Not Appear During Playback

Demo editing frequently includes working with NPC entities in the demo code, such as replacing an existing NPC or NPC model with another, or inserting new NPCs into a demo. When this is done, the problem sometimes arises that the modified or added NPC entity does not appear when the edited demo is played back. When this occurs, there are several possibilities as to why the NPC may not be visible. Some of the most common reasons are as follows:

  • The NPC model name may be invalid or misspelled.
  • The NPC model may be destructible, requiring HP/HPMAX code.
  • The entity may be a mission objective (SEQ) model.
  • The POS values specified for the entity may be "off screen" or underground.
  • The PYR values specified for the entity may have it oriented underground.
  • The position of the Player entity is too far from camera's position.

Model Name Invalid

This is probably the most obvious possibility, but one that bears mentioning. If the model name specified by the NPC command is misspelled or invalid, no model will be displayed during the demo playback. The model name should be checked to make sure that it exists and is spelled correctly.

Destructible Model

How to manage destructible models is discussed in further detail in the Demo Editing How To Info. In relation to this particular issue, an NPC model which is destructible (one which can be damaged or destroyed in-game) will typically not appear during demo playback if it is missing the associated HP and HPMAX demo command lines.

This can be checked by adding both the HP and HPMAX command lines for the NPC, and setting the values for HP to be the same as for HPMAX. This will tell the game engine to use the default or undestroyed appearance for the model, and should cause it to be visible if it is an issue of the model being destructible.

Mission Objective (SEQ) Models

Non-destructible mission objective entities (entities designated by the SEQ command) are not visible during demo playback. If the problem of a model not appearing is associated with an entity being added by the SEQ command (or by trying to use an SEQ model with the NPC command), this is because these entities do not appear during demo playback.

The only known way to circumvent this limitation is to find an NPC-based model with the same appearance as the SEQ-based model has in-game. Given an equivalent NPC-based model, the SEQ command line can be replaced by an NPC command line with this other model. This should cause an equivalent-appearing object to be visible during demo playback.

POS Value Issues

Particularly for users new to demo editing, one possibility for an entity not being visible during demo playback is that there may be a problem with the POS values attached to the entity that is not showing up. The POS command line establishes the position of an entity on the map. If the POS value specified places an entity inside or behind the map geometry or elements (relative to the camera), then it may not be visible when the demo is played back. For example, the POS command could cause an entity to be placed inside a building, behind a wall, or underground.

Additionally, the POS value specified could also place an entity behind the camera, out of visible range, or otherwise "off screen." If an entity is not visible when the demo is played back, check the POS command to make sure the values appear correct for what you intended and place the entity such that it will be visible to the camera.

Also, a very few models use the top of the model as the model "base" when determining the entity's vertical placement. For example, the base of Ms. Liberty's model is at the model's feet, so a POS of 0 0 0 means that, if the ground has an elevation of "0", Ms. Liberty will be above ground and visible. However, for example, the Vanguard shooting range target models use the top of the target as their base. This means that, with a ground level of "0" and a POS of 0 0 0, one of these models will be completely submerged underground, requiring a vertical elevation of its POS values to make it visible.

PYR Value Issues

Similar to the POS issue, though less frequently encountered, the PYR values specified for an entity can cause to not be visible during demo playback. One possibility for this is that the orientation specified by the PYR command may place the entity inside map geometry or underground, similar the situation which can be created by the entity's POS values.

Player Too Far From Camera

Player position determines render distance. If CAM POS is too far from Player POS, objects, as viewed from camera, won't appear.

Player FX Do Not Display

Previously, demos have at times experienced problems where not all FX will display properly for the Player (the specific demo entity designated by the Player demo command. Usually, FX attached to other player characters or to NPCs function normally with this issue and it is specifically and solely the Player-designated player character that experiences the problem. With this problem, some FX may play normally for the Player while others do not.

This problem can be by-passed by re-designating the entity designated as the Player for the demo recording. Although, the Player is, by default, the POV player character of the demo recording, this designation can be given to another, different entity. One way this can be done is by adding one of the invisible entity models, such as "Puddle" to a demo file and re-designate that entity as the Player. To do this begin by finding the current Player entity in the demo file. For example:

1 0 Version 2
0 0 Map maps/City_Zones/Trial_06_01/Trial_06_01.txt
0 0 Time 21.028650
0 CAM POS 1818.146851 -318.060516 9450.268555
0 CAM PYR -0.346 1.370835 0
0 1 Player
0 1 NEW "Super Dude"

Where "Super Dude" is currently designated as the Player and has an Entity ID of "1".

If this character is having difficulty with an FX appearing, edit the demo file to insert a new entity as the Player. Remember that this entity must be given a new unique Entity ID distinct from the ID number of the player character with the FX difficulty. For example:

1 0 Version 2
0 0 Map maps/City_Zones/Trial_06_01/Trial_06_01.txt
0 0 Time 21.028650
0 CAM POS 1818.146851 -318.060516 9450.268555
0 CAM PYR -0.346 1.370835 0
0 50 Player
0 50 NEW "Invisible Placeholder"
0 50 NPC Puddle
0 50 POS 1803.004883 -319.173309 9443.212891
0 50 PYR 0 3.11 0
0 50 MOV READY 0
0 1 NEW "Super Dude"

Puddle is an invisible NPC model, so by inserting Puddle as the Player this will remove that designation from the player character model with the FX difficulty. This will usually restore normal FX function to the POV player character (which should continue to function normally in spite of losing the Player designation). As Puddle is an invisible model, and you are not attaching any other visual effect or action to it apart from bearing the burden of the Player flag, it will not have any further impact on the demo.