#name "grenadeweapon" #dll "configstringconvert" #target_dir "weapons/sp/" // target location 1 (single-player) #target_dir "weapons/mp/" // target location 2 (multi-player) #file_ext "*" // This tells the configstring converter what the file type identifier should be enum { "WEAPONFILE" } configstringFileType // This uses the config string convert's multi-target folder // mechanism to make the weapon either a single-player weaons // or a multi-player weapon. // The first character is used to specify which target folder to go in enum { "1: Single-Player", "2: Multi-Player" } targetFolder // Because the first entry is the default value, this // Will set the weaponType to "grenade" enum { "grenade", "bullet", "projectile" } weaponType enum { "grenade", "rifle", "mg", "smg", "lmg", "pistol", "rocketlauncher", "flamethrower", "turret", "non-player" } weaponClass string displayName string AIOverlayDescription string modeName string gunModel string handModel string idleAnim string emptyIdleAnim string fireAnim string holdFireAnim string lastShotAnim string meleeAnim string raiseAnim string dropAnim string altRaiseAnim string altDropAnim enum { "grenade", "smokegrenade", "none", "pistol", "primary", "satchel", "binocular" } weaponSlot int 0 0 1 slotStackable float 1 0 5 moveSpeedScale int 0 0 1000 damage int 0 0 1000 meleeDamage int 100 0 100 minDamagePercent float 0.1 0 10.0 fireDelay float 0.25 0.05 10.0 meleeDelay float 0.1 0.0 10.0 fireTime float 0.1 0.0 10.0 holdFireTime float 0.7 0.0 10.0 meleeTime float 2.0 0.0 10.0 reloadTime float 0.5 0.0 10.0 dropTime float 0.5 0.0 10.0 raiseTime float 0.5 0.0 10.0 altDropTime float 0.5 0.0 10.0 altRaiseTime float 4 0 100 fuseTime float 1 0 2 vehiclescale int 1 0 1 clipOnly int 0 0 1 takeDamage int 80 0 150 hipIdleAmount float 0.5 0 1 idleCrouchFactor float 0.15 0 1 idleProneFactor float 1 1 10 adsSensitivity float 30 0 180 swayMaxAngle float 6 1 50 swayLerpSpeed float 0.1 -2 2 swayPitchScale float 0.1 -2 2 swayYawScale float 0.1 -2 2 swayHorizScale float 0.1 -2 2 swayVertScale float 5 0 20 swayShellShockScale // info for filling in the gitem_t for the weapon string radiantName string worldModel string pickupModel string hudIcon string modeIcon string ammoIcon string ammoName int 100 0 999 maxAmmo int 0 0 999 startAmmo string clipName int 10 0 999 clipSize string sharedAmmoCapName int 0 0 999 sharedAmmoCap int 0 0 999 dropAmmoMin int 0 0 999 dropAmmoMax // client-side info //string viewFlashEffect //string worldFlashEffect string pickupSound string ammoPickupSound string pullbackSound string fireSound string lastShotSound string reloadSound string altSwitchSound string raiseSound string putawaySound string noteTrackSoundA string noteTrackSoundB string noteTrackSoundC string noteTrackSoundD string reticleCenter string reticleSide int 32 1 480 reticleCenterSize int 16 1 480 reticleSideSize int 4 0 480 reticleMinOfs // additional weapon info string altWeapon int 1 0 1 twoHanded int 0 0 1 cookOffHold int 0 0 1 cloth int 1 0 1 wideListIcon string killIcon int 1 0 1 wideKillIcon // settings for view model position movement float -14 -100 100 sprintMoveF float -10 -100 100 sprintMoveR float -14 -100 100 sprintMoveU float 0 -100 100 sprintRotP float 0 -100 100 sprintRotY float 0 -100 100 sprintRotR float 0 -100 100 standMoveF float 1 -100 100 standMoveR float -1.5 -100 100 standMoveU float 0 -100 100 standRotP float 0 -100 100 standRotY float 0 -100 100 standRotR float -2 -100 100 duckedOfsF float 2 -100 100 duckedOfsR float -0.2 -100 100 duckedOfsU float 0 -100 100 duckedMoveF float 1 -100 100 duckedMoveR float -1.5 -100 100 duckedMoveU float 0 -100 100 duckedRotP float 0 -100 100 duckedRotY float 0 -100 100 duckedRotR float -6 -100 100 proneOfsF float 3.5 -100 100 proneOfsR float 0.8 -100 100 proneOfsU float 0 -100 100 proneMoveF float 1 -100 100 proneMoveR float -1.5 -100 100 proneMoveU float 0 -100 100 proneRotP float 0 -100 100 proneRotY float 0 -100 100 proneRotR float 4 0 100 posMoveRate float 10 0 100 posProneMoveRate float 110 0 1000 sprintMoveMinSpeed float 110 0 1000 standMoveMinSpeed float 60 0 1000 duckedMoveMinSpeed float 0 0 1000 proneMoveMinSpeed float 5 0 100 posRotRate float 10 0 100 posProneRotRate float 110 0 1000 sprintRotMinSpeed float 110 0 1000 standRotMinSpeed float 60 0 1000 duckedRotMinSpeed float 0 0 1000 proneRotMinSpeed // additional grenade weapon info int 300 0 10000 explosionRadius int 10 0 10000 explosionInnerDamage int 10 0 10000 explosionOuterDamage int 600 0 10000 projectileSpeed int 0 0 10000 projectileSpeedUp string projectileModel enum { "grenade", "smoke", "rocket", "molotov", "none" } projExplosionType string projExplosionEffect string projExplosionSound enum { "none", "grenade", "rocket" } projectileTrail float 1.0 0 100 projectileTrailTime int 32 1 1000 projectileTrailRadius int 0 0 1 projImpactExplode vcontainer { scrollbox(targetFolder) [ exec { width(300) } ] hcontainer { edit(displayName) edit(modeName) } hcontainer { edit(AIOverlayDescription) } hcontainer { floatedit(moveSpeedScale, 0.1, 1) floatedit(vehiclescale, 0.1, 1) } hcontainer { spinedit(damage, 1, 10) spinedit(meleeDamage, 1, 10) } checkbox(projImpactExplode) hcontainer { spinedit(explosionInnerDamage, 1, 10) spinedit(explosionOuterDamage, 1, 10) spinedit(explosionRadius, 10, 50) } hcontainer { spinedit(projectileSpeed, 10, 100) spinedit(projectileSpeedUp, 10, 100) floatedit(fuseTime, 0.1, 1) } checkbox(cookOffHold) checkbox(twoHanded) checkbox(cloth) checkbox(wideListIcon) fileedit(killIcon) [ exec { reldir("game/uo/") } ] checkbox(wideKillIcon) fileedit(projectileModel) [ exec { reldir("game/uo/") } ] hcontainer { scrollbox(projExplosionType) fileedit(projExplosionEffect) [ exec { reldir("game/uo/") width(400) } ] } edit(projExplosionSound) hcontainer { scrollbox(projectileTrail) floatedit(projectileTrailTime, 0.1, 1) spinedit(projectileTrailRadius, 1, 5) } hcontainer { floatedit(fireDelay, 0.05, 0.2) floatedit(meleeDelay, 0.05, 0.2) } hcontainer { floatedit(fireTime, 0.05, 0.2) floatedit(meleeTime, 0.05, 0.2) } hcontainer { floatedit(holdFireTime, 0.05, 0.2) } hcontainer { floatedit(reloadTime, 0.05, 0.2) } hcontainer { floatedit(dropTime, 0.05, 0.2) floatedit(raiseTime, 0.05, 0.2) } hcontainer { floatedit(altDropTime, 0.05, 0.2) floatedit(altRaiseTime, 0.05, 0.2) } hcontainer { floatedit(idleCrouchFactor, 0.01, 0.1) floatedit(idleProneFactor, 0.01, 0.1) } // seperator hcontainer { } spinedit(hipIdleAmount, 1, 10) hcontainer { floatedit(swayMaxAngle, 0.05, 0.1) [ exec { width(270) // optional custom width labelwidth(170) // optional custom width } ] } hcontainer { floatedit(swayLerpSpeed, 0.05, 0.1) [ exec { width(270) // optional custom width labelwidth(170) // optional custom width } ] } hcontainer { floatedit(swayPitchScale, 0.05, 0.1) [ exec { width(270) // optional custom width labelwidth(170) // optional custom width } ] } hcontainer { floatedit(swayYawScale, 0.05, 0.1) [ exec { width(270) // optional custom width labelwidth(170) // optional custom width } ] } hcontainer { floatedit(swayHorizScale, 0.05, 0.1) [ exec { width(270) // optional custom width labelwidth(170) // optional custom width } ] } hcontainer { floatedit(swayVertScale, 0.05, 0.1) [ exec { width(270) // optional custom width labelwidth(170) // optional custom width } ] } floatedit(swayShellShockScale, 0.05, 0.1) [ exec { width(270) // optional custom width labelwidth(170) // optional custom width } ] // seperator hcontainer { } // info for filling in the gitem_t for the weapon edit(radiantName) fileedit(worldModel) [ exec { reldir("game/uo/") } ] fileedit(pickupModel) [ exec { reldir("game/uo/") } ] fileedit(hudIcon) [ exec { reldir("game/uo/") } ] fileedit(modeIcon) [ exec { reldir("game/uo/") } ] fileedit(ammoIcon) [ exec { reldir("game/uo/") } ] hcontainer { edit(ammoName) spinedit(maxAmmo, 10, 20) spinedit(startAmmo, 1, 10) } hcontainer { edit(clipName) spinedit(clipSize, 1, 10) checkbox(clipOnly) } hcontainer { checkbox(takeDamage) } hcontainer { edit(sharedAmmoCapName) spinedit(sharedAmmoCap, 10, 20) } hcontainer { spinedit(dropAmmoMin, 1, 10) [ exec { width(270) // optional custom width labelwidth(170) // optional custom width } ] spinedit(dropAmmoMax, 1, 10) [ exec { width(270) // optional custom width labelwidth(170) // optional custom width } ] } fileedit(reticleCenter) [ exec { reldir("game/uo/") } ] // fileedit(reticleSide) // [ // exec // { // reldir("game/uo/") // } // ] // hcontainer // { spinedit(reticleCenterSize, 1, 2) // spinedit(reticleSideSize, 1, 2) // spinedit(reticleMinOfs, 1, 2) // } // seperator hcontainer { } // fileedit(viewFlashEffect) // [ // exec // { // reldir("game/uo/") // } // ] // fileedit(worldFlashEffect) // [ // exec // { // reldir("game/uo/") // } // ] edit(pickupSound) edit(ammoPickupSound) edit(pullbackSound) edit(fireSound) edit(lastShotSound) edit(reloadSound) edit(altSwitchSound) edit(raiseSound) edit(putawaySound) edit(noteTrackSoundA) edit(noteTrackSoundB) edit(noteTrackSoundC) edit(noteTrackSoundD) // seperator hcontainer { } hcontainer { scrollbox(weaponSlot) checkbox(slotStackable) } scrollbox(weaponClass) edit(altWeapon) // seperator hcontainer { } hcontainer { floatedit(sprintMoveF, 0.1, 1) floatedit(sprintMoveR, 0.1, 1) floatedit(sprintMoveU, 0.1, 1) } hcontainer { floatedit(sprintRotP, 0.1, 1) floatedit(sprintRotY, 0.1, 1) floatedit(sprintRotR, 0.1, 1) } hcontainer { floatedit(standMoveF, 0.1, 1) floatedit(standMoveR, 0.1, 1) floatedit(standMoveU, 0.1, 1) } hcontainer { floatedit(standRotP, 0.1, 1) floatedit(standRotY, 0.1, 1) floatedit(standRotR, 0.1, 1) } hcontainer { floatedit(duckedOfsF, 0.1, 1) floatedit(duckedOfsR, 0.1, 1) floatedit(duckedOfsU, 0.1, 1) } hcontainer { floatedit(duckedMoveF, 0.1, 1) floatedit(duckedMoveR, 0.1, 1) floatedit(duckedMoveU, 0.1, 1) } hcontainer { floatedit(duckedRotP, 0.1, 1) floatedit(duckedRotY, 0.1, 1) floatedit(duckedRotR, 0.1, 1) } hcontainer { floatedit(proneOfsF, 0.1, 1) floatedit(proneOfsR, 0.1, 1) floatedit(proneOfsU, 0.1, 1) } hcontainer { floatedit(proneMoveF, 0.1, 1) floatedit(proneMoveR, 0.1, 1) floatedit(proneMoveU, 0.1, 1) } hcontainer { floatedit(proneRotP, 0.1, 1) floatedit(proneRotY, 0.1, 1) floatedit(proneRotR, 0.1, 1) } hcontainer { floatedit(posMoveRate, 0.1, 1) floatedit(posProneMoveRate, 0.1, 1) } hcontainer { floatedit(sprintMoveMinSpeed, 1, 10) [ exec { width(210) labelwidth(150) } ] floatedit(standMoveMinSpeed, 1, 10) [ exec { width(210) labelwidth(150) } ] floatedit(duckedMoveMinSpeed, 1, 10) [ exec { width(210) labelwidth(150) } ] floatedit(proneMoveMinSpeed, 1, 10) [ exec { width(210) labelwidth(150) } ] } hcontainer { floatedit(posRotRate, 0.1, 1) floatedit(posProneRotRate, 0.1, 1) } hcontainer { floatedit(sprintRotMinSpeed, 1, 10) [ exec { width(210) labelwidth(150) } ] floatedit(standRotMinSpeed, 1, 10) [ exec { width(210) labelwidth(150) } ] floatedit(duckedRotMinSpeed, 1, 10) [ exec { width(210) labelwidth(150) } ] floatedit(proneRotMinSpeed, 1, 10) [ exec { width(210) labelwidth(150) } ] } fileedit(gunModel) [ exec { reldir("game/uo/xmodel/") width(500) } ] fileedit(handModel) [ exec { reldir("game/uo/xmodel/") width(500) } ] fileedit(idleAnim) [ exec { reldir("game/uo/xanim/") width(500) } ] fileedit(emptyIdleAnim) [ exec { reldir("game/uo/xanim/") width(500) } ] fileedit(fireAnim) [ exec { reldir("game/uo/xanim/") width(500) } ] fileedit(holdFireAnim) [ exec { reldir("game/uo/xanim/") width(500) } ] fileedit(lastShotAnim) [ exec { reldir("game/uo/xanim/") width(500) } ] fileedit(meleeAnim) [ exec { reldir("game/uo/xanim/") width(500) } ] fileedit(raiseAnim) [ exec { reldir("game/uo/xanim/") width(500) } ] fileedit(dropAnim) [ exec { reldir("game/uo/xanim/") width(500) } ] fileedit(altRaiseAnim) [ exec { reldir("game/uo/xanim/") width(500) } ] fileedit(altDropAnim) [ exec { reldir("game/uo/xanim/") width(500) } ] }