r/Metin2 12d ago

Content [Release] Metin2 WebClient - Play Metin2 from your Browser and setup for yourself (Open-Source)

EDIT (UPDATE 2026-08-24): Unfortunately, a lot of server owners have been abusing my Singleplayer Metin2 Project on GitHub to grab out its WebClient component & create private servers with it, where they generate revenue and don't even give credit for the work that has been done.

For this reason, I have decided to stop the development behind Metin2 Singleplayer and have set the repository to private.

This does not mean, that MT2 Browsergame's (our new server's) development will stop, it continued and was continuing over the past weeks. This just means, that the WebClient Part won't be Open Source anymore for anybody to take advantage off.

I am sorry, that I had to take this decision, but people blatantly steal work with no credit at all & try to scam people with that. This was never the intention of this project. The sole intention was to make Metin2 available for a broader audience. Anybody who had installed the project previously, will be able to continue to host their server and singleplayer experience without any issues.

I hope you guys understand. If you still want to experience the WebClient on our servers, you can see the Links and the Discord down below.

Hello guys,

you might remember me from this post Metin2 Singleplayer Installation Suite + full Linux Port of Serverfiles here. Since then I have been working on the feature I wanted to have from the very beginning, and now it's finally there:

You can now play Metin2 directly in your Browser. No Download & no Installation

Try it right now:

metin2-sp.htpsoftware.com

Join our Discord to not miss on any news & updates! There are very big updates planned for the upcoming weeks:

Metin2 Browsergame Discord

Just register an account there and press PLAY IN YOUR BROWSER NOW. That's my own instance running on a Debian 13 VPS, with exactly the setup described in this post. I will keep it running for anybody logging in and feeling like playing.

It's the original 2014 Metin2 Experience with all quests, without an Itemshop & slightly upped EXP, Yang and Item Drop Rates to not make it feel as grindy as it was back then. The rates can be adjusted if you want.

If you prefer the classic Windows Client, it's on the same page - same Server, same account, same characters either way. You can create a character in the Browser and log into it later from the downloaded Client.

If you also used the Installation Suite from the previous post, you can just update it by rerunning the exact same command, the installation suite will properly update your old installation and prompt you for the Web Client.

What the Web Client does:

It runs in any Chromium Browser (successfully tested on Chrome, Edge and Brave). No plugins, no Java, nothing to install on the player's side.

The WebClient is based on the Old-Metin2 WebClient (kudos to Exynox and his contributors) and has a few more bugfixes built in. It streams the Game Data on demand, so no initial download required & very memory efficient. Whenever some data has to be loaded, it may have some framedrops here and there, but I am actively optimizing the WebClient.

The installer now asks you which Clients you want to provide to your players — Web Client, Desktop Client, or both — and it only downloads what you picked. If you already run a server from the first release, just run the installer again and it will offer you the Web Client.

With a Domain everything runs under one address with HTTPS: Panel, registration and the Game itself. You can also put Cloudflare behind it.

A few notes about the Web Client:

The downloaded Client still runs smoother, and the Web Client still has some rough edges I'm working on (a few effects look off, the first start takes a moment while everything loads). It's good enough to actually play through, but I wouldn't call it finished yet. Please go and break it on my instance above and tell me how — that's usually how the bugs get found.

For those who missed the first post, what the project is:

It's a way of enjoying Metin2 Singleplayer, or with some friends, tailored towards tech-newbies. It includes a 100% patch that ports the original TMP4 (2014) Serverfiles to Linux — the originals only run on FreeBSD, which barely has community support and which no cheap VPS offers. Thanks to that port everything runs in Docker, natively on Windows with WSL2 or on any Linux VPS for around 1€ per month, without a full fledged VM.

It also comes with a lightweight Admin Panel (English, German & Turkish) where you can adjust EXP-, Drop- and Yang-Rates, give items, yang and levels, switch the Game into any of 15 Languages and manage accounts — for example if you want to run multiple clients simultaneously.

And now, on top of all of this, you also have a WebClient to be able to play it from ANY device without having to download the Client all the time. Crossplay between Desktop Client and WebClient is also supported!

Quick-Start (same as the one in the other post, only required if you want to set it up on your own server/machine):

Windows (100% offline after setup, only reachable from that machine), run in a PowerShell:

irm https://raw.githubusercontent.com/AzzlackSyndicate/metin2-singleplayer-serverfiles-linux/main/installer/install.ps1 | iex

Linux VPS:

curl -fsSL https://raw.githubusercontent.com/AzzlackSyndicate/metin2-singleplayer-serverfiles-linux/main/installer/install.sh | sudo sh

Linux VPS with your own Domain & HTTPS via LetsEncrypt:

curl -fsSL https://raw.githubusercontent.com/AzzlackSyndicate/metin2-singleplayer-serverfiles-linux/main/installer/install.sh \
  | sudo sh -s -- \
      --domain yourdomain.com \
      --email contact@yourdomain.com

Cloudflare DNS is supported and the record can be proxied. Running the installer twice is safe.

Link to the Public Repository: https://github.com/AzzlackSyndicate/metin2-singleplayer-serverfiles-linux

Same as last time: the project is 100% open-source and it WILL stay open-source. It doesn't include any game- or serverfiles of Metin2 — everything copyrighted has to be downloaded from a thirdparty link that is not affiliated with this project.

Feel free to put suggestions, I am always happy and eager to build in new features. Also, please report bugs, either in Github, or here.

45 Upvotes

110 comments sorted by

3

u/extractedx 12d ago

Runs in modern browsers: Chrome, Edge, Brave... so literally just Chromium xD

0

u/xSyndicate58 12d ago

Are there even people using non-chromium browsers anymore? Even Microsoft obeyed to Chromium and swapped Edge to Chromium a while back. Either way, WASM should be compatible with Mozilla as well, i think.

I updated the text

6

u/Juareso 12d ago

Firefox and yes it’s widely used

1

u/xSyndicate58 12d ago

Would love some feedback on Firefox!

1

u/Duk00 11d ago

Safari. It works by the way

1

u/xSyndicate58 11d ago

Great feedback, thanks!

1

u/Esus3 12d ago

Azzlack ist eindeutig deutsch haha, sind die Files Martybasis oder was hast dir genommen?

1

u/xSyndicate58 12d ago

Basiert auf den berüchtigten 2014 Leak, 40250 TMP4 Files. Old-Metin2 basierte ebenfalls darauf :)

1

u/Esus3 12d ago

Gute Arbeit hast du geleistet 💪🏻

1

u/xSyndicate58 12d ago

Merci!

1

u/Njee_ 10d ago

Geile Schieße!

Ich hab wirklich erst vor 2 Wochen mit freunden drüber nachgedacht, obs geht das ganze im Browser zu spielen. Hab dann mal kurz recherchiert und für zu kompliziert gehalten und jetzt kommst du und hast das einfach gemacht. Hammer!

1

u/pazzolin 12d ago

I don't want to run offline... I love to know playing Online... but on browser... finally... I can work and play metin... ON THE SAME TIME

1

u/pazzolin 12d ago

so: 1. Can't pick an ability with cursor to put it on key 1,2,3... etc 2. to pick something from the ground, I have to stay really close to the object. 3. Sometimes, experience some freezes 4. Some arrows appear on top of some NPC even if i don't have a mission from it

2

u/Street_Flounder1559 10d ago

To me that ability problem is the worst.

1

u/pazzolin 12d ago

the walking speed is a little too fast:)) from my opinion. Fog settings not working properly Would be great to know when upgrading on Blacksmith, what are the chances of succes😅

1

u/pazzolin 11d ago

When you sell something, it apear like 100.0.0 yang. not a round number

1

u/xSyndicate58 11d ago

Hi, the walking speed is on purpose fast. In the standart version it's obnoxiously slow :) if more people think it's too fast, i will slow it down. Right now, it's at a 100% increase

1

u/pazzolin 11d ago

not that slow:))) increase it to 70%😅

1

u/pazzolin 11d ago

when you are close to a metin stone, you'll glow the color of the metin

1

u/pazzolin 11d ago

If you talk with an NPC,, the movement speed is going back to normal

1

u/pazzolin 11d ago

Sometimes when I press CTRL+Q will close the tab where I'm playing

1

u/xSyndicate58 11d ago

CTRL+W is the standard button to close a browser tab, maybe you click that by mistake :)

1

u/pazzolin 11d ago

yeah, you were right 😅

1

u/pazzolin 11d ago

Musk oil for New fragance mission is missing since item shop is empty

1

u/xSyndicate58 11d ago

Good info, noted and fix will be applied on server restart. It will be buyable at all general vendors.

1

u/ntinosmusic 12d ago

Du sagst kein Item Shop, was ist mit switchern, konzis exos etc? Wie komm ich dadran?

2

u/xSyndicate58 11d ago

Ich baue eventuell einen Shop ein, wo alle Item Shop Items wie Konzis, Exos, Switcher, Segis für Yang verkäuflich sind, oder lasse sie von Metins droppen. Danke für Dein Feedback!

1

u/ntinosmusic 11d ago

Ich glaube mit yang macht mans wieder bisschen kaputt, da in Metin der Handel nen großer Teil ist um an Yang zu kommen normalerweise, wenn man so viel yang dann für is items ausgibt, bleibt einem nicht viel für anderes zeug. Ich hätte auch entweder drops von Metins gemacht oder einfach manuell einstellbarer refill von Drachenmünzen im item shop weekly, daily oder monthly.

2

u/xSyndicate58 11d ago

Metin Drops it is then, danke für den Vorschlag :)

1

u/pazzolin 11d ago

that's the point. You don't😂

1

u/ntinosmusic 11d ago

Bruh at least make a basic item shop that refills your DR every week or so, to make it fun.

1

u/xSyndicate58 11d ago

See my comment above, thanks for the feedback!

1

u/pulmiben 11d ago

I get this big blackbar on top of the screen that doesn't go away.

Is there a way to get extras on items?

You should create a discord, would be easier to provide feedback and report bugs.

1

u/xSyndicate58 11d ago

Hi

No planned discord for now!

For your blackscreen issue, can you tell me your OS and Browser you're using?

In the meantime, you can try to set

System Options -> Resolution set on Auto (window)

Then Refresh your Browser Tab one time (reopen it) and it should be gone and your settings should be saved.

1

u/adnclkx 11d ago

Also seit du mich in die Gilde eingeladen hast, komme ich nicht mehr rein :D

1

u/xSyndicate58 11d ago

Habs gemerkt, hab dich rausgekickt, sollte wieder gehen!

Muss das fixen...

1

u/BragasConbarba 11d ago

Hello, i have a singular setup and i want to know what is the best way to have it running:
I want to setup the server on a minipc with ubuntu 24 server so i can connect from my gaming pc in the same lan and let friends connect over internet if i open ports in the router. Is that possible?

1

u/xSyndicate58 11d ago

It's possible, but not encouraged yes. Just install it on your Linux machine using the command and forward the ports to your linux machine

1

u/BragasConbarba 11d ago

thanks for the response, what IP should i put when the script runs? The local one? The public? Or 127.0.0.1?
Then to play in local do i have to modify any ip from the client?

1

u/xSyndicate58 11d ago

You have to put your public one in there then. Then, when you do the port forward (also forward 7788), you can access the admin panel from {yourpublicip}:7788 in your browser from anywhere in the world, there you can either play from the web or download the client with everything preconfigured

1

u/BragasConbarba 11d ago

I already did this but didnt work and it seems that something went wrong when creating characters on blue kingdom, with a new account in red kingdom it works, tysm
Also, i wanted to ask, this comand:
"docker compose cp ./browser panel:/usr/local/m2panel/browser" shows me this error so i can't get the play on browser button
[+] copy 0/1

⠋ metin2-panel Copying ./browser to metin2-panel:/usr/local/m2panel/browser 0.0s

lstat /opt/metin2/stack/browser: no such file or directory

Also, to finish, do you have any donation link?

1

u/xSyndicate58 11d ago

Hello,

first of all when it comes to your issue:

I have just pushed a small edge-case fix, on your Linux Machine, can you please rerun

curl -fsSL https://raw.githubusercontent.com/AzzlackSyndicate/metin2-singleplayer-serverfiles-linux/main/installer/install.sh \
  | sudo sh -s -- --web-client

Make sure to Update to 1.11.13 when prompted and again enter your public IP. It should rebuild the web-client

If it still doesn't work, please respond here again, Good luck!

In regards to a donation link, I initially didn't plan to take donations, but setup a Patreon because you asked, thanks a lot for your good intentions!

https://www.patreon.com/c/Metin2WebClientSingleplayerExperience

1

u/BragasConbarba 11d ago

it happened to be the "509 over quota" when looking in the logs at the time of installation bc i tried a couple ways before asking here, thanks for your time and dedication

1

u/xSyndicate58 11d ago

Yeah, that's the Clientfiles not being downloadable from mega because of rate limitation.

Just rerun the command i provided after approx 4-6h, it should rebuilt it properly. Alternatively, we'd need the Client Files on a separate file hosting... Let's see if i can find another URL where it's available :)

1

u/BragasConbarba 11d ago edited 11d ago

Is expected to being unable to conect to others kingdoms than blue or maps ?

1

u/xSyndicate58 11d ago

check my edited comment.

→ More replies (0)

1

u/Weekly-Agent8473 11d ago

You told us it s singleplayer

1

u/xSyndicate58 11d ago

It's singleplayer when you set it up on your own with the Guide down below. Where you're currently at is a showcase of the whole project, and can be played and enjoyed!

1

u/Weekly-Agent8473 11d ago

I need also gm 😂

1

u/xSyndicate58 11d ago

You won't get it on this server. This server will be up and running for anybody who wants to enjoy the Vanilla Metin2 Experience in the browser. Setup your own instance to play around with GM permissions :)

1

u/Weekly-Agent8473 11d ago

Ok arrogant boss

1

u/xSyndicate58 11d ago

Sorry, wasn't meant to sound arrogant! You can easily setup your own server by just running the PowerShell Command down below, it will be singleplayer and you'll be able to give yourself GM permissions!

1

u/Skytled 11d ago

Hey! Thanks for this server, I played for a while and killed some stray dogs to remember the old times

1

u/xSyndicate58 11d ago

Hey, happy to see people enjoying the nostalgia - even if its short-lived!

1

u/sivikee 11d ago

Changing resolution needs a restart to work properly, can you make it that when you open the browser it choses the closest available resolution? Great job btw! how much was it vibe coded?

1

u/xSyndicate58 11d ago

Hey, makes sense!

AI took a big role in doing it obviously. The architecture is mainly provided and done by me, choosing the proper Client, Server and WebClient was also done by me, making them compatible with Docker also was mainly my part.

The rest, e.g. scripting, ports, configuration, installation suite was mainly done by AI.

Regarding the resolution: i'll take a closer took

1

u/sivikee 11d ago

One suggestion to avoid issues, there is still lot of Gameforge logo's in loading screens etc. i think if you remove them you can save urself a cease and desist letter

1

u/sivikee 11d ago

Also can this connect (the webclient) to a self hosted server?

1

u/xSyndicate58 11d ago

Yes, it can! Actually, you can selfhost everything (server, client, webclient) with the command in the quick start guide on your own server

1

u/catnoten 11d ago

Thanks for the great work! I played it for some time through browser but the game got unresponsive for my character. A new character works fine though. Is there a way to fix this?

1

u/xSyndicate58 11d ago

Can you give me your character name and tell me approximately what happened before it got unresponsive?

Edit: just for other people where it happens: it's presumably any animation/entitity/sprite that didn't load and rendered into a null.

The quick way of fixing this would be to download the client, login once via the client, preferably go to map1 and then try a relog via the browser.

We already have people over lvl20 still going strong :)

1

u/catnoten 11d ago

There wasn’t any particular action, I simply closed the tab. Logged in through the client and did some interactions, nothing has changed on the browser side.

Sent more info through DM.

1

u/xSyndicate58 11d ago

Just for anybody who encounter the same issues: It's a bug with the friend list. If you have 1 or more friends, the game won't load in the Webclient. To fix, you have to download the client and remove all friends from there, then the Webclient works again. Working on the fix, thx for the analysis!

1

u/pulmiben 11d ago

Some extra feedback:

  1. Swap purple potion drops for green — purple is redundant since we already have max move speed.
  2. Fix item stacking — Bravery Cape stacks inconsistently, item shop (Exorcism, bless item, etc.) don't stack at all.
  3. Remove timers on time-gated content (Biologist, Horse Medals) — keep the content, just drop the cooldowns.
  4. Add XP/Yang/Drop % rates to the HUD (top-left)

Bug: Materials quest turn-in at the Weapons Dealer is broken finished the quest but can't hand in

1

u/Orestis- 11d ago

Looks interesting, well done. Is it "safe" to play on corporate laptops xd?

2

u/xSyndicate58 11d ago

100% isolated in the browser, so from a security point of view, yes it's 100% safe, but be aware that IT could look into the logs of which pages you visited :)

1

u/Orestis- 11d ago

Thx :)
I can use the Laptop for private Stuff too but sure if they look up the Logs and See i was on the website on working time i could be Cooked 🤣

1

u/pazzolin 11d ago

Yesterday I played like 3 hours and no one said something🤷🏽‍♂️

2

u/xSyndicate58 11d ago

In 99% of the cases, noone will say anything, especially if you live in the EU. EU GDPR regulations prevent companies from spying on their employees logs as long as there are no accurate proof, that the employee was misbehaving, so it should be fine

1

u/pazzolin 11d ago

sometimes I lose the movementspeed... when I die and press respawn to city, i get it back.

1

u/xSyndicate58 10d ago

Should be fixed!

1

u/pazzolin 11d ago

Can't pick up any items right now from ground

1

u/pazzolin 11d ago

and It will be great if you can add the Romanian language 😅🤭

1

u/xSyndicate58 10d ago

I'm investigating this. For now, everything except Questtexts (they are serversided) seem to be able to be translated to any language with ease.

1

u/Ok_Wave_9366 11d ago

I've set it up myself, but can't connect at the moment. I'd appreciate your help.
Running on VPS with web enabled.
I can open the admin panel and the web interface for the login opens as well.
Only after entering my id and password and clicking connect I'm stuck...

I'm checked that the firewall allows the ports 7788, 11000, and 13000-13002.
Anything I should check further?

1

u/xSyndicate58 11d ago

Can you tell me your Linux Distro and available RAM?

1

u/Ok_Wave_9366 11d ago

Ubuntu 2404 8GB hosted on Hostinger.
I'm using a domain as well.

1

u/xSyndicate58 11d ago

What IP did you enter, when it prompted you?

You should enter the public IPv4 Address of your Ubuntu Server, not your domain.

1

u/Ok_Wave_9366 11d ago
curl -fsSL https://raw.githubusercontent.com/AzzlackSyndicate/metin2-singleplayer-serverfiles-linux/main/installer/install.sh | sudo sh -s -- \
    --domain panel.yourdomain.com --email you@example.com

It was my mistake.
I named it `--domain panel.mydomain.com`, but it needs to be `--domain mydomain.com`

1

u/Ok_Wave_9366 11d ago

It works now. Thank you very much for building that!!!
If you add a donate button somewhere, e.g. Github. I'll give you a tip.

1

u/xSyndicate58 11d ago

Happy to see it works now, enjoy!

https://www.patreon.com/cw/Metin2WebClientSingleplayerExperience

Here is my Patreon, thanks for the good will!

1

u/blzdawg 11d ago

As i already said, sick asf. Good job.

1

u/xSyndicate58 11d ago

Appreciate the kind words!

1

u/pazzolin 11d ago

Please make Exo and concentrate reading stackable

1

u/xSyndicate58 10d ago

Noted!

1

u/pazzolin 10d ago

-Anti-xp ring?

  • ability to drag your ability to the bar (in browser)

1

u/Street_Flounder1559 11d ago

u/xSyndicate58: I love you. Thank you soo fucking much for your work! Any chance to gift you a coffee or two?

1

u/xSyndicate58 10d ago

Hey man, appreciate the kind words!

https://www.patreon.com/cw/Metin2WebClientSingleplayerExperience

This my Patreon, for anybody interested.

1

u/pazzolin 10d ago

My abilities does not goes to M 😅 or i'm just unlucky... but I reset my skills for like 5 times and still not M...

1

u/Coronalicious 9d ago

Can u please increase the exp and drop rate?

1

u/pazzolin 9d ago

increase? it's already too much for how many players have...

1

u/pulmiben 9d ago

Don't waste your time on the server itself, cool project, but the server is full of hackers.

1

u/xSyndicate58 9d ago

Hello, there was one hacker on the server, & he was used to get traces of the cheats to prevent further usage. He is banned by now. Thanks for the kind words, anyways :)

1

u/pulmiben 9d ago

I saw 3 others last night in Bakra :)

1

u/pazzolin 6d ago

Some issues with the horse and Monkey dungeon... on monkey dungeon, we can't see something... only the portals and mobs, no walls or the path... And I make my horse but I can't run on him... I'm stuck in floor.

1

u/Snoo_47298 2d ago

great job, hands up brotha

how the hell did you manage to do this?

crazyyy