Editing EDF weapon reference

From Eternity Wiki
Jump to navigationJump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 5: Line 5:
New objects, created via EDF files or wad lumps, can be later tweaked with weapon deltas. New weapon info should not be given a '''dehackednum''' property, as this is reserved solely for internal weapons so that mods that modify weapons with DeHackEd (BEX) patches remain compatible with Eternity.
New objects, created via EDF files or wad lumps, can be later tweaked with weapon deltas. New weapon info should not be given a '''dehackednum''' property, as this is reserved solely for internal weapons so that mods that modify weapons with DeHackEd (BEX) patches remain compatible with Eternity.


{{See|Weapon info flags}}
{{See|User:Altazimuth/Weapon info flags}}
{{Backto|EDF}}
{{Backto|EDF}}


Line 40: Line 40:
   flashstate2            <frame>
   flashstate2            <frame>
   holdstate2            <frame>
   holdstate2            <frame>
  fullscreenoffset      <number>
    
    
   ammouse                <number>
   ammouse                <number>
   ammouse2              <number>
   ammouse2              <number>
    
    
   selectionorder        <floating-point number>
   selectionorder        <number>
   slotnumber            <number>
   slotnumber            <number>
   slotselectionorder    <floating-point number>
   slotselectionorder    <floating-point number>
Line 58: Line 56:
   mod                    <MOD name OR number>
   mod                    <MOD name OR number>
    
    
   recoil                <floating-point number>
   recoil                <number>
   hapticrecoil          <number>
   hapticrecoil          <number>
   haptictime            <number>
   haptictime            <number>
Line 76: Line 74:
:Default = (nothing)
:Default = (nothing)
:Sets the weapon info from which this will copy properties. All of the properties except '''dehackednum''' will be copied from the base actor type.
:Sets the weapon info from which this will copy properties. All of the properties except '''dehackednum''' will be copied from the base actor type.
====Ammunition====
*'''ammotype'''
:The [[EDF item effects and inventory|artifact]] of the inventory type to consume when firing. Omit this if weapon consumes no ammo.
*'''ammouse'''
:Default: 0
:Sets the number of ammo items to consume per shot. If not set, it will not consume ammo.
*'''ammotype2
:The ammo type for the optional alternative fire.
*'''ammouse2'''
:Default: 0
:Sets the number of optional alternative ammo items to consume per shot. If not set, it will not consume ammo.


====States====
====States====
Line 122: Line 109:
*'''upstate'''
*'''upstate'''
:Default = S_NULL
:Default = S_NULL
:Sets the frame which a weapon starts in when it is raised. If the object is supposed to have any dynamic purpose or be visible, do not leave the '''upstate''' at S_NULL. Equivalent to the '''Select''' Decorate state.
:Sets the frame which a weapon starts in when it is raised.If the object is supposed to have any dynamic purpose or be visible, do not leave the '''upstate''' at S_NULL.
*'''downstate'''
*'''downstate'''
:Default = S_NULL
:Default = S_NULL
:Sets the frame which a weapon starts in when it is being lowered. If the object is supposed to have any dynamic purpose or be visible, do not leave the '''downstate''' at S_NULL. Equivalent to the '''Deselect''' Decorate state.
:Sets the frame which a weapon starts in when it is being lowered. If the object is supposed to have any dynamic purpose or be visible, do not leave the '''downstate''' at S_NULL.
*'''readystate'''
*'''readystate'''
:Default = S_NULL
:Default = S_NULL
:Sets the frame which a weapon starts in when it is ready to be fired. If the object is supposed to have any dynamic purpose or be visible, do not leave the '''readystate''' at S_NULL. Equivalent to the '''Ready''' Decorate state.
:Sets the frame which a weapon starts in when it is ready to be fired. If the object is supposed to have any dynamic purpose or be visible, do not leave the '''readystate''' at S_NULL.
*'''attackstate'''
*'''attackstate'''
:Default = S_NULL
:Default = S_NULL
:Sets the frame which a weapon goes to if the user tries to perform a primary attack. Though not necessary, it is suggested for weapons to have an attackstate for primary firing purposes. Equivalent to the '''Fire''' Decorate state.
:Sets the frame which a weapon goes to if the user tries to perform a primary attack. Though not necessary, it is suggested for weapons to have an attackstate for primary firing purposes.
*'''flashstate'''
*'''flashstate'''
:Default = S_NULL
:Default = S_NULL
:Sets the frame which a weapon jumps to if a [[List of codepointers|codepointer]] causes a weapon to flash. Equivalent to the '''Flash''' Decorate state.
:Sets the frame which a weapon jumps to if a [[List of codepointers|codepointer]] causes a weapon to flash.
*'''holdstate'''
*'''holdstate'''
:Default = S_NULL
:Default = S_NULL
:Sets the frame jumped to by [[ReFire|A_ReFire]] if the player is still holding the primary attack button. Equivalent to the '''Hold''' Decorate state. New to Heretic.
:Sets the frame jumped to by [[ReFire|A_ReFire]] if the player is still holding the primary attack button.
*'''attackstate2''', '''flashstate2''', '''holdstate2'''
*'''attackstate2''', '''flashstate2''', '''holdstate2'''
:Default = S_NULL
:Default = S_NULL
: The equivalent of '''attackstate''', '''flashstate''', and '''holdstate''', but for alternate fire. Equivalent to '''AltFire''', '''AltFLash''', '''AltHold''' respectively from the Decorate syntax.
: The equivalent of '''attackstate''', '''flashstate''', and '''holdstate''', but for alternate fire.
*'''fullscreenoffset'''
: Amount to move weapon when going fullscreen, without status bar. Needed by some Heretic weapons.


====Selection Order and Weapon Slots====
====Selection Order and Weapon Slots====
*'''selectionorder'''
*'''selectionorder'''
:Default = -1.0
:Default = -1
:Sets the priority for selection of the weapon. The lower the number, the higher its priority.
:Sets the priority for selection of the weapon. The lower the number, the higher its priority.
*'''slotnumber'''
*'''slotnumber'''
Line 170: Line 155:
:Default = ""
:Default = ""
:This field specifies a combined list of flags to be subtracted from the weapon's existing flags values (this works the same as the flags field above). Flags in this list are "turned off" in the weapon, as if they had never been listed. If flags are listed here which are not already "on," there is no effect on those flags. This field is most useful within weapondelta sections and in concert with weapon info inheritance. This field will be applied AFTER the addflags field is applied, so it could potentially turn off flags turned on by that field.
:This field specifies a combined list of flags to be subtracted from the weapon's existing flags values (this works the same as the flags field above). Flags in this list are "turned off" in the weapon, as if they had never been listed. If flags are listed here which are not already "on," there is no effect on those flags. This field is most useful within weapondelta sections and in concert with weapon info inheritance. This field will be applied AFTER the addflags field is applied, so it could potentially turn off flags turned on by that field.
=====List of flags=====
*'''NOTHRUST''': prevents weapon from thrusting others by damage.
*'''NOHITGHOSTS''': prevents hitscan attacks fired by this weapon from hitting '''GHOST''' targets.
*'''NOTSHAREWARE''': disable this weapon from shareware versions of the game.
*'''DISABLEAPS''': for compatibility uses, this disables the ammo-per-shot field.
*'''SILENCEABLE''': weapon can be silenced by the silencer powerup.
*'''SILENT''': weapon is always silent
*'''NOAUTOFIRE''': prevents refiring if player presses fire before switching to this weapon. The Doom rocket launcher and BFG9000 have this flag.
*'''FLEEMELEE''': weapon causes monsters to flee if enabled to so in settings.
*'''ALWAYSRECOIL''': weapon always causes recoil, even if the setting is disabled.
*'''HAPTICRECOIL''': causes haptic feedback on recoil.
*'''READYSNDHALF''': if it has a ready sound, only play it half the time.
*'''AUTOSWITCHFROM''': change current weapon to something better if ammo is found.
*'''POWEREDUP''': weapon is marked as powered-up by the Tome (as in Heretic).
*'''FORCETOREADY''': force state to ready if weapon is powered/unpowered by Tome.
*'''PHOENIXRESET''': special flag to support Phoenix Rod's peculiar behaviour when switched by Tome.
*'''DEPOWERSWITCH''': causes weapon to visually lower and raise when Tome of Power runs out.
====Damage Properties====
*'''mod'''
:Default = UNKNOWN (0)
:Originally standing for "Means of Death", this field allows you to associate a '''[[damagetype]]''' to the weapon info (though this property needs to be applied to projectiles for non-hitscan weapons). Then, you'll be able to make thing types resistant to the given damage type by using the thingtype '''damagefactor''' field. You can give them specific pain or death states as well. This property also have the role in multiplayer to specify what obituaries are shown depending on which weapon the player uses.
:The mnemonics were initially hard-coded, but are now available inside ''base\things.edf'' as '''damagetype''' blocks. Notice that the default damage types (means of death) have been differentiated for each player attack, as well as for the various slime types and whatnot, so as to have the obituaries differentiated.
====Recoil & Haptics Properties====
*'''recoil'''
:Default = 0.0
:This field designates the backwards thrust provided to the player when they fire the weapon (in 32nds of map-units). By default users have to opt-in to weapons having recoil, but if the flag ALWAYSRECOIL is set on the weapon then it will cause recoil regardless of the player's settings.
Please note that all contributions to Eternity Wiki are considered to be released under the GNU Free Documentation License 1.2 (see Eternity Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!
Cancel Editing help (opens in new window)

Templates used on this page: