LOGO FLAGS: Difference between revisions

From EDukeWiki
Jump to navigation Jump to search
Fox (talk | contribs)
No edit summary
mNo edit summary
 
(11 intermediate revisions by 6 users not shown)
Line 1: Line 1:
LOGO_FLAGS is a [[gamevar]] that controls the appearance of the introduction and menu.
LOGO_FLAGS is a [[gamevar]] that controls the appearance of the introduction and menu.


It is a [[bitfield]]. The values are:
It is a [[bitfield]]. The default value is 255, i.e. all the bits below 256 are set.


'''1'''    - LOGO_FLAG_ENABLED<br />
== Usage ==
'''2'''    - LOGO_FLAG_PLAYANIM<br />
'''4'''    - LOGO_FLAG_PLAYMUSIC<br />
'''8'''    - LOGO_FLAG_3DRSCREEN<br />
'''16'''  - LOGO_FLAG_TITLESCREEN<br />
'''32'''  - LOGO_FLAG_DUKENUKEM<br />
'''64'''  - LOGO_FLAG_THREEDEE<br />
'''128'''  - LOGO_FLAG_PLUTOPAKSPRITE<br />
'''256'''  - LOGO_FLAG_SHAREWARESCREENS<br />
'''512'''  - LOGO_FLAG_TENSCREEN<br />
'''1024''' - LOGO_FLAG_STOPANIMSOUNDS<br />
'''2048''' - LOGO_FLAG_NOE4CUTSCENE<br />


(The names following the numeric values are merely informational, they do not denote labels predefined from CON.)<br/>
While the variable name is referenced in the source code, the variable itself is not predefined. This means that in order to make use of it, the user will need to define it himself.
The default value is 255. That is, all the bits below 256 are set.
 
'''Example:'''
gamevar LOGO_FLAGS 255 0
 
'''Furthermore, any value stored in this variable at runtime will not persist throughout the entire session.''' As the variable behaves just like any regular Duke3D gamevar, it will be reset to its defined default value when starting a ''New Game''. It will also potentially be altered when loading a Save. Therefore, in order to have the value remain constant, it is required to specify the bitmask directly as the default value of the gamevar definition.
 
At the same time, this behavior can also be exploited to define more fine-grained behavior. For instance, one can use this to only display the startup logo sequence when the game session is first launched, but not when the "Return to Title" menu option is selected.
 
'''Example:'''
gamevar LOGO_FLAGS 0 0
// Only execute the startup animations on first launch
onevent EVENT_INITCOMPLETE
    set LOGO_FLAGS 255
endevent
 
== Flags ==
 
{{Logo flags}}


[[Category:Bitfields]]
[[Category:Bitfields]]
[[Category:Pre-defined gamevars]]
[[Category:Pre-defined gamevars]]

Latest revision as of 01:38, 9 September 2020

LOGO_FLAGS is a gamevar that controls the appearance of the introduction and menu.

It is a bitfield. The default value is 255, i.e. all the bits below 256 are set.

Usage

While the variable name is referenced in the source code, the variable itself is not predefined. This means that in order to make use of it, the user will need to define it himself.

Example:

gamevar LOGO_FLAGS 255 0

Furthermore, any value stored in this variable at runtime will not persist throughout the entire session. As the variable behaves just like any regular Duke3D gamevar, it will be reset to its defined default value when starting a New Game. It will also potentially be altered when loading a Save. Therefore, in order to have the value remain constant, it is required to specify the bitmask directly as the default value of the gamevar definition.

At the same time, this behavior can also be exploited to define more fine-grained behavior. For instance, one can use this to only display the startup logo sequence when the game session is first launched, but not when the "Return to Title" menu option is selected.

Example:

gamevar LOGO_FLAGS 0 0

// Only execute the startup animations on first launch
onevent EVENT_INITCOMPLETE
    set LOGO_FLAGS 255
endevent

Flags

The following values are used with LOGO_FLAGS.

Exposed Value Label Description
No 1 LOGO_ENABLED If 0, will disable the entire logo startup sequence.
No 2 LOGO_PLAYANIM If 0, will disable playback of the logo.anm/logo.ivf animation (e.g. the Nuke logo).
No 4 LOGO_PLAYMUSIC If 0, will disable music on the main menu.
No 8 LOGO_3DRSCREEN If 0, will disable the 3DRealms screen before the "Duke Nukem 3D" logo sequence.
No 16 LOGO_TITLESCREEN If 0, will disable the entire "Duke Nukem 3D" title animation.
No 32 LOGO_DUKENUKEM If 0, will prevent the "Duke Nukem" logo tile from appearing on the title screen.
No 64 LOGO_THREEDEE If 0, will prevent the "3D" tile from appearing on the title screen.
No 128 LOGO_PLUTOPAKSPRITE If 0, will prevent the "ATOMIC" tile from appearing on the title screen.
No 256 LOGO_SHAREWARESCREENS If 1, will enable the two screens that normally only appear when quitting the game using the shareware GRP.
No 512 LOGO_TENSCREEN If 1, will enable the "PLAY ON TEN" screen to appear when quitting the game.
No 1024 LOGO_STOPANIMSOUNDS If 1, will prevent the sound of the logo animation from overlapping into the title screen.
No 2048 LOGO_NOE4CUTSCENE If 1, will disable the Episode 4 intro cutscene.
No 4096 LOGO_NOE1BONUSSCENE If 1, will disable the Episode 1 ending cutscene.
No 8192 LOGO_NOE2BONUSSCENE If 1, will disable the Episode 2 ending cutscene.
No 16384 LOGO_NOE3BONUSSCENE If 1, will disable the Episode 3 ending cutscene.
No 32768 LOGO_NOE4BONUSSCENE If 1, will disable the Episode 4 ending cutscene.
No 65536 LOGO_NOE1ENDSCREEN If 1, will disable the Episode 1 ending story screens.
No 131072 LOGO_NOE2ENDSCREEN If 1, will disable the Episode 2 ending story screens.
No 262144 LOGO_NOE3RADLOGO If 1, disables the Episode 3 ending screen after the cutscene.
No 524288 LOGO_NODUKETEAMTEXT If 1, disables the "thanks for giving us Big Heads" screen that appears at the end of Episode 4.
No 1048576 LOGO_NODUKETEAMPIC If 1, disables the 3DRealms team screen that appears at the end of either E3 or E4, depending on whether the expansion is present.
No 2097152 LOGO_STOPMISCSOUNDS If 1, disables the hardcoded sound NITEVISION_ONOFF (index 213) that occurs when the logo sequence ends.
No 4194304 LOGO_NOGAMETITLE If 1, removes the "Duke Nukem 3D" logo tile, as well as the "ATOMIC" tile on the main menu.
No 8388608 LOGO_NOTITLEBAR If 1, removes the background tile of the submenu title bar.
No 16777216 LOGO_HIDEEPISODE If 1, prevents the episode name from being displayed on the automap.
No 33554432 LOGO_NOHELP If 1, removes the "Help" option from the main menu, and makes it inaccessible through pressing F1. Note that the removal of the menu entry is done exactly once at startup, and cannot be toggled thereafter.
No 67108864 LOGO_NOCREDITS If 1, removes the "Credits" option from the main menu. Note that the removal of the menu entry is done exactly once at startup, and cannot be toggled thereafter.
Defines
define LOGO_ENABLED                     0x00000001
define LOGO_PLAYANIM                    0x00000002
define LOGO_PLAYMUSIC                   0x00000004
define LOGO_3DRSCREEN                   0x00000008
define LOGO_TITLESCREEN                 0x00000010
define LOGO_DUKENUKEM                   0x00000020
define LOGO_THREEDEE                    0x00000040
define LOGO_PLUTOPAKSPRITE              0x00000080
define LOGO_SHAREWARESCREENS            0x00000100
define LOGO_TENSCREEN                   0x00000200
define LOGO_STOPANIMSOUNDS              0x00000400
define LOGO_NOE4CUTSCENE                0x00000800
define LOGO_NOE1BONUSSCENE              0x00001000
define LOGO_NOE2BONUSSCENE              0x00002000
define LOGO_NOE3BONUSSCENE              0x00004000
define LOGO_NOE4BONUSSCENE              0x00008000
define LOGO_NOE1ENDSCREEN               0x00010000
define LOGO_NOE2ENDSCREEN               0x00020000
define LOGO_NOE3RADLOGO                 0x00040000
define LOGO_NODUKETEAMTEXT              0x00080000
define LOGO_NODUKETEAMPIC               0x00100000
define LOGO_STOPMISCSOUNDS              0x00200000
define LOGO_NOGAMETITLE                 0x00400000
define LOGO_NOTITLEBAR                  0x00800000
define LOGO_HIDEEPISODE                 0x01000000
define LOGO_NOHELP                      0x02000000
define LOGO_NOCREDITS                   0x04000000