From Intrigues Wiki

ID Property in Scheme Class


The ID property in the Scheme class represents a unique identifier for each scheme instance in the game.

Property Definition

[field: SerializeField]
public string ID { get; private set; }


  • Type: string
  • Accessibility: The property is publicly accessible for getting its value but is privately settable, meaning it can only be modified internally within the class or its methods.


  • The ID serves as a unique identifier for schemes, ensuring that each scheme instance can be distinctly recognized and referenced.
  • It is particularly important for managing and tracking different schemes in the game, especially when dealing with multiple instances and types of schemes.


This property is used to access the unique identifier of a scheme. It's crucial in scenarios where specific schemes need to be identified, compared, or tracked throughout the gameplay.

Example of Usage

public class SchemeInteractionManager : MonoBehaviour {
    void Start() {
        // Iterate through all active schemes of the player and log their ID's
        foreach (Scheme scheme in IM.Player.Schemes) {
            Debug.Log($"Scheme ID: {scheme.ID}");


  • In the Start method of the SchemeInteractionManager class, the example demonstrates iterating through all active schemes associated with the player and logging each scheme's id.


  • The ID property is a critical aspect of the Scheme class, providing a means to uniquely identify each scheme instance.
  • Proper management of scheme IDs is essential for the integrity of game logic, particularly in complex systems involving multiple schemes and interactions.