Need a Custom Web Solution?

Professional web development services available

Quest & Scripting

Metin2 Dungeon Quest Generator

Generate ready-to-use Metin2 dungeon quest Lua files instantly. Configure floors, mobs, bosses, timers and download clean quest + lib files. No signup required.

Loading tool...

How to Use Metin2 Dungeon Quest Generator

  1. Fill in the Dungeon Identity section: choose a quest name (used for all generated filenames and timer names), enter the entrance NPC VNUM, and set the chat text players and GMs will see.
  2. Configure Entry Rules: pick enter mode (party, solo, or both), set level range, optionally enable a ticket item check, and optionally clear player buffs on entry.
  3. Set up Map Configuration: enter your inside and outside map indices and base coordinates. All X/Y values are map-relative — the tool handles the ×100 multiplication for warp() calls.
  4. Add floors using the "Add Floor" button. Pick a floor type for each — Metin Wave, Monster Wave, Boss Spawn, Item Delivery, or Final Boss. Reorder floors with the arrow buttons.
  5. For Monster Wave floors, add mob rows in regen format: fill in VNUM, X, Y, size, direction, aggression, respawn time, max count, and spawn count. Use the Duplicate button to clone a row and only change X/Y.
  6. Watch the live code preview update in real time as you type. Switch between the .quest tab, Lib.lua tab, and regen file tabs to review all generated output.
  7. Click "Download All Files" to get the quest file, lib file, and any regen files in one go — ready to place on your server.

About Metin2 Dungeon Quest Generator

The Metin2 Dungeon Quest Generator is the fastest way to create a fully functional dungeon quest for your private server. Instead of hand-coding complex Lua event chains from scratch, you configure your dungeon through a visual form and instantly get two ready-to-drop files: a `_zone.quest` event script and a `Lib.lua` library — all clean, server-ready Lua with no external dependencies.

What this tool generates: The generator produces only the code your dungeon actually uses. If you don't add a time limit, no timer code is emitted. If you don't add an item delivery floor, no take-handler is generated. Every byte in the output corresponds to something you configured — no dead code, no placeholder blocks.

Floor types you can combine: Metin Wave floors spawn metins at specific coordinates and advance when all are destroyed. Monster Wave floors use the standard regen file format (VNUM, X, Y, size, direction, aggression, respawn time, max count, spawn count) — define rows inline with a Duplicate button or point to an existing regen file. Boss Spawn floors place a boss at a coordinate and wait for the kill. Item Delivery floors generate an NPC take-handler that counts delivered items before advancing. Final Boss floors emit completion logic — server-wide notice, exit timer, and flag setting.

Dungeon configuration: Set entrance NPC, entry chat text, GM management chat, enter mode (party only / solo only / both), level range, optional ticket item, buff clear on entry, and a time limit with countdown notices. All coordinates are entered relative to the map base — the tool multiplies by 100 for all warp() calls automatically.

Live code preview: As you fill in the form the generated Lua updates in real time in a split-panel view with syntax highlighting. Each output file has its own tab — quest, lib, and regen files — with Copy and Download buttons. "Download All" grabs everything at once.

Why admins use this: Writing a dungeon quest by hand requires deep knowledge of server_timer, server_loop_timer, d.select(), d.getf()/d.setf() state flags, regen format, and party warp flow. This generator handles all of that correctly so you can focus on dungeon design rather than Lua plumbing.

Common Use Cases

Creating a complete dungeon quest for a new instance map without writing any Lua by hand
Building a quick mini-dungeon with a single floor — kill some metins, then a final boss — in minutes
Generating regen files for monster wave floors using the familiar regen row format with a visual editor
Prototyping multi-floor dungeon flow (metin wave → monster wave → boss → final boss) before implementing it
Learning how Metin2 dungeon quests are structured by reading the clean, commented generated code
Setting up item delivery mechanics where players must drag an item onto an NPC to unlock the next stage
Replacing an old manual dungeon script with a clean auto-generated version that follows modern quest patterns

Frequently Asked Questions

What files does the dungeon generator produce?

The generator produces a `[questname]_zone.quest` file containing all quest event handlers (login, logout, NPC chat, kill events, server timers) and a `[questname]Lib.lua` file containing the library namespace with GetData(), InDungeon(), CheckEntrance(), MakeDungeon(), StartFloor(), and other helpers. For Monster Wave floors with inline mob rows it also generates a regen .txt file per floor.

What is a regen file and how does the Monster Wave floor use it?

A regen file is a tab-separated text file that the Metin2 server reads to spawn mobs in a zone. Each row follows the format: r X Y sizeX sizeY direction isAggressive respawnTime maxCount count mobVnum. The generator lets you define these rows visually — with a Duplicate button to clone a row — and outputs both the inline spawn calls in the Lua and a ready-to-use regen .txt file.

Can I have multiple floor types in the same dungeon?

Yes. The floor list is fully flexible — you can add as many floors as you want, in any order, with any combination of types. A minimal dungeon might be a single Monster Wave floor and a Final Boss floor. A complex dungeon could have Metin Wave → Monster Wave → Boss Spawn → Item Delivery → Final Boss across five floors.

Can the entire dungeon happen in a single floor?

Absolutely. You can configure a single-floor dungeon where players break metins, a boss spawns, and the dungeon ends — all without advancing to a second floor. The generated code handles sequencing correctly regardless of how many floors you configure.

What does the Duplicate button on mob rows do?

The Duplicate button copies the entire mob row — VNUM, size, direction, aggression, respawn time, max count, and spawn count — inserting it directly below. This is useful when you want to place the same mob type at several different coordinates: duplicate the row and only change X and Y.

Do I need to modify the generated files before using them?

The generated files are functional as-is for the configuration you entered. You will need to place regen files in the correct directory on your server, register the quest file with your quest system, and ensure the map indices and NPC VNUMs match your server setup.

Are the coordinates I enter in map units or warp units?

You enter map-relative coordinates (the same scale used in regen files and map editors). The tool automatically multiplies by 100 for all warp() calls in the generated Lua. A coordinate of 115, 105 becomes warp(11500, 10500) in the code.

Need Professional Web Development?

Transform Your Ideas Into Reality

Looking for a custom web app, website, or digital solution? Our expert team brings your vision to life with cutting-edge technology and stunning design.