Maple.Enums 0.4.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Maple.Enums --version 0.4.0
                    
NuGet\Install-Package Maple.Enums -Version 0.4.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Maple.Enums" Version="0.4.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Maple.Enums" Version="0.4.0" />
                    
Directory.Packages.props
<PackageReference Include="Maple.Enums" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Maple.Enums --version 0.4.0
                    
#r "nuget: Maple.Enums, 0.4.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Maple.Enums@0.4.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Maple.Enums&version=0.4.0
                    
Install as a Cake Addin
#tool nuget:?package=Maple.Enums&version=0.4.0
                    
Install as a Cake Tool

Maple.Enums

.NET C# Build Status codecov Nuget License

A comprehensive collection of 293 strongly-typed MapleStory V95 enumerations. Cross-platform, trimmable and AOT/NativeAOT compatible.

Example | Example Catalogue | Public API Reference

Features

  • 293 enums covering jobs, stats, items, combat, fields, mobs, quests, network opcodes, and more
  • AOT-compatible.NET 10, IsAotCompatible=true, zero runtime reflection
  • Source-generated via FastEnum.Generators — no Enum.GetValues overhead
  • Triple-indexed labels on every member:
    • Index 0 — original V95 PDB identifier (typos preserved verbatim)
    • Index 1 — human-readable display name for compound words (WhiteKnight"White Knight")
    • Index 2+ — WZ content string codes where applicable (EquipSlot.Cap"Cp")
  • Full XML documentation on every enum and member — IntelliSense-friendly

Install

dotnet add package Maple.Enums

Example

// Human-readable display label
Console.WriteLine(Job.WhiteKnight.GetDisplayLabel()); // "White Knight"
Console.WriteLine(WeaponType.OhSword.GetDisplayLabel()); // "1H Sword"
Console.WriteLine(Element.Fire.GetDisplayLabel()); // "Fire"

For more examples see Example Catalogue.

Namespace & Structure

All enums live in the single flat namespace Maple.Enums. Files are organised into domain subfolders for discoverability but introduce no sub-namespaces.

Folder Domain
Auth/ Login, PIN, security
Admin/ Admin commands, locale, region codes
Character/ Stats, jobs, movement, temporary stats
Combat/ Skills, elements, weapons, summons
Economy/ Drop ownership, meso logs, rates
Event/ Mini-games, carnival, seasonal events
Field/ Maps, portals, field limits, reactors
Item/ Inventory, equipment, cash items, crafting
Life/ Mobs, NPCs, boss IDs, mob skills
NexonPlatform/ Nexon Messenger SDK types
Network/ Packet opcodes, transfer results
Pet/ Pet abilities, actions, food results
Quest/ Quest states, job flags, areas
Shop/ NPC shop, cash shop, personal shop
Social/ Party, guild, friends, marriage, chat
UI/ Animation layers, cursor, effects, fonts

Documentation

  • REFERENCE.md — full provenance catalog: origin classification (CLIENT_CONFIRMED / CLIENT_PARTIAL / WZ_DATA / CUSTOM) for all 287 enums
  • typos.md — 37 preserved V95 client PDB typos documented alongside their corrected C# spellings

Benchmarks

Benchmarks.

Detailed Benchmarks

Comparison Benchmarks
TestBench Benchmark Results

Example Catalogue

The following examples are available in ReadMeTest.cs.

Example - Empty

// Human-readable display label
Console.WriteLine(Job.WhiteKnight.GetDisplayLabel()); // "White Knight"
Console.WriteLine(WeaponType.OhSword.GetDisplayLabel()); // "1H Sword"
Console.WriteLine(Element.Fire.GetDisplayLabel()); // "Fire"

Public API Reference

See docs/PublicApi.md for the full generated public API reference (287 enums, ~16,000 lines).

License

MIT

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Maple.Enums:

Package Downloads
Maple.Models

Immutable MapleStory DTO and catalog record types: templates, server snapshots, and shared value objects. Cross-platform, trimmable and AOT/NativeAOT compatible.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.5.0 83 4/2/2026
0.4.0 278 3/28/2026
0.3.0 81 3/27/2026
0.2.0 79 3/27/2026
0.1.0 85 3/24/2026