Show / Hide Table of Contents

Interface IMyDLCs

Describes API, that allows you get information about DLCs (mods interface)

Namespace: VRage.Game.ModAPI
Assembly: VRage.Game.dll
Syntax
public interface IMyDLCs

Methods

ContainsRequiredDLC(MyDefinitionBase, List<UInt64>)

Returns whether the collection contains the DLCs in this definition.

Declaration
bool ContainsRequiredDLC(MyDefinitionBase definition, List<ulong> dlcs)
Parameters
Type Name Description
MyDefinitionBase definition

The definition to check.

System.Collections.Generic.List<System.UInt64> dlcs

The collection to compare against.

Returns
Type Description
System.Boolean

true if the definition has no DLCs specified, or all the DLCs specified in definition are present in dlcs.

GetAvailableClientDLCIds()

Returns a list of the DLCs installed on the local client.

Declaration
ListReader<uint> GetAvailableClientDLCIds()
Returns
Type Description
ListReader<System.UInt32>

List of AppId.

GetDLC(String)

Gets information on the requested DLC.

Declaration
IMyDLC GetDLC(string name)
Parameters
Type Name Description
System.String name

The Name of the DLC

Returns
Type Description
IMyDLC

Requested DLC information.

Exceptions
Type Condition
System.Collections.Generic.KeyNotFoundException

Name supplied doesn't match a known DLC.

GetDLC(UInt32)

Gets information on the requested DLC.

Declaration
IMyDLC GetDLC(uint appId)
Parameters
Type Name Description
System.UInt32 appId

The AppId of the DLC

Returns
Type Description
IMyDLC

Requested DLC information.

Exceptions
Type Condition
System.Collections.Generic.KeyNotFoundException

AppId supplied doesn't match a known DLC.

GetDLCs()

Get a list of all DLCs the game has. This will not change for the lifetime of the session and is safe to cache.

Declaration
ListReader<IMyDLC> GetDLCs()
Returns
Type Description
ListReader<IMyDLC>

GetFirstMissingDefinitionDLC(MyDefinitionBase, UInt64)

Get the first DLC a player is missing that a definition requires. Null if they have all.

Declaration
IMyDLC GetFirstMissingDefinitionDLC(MyDefinitionBase definition, ulong steamId)
Parameters
Type Name Description
MyDefinitionBase definition

The definition to check.

System.UInt64 steamId

The SteamID of the user to check against.

Returns
Type Description
IMyDLC

The first DLC not available by the specified steamId. null if definition has no DLC, or the user has all of them.

GetRequiredDLCTooltip(String)

Returns the tooltip text that is shown to the user if they don't own the DLC.

Declaration
string GetRequiredDLCTooltip(string name)
Parameters
Type Name Description
System.String name

The Name of the DLC

Returns
Type Description
System.String

Localized and formatted version of MyCommonTexts.RequiresDlc

GetRequiredDLCTooltip(UInt32)

Returns the tooltip text that is shown to the user if they don't own the DLC.

Declaration
string GetRequiredDLCTooltip(uint appId)
Parameters
Type Name Description
System.UInt32 appId

The AppId of the DLC

Returns
Type Description
System.String

Localized and formatted version of MyCommonTexts.RequiresDlc

HasDefinitionDLC(MyDefinitionBase, UInt64)

Returns whether a player owns all DLCs required by this definition.

Declaration
bool HasDefinitionDLC(MyDefinitionBase definition, ulong steamId)
Parameters
Type Name Description
MyDefinitionBase definition

The definition to check.

System.UInt64 steamId

The SteamID of the user to check against.

Returns
Type Description
System.Boolean

true if the player owns all the DLC in the definition.

HasDefinitionDLC(MyDefinitionId, UInt64)

Returns whether a player owns all DLCs required by this definition id.

Declaration
bool HasDefinitionDLC(MyDefinitionId definitionId, ulong steamId)
Parameters
Type Name Description
MyDefinitionId definitionId

The definition id to check.

System.UInt64 steamId

The SteamID of the user to check against.

Returns
Type Description
System.Boolean

true if the player owns all the DLC in the definition.

HasDLC(String, UInt64)

Return whether a player owns a DLC.

Declaration
bool HasDLC(string name, ulong steamId)
Parameters
Type Name Description
System.String name

The Name of the DLC

System.UInt64 steamId

The SteamID of the player to check.

Returns
Type Description
System.Boolean

true if the player owns that DLC.

HasDLC(UInt32, UInt64)

Return whether a player owns a DLC.

Declaration
bool HasDLC(uint appId, ulong steamId)
Parameters
Type Name Description
System.UInt32 appId

The AppId of the DLC

System.UInt64 steamId

The SteamID of the player to check.

Returns
Type Description
System.Boolean

true if the player owns that DLC.

IsDLCSupported(String)

Check if DLC is supported on this platform.

Declaration
bool IsDLCSupported(string name)
Parameters
Type Name Description
System.String name

The Name of the DLC

Returns
Type Description
System.Boolean

TryGetDLC(String, out IMyDLC)

Gets information on the requested DLC.

Declaration
bool TryGetDLC(string name, out IMyDLC dlc)
Parameters
Type Name Description
System.String name

The Name of the DLC

IMyDLC dlc

The requested DLC information.

Returns
Type Description
System.Boolean

true if DLC exists and dlc has valid contents.

TryGetDLC(UInt32, out IMyDLC)

Gets information on the requested DLC.

Declaration
bool TryGetDLC(uint appId, out IMyDLC dlc)
Parameters
Type Name Description
System.UInt32 appId

The AppId of the DLC

IMyDLC dlc

The requested DLC information.

Returns
Type Description
System.Boolean

true if DLC exists and dlc has valid contents.

Events

DLCInstalled

Called when a new DLC is installed by a client. On the client, this only reports DLC installed on the local client.

Declaration
event Action<ulong, uint> DLCInstalled
Event Type
Type Description
System.Action<System.UInt64, System.UInt32>
Remarks

The first action argument is the client SteamId. The second argument is the DLC AppId. This event will be called on the server each time a player connects.

Note:

Space Engineers 2013 is AppId 573900

Deluxe Edition Artwork is AppId 573161

Neither of the above DLC are present in the list returned by GetDLCs(). In addition, GetDLC(UInt32) will throw System.Collections.Generic.KeyNotFoundException when passed either of those AppIds.
☀
☾
In This Article
Back to top
Generated by DocFX
☀
☾