Skip to content

SMODS.Sticker

N edited this page Apr 1, 2026 · 10 revisions

API Documentation: SMODS.Sticker

  • Required parameters:
    • key
    • loc_txt or localization entry (reference)
      • loc_txt should contain a label string used for the card's badge text
  • Optional parameters (defaults):
    • atlas = 'stickers', pos = { x = 0, y = 0 } (reference)
    • config = {}, prefix_config, dependencies, badge_colour, text_colour (reference)
      • config values will be saved to card.ability[sticker_key]
    • badge_colour: Colour of this sticker's badge.
    • hide_badge: If set to true, no badge is shown for this sticker.
    • default_compat: Default compatibility with cards. If true, all cards can have this sticker unless otherwise specified.
    • compat_exceptions: Array of keys of centers that have non-default compatibility with this sticker.
      • default_compat = true: sticker cannot be applied to centers in compat_exceptions
      • default_compat = false: sticker can only be applied to centers in compat_exceptions
    • sets, list of pools that this sticker is allowed to be applied on, format:
     	{
     		Joker = true
     	}
    • rate = 0.3: Chance of the sticker applying on an eligible card
    • needs_enable_flag: If set to true, this sticker requires G.GAME.modifiers['enable_'..self.key] to be true before it can be applied.
    • always_scores: If true, editioned card always counts in scoring.
    • never_scores: If true, editioned card never counts in scoring (supersedes always_scores).

API methods

  • calculate(self, card, context) (reference)
  • loc_vars (reference)
    • Due to some constraints, the functionality of loc_vars on stickers is limited. Out of all possible return values, only vars, key and set are supported.
  • should_apply(self, card, center, area, bypass_roll) -> bool
    • Returns true if the sticker can be applied to the card.
    • bypass_roll skips the RNG check and only looks for compatibility
    • If this function is redefined it will ignore all optional parameter flags listed above. You can call and store the return of SMODS.Sticker.should_apply(self, card, center, area, bypass_roll) in this function to retain the default functionality.
  • apply(self, card, val)
    • Handles applying and removing the sticker
    • By default, sets card.ability[self.key] to config if it exists and val is truthy or to val otherwise.
    • It is recommended to not redefine this function. If you still need to, you can call SMODS.Sticker.apply(self, card, val) in this function to retain the default functionality.
  • draw(self, card, layer)
    • Draws the sprite and shader of the sticker.

Sticker methods

  • Card:add_sticker(sticker, bypass_check) Use this function to add a sticker to a card

    • sticker, key of sticker as a string
    • bypass_check, boolean
  • Card:remove_sticker(sticker) Use this function to remove a sticker from a card

    • sticker, key of sticker as a string

Clone this wiki locally