cloudflare
tcp/443 tcp/80 tcp/8443
Open service 2a06:98c1:3121::3:8443 · www.lh-dev.net
2026-01-21 16:27
HTTP/1.1 200 OK
Date: Wed, 21 Jan 2026 16:27:02 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=qNm0znRAjzjRvudA0lZynqS47zr5cRUmTqYG9BhK0DmGRziNPe3ICbL%2FbQMXtlPP7dy7aCym0RJZrukhVpvMw0f8uSYngAMbIARVtEuCSpyMah%2BF%2BSNt8mcT"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
cf-cache-status: DYNAMIC
CF-RAY: 9c182d3e8a853a42-BOM
alt-svc: h3=":8443"; ma=86400
Page title: Changelog | LH-DEV
<!DOCTYPE html>
<html lang="en">
<title>Changelog | LH-DEV</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="LH-DEV">
<meta name="description" content="Laghaim, 라그하임, Savage Eden, Biosfear, official server files and source code.">
<link rel="canonical" href="http://:4000/">
<link rel="stylesheet" href="/assets/css/index.css">
<link rel="stylesheet" href="/assets/css/classes.css">
<link rel="icon" href="/assets/icon.png" type="images" sizes="16x16">
<header>
<a href="/" class="title">LH-DEV</a>
<nav><a aria-label="Changelog" href="/" ><span aria-hidden="true">Changelog</span></a><a aria-label="Tools" href="/tools/" ><span aria-hidden="true">Tools</span></a><a aria-label="Setup Guide" href="/setupguide/" ><span aria-hidden="true">Setup Guide</span></a><a aria-label="Test Server" href="/testserver/" ><span aria-hidden="true">Test Server</span></a><a aria-label="Buy" href="/buy/" ><span aria-hidden="true">Buy</span></a><a aria-label="Contact" href="/contact/" class="selected"><span aria-hidden="true">Contact</span></a></nav>
</header>
<style>
:root {
--bg-color: #f4f6f8;
--text-color: #000;
--table-bg: #fff;
--header-bg: #fff;
--row-even: #fafafa;
--tab-bg: #e9ecef;
--tab-active-bg: #fff;
}
body {
font-family: Arial, sans-serif;
padding: 20px;
background: var(--bg-color);
color: var(--text-color);
transition: background 0.3s, color 0.3s;
}
h1 {
margin-bottom: 20px;
}
/* Fixed first column width */
table td:first-child,
table th:first-child {
width: 200px; /* set your desired width */
max-width: 200px;
min-width: 200px;
overflow: hidden;
text-overflow: ellipsis; /* cut off if too long */
white-space: nowrap;
}
/* Dark mode styles */
body.dark {
--bg-color: #1e1e1e;
--text-color: #ddd;
--table-bg: #2c2c2c;
--header-bg: #2c2c2c;
--row-even: #333;
--tab-bg: #444;
--tab-active-bg: #222;
}
/* Tabs */
.tabs {
display: flex;
margin-bottom: 10px;
border-bottom: 1px solid #ccc;
}
.tab {
padding: 6px 16px;
cursor: pointer;
background: var(--tab-bg);
border: 1px solid #ccc;
border-bottom: 1px solid #ccc;
margin-right: 5px;
border-radius: 4px 4px 0 0;
transition: background 0.3s, color 0.3s;
}
.tab.active {
background: var(--tab-active-bg);
font-weight: bold;
}
/* Pages */
.page {
display: none;
}
.page.active {
display: block;
}
/* Tables */
table {
border-collapse: collapse;
width: 100%;
min-width: 500px;
margin-top: 10px;
background: var(--table-bg);
transition: background 0.3s;
}
th, td {
border: 1px solid #d0d0d0;
padding: 8px;
white-space: nowrap;
text-align: left;
}
thead th {
background: var(--header-bg);
font-weight: normal;
position: static;
}
tr:nth-child(even) td {
background: var(--row-even);
}
/* Dark mode transitions for table rows */
body.dark th, body.dark td {
border-color: #555;
}
/* Toggle button */
#darkModeToggle {
margin-bottom: 10px;
padding: 6px 6px;
cursor: pointer;
}
.theme-toggle {
background: none;
border: none;
padding: 0;
cursor: pointer;
outline: none;
}
</style>
<div class="tabs">
<div class="tab active" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(0)" data-cf-modified-f1ef38e1f5295b9a979bf37b-="">server</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(1)" data-cf-modified-f1ef38e1f5295b9a979bf37b-="">client</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(2)" data-cf-modified-f1ef38e1f5295b9a979bf37b-="">database</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(3)" data-cf-modified-f1ef38e1f5295b9a979bf37b-="">server_c</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(4)" dat
Open service 188.114.97.3:443 · www.lh-dev.net
2026-01-21 16:27
HTTP/1.1 200 OK
Date: Wed, 21 Jan 2026 16:27:02 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=l0bjZJgnABrzWxiIoC8JiQP4YH0GlhXc5AIATHo3FceX7g0OE8Nfz42Zs9lPe%2BttSbdvH68yPXDXS%2B6w8BiG5SCBQjEqGCMYsWzTN4kE"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
cf-cache-status: DYNAMIC
CF-RAY: 9c182d3a1aadad84-SJC
alt-svc: h3=":443"; ma=86400
Page title: Changelog | LH-DEV
<!DOCTYPE html>
<html lang="en">
<title>Changelog | LH-DEV</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="LH-DEV">
<meta name="description" content="Laghaim, 라그하임, Savage Eden, Biosfear, official server files and source code.">
<link rel="canonical" href="http://:4000/">
<link rel="stylesheet" href="/assets/css/index.css">
<link rel="stylesheet" href="/assets/css/classes.css">
<link rel="icon" href="/assets/icon.png" type="images" sizes="16x16">
<header>
<a href="/" class="title">LH-DEV</a>
<nav><a aria-label="Changelog" href="/" ><span aria-hidden="true">Changelog</span></a><a aria-label="Tools" href="/tools/" ><span aria-hidden="true">Tools</span></a><a aria-label="Setup Guide" href="/setupguide/" ><span aria-hidden="true">Setup Guide</span></a><a aria-label="Test Server" href="/testserver/" ><span aria-hidden="true">Test Server</span></a><a aria-label="Buy" href="/buy/" ><span aria-hidden="true">Buy</span></a><a aria-label="Contact" href="/contact/" class="selected"><span aria-hidden="true">Contact</span></a></nav>
</header>
<style>
:root {
--bg-color: #f4f6f8;
--text-color: #000;
--table-bg: #fff;
--header-bg: #fff;
--row-even: #fafafa;
--tab-bg: #e9ecef;
--tab-active-bg: #fff;
}
body {
font-family: Arial, sans-serif;
padding: 20px;
background: var(--bg-color);
color: var(--text-color);
transition: background 0.3s, color 0.3s;
}
h1 {
margin-bottom: 20px;
}
/* Fixed first column width */
table td:first-child,
table th:first-child {
width: 200px; /* set your desired width */
max-width: 200px;
min-width: 200px;
overflow: hidden;
text-overflow: ellipsis; /* cut off if too long */
white-space: nowrap;
}
/* Dark mode styles */
body.dark {
--bg-color: #1e1e1e;
--text-color: #ddd;
--table-bg: #2c2c2c;
--header-bg: #2c2c2c;
--row-even: #333;
--tab-bg: #444;
--tab-active-bg: #222;
}
/* Tabs */
.tabs {
display: flex;
margin-bottom: 10px;
border-bottom: 1px solid #ccc;
}
.tab {
padding: 6px 16px;
cursor: pointer;
background: var(--tab-bg);
border: 1px solid #ccc;
border-bottom: 1px solid #ccc;
margin-right: 5px;
border-radius: 4px 4px 0 0;
transition: background 0.3s, color 0.3s;
}
.tab.active {
background: var(--tab-active-bg);
font-weight: bold;
}
/* Pages */
.page {
display: none;
}
.page.active {
display: block;
}
/* Tables */
table {
border-collapse: collapse;
width: 100%;
min-width: 500px;
margin-top: 10px;
background: var(--table-bg);
transition: background 0.3s;
}
th, td {
border: 1px solid #d0d0d0;
padding: 8px;
white-space: nowrap;
text-align: left;
}
thead th {
background: var(--header-bg);
font-weight: normal;
position: static;
}
tr:nth-child(even) td {
background: var(--row-even);
}
/* Dark mode transitions for table rows */
body.dark th, body.dark td {
border-color: #555;
}
/* Toggle button */
#darkModeToggle {
margin-bottom: 10px;
padding: 6px 6px;
cursor: pointer;
}
.theme-toggle {
background: none;
border: none;
padding: 0;
cursor: pointer;
outline: none;
}
</style>
<div class="tabs">
<div class="tab active" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(0)" data-cf-modified-01a0527cb2791de229edc618-="">server</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(1)" data-cf-modified-01a0527cb2791de229edc618-="">client</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(2)" data-cf-modified-01a0527cb2791de229edc618-="">database</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(3)" data-cf-modified-01a0527cb2791de229edc618-="">server_c</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(4)" dat
Open service 188.114.97.3:8443 · www.lh-dev.net
2026-01-21 16:27
HTTP/1.1 200 OK
Date: Wed, 21 Jan 2026 16:27:02 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=GRgvQDsX7MmSiQdvDd1txBMbG2XNWPXQMQnvDYFulRrQx1biJ1AXRCEH0FyB0Crm97JcQjxpDxiFVD0P3m7Nb0Pu469P%2FWQVAujCQw%3D%3D"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
cf-cache-status: DYNAMIC
CF-RAY: 9c182d3acfe2efdf-SIN
alt-svc: h3=":8443"; ma=86400
Page title: Changelog | LH-DEV
<!DOCTYPE html>
<html lang="en">
<title>Changelog | LH-DEV</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="LH-DEV">
<meta name="description" content="Laghaim, 라그하임, Savage Eden, Biosfear, official server files and source code.">
<link rel="canonical" href="http://:4000/">
<link rel="stylesheet" href="/assets/css/index.css">
<link rel="stylesheet" href="/assets/css/classes.css">
<link rel="icon" href="/assets/icon.png" type="images" sizes="16x16">
<header>
<a href="/" class="title">LH-DEV</a>
<nav><a aria-label="Changelog" href="/" ><span aria-hidden="true">Changelog</span></a><a aria-label="Tools" href="/tools/" ><span aria-hidden="true">Tools</span></a><a aria-label="Setup Guide" href="/setupguide/" ><span aria-hidden="true">Setup Guide</span></a><a aria-label="Test Server" href="/testserver/" ><span aria-hidden="true">Test Server</span></a><a aria-label="Buy" href="/buy/" ><span aria-hidden="true">Buy</span></a><a aria-label="Contact" href="/contact/" class="selected"><span aria-hidden="true">Contact</span></a></nav>
</header>
<style>
:root {
--bg-color: #f4f6f8;
--text-color: #000;
--table-bg: #fff;
--header-bg: #fff;
--row-even: #fafafa;
--tab-bg: #e9ecef;
--tab-active-bg: #fff;
}
body {
font-family: Arial, sans-serif;
padding: 20px;
background: var(--bg-color);
color: var(--text-color);
transition: background 0.3s, color 0.3s;
}
h1 {
margin-bottom: 20px;
}
/* Fixed first column width */
table td:first-child,
table th:first-child {
width: 200px; /* set your desired width */
max-width: 200px;
min-width: 200px;
overflow: hidden;
text-overflow: ellipsis; /* cut off if too long */
white-space: nowrap;
}
/* Dark mode styles */
body.dark {
--bg-color: #1e1e1e;
--text-color: #ddd;
--table-bg: #2c2c2c;
--header-bg: #2c2c2c;
--row-even: #333;
--tab-bg: #444;
--tab-active-bg: #222;
}
/* Tabs */
.tabs {
display: flex;
margin-bottom: 10px;
border-bottom: 1px solid #ccc;
}
.tab {
padding: 6px 16px;
cursor: pointer;
background: var(--tab-bg);
border: 1px solid #ccc;
border-bottom: 1px solid #ccc;
margin-right: 5px;
border-radius: 4px 4px 0 0;
transition: background 0.3s, color 0.3s;
}
.tab.active {
background: var(--tab-active-bg);
font-weight: bold;
}
/* Pages */
.page {
display: none;
}
.page.active {
display: block;
}
/* Tables */
table {
border-collapse: collapse;
width: 100%;
min-width: 500px;
margin-top: 10px;
background: var(--table-bg);
transition: background 0.3s;
}
th, td {
border: 1px solid #d0d0d0;
padding: 8px;
white-space: nowrap;
text-align: left;
}
thead th {
background: var(--header-bg);
font-weight: normal;
position: static;
}
tr:nth-child(even) td {
background: var(--row-even);
}
/* Dark mode transitions for table rows */
body.dark th, body.dark td {
border-color: #555;
}
/* Toggle button */
#darkModeToggle {
margin-bottom: 10px;
padding: 6px 6px;
cursor: pointer;
}
.theme-toggle {
background: none;
border: none;
padding: 0;
cursor: pointer;
outline: none;
}
</style>
<div class="tabs">
<div class="tab active" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(0)" data-cf-modified-38fa29e430fc2e28ec1d25c3-="">server</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(1)" data-cf-modified-38fa29e430fc2e28ec1d25c3-="">client</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(2)" data-cf-modified-38fa29e430fc2e28ec1d25c3-="">database</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(3)" data-cf-modified-38fa29e430fc2e28ec1d25c3-="">server_c</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(4)" dat
Open service 2a06:98c1:3121::3:80 · www.lh-dev.net
2026-01-21 16:27
HTTP/1.1 301 Moved Permanently
Date: Wed, 21 Jan 2026 16:27:02 GMT
Content-Length: 0
Connection: close
Location: https://www.lh-dev.net/
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=QACiCIBnnO9V7YqLBwdog0u1m2vRjz6nuuponNkwqZctsYJPj9VFEF7nrSZw2JPi5KMVBTmP6pacdXSqvsm47R4o1Djk3BJUS1u%2FrZ92SUXmZxOlmdTzIn7A"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9c182d3a0a55fd86-EWR
Open service 2a06:98c1:3120::3:8443 · www.lh-dev.net
2026-01-21 16:27
HTTP/1.1 200 OK
Date: Wed, 21 Jan 2026 16:27:02 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=lb3rfeLQ%2F2VeOgxiPtQNlK9Ds%2Fya99kLTmoP0AFYwhUao%2Fa9CTTOML53Ftoh9pEqdpmaao3vqE1rSf0NyELjTjT74JQvdbRmh%2Fr0ZVENypXL%2BG33n02ZyUeX"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
cf-cache-status: DYNAMIC
CF-RAY: 9c182d39faaeebbd-YYZ
alt-svc: h3=":8443"; ma=86400
Page title: Changelog | LH-DEV
<!DOCTYPE html>
<html lang="en">
<title>Changelog | LH-DEV</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="LH-DEV">
<meta name="description" content="Laghaim, 라그하임, Savage Eden, Biosfear, official server files and source code.">
<link rel="canonical" href="http://:4000/">
<link rel="stylesheet" href="/assets/css/index.css">
<link rel="stylesheet" href="/assets/css/classes.css">
<link rel="icon" href="/assets/icon.png" type="images" sizes="16x16">
<header>
<a href="/" class="title">LH-DEV</a>
<nav><a aria-label="Changelog" href="/" ><span aria-hidden="true">Changelog</span></a><a aria-label="Tools" href="/tools/" ><span aria-hidden="true">Tools</span></a><a aria-label="Setup Guide" href="/setupguide/" ><span aria-hidden="true">Setup Guide</span></a><a aria-label="Test Server" href="/testserver/" ><span aria-hidden="true">Test Server</span></a><a aria-label="Buy" href="/buy/" ><span aria-hidden="true">Buy</span></a><a aria-label="Contact" href="/contact/" class="selected"><span aria-hidden="true">Contact</span></a></nav>
</header>
<style>
:root {
--bg-color: #f4f6f8;
--text-color: #000;
--table-bg: #fff;
--header-bg: #fff;
--row-even: #fafafa;
--tab-bg: #e9ecef;
--tab-active-bg: #fff;
}
body {
font-family: Arial, sans-serif;
padding: 20px;
background: var(--bg-color);
color: var(--text-color);
transition: background 0.3s, color 0.3s;
}
h1 {
margin-bottom: 20px;
}
/* Fixed first column width */
table td:first-child,
table th:first-child {
width: 200px; /* set your desired width */
max-width: 200px;
min-width: 200px;
overflow: hidden;
text-overflow: ellipsis; /* cut off if too long */
white-space: nowrap;
}
/* Dark mode styles */
body.dark {
--bg-color: #1e1e1e;
--text-color: #ddd;
--table-bg: #2c2c2c;
--header-bg: #2c2c2c;
--row-even: #333;
--tab-bg: #444;
--tab-active-bg: #222;
}
/* Tabs */
.tabs {
display: flex;
margin-bottom: 10px;
border-bottom: 1px solid #ccc;
}
.tab {
padding: 6px 16px;
cursor: pointer;
background: var(--tab-bg);
border: 1px solid #ccc;
border-bottom: 1px solid #ccc;
margin-right: 5px;
border-radius: 4px 4px 0 0;
transition: background 0.3s, color 0.3s;
}
.tab.active {
background: var(--tab-active-bg);
font-weight: bold;
}
/* Pages */
.page {
display: none;
}
.page.active {
display: block;
}
/* Tables */
table {
border-collapse: collapse;
width: 100%;
min-width: 500px;
margin-top: 10px;
background: var(--table-bg);
transition: background 0.3s;
}
th, td {
border: 1px solid #d0d0d0;
padding: 8px;
white-space: nowrap;
text-align: left;
}
thead th {
background: var(--header-bg);
font-weight: normal;
position: static;
}
tr:nth-child(even) td {
background: var(--row-even);
}
/* Dark mode transitions for table rows */
body.dark th, body.dark td {
border-color: #555;
}
/* Toggle button */
#darkModeToggle {
margin-bottom: 10px;
padding: 6px 6px;
cursor: pointer;
}
.theme-toggle {
background: none;
border: none;
padding: 0;
cursor: pointer;
outline: none;
}
</style>
<div class="tabs">
<div class="tab active" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(0)" data-cf-modified-709a4f63c99de8686c97138d-="">server</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(1)" data-cf-modified-709a4f63c99de8686c97138d-="">client</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(2)" data-cf-modified-709a4f63c99de8686c97138d-="">database</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(3)" data-cf-modified-709a4f63c99de8686c97138d-="">server_c</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(4)" dat
Open service 2a06:98c1:3121::3:443 · www.lh-dev.net
2026-01-21 16:27
HTTP/1.1 200 OK
Date: Wed, 21 Jan 2026 16:27:02 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=AGGuaE8Z3Hjy%2BFyhwdez6EyGpQIWnBk%2Bv6pn%2Bv2GDudngAqqm0pf6%2FRLX4%2FNI%2FDjGZsT1UYhb0NgycN%2BUOWlU5EJrozmfcbOYhd%2Ffsae7JOTmbCJaFUOFRnG"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
cf-cache-status: DYNAMIC
CF-RAY: 9c182d3abb781914-EWR
alt-svc: h3=":443"; ma=86400
Page title: Changelog | LH-DEV
<!DOCTYPE html>
<html lang="en">
<title>Changelog | LH-DEV</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="LH-DEV">
<meta name="description" content="Laghaim, 라그하임, Savage Eden, Biosfear, official server files and source code.">
<link rel="canonical" href="http://:4000/">
<link rel="stylesheet" href="/assets/css/index.css">
<link rel="stylesheet" href="/assets/css/classes.css">
<link rel="icon" href="/assets/icon.png" type="images" sizes="16x16">
<header>
<a href="/" class="title">LH-DEV</a>
<nav><a aria-label="Changelog" href="/" ><span aria-hidden="true">Changelog</span></a><a aria-label="Tools" href="/tools/" ><span aria-hidden="true">Tools</span></a><a aria-label="Setup Guide" href="/setupguide/" ><span aria-hidden="true">Setup Guide</span></a><a aria-label="Test Server" href="/testserver/" ><span aria-hidden="true">Test Server</span></a><a aria-label="Buy" href="/buy/" ><span aria-hidden="true">Buy</span></a><a aria-label="Contact" href="/contact/" class="selected"><span aria-hidden="true">Contact</span></a></nav>
</header>
<style>
:root {
--bg-color: #f4f6f8;
--text-color: #000;
--table-bg: #fff;
--header-bg: #fff;
--row-even: #fafafa;
--tab-bg: #e9ecef;
--tab-active-bg: #fff;
}
body {
font-family: Arial, sans-serif;
padding: 20px;
background: var(--bg-color);
color: var(--text-color);
transition: background 0.3s, color 0.3s;
}
h1 {
margin-bottom: 20px;
}
/* Fixed first column width */
table td:first-child,
table th:first-child {
width: 200px; /* set your desired width */
max-width: 200px;
min-width: 200px;
overflow: hidden;
text-overflow: ellipsis; /* cut off if too long */
white-space: nowrap;
}
/* Dark mode styles */
body.dark {
--bg-color: #1e1e1e;
--text-color: #ddd;
--table-bg: #2c2c2c;
--header-bg: #2c2c2c;
--row-even: #333;
--tab-bg: #444;
--tab-active-bg: #222;
}
/* Tabs */
.tabs {
display: flex;
margin-bottom: 10px;
border-bottom: 1px solid #ccc;
}
.tab {
padding: 6px 16px;
cursor: pointer;
background: var(--tab-bg);
border: 1px solid #ccc;
border-bottom: 1px solid #ccc;
margin-right: 5px;
border-radius: 4px 4px 0 0;
transition: background 0.3s, color 0.3s;
}
.tab.active {
background: var(--tab-active-bg);
font-weight: bold;
}
/* Pages */
.page {
display: none;
}
.page.active {
display: block;
}
/* Tables */
table {
border-collapse: collapse;
width: 100%;
min-width: 500px;
margin-top: 10px;
background: var(--table-bg);
transition: background 0.3s;
}
th, td {
border: 1px solid #d0d0d0;
padding: 8px;
white-space: nowrap;
text-align: left;
}
thead th {
background: var(--header-bg);
font-weight: normal;
position: static;
}
tr:nth-child(even) td {
background: var(--row-even);
}
/* Dark mode transitions for table rows */
body.dark th, body.dark td {
border-color: #555;
}
/* Toggle button */
#darkModeToggle {
margin-bottom: 10px;
padding: 6px 6px;
cursor: pointer;
}
.theme-toggle {
background: none;
border: none;
padding: 0;
cursor: pointer;
outline: none;
}
</style>
<div class="tabs">
<div class="tab active" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(0)" data-cf-modified-ccf10d278e781f92d002af94-="">server</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(1)" data-cf-modified-ccf10d278e781f92d002af94-="">client</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(2)" data-cf-modified-ccf10d278e781f92d002af94-="">database</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(3)" data-cf-modified-ccf10d278e781f92d002af94-="">server_c</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(4)" dat
Open service 2a06:98c1:3120::3:80 · www.lh-dev.net
2026-01-21 16:27
HTTP/1.1 301 Moved Permanently
Date: Wed, 21 Jan 2026 16:27:01 GMT
Content-Length: 0
Connection: close
Location: https://www.lh-dev.net/
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=5Oeegi3jpt6QGxk8AF9QimDEA0%2BjfntlwAPQaVkZpX3kH2xeJEJ5%2FWxsWDS4Jo2PZYSopkUE4R0TUL4j0oeq2xmBbDuO8gciFRPZqFk4o5CeqwCAozDKVWuy"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9c182d395bef7206-EWR
Open service 188.114.97.3:80 · www.lh-dev.net
2026-01-21 16:27
HTTP/1.1 301 Moved Permanently
Date: Wed, 21 Jan 2026 16:27:01 GMT
Content-Length: 0
Connection: close
Location: https://www.lh-dev.net/
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=%2Flxea9NJj4m%2FCxxtExwFgMpXqP1u64nPf%2BrrKYxQIooam4vk2EPAtU2lFznkaOInCSH27G7lqZsmBx%2FHlf8hM2lCfuDqt4I4Ww6VxsIJ"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9c182d393cb7af90-LHR
Open service 2a06:98c1:3120::3:443 · www.lh-dev.net
2026-01-21 16:27
HTTP/1.1 200 OK
Date: Wed, 21 Jan 2026 16:27:02 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=9TZiwe2WL1zMmHuzlieK9ZwX7IEQzMHMeAcRrHRJzdsbXZBBXP%2BBSfnV56SopTpkeMtr4S2VpMQLTLzdsYsAlMIXGG2fsqg6KFGTj2sQYEGo7JykAfpRbhXt"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
cf-cache-status: DYNAMIC
CF-RAY: 9c182d39de2be5a3-FRA
alt-svc: h3=":443"; ma=86400
Page title: Changelog | LH-DEV
<!DOCTYPE html>
<html lang="en">
<title>Changelog | LH-DEV</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="LH-DEV">
<meta name="description" content="Laghaim, 라그하임, Savage Eden, Biosfear, official server files and source code.">
<link rel="canonical" href="http://:4000/">
<link rel="stylesheet" href="/assets/css/index.css">
<link rel="stylesheet" href="/assets/css/classes.css">
<link rel="icon" href="/assets/icon.png" type="images" sizes="16x16">
<header>
<a href="/" class="title">LH-DEV</a>
<nav><a aria-label="Changelog" href="/" ><span aria-hidden="true">Changelog</span></a><a aria-label="Tools" href="/tools/" ><span aria-hidden="true">Tools</span></a><a aria-label="Setup Guide" href="/setupguide/" ><span aria-hidden="true">Setup Guide</span></a><a aria-label="Test Server" href="/testserver/" ><span aria-hidden="true">Test Server</span></a><a aria-label="Buy" href="/buy/" ><span aria-hidden="true">Buy</span></a><a aria-label="Contact" href="/contact/" class="selected"><span aria-hidden="true">Contact</span></a></nav>
</header>
<style>
:root {
--bg-color: #f4f6f8;
--text-color: #000;
--table-bg: #fff;
--header-bg: #fff;
--row-even: #fafafa;
--tab-bg: #e9ecef;
--tab-active-bg: #fff;
}
body {
font-family: Arial, sans-serif;
padding: 20px;
background: var(--bg-color);
color: var(--text-color);
transition: background 0.3s, color 0.3s;
}
h1 {
margin-bottom: 20px;
}
/* Fixed first column width */
table td:first-child,
table th:first-child {
width: 200px; /* set your desired width */
max-width: 200px;
min-width: 200px;
overflow: hidden;
text-overflow: ellipsis; /* cut off if too long */
white-space: nowrap;
}
/* Dark mode styles */
body.dark {
--bg-color: #1e1e1e;
--text-color: #ddd;
--table-bg: #2c2c2c;
--header-bg: #2c2c2c;
--row-even: #333;
--tab-bg: #444;
--tab-active-bg: #222;
}
/* Tabs */
.tabs {
display: flex;
margin-bottom: 10px;
border-bottom: 1px solid #ccc;
}
.tab {
padding: 6px 16px;
cursor: pointer;
background: var(--tab-bg);
border: 1px solid #ccc;
border-bottom: 1px solid #ccc;
margin-right: 5px;
border-radius: 4px 4px 0 0;
transition: background 0.3s, color 0.3s;
}
.tab.active {
background: var(--tab-active-bg);
font-weight: bold;
}
/* Pages */
.page {
display: none;
}
.page.active {
display: block;
}
/* Tables */
table {
border-collapse: collapse;
width: 100%;
min-width: 500px;
margin-top: 10px;
background: var(--table-bg);
transition: background 0.3s;
}
th, td {
border: 1px solid #d0d0d0;
padding: 8px;
white-space: nowrap;
text-align: left;
}
thead th {
background: var(--header-bg);
font-weight: normal;
position: static;
}
tr:nth-child(even) td {
background: var(--row-even);
}
/* Dark mode transitions for table rows */
body.dark th, body.dark td {
border-color: #555;
}
/* Toggle button */
#darkModeToggle {
margin-bottom: 10px;
padding: 6px 6px;
cursor: pointer;
}
.theme-toggle {
background: none;
border: none;
padding: 0;
cursor: pointer;
outline: none;
}
</style>
<div class="tabs">
<div class="tab active" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(0)" data-cf-modified-d05f0c9c25add90de9e0cab4-="">server</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(1)" data-cf-modified-d05f0c9c25add90de9e0cab4-="">client</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(2)" data-cf-modified-d05f0c9c25add90de9e0cab4-="">database</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(3)" data-cf-modified-d05f0c9c25add90de9e0cab4-="">server_c</div>
<div class="tab" onclick="if (!window.__cfRLUnblockHandlers) return false; openTab(4)" dat