The Metin2 metin stone system is one of the game's most recognizable mechanics: you hit a stone placed on the map, the stone summons monsters at fixed intervals, and when it breaks it drops rewards. If you run your own server, this entire behavior is defined in the server files — meaning you control the metin stone's level, the items it drops, and how often it respawns from three different places. In this article I explain the logic behind metin stones and how to edit those three settings safely.
How a metin stone works on the server side
Although metin stones look like static objects, internally they are defined like "monsters." Three parts work together:
- mob_proto — holds the stone's identity: vnum, name, level, health (HP) and type. Metin stones are marked here with the
STONEtype. - regen files — define which map, which coordinates, and how many minutes between respawns.
- drop tables — define the items that fall when the stone breaks, with percentage chances.
When a player starts hitting the stone, it summons its attached monsters (the spawn group) around it at set intervals. When its HP reaches zero the stone breaks, the drop table fires, and once the timer in the regen file elapses the stone respawns at the same spot. This loop is the core logic: define → spawn → break → reward → respawn.
Setting the metin stone's level and HP
Level and HP live in mob_proto. Most servers manage this through an SQL table or a mob_proto.txt file. The important columns are:
VNUM— the stone's unique identity (e.g. 8051).LEVEL— the metin stone's level; it sets the scale of difficulty and rewards.MAX_HP— the stone's health; it determines how long it survives.TYPE— must beSTONEhere so the client displays it as a metin stone.
Say you want to make a mid-level stone a bit tankier. On a setup using mob_proto.txt you edit the LEVEL and MAX_HP values on the relevant line:
# VNUM NAME TYPE LEVEL MAX_HP ...
8051 Metin_Stone_A STONE 40 250000 ...
If you manage it through SQL, you do the same thing in a single query:
UPDATE mob_proto
SET level = 40, max_hp = 250000
WHERE vnum = 8051;
Important: after changing mob_proto, most server files require you to convert the edited table into the mob_proto binary and restart the game core. Because caching is in play, hot changes don't always apply instantly.
Editing metin stone spawn and respawn time
The stone's position on the map and its respawn time are held in the regen files inside that map's folder (usually regen.txt or an extra regen file dedicated to metin stones). Each line defines a spawn point. A typical metin stone line looks like this:
s 441600 873200 0 0 0 30m 100 1 8051
The columns, from left to right, follow this order:
- type —
smarks a metin stone spawn. - x / y — the coordinates on the map (in-game position).
- x_dir / y_dir / z — the spread radius and direction of the spawn area;
0means a fixed point. - time — the respawn interval; you can write
30m= 30 minutes,1h= 1 hour,10s= 10 seconds. - percent — the spawn chance (100 = every time).
- count — how many stones spawn at once.
- vnum — which stone spawns; must match the identity in
mob_proto.
To shorten the spawn time, all you need to do is lower the time column. For example, on a busy event map where you want stones to cycle faster:
s 441600 873200 0 0 0 5m 100 2 8051
This line spawns two stones at the same point every 5 minutes. After saving the file you must restart the relevant map process; regen files are only read when the map boots.
Configuring metin stone drops
The items that fall when a stone breaks are defined in drop tables. The most common method is to create a group bound to the stone's vnum and list the items with their chances inside it. The logic works like this:
- You give each item a probability (usually per ten-thousand or by percentage, depending on the file format you use).
- As the stone's level rises, you add more valuable items at lower probability; that's where balance comes from.
- You can define both guaranteed (always-drop) and rare rewards on the same stone.
The conceptual shape of a drop group looks like this:
Group MetinStone_A_Drop
{
Mob 8051
Type kill
1 71001 1 30 # potion, 30%
2 25040 1 5 # soul stone, 5%
3 19 1 1 # yang (money), 1%
}
Here each line follows the logic order item_vnum count chance. Don't get greedy when balancing the probabilities: a too-high drop rate breaks the economy instantly. When adding a new stone, start with small chances, test on the server, then raise them gradually.
Common mistakes and testing
The issues you run into most often with metin stone settings usually come from simple causes:
- The stone never spawns: the vnum in the regen line doesn't match the identity in
mob_proto, or the map process wasn't restarted. - The stone spawns but drops nothing: the drop group isn't bound to the right vnum, or the relevant file wasn't loaded.
- The time changed but has no effect: regen files are only read at startup; the change won't apply without restarting the process.
When testing, always change a single variable and verify the result. Break the stone yourself with a GM account, watch the drop, then time the spawn interval with a clock. This discipline prevents surprise imbalances on a live server.
Frequently Asked Questions
If I raise the metin stone level, does the drop improve automatically?
No. Level is just a number in mob_proto; the drop is defined in a separate table. If you raise the level the stone looks stronger, but the dropped items don't change. If you want better rewards you have to edit the drop group separately.
I changed the spawn time but nothing happened — why?
Regen files are only read when the map process boots. After saving the file you must restart the relevant map (or the whole game core if needed). Also make sure you wrote the m, h, s letters in the time column correctly.
Can I change the metin stone time across all maps at once?
Not with a single setting; each map has its own regen file. In practice you can use a small script to batch-update the time column of the s lines across all regen files, but always make a backup before the change.
Want to set up or rebalance the metin stone system on your own Metin2 server from scratch? I can configure and test the level, drop and spawn settings to fit your server's economy — get in touch with me and let's plan your project together.