Lava Arena Achievements
Version History
| Build Version | Change Date | Change Type | Description |
|---|---|---|---|
| 676042 | 2025-06-21 | stable | Current version |
Overview
The lavaarena_achievements module defines character-specific achievements for the Lava Arena event. Each character has unique achievements that reflect their abilities and playstyle, along with universal achievements available to all characters.
Usage Example
-- Achievements are automatically loaded during Lava Arena events
local achievements_data = require("lavaarena_achievements")
local wilson_achievements = achievements_data.achievements[3] -- Wilson category
Constants
XWP_VICTORY
Value: 10000
Status: stable
Description: Experience points awarded for victory achievements for each character.
XWP_LEVEL1
Value: 500
Status: stable
Description: Experience points awarded for level 1 (basic) character achievements.
XWP_LEVEL2
Value: 1000
Status: stable
Description: Experience points awarded for level 2 (intermediate) character achievements.
XWP_LEVEL2_5
Value: 5000
Status: stable
Description: Experience points awarded for level 2.5 (advanced intermediate) achievements.
XWP_LEVEL3
Value: 10000
Status: stable
Description: Experience points awarded for level 3 (difficult) achievements.
XWP_LEVEL4
Value: 20000
Status: stable
Description: Experience points awarded for level 4 (very difficult) achievements.
XWP_LEVEL5
Value: 30000
Status: stable
Description: Experience points awarded for level 5 (extreme difficulty) achievements.
Functions
TestMatchTime(user, data, max_time)
Status: stable
Description: Tests whether a match was won within the specified time limit.
Parameters:
user(table): Player user datadata(table): Match outcome data containingoutcome.wonandoutcome.timemax_time(number): Maximum allowed time in seconds
Returns:
- (boolean): True if match was won within time limit
TestForVictory(user, data)
Status: stable
Description: Tests whether the player achieved victory in the match.
Parameters:
user(table): Player user datadata(table): Match outcome data containingoutcome.won
Returns:
- (boolean): True if player won the match
Achievement Categories
encore
Status: stable
Description: High-level encore achievements available to any character, focusing on advanced gameplay.
Properties:
anycharacter = true: Available to all characters
Key Achievements:
encore_boarons: Complete round 2 with minimal team damage(<800)encore_boarons_hard: Complete round 2 with very minimal team damage(<600)encore_turtillus: Complete round 3 with limited special ability usageencore_turtillus_hard: Complete round 3 without using special abilitiesencore_peghook: Complete without failing peghook mechanicsencore_nodeath_easy: Complete rounds 1-3 without any deathsencore_nodeath_medium: Complete rounds 1-4 without any deathsencore_nodeath_hard: Complete entire match without any deaths
nodeaths
Status: stable
Description: No-death achievements focusing on survival and team coordination.
Properties:
anycharacter = true: Available to all characters
Achievements:
nodeaths_self: Complete match without personal deaths (20000 WXP)nodeaths_team: Win with no team deaths (30000 WXP)nodeaths_uniqueteam: Win with no deaths using unique character team (30000 WXP)
wintime
Status: stable
Description: Time-based victory achievements requiring fast completion.
Properties:
anycharacter = true: Available to all characters
Achievements:
wintime_30: Win within 30 minutes (10000 WXP)wintime_25: Win within 25 minutes (20000 WXP)wintime_20: Win within 20 minutes (30000 WXP)
Character-Specific Categories
wilson
Status: stable
Description: Achievements specific to Wilson, focusing on support and revival capabilities.
Achievements:
wilson_battlestandards: Place 3+ battle standardswilson_reviver: Revive 1+ corpsewilson_victory: Achieve victory as Wilson
willow
Status: stable
Description: Achievements specific to Willow, focusing on fire-based abilities.
Achievements:
willow_meteor: Hit 40+ targets with meteorwillow_moltenbolt: Complete molten bolt achievementwillow_victory: Achieve victory as Willow
wolfgang
Status: stable
Description: Achievements specific to Wolfgang, focusing on combat and guard breaking.
Achievements:
wolfgang_guardsbroken: Break 5+ enemy guardswolfgang_nospinning: Complete without allowing enemy spinningwolfgang_victory: Achieve victory as Wolfgang
wendy
Status: stable
Description: Achievements specific to Wendy, focusing on precision and damage avoidance.
Achievements:
wendy_guardsbroken: Break 5+ enemy guards using ranged attackswendy_outofharmsway: Fire 150+ blowdarts while taking<100damage in round 4wendy_victory: Achieve victory as Wendy
wx78
Status: stable
Description: Achievements specific to WX-78, focusing on electrical abilities and anvil usage.
Achievements:
wx78_anvil: Hit 50+ targets with anvil attackswx78_shocks: Complete electrical shock achievementwx78_victory: Achieve victory as WX-78
wickerbottom
Status: stable
Description: Achievements specific to Wickerbottom, focusing on magic and healing.
Achievements:
wickerbottom_meteor: Kill 1+ enemy with meteorwickerbottom_healing: Cast 3+ healing spells within 60 secondswickerbottom_victory: Achieve victory as Wickerbottom
woodie
Status: stable
Description: Achievements specific to Woodie, focusing on Lucy axe throwing.
Achievements:
woodie_lucychuck: Throw Lucy 20+ timeswoodie_nospinning: Complete without allowing enemy spinningwoodie_victory: Achieve victory as Woodie
wes
Status: stable
Description: Achievements specific to Wes, focusing on support and aggro management.
Achievements:
wes_battlestandards: Place 3+ battle standardswes_decoy: Win MVP card for aggro held without participationwes_victory: Achieve victory as Wes
waxwell
Status: stable
Description: Achievements specific to Waxwell, focusing on magic abilities and minions.
Achievements:
waxwell_petrify: Petrify 25+ enemies before round 3waxwell_minion_kill: Kill enemy using shadow minionswaxwell_victory: Achieve victory as Waxwell
wathgrithr
Status: stable
Description: Achievements specific to Wathgrithr (Wigfrid), focusing on combat and battle cries.
Achievements:
wathgrithr_flip: Flip Turtillus 20+ timeswathgrithr_battlecry: Use battle cry affecting 3+ allies, 5+ timeswathgrithr_victory: Achieve victory as Wathgrithr
webber
Status: stable
Description: Achievements specific to Webber, focusing on rapid attacks and damage dealing.
Achievements:
webber_darts: Fire 3+ darts within 20 secondswebber_merciless: Win MVP card for total damage dealtwebber_victory: Achieve victory as Webber
winona
Status: stable
Description: Achievements specific to Winona, focusing on diverse weapon usage and abilities.
Achievements:
winona_allweapons: Use all 3 weapon types in single matchwinona_altattacks: Cast 40+ spells and alternative attacks combinedwinona_victory: Achieve victory as Winona
Achievement Properties
achievementid
Type: string
Status: stable
Description: Unique identifier for the achievement.
wxp
Type: number
Status: stable
Description: Experience points awarded upon completion.
testfn
Type: function
Status: stable
Description: Function called during gameplay to test achievement progress.
Parameters:
user(table): Player user datadata(table): Event-specific datascratchpad(table): Per-player temporary storageshared_scratchpad(table): Shared temporary storage (optional)
endofmatchfn
Type: function
Status: stable
Description: Function called at match end to test achievement completion.
Parameters:
user(table): Player user datadata(table): Complete match data including statistics
shared_progress_fn
Type: function
Status: stable
Description: Function to update shared progress data across team members.
Parameters:
data(table): Event datashared_scratchpad(table): Shared temporary storage
nosave
Type: boolean
Status: stable
Description: Whether scratchpad data should not be saved between sessions.
Data Structure
Achievement Definition
{
achievementid = "character_achievement",
wxp = 1000,
testfn = function(user, data, scratchpad)
-- Test logic during gameplay
return achievement_completed
end,
endofmatchfn = function(user, data)
-- Test logic at match end
return data.outcome.won and other_conditions
end,
nosave = false -- Optional
}
Category Definition
{
category = "character_name",
anycharacter = false, -- Optional, defaults to false
data = {
-- Array of achievement definitions
}
}
Event Configuration
seasons
Value: { 1 }
Status: stable
Description: Array of seasons when these achievements are active.
eventid
Value: "lavaarena"
Status: stable
Description: Event identifier for the Lava Arena event.
Related Modules
- Lava Arena Achievement Quest Definitions: Quest-based achievement system
- Lava Arena Community Progression: Community-wide progression tracking
- Event Achievements: General event achievement framework