Thread Tools Display Modes
11-10-14, 08:38 PM   #1
MoonWitch
A Firelord
AddOn Author - Click to view addons
Join Date: Sep 2007
Posts: 455
Console Variables

Not sure if this fits in here; but I trust someone will place it in the better suitable category if needed

I've tried to find a conclusive list of all console variables - but most aren't up to date.
(http://wowpedia.org/Console_variables/Complete_list)
(http://wowprogramming.com/docs/cvars)

How are these "mined"? It may be a stupid question; if so I do apologise. Most that are accessible through the actual in game options - change all the options and check your Config.WTF. But I've noticed quite a few not being triggered by doing that. So how do these lists come into existence? Trial and error?
__________________
  Reply With Quote
11-10-14, 08:52 PM   #2
SDPhantom
A Pyroguard Emberseer
 
SDPhantom's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2006
Posts: 2,326
There are a variety of methods to mine CVar names. The easier methods are to either hook the API calls and/or events that trigger from a CVar change or to browse the WTF files. There are more than the Config.wtf. Be sure to check the Config-Cache.wtf files in the account and character folders. A more advanced method is to extract strings from the game's executable.

Note some CVars have restricted access from addons. Some can't be written over and there are others that can't even be read.
__________________
WoWInterface AddOns
"All I want is a pretty girl, a decent meal, and the right to shoot lightning at fools."
-Anders (Dragon Age: Origins - Awakening)
  Reply With Quote
11-10-14, 08:58 PM   #3
MoonWitch
A Firelord
AddOn Author - Click to view addons
Join Date: Sep 2007
Posts: 455
Originally Posted by SDPhantom View Post
There are a variety of methods to mine CVar names. The easier methods are to either hook the API calls and/or events that trigger from a CVar change or to browse the WTF files. There are more than the Config.wtf. Be sure to check the Config-Cache.wtf files in the account and character folders. A more advanced method is to extract strings from the game's executable.

Note some CVars have restricted access from addons. Some can't be written over and there are others that can't even be read.
So I can be safe with my current list - I think I've got most then. Thanks!

I can gist it once I think I've got most, then people can add to it.


ps. Your quote in your signature : As SysAdmin who occasionally (during vacations etc) works service desk as well; I would love the last option :P
__________________
  Reply With Quote
11-11-14, 06:12 PM   #4
MoonWitch
A Firelord
AddOn Author - Click to view addons
Join Date: Sep 2007
Posts: 455
Just to come back to this with a fix... Although still required a good dose of manual labor. (My Regex is weak.)

Exported the InterfaceCode from my client (Console -> export )

And then some little magic:
Code:
grep 'self.cvar' ../Interface/FrameXML/* >> output.txt
__________________
  Reply With Quote
11-11-14, 06:50 PM   #5
SDPhantom
A Pyroguard Emberseer
 
SDPhantom's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2006
Posts: 2,326
That looks like it would only work when crawling through the Blizzard options frames. I'd try modifying that to look for the various CVar functions like GetCVar() and GetCVarBool(). You can also look for anything responding to the CVAR_UPDATE event. You'd also want to scan the extracted AddOns folder as the Blizzard LoD addons also work on some CVars.
__________________
WoWInterface AddOns
"All I want is a pretty girl, a decent meal, and the right to shoot lightning at fools."
-Anders (Dragon Age: Origins - Awakening)
  Reply With Quote
11-11-14, 07:02 PM   #6
MoonWitch
A Firelord
AddOn Author - Click to view addons
Join Date: Sep 2007
Posts: 455
Originally Posted by SDPhantom View Post
That looks like it would only work when crawling through the Blizzard options frames. I'd try modifying that to look for the various CVar functions like GetCVar() and GetCVarBool(). You can also look for anything responding to the CVAR_UPDATE event. You'd also want to scan the extracted AddOns folder as the Blizzard LoD addons also work on some CVars.
Yeah, am going through those..
ps. If you grep wrong, you end up with a 35+GB txt file :P (Just pulled that one.)

But I'll keep working it and post back once I have a - what I think - complete list.

ps2. WoW supports 3D (red/blue/green) visuals?
Code:
gxStereoEnabled
gxStereoConvergence
gxStereoSeparation
__________________
  Reply With Quote
11-11-14, 07:44 PM   #7
MoonWitch
A Firelord
AddOn Author - Click to view addons
Join Date: Sep 2007
Posts: 455
Code:
ActionButtonUseKeyDown
activeCUFProfile
addFriendInfoShown
advancedCombatLogging
allowCompareWithToggle
alternateResourceText
alwaysCompareItems
alwaysShowActionBars
assistAttack
auctionDisplayOnCharacter
audioLocale
autoClearAFK
autoDismountFlying
autointeract
autojoinBGVoice
autojoinPartyVoice
autoLootDefault
autoOpenLootHistory
autoQuestPopUps
autoQuestWatch
autoSelfCast
bloatnameplates
bloatTest
bloatthreat
blockChannelInvites
blockTrades
bnWhisperMode
buffDurations
calendarShowBattlegrounds
calendarShowDarkMoon
calendarShowLockouts
calendarShowResets
calendarShowWeeklyHolidays
cameraBobbing
cameraDistanceMax
cameraDistanceMaxFactor
cameraPivot
cameraSavedDistance
cameraSavedPetBattleDistance
cameraSavedPitch
cameraSmoothStyle
cameraSmoothTrackingStyle
cameraTerrainTilt
cameraWaterCollision
cameraYawMoveSpeed
cameraYawSmoothSpeed
characterFrameCollapsed
ChatAmbienceVolume
chatBubbles
chatBubblesParty
chatMouseScroll
ChatMusicVolume
ChatSoundVolume
chatStyle
checkAddonVersion
closedInfoFrames
colorblindMode
CombatDamage
CombatDamageStyle
CombatHealing
CombatHealingAbsorbSelf
CombatHealingAbsorbTarget
CombatLogPeriodicSpells
combatTextFloatMode
componentTextureLevel
consolidateBuffs
conversationMode
countdownForCooldowns
deselectOnClick
desktopGamma
digSites
disableServerNagle
displayedRAFFriendInfo
displayFreeBagSlots
displaySpellActivationOverlays
EJLootClass
enableCombatText
EnableMicrophone
enableMouseSpeed
enableMovePad
enableMovepad
enablePetBattleCombatText
enablePVPNotifyAFK
EnableVoiceChat
enableWoWMouse
farclip
fctAuras
fctCombatState
fctComboPoints
fctDamageReduction
fctDodgeParryMiss
fctEnergyGains
fctFriendlyHealers
fctHonorGains
fctLowManaHealth
fctPeriodicEnergyGains
fctReactives
fctRepChanges
fctSpellMechanics
fctSpellMechanicsOther
flaggedTutorials
fullSizeFocusFrame
gameTip
Gamma
graphicsQuality
groundEffectDensity
groundEffectDist
guildMemberNotify
guildRosterView
gxApi
gxMaximize
gxMonitor
gxStereoConvergence
gxStereoEnabled
gxStereoSeparation
gxWindow
hdPlayerModels
InboundChatVolume
interactOnLeftClick
iTunesRemoteFeedback
iTunesTrackDisplay
lastAddonVersion
lastCharacterIndex
lastGarrisonMissionTutorial
lastTalkedToGM
lastVoidStorageTutorial
lfgDebug
lockActionBars
lockedWorldMap
lootUnderMouse
lossOfControl
lossOfControlDisarm
lossOfControlFull
lossOfControlInterrupt
lossOfControlRoot
lossOfControlSilence
MacDisableOsShortcuts
MacUseCommandAsControl
MacUseCommandLeftClickAsRightClick
mapAnimDuration
mapAnimMinAlpha
mapAnimStartDelay
mapFade
maxFPS
maxfpsbk
MaxSpellStartRecoveryOffset
minimapShapeshiftTracking
minimapTrackedInfov2
miniWorldMap
mountJournalFilters
mouseInvertPitch
mouseSpeed
MovieRecordingAutoCompress
MovieRecordingCompression
MovieRecordingCursor
MovieRecordingFramerate
MovieRecordingGUI
MovieRecordingIcon
MovieRecordingQuality
MovieRecordingRecover
MovieRecordingSound
movieSubtitle
nameplateMotion
nameplateShowEnemies
nameplateShowEnemyGuardians
nameplateShowEnemyMinus
nameplateShowEnemyPets
nameplateShowEnemyTotems
nameplateShowFriendlyGuardians
nameplateShowFriendlyPets
nameplateShowFriendlyTotems
nameplateShowFriends
OutboundChatVolume
Outline
particleDensity
partyBackgroundOpacity
partyStatusText
pendingInviteInfoShown
petJournalTab
PetMeleeDamage
petStatusText
playerStatusText
playIntroMovie
predictedHealth
predictedPower
profanityFilter
PushToTalkButton
PushToTalkSound
questLogOpen
questPOI
RAIDcomponentTextureLevel
RAIDfarclip
RAIDgraphicsQuality
RAIDgroundEffectDensity
RAIDgroundEffectDist
RAIDparticleDensity
RAIDprojectedTextures
RAIDreflectionMode
RAIDrefraction
RAIDrippleDetail
RAIDsettingsEnabled
RAIDsettingsInit
RAIDshadowMode
RAIDshadowTextureSize
RAIDSSAO
RAIDSSAOBlur
RAIDsunShafts
RAIDterrainMipLevel
RAIDterrainTextureLod
RAIDtextureFilteringMode
RAIDWaterDetail
RAIDweatherDensity
RAIDwmoLodDist
RAIDworldBaseMip
reducedLagTolerance
reflectionMode
removeChatDelay
reputationsCollapsed
rippleDetail
rotateMinimap
screenEdgeFlash
screenshotFormat
screenshotQuality
scriptErrors
scriptWarnings
secureAbilityToggle
shadowMode
shadowTextureSize
showAllEnemyDebuffs
showArenaEnemyCastbar
showArenaEnemyFrames
showArenaEnemyFrames 
showArenaEnemyPets
showBattlefieldMinimap
showBosses
showCastableBuffs
ShowClassColorInNameplate
showDispelDebuffs
showGameTips
showNPETutorials
showPartyBackground
showPartyPets
showRaidRange
showTamers
showTargetCastbar
showTargetOfTarget
showTimestamps
showToastBroadcast
showToastConversation
showToastFriendRequest
showToastOffline
showToastOnline
showToastWindow
showTokenFrame
showTokenFrameHonor
showTutorials
showVKeyCastbar
showVKeyCastbarOnlyOnTarget
showVKeyCastbarSpellName
Sound_AmbienceVolume
Sound_DialogVolume
Sound_EnableAllSound
Sound_EnableAmbience
Sound_EnableDSPEffects
Sound_EnableEmoteSounds
Sound_EnableErrorSpeech
Sound_EnableHardware
Sound_EnableMusic
Sound_EnablePetBattleMusic
Sound_EnablePetSounds
Sound_EnableReverb
Sound_EnableSFX
Sound_EnableSoftwareHRTF
Sound_EnableSoundWhenGameIsInBG
Sound_MasterVolume
Sound_MusicVolume
Sound_NumChannels
Sound_SFXVolume
Sound_VoiceChatInputDriverIndex
Sound_VoiceChatOutputDriverIndex
Sound_ZoneMusicNoDelay
spamFilter
spellActivationOverlayOpacity
SpellTooltip_DisplayAvgValues
splashScreenNormal
SSAOBlur
statusTextDisplay
stopAutoAttackOnTargetChange
streamStatusMessage
sunShafts
synchronizeBindings
synchronizeConfig
synchronizeMacros
synchronizeSettings
taintLog
talentFrameShown
targetOfTargetMode
targetStatusText
terrainMipLevel
terrainTextureLod
textLocale
textureFilteringMode
threatPlaySounds
threatShowNumeric
timeMgrAlarmEnabled
timeMgrUseLocalTime
timeMgrUseMilitaryTime
toastDuration
trackedAchievements
trackedQuests
trackQuestSorting
UberTooltips
uiScale
UnitNameEnemyGuardianName
UnitNameEnemyPetName
UnitNameEnemyPlayerName
UnitNameEnemyTotemName
UnitNameForceHideMinus
UnitNameFriendlyGuardianName
UnitNameFriendlyPetName
UnitNameFriendlyPlayerName
UnitNameFriendlySpecialNPCName
UnitNameFriendlyTotemName
UnitNameGuildTitle
UnitNameHostleNPC
UnitNameNonCombatCreatureName
UnitNameNPC
UnitNameOwn
UnitNamePlayerGuild
UnitNamePlayerPVPTitle
useCompactPartyFrames
useEnglishAudio
useIPv6
useUiScale
videoOptionsVersion
VoiceActivationSensitivity
VoiceChatMode
VoiceChatSelfMute
waterDetail
weatherDensity
whisperMode
wholeChatWindowClickable
wmoLodDist
worldBaseMip
worldMapOpacity
xpBarText
__________________

Last edited by MoonWitch : 11-11-14 at 08:06 PM. Reason: update
  Reply With Quote
11-11-14, 08:04 PM   #8
myrroddin
A Pyroguard Emberseer
 
myrroddin's Avatar
AddOn Author - Click to view addons
Join Date: Oct 2008
Posts: 1,240
Originally Posted by MoonWitch View Post
ps2. WoW supports 3D (red/blue/green) visuals?
Code:
gxStereoEnabled
gxStereoConvergence
gxStereoSeparation
That is for nVidia's 3D Vision support. Unfortunately Mac clients cannot take advantage of this cool feature, because nVidia's drivers for Mac do not include support.

That was according to a few different Apple Store employees, should you hook up a display that would otherwise support 3D Vision.

On a side note, you can use APIs to create some nifty effects on frames, bars, name plates, etc, but always check if the user's game client supports the feature, or you will get some bugged and possibly hard-exit problems.
  Reply With Quote
11-11-14, 09:44 PM   #9
MoonWitch
A Firelord
AddOn Author - Click to view addons
Join Date: Sep 2007
Posts: 455
Originally Posted by myrroddin View Post
That is for nVidia's 3D Vision support. Unfortunately Mac clients cannot take advantage of this cool feature, because nVidia's drivers for Mac do not include support.

That was according to a few different Apple Store employees, should you hook up a display that would otherwise support 3D Vision.

On a side note, you can use APIs to create some nifty effects on frames, bars, name plates, etc, but always check if the user's game client supports the feature, or you will get some bugged and possibly hard-exit problems.
Yeah I know. I was just surprised. And at this point; I am massively gutted that it's a heap of manual work. I sorted them alphabetically, and lost the "what category" :P

More tomorrow
__________________
  Reply With Quote

WoWInterface » Developer Discussions » Lua/XML Help » Console Variables


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off