configuration
how to modify config.lua for custom setups.
config structure
config.lua defines:
- version information
- feature organization
- feature metadata
- default states
- keybinds
basic configuration
changing keybinds
keybinds = {
toggle = Enum.KeyCode.X -- change from z to x
}
disabling features
{
id = "hideUI",
name = "hide screen guis",
description = "...",
path = "features/hideUI.lua",
enabled = false -- disable this feature
}
advanced configuration
adding custom features
{
id = "myCustomFeature",
name = "my custom feature",
description = "does something cool",
path = "features/myCustomFeature.lua",
enabled = true
}
creating new categories
{
id = "myCategory",
name = "my features",
features = {
-- your features here
}
}
reordering features
features load in order listed:
features = {
{id = "feature1"}, -- loads first
{id = "feature2"}, -- loads second
{id = "feature3"} -- loads third
}
custom deployments
hosting your own fork
- fork the repository
- modify config.lua
- change loadstring url to your fork:
loadstring(game:HttpGet("https://raw.githubusercontent.com/YOUR_USERNAME/LogansCameraSuite/main/main.lua"))()
private features
- add features to your fork
- keep repository private
- use personal access token for httpget
team configurations
- create team-specific config
- host on team github
- team members load from team repo
configuration examples
minimal setup
only freecam and hide players:
categories = {
{
id = "essential",
name = "essential features",
features = {
{id = "freecam", name = "freecam", description = "...", path = "features/freecam.lua", enabled = true},
{id = "hidePlayers", name = "hide players", description = "...", path = "features/hidePlayers.lua", enabled = true}
}
}
}
screenshot setup
optimized for screenshots:
categories = {
{
id = "screenshot",
name = "screenshot mode",
features = {
{id = "freecam", enabled = true},
{id = "hidePlayers", enabled = true},
{id = "hideBillboards", enabled = true},
{id = "hideUI", enabled = true},
{id = "ignoreGuiInset", enabled = true},
{id = "hideChatBubbles", enabled = false} -- might want chat visible
}
}
}
video setup
optimized for recording:
categories = {
{
id = "video",
name = "video mode",
features = {
{id = "freecam", enabled = true},
{id = "hidePlayers", enabled = true},
{id = "hideBillboards", enabled = true},
{id = "hideChatBubbles", enabled = true},
{id = "hideUI", enabled = false}, -- might want some ui
{id = "ignoreGuiInset", enabled = true}
}
}
}
best practices
version your config
include version info:
version = "custom-v1.0"
document changes
add comments:
{
id = "hideUI",
enabled = false, -- disabled for tutorial videos
-- rest of config
}
test before deploying
- test all features work
- verify no conflicts
- check error handling
- try in multiple games
keep backups
- backup working configs
- version control with git
- document what each config does