Gah - a solution with more questions. – EntropicLqd
Legacy:DeusExWeapon (DX)
Contents
DeusExWeapon (DX)[edit]
What does it do the original Weapon doesn't?[edit]
- First of all, touching it won't get into your inventory, only Frobbing it.
- There will be a [ ] around it, with the weapon name shown.
- There can only be one thing in a belt slot at one time.
- Single Player - they take up spaces in the inventory.
- Multi Player - they are only allowed on the first three beltslots by default.
Functions for weapons[edit]
(note: some of these functions ARE available to the normal Weapon class.)
- TestMPBeltSlot(int beltslot)
- simulated bool function allowing you to change which beltslot this weapon is on.
- WeaponDamageType()
- name function, returns the damagetype name.
- ProcessTraceHit(blablabla)
- a function that allows you to make effects for an instanthit weapon. Has 6 arguments, if someone has time, he can replace blablabla.
- ...Toggle
- triggered on toggling ... . ... can be either scope or laser.
- ...On/...Off
- triggered when turning on/off ... . ... can be either scope or laser.
- CycleAmmo
- called when pressing the cycle ammotype button (which changes the ammotype to the next in ammonames[3] if you have some of it by default)
Enums[edit]
EEnviroEffective[edit]
- ENVEFF_All
- This weapon can be used in all environments.
- ENVEFF_Air
- This weapon can be used on open air only.
- ENVEFF_Vacuum
- This weapon can only be used in vacuum.
- ENVEFF_Water
- This weapon can only be used underwater.
- ENVEFF_AirWater
- This weapon can be used underwater and in open air too.
- ENVEFF_AirVacuum
- This weapon can be used in open air and in vacuum too.
- ENVEFF_WaterVacuum
- This weapon cannot be used on open air.
EEnemyEffective[edit]
- ENMEFF_All
- This weapon is effective to all enemies.
- ENMEFF_Organic
- This weapon is only effective versus living things.
- ENMEFF_Robot
- This weapon is only effective against robots.
EConcealability[edit]
- CONC_None
- This weapon cannot be concealed from ScriptedPawns.
- CONC_Visual
- I don't know this yet, please replace.
- CONC_Metal
- This weapon can only be concealed while near metal things.
- CONC_All
- This weapon will always remain concealed from enemy AIs.
ELockMode[edit]
- LOCK_None
- This weapon either cannot lock on or doesn't have a target to lock on.
- LOCK_Invalid
- This weapon cannot lock on the target, because it's friendly.
- LOCK_Range
- Target valid person cannot be locked on because he's out of range.
- LOCK_Acquire
- The weapon is acquiring the target.
- LOCK_Locked
- The weapon has locked on the target.
EAreaType[edit]
- AOE_Point
- All damage is concentrated in one point.
- AOE_Cone
- All damage is concentrated in one cone (for example, an explosion ring)
- AOE_Sphere
- All damage is concentrated in one sphere (for example, a rocket's explosion)
Properties for DeusExWeapon[edit]
(note: all of these properties are declared in DeusExWeapon. Deus Ex uses Unreal Engine 1, any similarity of properties in other engines are not to be discussed here.)
- LowAmmoWaterMark
- the number of ammo in clip from the game starts marking it as "low". (int)
- GoverningSkill
- the skill that affects this weapon. (class<skill>)
- NoiseLevel
- how much noise does this weapon make when fired? (travel, float)
- EnemyEffective
- the enemies this weapon is effective against (EEnemyEffective)
- EnviroEffective
- the environments this weapon is effective in. (EEnviroEffective)
- Concealability
- the weapon's concealability (EConcealability)
- bAutomatic
- is this an automatic weapon? (travel, bool)
- shotTime
- how long after shooting you can shoot again? (travel, float)
- reloadTime
- how long is it to reload this weapon? (travel, float)
- hitDamage
- damage done by a single shot/slug (int)
- maxRange
- the maximum range this weapon can shoot till (real world units, so you need to divide by 16) (int)
- accurateRange
- the range at your weapon is still accurate (same calculation as above) (travel, int)
- baseAccuracy
- the base accuracy of the weapon (0.0 is dead on, 1.0 is far off) (travel, float)
- bCanHave...
- (singleplayer only) which weaponmods can this weapon have? (see modding a weapon section) (bool)
- bHasScope
- does this weapon have a scope? (travel, bool)
- ScopeFOV
- field of view while scoping? (int)
- bHasLaser
- does this weapon have a laser? (travel, bool)
- bHasSilencer
- does this weapon have a silencer? (travel, bool)
- bCanTrack
- can one of this weapon's projectiles track an enemy? (bool)
- lockTime
- how long does it take to lock on an enemy? (float)
- lockedSound
- sound played while the weapon is locked on (Sound)
- trackingSound
- sound player while tracking (Sound)
- ammoNames[3]
- ammotypes of this weapon (class<Ammo>)
- projectileNames[3]
- projectileclasses of this weapon (class<Projectile>)
- areaOfEffect
- area of effect of the weapon (EAreaType)
- bPenetrating
- shot will penetrate and cause blood (bool)
- StunDuration
- how long does this weapon stun for? (float)
- bHasMuzzleFlash
- does this weapon flash when fired? (bool)
- bHandToHand
- is this a weapon without ammo? (bool)
- recoilStrength
- how strong does this weapon recoil? (travel, float)
Modding a weapon[edit]
There are certain WeaponMod pickups extending DeusExPickup. They aren't weapons after all, rather, they are used to power-up weapons in singleplayer (in multiplayer, it's useless as there is no inventory screen).
Weapon mods[edit]
- WeaponModAccuracy
- Increases the BaseAccuracy of the weapon
- WeaponModClip
- Increases clip size of the weapon
- WeaponModLaser
- Attaches Laser Sight to the weapon
- WeaponModRange
- Increases weapon's accurateRange
- WeaponModRecoil
- Reduces weapon recoil
- WeaponModReload
- Reduces reloadTime of your weapon
- WeaponModScope
- Attaches a Scope to the weapon
- WeaponModSilencer
- Attaches a Silencer to the weapon
Weapons using mods[edit]
Of course, some of the weapons cannot take some mods. Like, imagine a rocket launcher with a silencer... Impossible, ain't it?
These are set by the properties "bCanHave..."
- ... should be replaced by one of the following things. What it allows is obvious.
- ModBaseAccuracy
- ModAccurateRange
- ModRecoilStrength
- ModReloadTime (reload)
- ModReloadCount (clip)
- Scope
- Laser
- Silencer
The End[edit]
That would be our beloved DeusExWeapon. Hope this page will help the future modders of the game's small community.