Home › Engine Lua tables › Modding

Engine executable. Settings and tools of the game program (CivilizationVI.exe), usable without a mod. Mostly undocumented debug and configuration functionality; descriptions come from analysis of the executable and have not all been tried in the running game.

Modding

Static table with 57 methods. named from how the game scripts call it (42 of 57 methods matched). Registering function 0x4d0d70.

Methods are called with a dot (Modding.Method(...)).

Method Returns In game scripts Example Status
Modding.BundleModText(arg1: integer, arg2: string, …) -> 1 value 1 value not called — inferred
Modding.CanDisableMod(arg1: integer, …) -> table, table table, table 1 calls, 1 files local err, xtra, sources = Modding.CanDisableMod(modHandle) inferred
Modding.CanEnableMod(arg1: integer, [arg2: boolean], …) -> table, table table, table 3 calls, 1 files err, _ = Modding.CanEnableMod(modHandle, true) inferred
Modding.CheckRequirements(arg1, arg2: integer, …) -> table, boolean table, boolean 4 calls, 3 files local mod_errors = Modding.CheckRequirements(mods, g_GameType) inferred
Modding.ConsumeFreeTurn() — not called — inferred
Modding.CreateModGroup(arg1: string, arg2: integer) -> boolean boolean 2 calls, 1 files Modding.CreateModGroup(str, currentGroup) inferred
Modding.DeleteModGroup(arg1: integer) -> boolean boolean 1 calls, 1 files Modding.DeleteModGroup(currentGroup) inferred
Modding.DisableMod(arg1) — 2 calls, 1 files Modding.DisableMod(modHandle) inferred
Modding.EnableMod(arg1, [arg2: boolean], …) — 3 calls, 1 files Modding.EnableMod(modHandles) inferred
Modding.GetActiveMods(…) — 3 calls, 3 files local mods = Modding.GetActiveMods() inferred
Modding.GetAvailableDLC() -> table table 1 calls, 1 files dlc = Modding.GetAvailableDLC() inferred
Modding.GetAvailableFreeTurnDLC() -> table table not called — inferred
Modding.GetBundleId(…) -> 1 value 1 value not called — inferred
Modding.GetCurrentModGroup() -> number number 4 calls, 1 files local g = Modding.GetCurrentModGroup() inferred
Modding.GetDLCDetails(arg1) — 1 calls, 1 files local dlcDetails = Modding.GetDLCDetails(dlcID) inferred
Modding.GetDLCNeeedsUpdateMessage(…) -> 1 value 1 value not called — inferred
Modding.GetDLCPurchaseState() — not called — inferred
Modding.GetFreeTurnsRemaining() — 1 calls, 1 files local remaining = Modding.GetFreeTurnsRemaining() inferred
Modding.GetGameModesFromConfigurationString(arg1: string, …) -> table, table table, table 4 calls, 4 files local gameModes = Modding.GetGameModesFromConfigurationString(listing.EnabledGameModeNames) inferred
Modding.GetIgnoreCompatibilityWarnings(arg1: integer) -> boolean boolean 4 calls, 1 files not Modding.GetIgnoreCompatibilityWarnings(v) inferred
Modding.GetInstalledMods(…) — 4 calls, 2 files local mods = Modding.GetInstalledMods() inferred
Modding.GetLastLoadError() -> number number 2 calls, 1 files local error = Modding.GetLastLoadError() inferred
Modding.GetLastModErrorString(…) -> 1 value 1 value 3 calls, 3 files local modMissingErrorStr = Modding.GetLastModErrorString() inferred
Modding.GetModAssociations(arg1: integer, …) -> table, table table, table 1 calls, 1 files local dependencies, references, blocks = Modding.GetModAssociations(g_SelectedModHandle) inferred
Modding.GetModGroups(…) -> table, table, number, boolean, number table, table, number, boolean, number 2 calls, 1 files local groups = Modding.GetModGroups() inferred
Modding.GetModHandle(modId: string) -> number number 10 calls, 5 files if(Modding.GetModHandle(v.ModId) inferred
Modding.GetModInfo(modHandle: integer, …) -> 1 value 1 value 8 calls, 3 files local info = Modding.GetModInfo(modHandle) inferred
Modding.GetModProperty(arg1: integer, arg2: string, …) — 7 calls, 1 files local category = Modding.GetModProperty(v.Handle, "ShowInBrowser") inferred
Modding.GetModText(arg1: integer, arg2: string, …) -> 1 value 1 value 3 calls, 1 files desc = Modding.GetModText(g_SelectedModHandle, desc) inferred
Modding.GetModsFromConfigurationString(arg1: string, …) -> table, table table, table 1 calls, 1 files local mods = Modding.GetModsFromConfigurationString(listing.EnabledMods) inferred
Modding.GetODRDownloadInfo() -> table table not called — inferred
Modding.GetSubscriptionDetails(arg1: string, …) -> table, string, string, string, string, string table, string, string, string, string, string 1 calls, 1 files local details = Modding.GetSubscriptionDetails(subscriptionId) inferred
Modding.GetSubscriptionDownloadStatus(arg1: string) -> number, number number, number 1 calls, 1 files local downloaded, total = Modding.GetSubscriptionDownloadStatus(subscriptionId) inferred
Modding.GetSubscriptions(…) -> table table 1 calls, 1 files local subs = Modding.GetSubscriptions() inferred
Modding.GetUserInterfaces(arg1: string, …) -> table, table table, table 2 calls, 1 files for i, addin in ipairs(Modding.GetUserInterfaces("InGame") inferred
Modding.IsJoinGameAllowed(arg1: string) -> boolean boolean 1 calls, 1 files local ownershipCheck : boolean = Modding.IsJoinGameAllowed(v.ModId) inferred
Modding.IsLeaderAllowed(arg1: integer, arg2: string) -> boolean, boolean, boolean, boolean, boolean boolean, boolean, boolean, boolean, boolean 1 calls, 1 files if(checkOwnership and not Modding.IsLeaderAllowed(self.PlayerId, v.Value) inferred
Modding.IsModActive(arg1: string) -> boolean boolean 4 calls, 2 files return Modding.IsModActive(TUTORIAL_UUID) inferred
Modding.IsModCompatible(arg1: integer) -> boolean boolean 5 calls, 2 files if( not Modding.IsModCompatible(v) inferred
Modding.IsModEnabled(arg1: string) -> boolean boolean 7 calls, 3 files if(Modding.IsModEnabled( modGUIDStr ) inferred
Modding.IsModInstalled(arg1) -> boolean boolean 2 calls, 1 files return Modding.IsModInstalled(xpModId) inferred
Modding.IsModOfficial(arg1: string) -> boolean boolean 2 calls, 2 files if(Modding.IsModOfficial(v.ModId) inferred
Modding.IsTransitioningFromAutosave() — not called — inferred
Modding.JumpToDigitalMarketplace() — not called — inferred
Modding.LaunchURL() — not called — inferred
Modding.OwnsDLC(arg1: integer) -> boolean, boolean boolean, boolean not called — inferred
Modding.ParseModUri(arg1: string, …) -> 2 values 2 values 1 calls, 1 files local modId,path = Modding.ParseModUri(mapInfo.File) inferred
Modding.PurchaseDLC() — not called — inferred
Modding.RestoreOutOfDateDLC() — not called — inferred
Modding.RestorePurchase() — not called — inferred
Modding.RestorePurchases() — not called — inferred
Modding.SetCurrentModGroup(arg1: integer) -> boolean boolean 2 calls, 1 files Modding.SetCurrentModGroup(v.Handle) inferred
Modding.SetIgnoreCompatibilityWarnings(arg1: integer, arg2: boolean) — 3 calls, 2 files Modding.SetIgnoreCompatibilityWarnings(v, true) inferred
Modding.ShouldShowCompatibilityWarnings() -> boolean boolean 4 calls, 2 files if(Modding.ShouldShowCompatibilityWarnings() inferred
Modding.Unsubscribe(arg1: string) — 1 calls, 1 files Modding.Unsubscribe(subscriptionId) inferred
Modding.UpdateParameter(arg1: table, …) -> boolean, boolean boolean, boolean 1 calls, 1 files Modding.UpdateParameter(p) inferred
Modding.UpdateSubscription(arg1: string) -> boolean boolean 1 calls, 1 files Modding.UpdateSubscription(subscriptionId) inferred