Achievements in Seven Spells of Destruction are reactive scripts triggered by specific events that occur during gameplay. These events range from combat outcomes to inventory management, player choices, and state changes.
Each event type may pass zero or more variables into the achievement script, depending on the context.
β οΈ You cannot call
achievement_check()
manually. These events are fired automatically by the game engine at appropriate times.
level
(number): The playerβs new levelenemy
(object): { name, stamina, skill, armour, weapon }
COMBAT_WIN β The player wins a combat (No variables)
stamina_damage
(number)skill_damage
(number)stamina_damage
(number)skill_damage
(number)enemy
(string): Name of the enemy that dealt the final blowsuccess
(bool): Whether the player succeededenemy
(string): Name of the enemysuccess
(bool)modifier
(number): Amount of changestat
(string): Abbreviation of the statPVP_TIMEOUT, PVP_LOSE, PVP_WIN β PvP combat outcome (No variables)
stamina_damage
, skill_damage
(numbers)opponent
or other_user
(string): Discord user IDname
(string): Item nameflags
(string): Metadata flagsname
(string): Item namerating
(number): Stat ratingitem
(string): Item namevalue
(number): Gold valuename
(string): Item namename
or item
(string): Item nameflags
(string)name
(string): Food namefood
(object): Full food recordname
(string)value
(number)spell
(string): Spell namescrolls
(number): Total scrolls now held (1β7)name
(string): Item nameflags
(string)ENTER_CAMPFIRE, ENTER_INVENTORY, ENTER_GRIMOIRE, ENTER_BANK β Entered specific interfaces (No variables)
name
(string): Recipe namename
(string): Ingredientanimal
(string): Animal namelocalised_name
, localised_animal
(strings)HUNT_FAILURE β Failed hunt (No variables)
amount
(string)item
(string)flags
(string)name
(string)cost
(number)name
(string): gold, silver, scroll, or itemname
is:
amount
(number)flags
(string)flag
(string): State flag setTIME β Time has passed (usually after a rest) (No variables)
loc_id
(number): Location IDBARE_FISTED β All weapons unequipped (No variables)
time
(number): Unix timestampmessage
(string)disease
(string): e.g. CUREBLOOD
, CURERASP
loss
(number): Stamina lostβ¨ Use these events to trigger creative, humorous, or unexpected achievements. Just donβt rely on undocumented or engine-only variables, and always assume values may change in future versions.