display.width = 1280
display.height = 720
display.fullscreen = 1
display.multisample = 1
display.msSamples = 8
display.hideCursor = 1

windowTitle = {LogiGun}
iconFile = data/windowIcon.png

world.maxWorldTimestep = 17
world.maxTimestepsPerFrame = 5
world.maxStepIterations = 5
world.timeScale = 1

file.useDocumentsDirectory = 1
file.baseDataDirectory = data
file.gameDocsDirectory = {My Games/LogiGun/}
file.extraLevelDirectory = data/extraLevels/
file.userLevelDirectory = customlevels/
file.screenshotDirectory = screenshots/
file.replayDirectory = replays/

include configPhysics.ini
include configObjects.ini
include configWeapons.ini
include configEffects.ini

#Save Files -----------------------------------------------------------------------------------------

save.userFileDirectory = savedata/

save.globalPreferencePath = globalPreferences.ini
save.lastPreferencePath = {}
save.preferencePath = {}
save.inputMappingPath = {}

save.progress = 0

#Game -----------------------------------------------------------------------------------------

game.replayModeEnable = 0
game.replayRecordEnable = 0

game.enableSettingReload = 0

levelEnd.finishFadeDelay = 1000
levelEnd.finishDelay = 1500
levelEnd.defaultFinishDelay = 1500

#Input -----------------------------------------------------------------------------------------

input.defaultMappingFile = defaultLGMapping.txt

#Player -----------------------------------------------------------------------------------------

player.drawDebug = 0

player.walkMoveFactor = 0.325
player.jumpBufferDelay = 150
player.joystickLookDist = 600.0
player.changeFaceThreshhold = 5.0
player.activationXOffset = 64.0
player.activationYOffset = 20.0
player.activationBoxXOffset = 64.0
player.activationBoxYOffset = 16.0
player.activationBoxW = 90.0
player.activationBoxH = 128.0
player.mouseActivateThresh = 24.0
player.holdXOffset = 84.0
player.holdYOffset = 40.0

player.approxJumpHeight = 192.0

player.activate.duration = 250

player.grabMaxDist = 200.0
player.throwDuration = 300

player.zapper.zapDuration = 100
player.zapper.maxDist = 1200.0

#Animation

player.poseScale = 1.0
player.poseXOffset = 0
player.poseYOffset = 2.5

player.headTrackUpFactor = 0.5
player.headTrackDownFactor = 0.20
player.headTrackRotationRate = 160.0

player.anim.jumpStateDelay = 100
player.anim.jumpStateSpeedThresh = 300.0

player.anim.jumpSpeedMin = -500.0
player.anim.jumpSpeedMax = 350.0
player.anim.maxJumpAnimRate = 1.5

player.anim.ponyRotFactorR = 0.5
player.anim.ponyRotFactorL = 0.25
player.anim.ponyMotionRotRate = 800.0
player.anim.ponyMotionSpeedFactor = 0.0025
player.anim.ponyGravityRotRate = 400.0
player.anim.ponyRotUpVYThresh = -400.0

player.weaponSwitchTime = 400
player.weaponPickupTime = 350

player.anim.zapperMinAimDist = 20.0

player.anim.defaultTransDur = 100
player.anim.endZapperAimTransDur = 300
player.anim.endWeaponAimTransDur = 300
player.anim.beginThrowTransDur = 60
player.anim.beginActivateTransDur = 100
player.anim.endZapHoldTransDur = 300
player.anim.defaultStateResetTransDur = 300
player.anim.fallToJumpTransDur = 500
player.anim.weaponConfiscateTransDur = 300

player.anim.grappleStartTransDur = 300
player.anim.grappleEndTransDur = 250

player.anim.weaponSwitchTransDur = 300
player.anim.pickupWeaponTransDur = 200

#Effect

player.effect.explodeRayDangerLevel = 0.0625
player.effect.barrierFadeRate = 2.0

#Audio

player.audio.fullGainMultiSourceSize = 12
player.audio.dynamicMultiSourceSize = 8
player.audio.jumpLandReadyDelay = 400


#HUD -----------------------------------------------------------------------------------------

HUD.enableReticule = 1

HUD.activatorTooltipEnabled = 1
HUD.activatorTooltipFont = dejaVuSansMed
HUD.activatorTooltipYOffset = 40.0
HUD.activatorTooltipScale = 0.8
HUD.activatorTooltipFadeExtend = 32.0

HUD.levelName.font = continuumTitle
HUD.levelName.duration = 1000
HUD.levelName.fadeDuration = 2000
HUD.levelName.widthFactor = 0.75
HUD.levelName.minWidth = 200
HUD.levelName.yOffsetFactor = 0.75

HUD.tutorialMessage.yOffsetFactor = 0.75

HUD.transmission.yOffsetFactor = 0.625
HUD.transmission.xPadding = 120.0
HUD.transmission.messagePortraitPadding = 32.0

HUD.progMessageText.yOffsetFactor = 0.95
HUD.progMessageText.minHeight = 128.0

HUD.dialog.messagePortraitMinPadding = 32.0
HUD.dialog.messagePortraitPaddingFactor = 0.125
HUD.dialog.textGap = 20.0

HUD.messageBGAlpha = 0.5

HUD.notification.font = dejaVuSansMed
HUD.notification.duration = 8000

#Message -----------------------------------------------------------------------------------------

message.enabled = 1

message.tutorial.defaultFont = arialMed
message.tutorial.widthFactor = 0.5
message.tutorial.minWidth = 200

message.transmission.defaultFont = arialMed
message.transmission.widthFactor = 0.325
message.transmission.minWidth = 200
message.transmission.msPerCharacter = 52
message.transmission.tickSoundDelay = 80
message.transmission.startDelay = 500

message.screen.defaultFont = arialLarge
message.screen.msPerCharacter = 45
message.screen.autoAdvanceTime = 3000
message.screen.numMultiSources = 3
message.screen.tickSoundDelay = 80
message.screen.wordScaleFactor = 0.5

#Media -----------------------------------------------------------------------------------------

resourceFile.sprite = data/LGSprites.spd
resourceFile.pathArray = data/LGPathArrays.par
resourceFile.pathMap = data/LGPathMaps.pma
resourceFile.shapeList = data/LGShapeLists.shd
resourceFile.font = data/LGFonts.ftd
resourceFile.skeleton = data/LGSkeletons.skd
resourceFile.pose = data/LGPoses.pod
resourceFile.skeletonAnim = data/LGSkeletonAnims.kad
resourceFile.slideshowAnim = data/LGSlideshowAnims.sad
resourceFile.sound = data/LGSounds.snd

directoryRoot.skeleton = skeletons
directoryRoot.pose = poses
directoryRoot.skeletonAnim = skelAnims
directoryRoot.slideshowAnim = slideshowAnims

sprite.dynamicCacheSize = 64
stringTex.dynamicCacheSize = 100

font.defaultFontName = arialSmall

map.mapProfileFile = data/mapProfile/LGMapProfile.fmp

#Menu -----------------------------------------------------------------------------------------

pauseMenu.journalFont = utsaahJournal
pauseMenu.defaultFont = utsaahSmall
pauseMenu.buttonFont = utsaahMed
pauseMenu.headerFont = utsaahHeader

pauseMenu.overlayAlpha = 0.85
pauseMenu.journalUnread = 0

mainMenu.saveFileFont = utsaahLarge
mainMenu.levelButtonFont = utsaahSmall
mainMenu.navButtonFont = utsaahSmallMed

mainMenu.smallText = utsaahTiny
mainMenu.mainCreditFont = utsaahHeader
mainMenu.mainCreditTitleFont = utsaahLarge
mainMenu.sideCreditFont = utsaahMed
mainMenu.sideCreditTitleFont = utsaahSmall

mainMenu.floorSelect.alphaFadeRate = 0.5
mainMenu.floorSelect.shapeColor = #50b0dd
mainMenu.floorSelect.minShapeAlpha = 0.125

mainMenu.levelSelectRegion.minXFraction = 0.325
mainMenu.levelSelectRegion.minYFraction = 0.375

mainMenu.levelSelectRegion.maxXFraction = 0.9
mainMenu.levelSelectRegion.maxYFraction = 0.8

mainMenu.levelSelect.buttonInclineFactor = 5.0

mainMenu.customLevelList.headerFont = utsaahLarge
mainMenu.customLevelList.listFont = utsaahSmall
mainMenu.customLevelList.bgExpand = 10.0
mainMenu.customLevelList.bgAlpha = 0.75

mainMenu.customLevelList.authorWidth = 240.0
mainMenu.customLevelList.categoryWidth = 240.0

mainMenu.endSequence.fadeDuration = 1500
mainMenu.endSequence.lingerDuration = 2000
mainMenu.endSequence.advanceDelay = 800

#Render -----------------------------------------------------------------------------------------

shader.shaderFile = shaders.txt
shader.compileoutput = 1

render.physics.drawDebug = 0
render.physics.drawShapes = 1
render.physics.drawJoints = 1
render.physics.drawAABBs = 0
render.physics.drawPairs = 1
render.physics.drawCOMs = 0

render.foregroundObjectDepth = -10.0
render.playerEffectDepth = -1.0
render.playerBackEffectDepth = 0.5
render.laserDepth = 0.75
render.frontObjectDepth = 1.0
render.objectDepth = 2.0
render.backObjectDepth = 5.0
render.backObject2Depth = 6.0
render.wallTileDepth = 10.0
render.wallColorDepth = 15.0
render.bgObjectDepth = 18.0
render.bgObjectDepth2 = 19.0
render.bgTileDepth = 100.0
render.fgTileDepth = -5.0

render.lightDepth = -100.0

render.defaultScreenFadeRate = 1.0
render.screenFadeRate = 1.0
render.boundaryMaskLength = 64.0

render.collision.drawDebug = 0

render.drawBGLights = 1

camera.maxMouseLookDistX = 1422.0
camera.maxMouseLookDistY = 900.0
camera.idealTravelTime = 0.325
camera.minSpeed = 25.0

camera.zoomOutViewHeight = 1600
camera.zoomOutLookFactor = 0.5
camera.gradualHeightRate = 3200
camera.forcedGradualHeightRate = 400

camera.elasticTrackingIdealTime = 0.35
camera.elasticTrackingMinSpeed = 100.0
camera.trackingRelockDuration = 0.5

camera.viewAreaIndex = 2
camera.particleZoneExpansion = 320

#Audio -----------------------------------------------------------------------------------------

audio.volume.soundEffect = 1.0
audio.volume.music = 0.25
audio.volume.interface = 1.0

guiAudio.multiSourceSize = 4

bgm.transitionRate = 0.5

#Debug -----------------------------------------------------------------------------------------

debug.showDebugText = 0
debug.output = 0

include configTest.ini