Varnish
tcp/80
openresty
tcp/443
Open service 151.101.129.242:80 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:13 GMT Via: 1.1 varnish X-Served-By: cache-vie6369-VIE X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1768146554.550458,VS0,VE82 Strict-Transport-Security: max-age=300
Open service 151.101.65.242:443 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 502 Bad Gateway Connection: close Content-Length: 154 Server: openresty Content-Type: text/html; charset=utf-8 Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:15 GMT Via: 1.1 varnish X-Served-By: cache-fra-eddf8230037-FRA X-Cache: MISS X-Cache-Hits: 0 X-Timer: S1768146555.632636,VS0,VE394 Strict-Transport-Security: max-age=300 Page title: 502 Bad Gateway <html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>openresty</center> </body> </html>
Open service 2a04:4e42:200::498:443 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 502 Bad Gateway Connection: close Content-Length: 154 Server: openresty Content-Type: text/html; charset=utf-8 Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:14 GMT Via: 1.1 varnish X-Served-By: cache-fra-eddf8230097-FRA X-Cache: MISS X-Cache-Hits: 0 X-Timer: S1768146555.571588,VS0,VE294 Strict-Transport-Security: max-age=300 Page title: 502 Bad Gateway <html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>openresty</center> </body> </html>
Open service 2a04:4e42:200::498:80 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:13 GMT Via: 1.1 varnish X-Served-By: cache-fra-eddf8230114-FRA X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1768146554.817789,VS0,VE0 Strict-Transport-Security: max-age=300
Open service 2a04:4e42:600::498:80 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:13 GMT Via: 1.1 varnish X-Served-By: cache-rtm-ehrd2290030-RTM X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1768146554.533941,VS0,VE0 Strict-Transport-Security: max-age=300
Open service 2a04:4e42::498:443 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 502 Bad Gateway Connection: close Content-Length: 154 Server: openresty Content-Type: text/html; charset=utf-8 Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:14 GMT Via: 1.1 varnish X-Served-By: cache-vie6326-VIE X-Cache: MISS X-Cache-Hits: 0 X-Timer: S1768146555.578570,VS0,VE220 Strict-Transport-Security: max-age=300 Page title: 502 Bad Gateway <html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>openresty</center> </body> </html>
Open service 151.101.1.242:80 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:13 GMT Via: 1.1 varnish X-Served-By: cache-fra-eddf8230086-FRA X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1768146554.562765,VS0,VE0 Strict-Transport-Security: max-age=300
Open service 2a04:4e42:400::498:80 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:13 GMT Via: 1.1 varnish X-Served-By: cache-fra-eddf8230139-FRA X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1768146554.548029,VS0,VE63 Strict-Transport-Security: max-age=300
Open service 151.101.65.242:80 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:13 GMT Via: 1.1 varnish X-Served-By: cache-fra-eddf8230129-FRA X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1768146554.538797,VS0,VE1 Strict-Transport-Security: max-age=300
Open service 2a04:4e42:600::498:443 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 502 Bad Gateway Connection: close Content-Length: 154 Server: openresty Content-Type: text/html; charset=utf-8 Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:14 GMT Via: 1.1 varnish X-Served-By: cache-vie6342-VIE X-Cache: MISS X-Cache-Hits: 0 X-Timer: S1768146554.419855,VS0,VE216 Strict-Transport-Security: max-age=300 Page title: 502 Bad Gateway <html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>openresty</center> </body> </html>
Open service 151.101.129.242:443 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 502 Bad Gateway Connection: close Content-Length: 154 Server: openresty Content-Type: text/html; charset=utf-8 Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:14 GMT Via: 1.1 varnish X-Served-By: cache-vie6329-VIE X-Cache: MISS X-Cache-Hits: 0 X-Timer: S1768146555.600427,VS0,VE361 Strict-Transport-Security: max-age=300 Page title: 502 Bad Gateway <html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>openresty</center> </body> </html>
Open service 151.101.1.242:443 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 502 Bad Gateway Connection: close Content-Length: 154 Server: openresty Content-Type: text/html; charset=utf-8 Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:14 GMT Via: 1.1 varnish X-Served-By: cache-fra-eddf8230137-FRA X-Cache: MISS X-Cache-Hits: 0 X-Timer: S1768146554.380389,VS0,VE167 Strict-Transport-Security: max-age=300 Page title: 502 Bad Gateway <html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>openresty</center> </body> </html>
Open service 2a04:4e42:400::498:443 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 502 Bad Gateway Connection: close Content-Length: 154 Server: openresty Content-Type: text/html; charset=utf-8 Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:14 GMT Via: 1.1 varnish X-Served-By: cache-fra-eddf8230169-FRA X-Cache: MISS X-Cache-Hits: 0 X-Timer: S1768146555.545419,VS0,VE159 Strict-Transport-Security: max-age=300 Page title: 502 Bad Gateway <html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>openresty</center> </body> </html>
Open service 2a04:4e42::498:80 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:13 GMT Via: 1.1 varnish X-Served-By: cache-fra-eddf8230169-FRA X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1768146554.567559,VS0,VE0 Strict-Transport-Security: max-age=300
Open service 151.101.193.242:443 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 502 Bad Gateway Connection: close Content-Length: 154 Server: openresty Content-Type: text/html; charset=utf-8 Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:13 GMT Via: 1.1 varnish X-Served-By: cache-lga21945-LGA X-Cache: MISS X-Cache-Hits: 0 X-Timer: S1768146553.322525,VS0,VE71 Strict-Transport-Security: max-age=300 Page title: 502 Bad Gateway <html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>openresty</center> </body> </html>
Open service 151.101.193.242:80 · sublustrum.net
2026-01-11 15:49
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sun, 11 Jan 2026 15:49:12 GMT Via: 1.1 varnish X-Served-By: cache-fra-eddf8230125-FRA X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1768146553.974293,VS0,VE0 Strict-Transport-Security: max-age=300
Open service 151.101.193.242:443 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 200 OK
Connection: close
Content-Length: 18909
Server: openresty
Content-Type: text/html; charset=utf-8
Last-Modified: Thu, 11 Dec 2025 12:17:20 GMT
X-Service: pixie-cpanel
Accept-Ranges: bytes
Date: Sat, 03 Jan 2026 13:21:49 GMT
Via: 1.1 varnish
Age: 0
X-Served-By: cache-sin-wsat1880087-SIN
X-Cache: MISS, HIT
X-Cache-Hits: 1
X-Timer: S1767446509.234715,VS0,VE0
Vary: Accept-Encoding
Strict-Transport-Security: max-age=300
Page title: Sublustrum — A Reimagined 2008 Psychological Adventure
<!DOCTYPE html>
<html lang="ru">
<head>
<script>
(function () {
const currentPath = window.location.pathname;
const supportedLangs = new Set(['ru', 'de', 'es', 'fr', 'pl', 'ja']);
if (currentPath === '/' || currentPath === '/index.html') {
const preferredLang = localStorage.getItem('preferred-language');
if (preferredLang) {
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span && preferredLang === 'en') {
span.textContent = 'EN';
}
});
return;
}
const lang = navigator.language?.toLowerCase() || 'en';
const [primary] = lang.split('-');
let target = null;
if (supportedLangs.has(primary)) {
target = `/${primary}/`;
}
if (target) {
window.location.replace(target);
}
return;
}
const pathMatch = /^\/([a-z]{2})\/?$/.exec(currentPath);
if (pathMatch) {
const langCode = pathMatch[1];
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span) {
span.textContent = langCode === 'en' ? 'EN' : langCode.toUpperCase();
}
});
}
})();
document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('.lang-content a.lang').forEach(link => {
link.addEventListener('click', function (e) {
const href = this.getAttribute('href');
const langCodeMatch = href.match(/^\/([a-z]{2})\/?$/);
if (!langCodeMatch) return;
const langCode = langCodeMatch[1];
localStorage.setItem('preferred-language', langCode);
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = langCode.toUpperCase();
}
});
});
const englishLink = document.querySelector('.lang-content a[href="/"]');
if (englishLink) {
englishLink.addEventListener('click', function () {
localStorage.setItem('preferred-language', 'en');
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = 'EN';
}
});
}
});
</script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sublustrum — A Reimagined 2008 Psychological Adventure</title>
<meta name="description"
content="Official site for the 2008 Sublustrum remake by Phantomery and Brickworks. 3D exploration. Watch the reveal trailer and add to your Steam wishlists.">
<link rel="icon" href="/img/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/plugins/fancybox/fancybox.css">
<link rel="stylesheet" href="/css/style.css">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Q3DT0VPGWQ"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-Q3DT0VPGWQ');
</script>
</head>
<body style="background: linear-gradient(90deg, #242c2f 0%, #1b313d 49.52%, #131617 100%);">
<div class="wrapper">
<div class="wrapper__bg wrapper__bg-1" data-depth="0.45">
<img src="/img/back1_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-1-1" data-depth="0.6">
<img src="/img/back2_chunk_d_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2" data-depth="0.45">
<img src="/img/back1_chunk_a_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2-2" data-depth="0.6">
<img src="/img/back2_chunk_b_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3" data-depth="0.45">
<img src="/img/back1_chunk_b_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3-3" data-depth="0.6">
<img src="/img/back2_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4" data-depth="0.45">
<img src="/img/back1_chunk_c_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4-4" data-depth="0.6">
Open service 151.101.193.242:80 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sat, 03 Jan 2026 13:21:48 GMT Via: 1.1 varnish X-Served-By: cache-lga21968-LGA X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1767446508.978334,VS0,VE66 Strict-Transport-Security: max-age=300
Open service 2a04:4e42::498:80 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sat, 03 Jan 2026 13:21:47 GMT Via: 1.1 varnish X-Served-By: cache-pao-kpao1770050-PAO X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1767446508.913511,VS0,VE32 Strict-Transport-Security: max-age=300
Open service 151.101.65.242:80 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sat, 03 Jan 2026 13:21:48 GMT Via: 1.1 varnish X-Served-By: cache-vie6381-VIE X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1767446508.953142,VS0,VE82 Strict-Transport-Security: max-age=300
Open service 2a04:4e42:400::498:80 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sat, 03 Jan 2026 13:21:47 GMT Via: 1.1 varnish X-Served-By: cache-fra-eddf8230155-FRA X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1767446508.946737,VS0,VE1 Strict-Transport-Security: max-age=300
Open service 2a04:4e42:400::498:443 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 200 OK
Connection: close
Content-Length: 18909
Server: openresty
Content-Type: text/html; charset=utf-8
Last-Modified: Thu, 11 Dec 2025 12:17:20 GMT
X-Service: pixie-cpanel
Accept-Ranges: bytes
Age: 0
Date: Sat, 03 Jan 2026 13:21:49 GMT
Via: 1.1 varnish
X-Served-By: cache-vie6371-VIE
X-Cache: MISS, MISS
X-Cache-Hits: 0
X-Timer: S1767446508.935441,VS0,VE1082
Vary: Accept-Encoding
Strict-Transport-Security: max-age=300
Page title: Sublustrum — A Reimagined 2008 Psychological Adventure
<!DOCTYPE html>
<html lang="ru">
<head>
<script>
(function () {
const currentPath = window.location.pathname;
const supportedLangs = new Set(['ru', 'de', 'es', 'fr', 'pl', 'ja']);
if (currentPath === '/' || currentPath === '/index.html') {
const preferredLang = localStorage.getItem('preferred-language');
if (preferredLang) {
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span && preferredLang === 'en') {
span.textContent = 'EN';
}
});
return;
}
const lang = navigator.language?.toLowerCase() || 'en';
const [primary] = lang.split('-');
let target = null;
if (supportedLangs.has(primary)) {
target = `/${primary}/`;
}
if (target) {
window.location.replace(target);
}
return;
}
const pathMatch = /^\/([a-z]{2})\/?$/.exec(currentPath);
if (pathMatch) {
const langCode = pathMatch[1];
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span) {
span.textContent = langCode === 'en' ? 'EN' : langCode.toUpperCase();
}
});
}
})();
document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('.lang-content a.lang').forEach(link => {
link.addEventListener('click', function (e) {
const href = this.getAttribute('href');
const langCodeMatch = href.match(/^\/([a-z]{2})\/?$/);
if (!langCodeMatch) return;
const langCode = langCodeMatch[1];
localStorage.setItem('preferred-language', langCode);
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = langCode.toUpperCase();
}
});
});
const englishLink = document.querySelector('.lang-content a[href="/"]');
if (englishLink) {
englishLink.addEventListener('click', function () {
localStorage.setItem('preferred-language', 'en');
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = 'EN';
}
});
}
});
</script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sublustrum — A Reimagined 2008 Psychological Adventure</title>
<meta name="description"
content="Official site for the 2008 Sublustrum remake by Phantomery and Brickworks. 3D exploration. Watch the reveal trailer and add to your Steam wishlists.">
<link rel="icon" href="/img/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/plugins/fancybox/fancybox.css">
<link rel="stylesheet" href="/css/style.css">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Q3DT0VPGWQ"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-Q3DT0VPGWQ');
</script>
</head>
<body style="background: linear-gradient(90deg, #242c2f 0%, #1b313d 49.52%, #131617 100%);">
<div class="wrapper">
<div class="wrapper__bg wrapper__bg-1" data-depth="0.45">
<img src="/img/back1_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-1-1" data-depth="0.6">
<img src="/img/back2_chunk_d_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2" data-depth="0.45">
<img src="/img/back1_chunk_a_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2-2" data-depth="0.6">
<img src="/img/back2_chunk_b_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3" data-depth="0.45">
<img src="/img/back1_chunk_b_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3-3" data-depth="0.6">
<img src="/img/back2_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4" data-depth="0.45">
<img src="/img/back1_chunk_c_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4-4" data-depth="0.6">
Open service 151.101.65.242:443 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 200 OK
Connection: close
Content-Length: 18909
Server: openresty
Content-Type: text/html; charset=utf-8
Last-Modified: Thu, 11 Dec 2025 12:17:20 GMT
X-Service: pixie-cpanel
Accept-Ranges: bytes
Date: Sat, 03 Jan 2026 13:21:48 GMT
Via: 1.1 varnish
Age: 0
X-Served-By: cache-yyz4579-YYZ
X-Cache: MISS, HIT
X-Cache-Hits: 1
X-Timer: S1767446508.329286,VS0,VE2
Vary: Accept-Encoding
Strict-Transport-Security: max-age=300
Page title: Sublustrum — A Reimagined 2008 Psychological Adventure
<!DOCTYPE html>
<html lang="ru">
<head>
<script>
(function () {
const currentPath = window.location.pathname;
const supportedLangs = new Set(['ru', 'de', 'es', 'fr', 'pl', 'ja']);
if (currentPath === '/' || currentPath === '/index.html') {
const preferredLang = localStorage.getItem('preferred-language');
if (preferredLang) {
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span && preferredLang === 'en') {
span.textContent = 'EN';
}
});
return;
}
const lang = navigator.language?.toLowerCase() || 'en';
const [primary] = lang.split('-');
let target = null;
if (supportedLangs.has(primary)) {
target = `/${primary}/`;
}
if (target) {
window.location.replace(target);
}
return;
}
const pathMatch = /^\/([a-z]{2})\/?$/.exec(currentPath);
if (pathMatch) {
const langCode = pathMatch[1];
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span) {
span.textContent = langCode === 'en' ? 'EN' : langCode.toUpperCase();
}
});
}
})();
document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('.lang-content a.lang').forEach(link => {
link.addEventListener('click', function (e) {
const href = this.getAttribute('href');
const langCodeMatch = href.match(/^\/([a-z]{2})\/?$/);
if (!langCodeMatch) return;
const langCode = langCodeMatch[1];
localStorage.setItem('preferred-language', langCode);
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = langCode.toUpperCase();
}
});
});
const englishLink = document.querySelector('.lang-content a[href="/"]');
if (englishLink) {
englishLink.addEventListener('click', function () {
localStorage.setItem('preferred-language', 'en');
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = 'EN';
}
});
}
});
</script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sublustrum — A Reimagined 2008 Psychological Adventure</title>
<meta name="description"
content="Official site for the 2008 Sublustrum remake by Phantomery and Brickworks. 3D exploration. Watch the reveal trailer and add to your Steam wishlists.">
<link rel="icon" href="/img/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/plugins/fancybox/fancybox.css">
<link rel="stylesheet" href="/css/style.css">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Q3DT0VPGWQ"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-Q3DT0VPGWQ');
</script>
</head>
<body style="background: linear-gradient(90deg, #242c2f 0%, #1b313d 49.52%, #131617 100%);">
<div class="wrapper">
<div class="wrapper__bg wrapper__bg-1" data-depth="0.45">
<img src="/img/back1_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-1-1" data-depth="0.6">
<img src="/img/back2_chunk_d_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2" data-depth="0.45">
<img src="/img/back1_chunk_a_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2-2" data-depth="0.6">
<img src="/img/back2_chunk_b_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3" data-depth="0.45">
<img src="/img/back1_chunk_b_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3-3" data-depth="0.6">
<img src="/img/back2_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4" data-depth="0.45">
<img src="/img/back1_chunk_c_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4-4" data-depth="0.6">
Open service 151.101.1.242:443 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 200 OK
Connection: close
Content-Length: 18909
Server: openresty
Content-Type: text/html; charset=utf-8
Last-Modified: Thu, 11 Dec 2025 12:17:20 GMT
X-Service: pixie-cpanel
Accept-Ranges: bytes
Date: Sat, 03 Jan 2026 13:21:49 GMT
Via: 1.1 varnish
Age: 0
X-Served-By: cache-sin-wsss1830082-SIN
X-Cache: MISS, HIT
X-Cache-Hits: 1
X-Timer: S1767446509.884132,VS0,VE345
Vary: Accept-Encoding
Strict-Transport-Security: max-age=300
Page title: Sublustrum — A Reimagined 2008 Psychological Adventure
<!DOCTYPE html>
<html lang="ru">
<head>
<script>
(function () {
const currentPath = window.location.pathname;
const supportedLangs = new Set(['ru', 'de', 'es', 'fr', 'pl', 'ja']);
if (currentPath === '/' || currentPath === '/index.html') {
const preferredLang = localStorage.getItem('preferred-language');
if (preferredLang) {
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span && preferredLang === 'en') {
span.textContent = 'EN';
}
});
return;
}
const lang = navigator.language?.toLowerCase() || 'en';
const [primary] = lang.split('-');
let target = null;
if (supportedLangs.has(primary)) {
target = `/${primary}/`;
}
if (target) {
window.location.replace(target);
}
return;
}
const pathMatch = /^\/([a-z]{2})\/?$/.exec(currentPath);
if (pathMatch) {
const langCode = pathMatch[1];
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span) {
span.textContent = langCode === 'en' ? 'EN' : langCode.toUpperCase();
}
});
}
})();
document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('.lang-content a.lang').forEach(link => {
link.addEventListener('click', function (e) {
const href = this.getAttribute('href');
const langCodeMatch = href.match(/^\/([a-z]{2})\/?$/);
if (!langCodeMatch) return;
const langCode = langCodeMatch[1];
localStorage.setItem('preferred-language', langCode);
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = langCode.toUpperCase();
}
});
});
const englishLink = document.querySelector('.lang-content a[href="/"]');
if (englishLink) {
englishLink.addEventListener('click', function () {
localStorage.setItem('preferred-language', 'en');
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = 'EN';
}
});
}
});
</script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sublustrum — A Reimagined 2008 Psychological Adventure</title>
<meta name="description"
content="Official site for the 2008 Sublustrum remake by Phantomery and Brickworks. 3D exploration. Watch the reveal trailer and add to your Steam wishlists.">
<link rel="icon" href="/img/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/plugins/fancybox/fancybox.css">
<link rel="stylesheet" href="/css/style.css">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Q3DT0VPGWQ"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-Q3DT0VPGWQ');
</script>
</head>
<body style="background: linear-gradient(90deg, #242c2f 0%, #1b313d 49.52%, #131617 100%);">
<div class="wrapper">
<div class="wrapper__bg wrapper__bg-1" data-depth="0.45">
<img src="/img/back1_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-1-1" data-depth="0.6">
<img src="/img/back2_chunk_d_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2" data-depth="0.45">
<img src="/img/back1_chunk_a_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2-2" data-depth="0.6">
<img src="/img/back2_chunk_b_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3" data-depth="0.45">
<img src="/img/back1_chunk_b_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3-3" data-depth="0.6">
<img src="/img/back2_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4" data-depth="0.45">
<img src="/img/back1_chunk_c_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4-4" data-depth="0.6">
Open service 2a04:4e42::498:443 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 200 OK
Connection: close
Content-Length: 18909
Server: openresty
Content-Type: text/html; charset=utf-8
Last-Modified: Thu, 11 Dec 2025 12:17:20 GMT
X-Service: pixie-cpanel
Accept-Ranges: bytes
Date: Sat, 03 Jan 2026 13:21:48 GMT
Via: 1.1 varnish
Age: 0
X-Served-By: cache-yyz4554-YYZ
X-Cache: MISS, HIT
X-Cache-Hits: 1
X-Timer: S1767446508.333257,VS0,VE2
Vary: Accept-Encoding
Strict-Transport-Security: max-age=300
Page title: Sublustrum — A Reimagined 2008 Psychological Adventure
<!DOCTYPE html>
<html lang="ru">
<head>
<script>
(function () {
const currentPath = window.location.pathname;
const supportedLangs = new Set(['ru', 'de', 'es', 'fr', 'pl', 'ja']);
if (currentPath === '/' || currentPath === '/index.html') {
const preferredLang = localStorage.getItem('preferred-language');
if (preferredLang) {
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span && preferredLang === 'en') {
span.textContent = 'EN';
}
});
return;
}
const lang = navigator.language?.toLowerCase() || 'en';
const [primary] = lang.split('-');
let target = null;
if (supportedLangs.has(primary)) {
target = `/${primary}/`;
}
if (target) {
window.location.replace(target);
}
return;
}
const pathMatch = /^\/([a-z]{2})\/?$/.exec(currentPath);
if (pathMatch) {
const langCode = pathMatch[1];
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span) {
span.textContent = langCode === 'en' ? 'EN' : langCode.toUpperCase();
}
});
}
})();
document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('.lang-content a.lang').forEach(link => {
link.addEventListener('click', function (e) {
const href = this.getAttribute('href');
const langCodeMatch = href.match(/^\/([a-z]{2})\/?$/);
if (!langCodeMatch) return;
const langCode = langCodeMatch[1];
localStorage.setItem('preferred-language', langCode);
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = langCode.toUpperCase();
}
});
});
const englishLink = document.querySelector('.lang-content a[href="/"]');
if (englishLink) {
englishLink.addEventListener('click', function () {
localStorage.setItem('preferred-language', 'en');
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = 'EN';
}
});
}
});
</script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sublustrum — A Reimagined 2008 Psychological Adventure</title>
<meta name="description"
content="Official site for the 2008 Sublustrum remake by Phantomery and Brickworks. 3D exploration. Watch the reveal trailer and add to your Steam wishlists.">
<link rel="icon" href="/img/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/plugins/fancybox/fancybox.css">
<link rel="stylesheet" href="/css/style.css">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Q3DT0VPGWQ"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-Q3DT0VPGWQ');
</script>
</head>
<body style="background: linear-gradient(90deg, #242c2f 0%, #1b313d 49.52%, #131617 100%);">
<div class="wrapper">
<div class="wrapper__bg wrapper__bg-1" data-depth="0.45">
<img src="/img/back1_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-1-1" data-depth="0.6">
<img src="/img/back2_chunk_d_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2" data-depth="0.45">
<img src="/img/back1_chunk_a_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2-2" data-depth="0.6">
<img src="/img/back2_chunk_b_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3" data-depth="0.45">
<img src="/img/back1_chunk_b_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3-3" data-depth="0.6">
<img src="/img/back2_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4" data-depth="0.45">
<img src="/img/back1_chunk_c_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4-4" data-depth="0.6">
Open service 151.101.129.242:443 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 200 OK
Connection: close
Content-Length: 18909
Server: openresty
Content-Type: text/html; charset=utf-8
Last-Modified: Thu, 11 Dec 2025 12:17:20 GMT
X-Service: pixie-cpanel
Accept-Ranges: bytes
Date: Sat, 03 Jan 2026 13:21:49 GMT
Via: 1.1 varnish
Age: 0
X-Served-By: cache-bom-vanm7210055-BOM
X-Cache: MISS, HIT
X-Cache-Hits: 1
X-Timer: S1767446509.891441,VS0,VE600
Vary: Accept-Encoding
Strict-Transport-Security: max-age=300
Page title: Sublustrum — A Reimagined 2008 Psychological Adventure
<!DOCTYPE html>
<html lang="ru">
<head>
<script>
(function () {
const currentPath = window.location.pathname;
const supportedLangs = new Set(['ru', 'de', 'es', 'fr', 'pl', 'ja']);
if (currentPath === '/' || currentPath === '/index.html') {
const preferredLang = localStorage.getItem('preferred-language');
if (preferredLang) {
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span && preferredLang === 'en') {
span.textContent = 'EN';
}
});
return;
}
const lang = navigator.language?.toLowerCase() || 'en';
const [primary] = lang.split('-');
let target = null;
if (supportedLangs.has(primary)) {
target = `/${primary}/`;
}
if (target) {
window.location.replace(target);
}
return;
}
const pathMatch = /^\/([a-z]{2})\/?$/.exec(currentPath);
if (pathMatch) {
const langCode = pathMatch[1];
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span) {
span.textContent = langCode === 'en' ? 'EN' : langCode.toUpperCase();
}
});
}
})();
document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('.lang-content a.lang').forEach(link => {
link.addEventListener('click', function (e) {
const href = this.getAttribute('href');
const langCodeMatch = href.match(/^\/([a-z]{2})\/?$/);
if (!langCodeMatch) return;
const langCode = langCodeMatch[1];
localStorage.setItem('preferred-language', langCode);
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = langCode.toUpperCase();
}
});
});
const englishLink = document.querySelector('.lang-content a[href="/"]');
if (englishLink) {
englishLink.addEventListener('click', function () {
localStorage.setItem('preferred-language', 'en');
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = 'EN';
}
});
}
});
</script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sublustrum — A Reimagined 2008 Psychological Adventure</title>
<meta name="description"
content="Official site for the 2008 Sublustrum remake by Phantomery and Brickworks. 3D exploration. Watch the reveal trailer and add to your Steam wishlists.">
<link rel="icon" href="/img/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/plugins/fancybox/fancybox.css">
<link rel="stylesheet" href="/css/style.css">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Q3DT0VPGWQ"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-Q3DT0VPGWQ');
</script>
</head>
<body style="background: linear-gradient(90deg, #242c2f 0%, #1b313d 49.52%, #131617 100%);">
<div class="wrapper">
<div class="wrapper__bg wrapper__bg-1" data-depth="0.45">
<img src="/img/back1_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-1-1" data-depth="0.6">
<img src="/img/back2_chunk_d_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2" data-depth="0.45">
<img src="/img/back1_chunk_a_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2-2" data-depth="0.6">
<img src="/img/back2_chunk_b_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3" data-depth="0.45">
<img src="/img/back1_chunk_b_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3-3" data-depth="0.6">
<img src="/img/back2_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4" data-depth="0.45">
<img src="/img/back1_chunk_c_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4-4" data-depth="0.6">
Open service 2a04:4e42:600::498:443 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 200 OK
Connection: close
Content-Length: 18909
Server: openresty
Content-Type: text/html; charset=utf-8
Last-Modified: Thu, 11 Dec 2025 12:17:20 GMT
X-Service: pixie-cpanel
Accept-Ranges: bytes
Date: Sat, 03 Jan 2026 13:21:48 GMT
Via: 1.1 varnish
Age: 0
X-Served-By: cache-lga21946-LGA
X-Cache: MISS, HIT
X-Cache-Hits: 1
X-Timer: S1767446508.250417,VS0,VE49
Vary: Accept-Encoding
Strict-Transport-Security: max-age=300
Page title: Sublustrum — A Reimagined 2008 Psychological Adventure
<!DOCTYPE html>
<html lang="ru">
<head>
<script>
(function () {
const currentPath = window.location.pathname;
const supportedLangs = new Set(['ru', 'de', 'es', 'fr', 'pl', 'ja']);
if (currentPath === '/' || currentPath === '/index.html') {
const preferredLang = localStorage.getItem('preferred-language');
if (preferredLang) {
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span && preferredLang === 'en') {
span.textContent = 'EN';
}
});
return;
}
const lang = navigator.language?.toLowerCase() || 'en';
const [primary] = lang.split('-');
let target = null;
if (supportedLangs.has(primary)) {
target = `/${primary}/`;
}
if (target) {
window.location.replace(target);
}
return;
}
const pathMatch = /^\/([a-z]{2})\/?$/.exec(currentPath);
if (pathMatch) {
const langCode = pathMatch[1];
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span) {
span.textContent = langCode === 'en' ? 'EN' : langCode.toUpperCase();
}
});
}
})();
document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('.lang-content a.lang').forEach(link => {
link.addEventListener('click', function (e) {
const href = this.getAttribute('href');
const langCodeMatch = href.match(/^\/([a-z]{2})\/?$/);
if (!langCodeMatch) return;
const langCode = langCodeMatch[1];
localStorage.setItem('preferred-language', langCode);
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = langCode.toUpperCase();
}
});
});
const englishLink = document.querySelector('.lang-content a[href="/"]');
if (englishLink) {
englishLink.addEventListener('click', function () {
localStorage.setItem('preferred-language', 'en');
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = 'EN';
}
});
}
});
</script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sublustrum — A Reimagined 2008 Psychological Adventure</title>
<meta name="description"
content="Official site for the 2008 Sublustrum remake by Phantomery and Brickworks. 3D exploration. Watch the reveal trailer and add to your Steam wishlists.">
<link rel="icon" href="/img/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/plugins/fancybox/fancybox.css">
<link rel="stylesheet" href="/css/style.css">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Q3DT0VPGWQ"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-Q3DT0VPGWQ');
</script>
</head>
<body style="background: linear-gradient(90deg, #242c2f 0%, #1b313d 49.52%, #131617 100%);">
<div class="wrapper">
<div class="wrapper__bg wrapper__bg-1" data-depth="0.45">
<img src="/img/back1_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-1-1" data-depth="0.6">
<img src="/img/back2_chunk_d_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2" data-depth="0.45">
<img src="/img/back1_chunk_a_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2-2" data-depth="0.6">
<img src="/img/back2_chunk_b_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3" data-depth="0.45">
<img src="/img/back1_chunk_b_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3-3" data-depth="0.6">
<img src="/img/back2_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4" data-depth="0.45">
<img src="/img/back1_chunk_c_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4-4" data-depth="0.6">
Open service 151.101.1.242:80 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sat, 03 Jan 2026 13:21:47 GMT Via: 1.1 varnish X-Served-By: cache-pao-kpao1770031-PAO X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1767446508.753568,VS0,VE0 Strict-Transport-Security: max-age=300
Open service 151.101.129.242:80 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sat, 03 Jan 2026 13:21:47 GMT Via: 1.1 varnish X-Served-By: cache-lcy-egml8630093-LCY X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1767446508.755532,VS0,VE0 Strict-Transport-Security: max-age=300
Open service 2a04:4e42:200::498:443 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 200 OK
Connection: close
Content-Length: 18909
Server: openresty
Content-Type: text/html; charset=utf-8
Last-Modified: Thu, 11 Dec 2025 12:17:20 GMT
X-Service: pixie-cpanel
Accept-Ranges: bytes
Date: Sat, 03 Jan 2026 13:21:47 GMT
Via: 1.1 varnish
Age: 7
X-Served-By: cache-fra-eddf8230024-FRA
X-Cache: MISS, HIT
X-Cache-Hits: 1
X-Timer: S1767446508.747779,VS0,VE4
Vary: Accept-Encoding
Strict-Transport-Security: max-age=300
Page title: Sublustrum — A Reimagined 2008 Psychological Adventure
<!DOCTYPE html>
<html lang="ru">
<head>
<script>
(function () {
const currentPath = window.location.pathname;
const supportedLangs = new Set(['ru', 'de', 'es', 'fr', 'pl', 'ja']);
if (currentPath === '/' || currentPath === '/index.html') {
const preferredLang = localStorage.getItem('preferred-language');
if (preferredLang) {
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span && preferredLang === 'en') {
span.textContent = 'EN';
}
});
return;
}
const lang = navigator.language?.toLowerCase() || 'en';
const [primary] = lang.split('-');
let target = null;
if (supportedLangs.has(primary)) {
target = `/${primary}/`;
}
if (target) {
window.location.replace(target);
}
return;
}
const pathMatch = /^\/([a-z]{2})\/?$/.exec(currentPath);
if (pathMatch) {
const langCode = pathMatch[1];
document.addEventListener('DOMContentLoaded', function () {
const span = document.querySelector('.lang-toggle .lang');
if (span) {
span.textContent = langCode === 'en' ? 'EN' : langCode.toUpperCase();
}
});
}
})();
document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('.lang-content a.lang').forEach(link => {
link.addEventListener('click', function (e) {
const href = this.getAttribute('href');
const langCodeMatch = href.match(/^\/([a-z]{2})\/?$/);
if (!langCodeMatch) return;
const langCode = langCodeMatch[1];
localStorage.setItem('preferred-language', langCode);
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = langCode.toUpperCase();
}
});
});
const englishLink = document.querySelector('.lang-content a[href="/"]');
if (englishLink) {
englishLink.addEventListener('click', function () {
localStorage.setItem('preferred-language', 'en');
const toggleSpan = document.querySelector('.lang-toggle .lang');
if (toggleSpan) {
toggleSpan.textContent = 'EN';
}
});
}
});
</script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sublustrum — A Reimagined 2008 Psychological Adventure</title>
<meta name="description"
content="Official site for the 2008 Sublustrum remake by Phantomery and Brickworks. 3D exploration. Watch the reveal trailer and add to your Steam wishlists.">
<link rel="icon" href="/img/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/plugins/fancybox/fancybox.css">
<link rel="stylesheet" href="/css/style.css">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Q3DT0VPGWQ"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-Q3DT0VPGWQ');
</script>
</head>
<body style="background: linear-gradient(90deg, #242c2f 0%, #1b313d 49.52%, #131617 100%);">
<div class="wrapper">
<div class="wrapper__bg wrapper__bg-1" data-depth="0.45">
<img src="/img/back1_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-1-1" data-depth="0.6">
<img src="/img/back2_chunk_d_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2" data-depth="0.45">
<img src="/img/back1_chunk_a_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-2-2" data-depth="0.6">
<img src="/img/back2_chunk_b_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3" data-depth="0.45">
<img src="/img/back1_chunk_b_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-3-3" data-depth="0.6">
<img src="/img/back2_chunk_a_l.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4" data-depth="0.45">
<img src="/img/back1_chunk_c_r.png" alt="#" />
</div>
<div class="wrapper__bg wrapper__bg-4-4" data-depth="0.6">
Open service 2a04:4e42:600::498:80 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sat, 03 Jan 2026 13:21:47 GMT Via: 1.1 varnish X-Served-By: cache-lcy-egml8630095-LCY X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1767446508.698116,VS0,VE0 Strict-Transport-Security: max-age=300
Open service 2a04:4e42:200::498:80 · sublustrum.net
2026-01-03 13:21
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 0 Server: Varnish Retry-After: 0 Location: https://sublustrum.net/ Accept-Ranges: bytes Date: Sat, 03 Jan 2026 13:21:47 GMT Via: 1.1 varnish X-Served-By: cache-rtm-ehrd2290053-RTM X-Cache: HIT X-Cache-Hits: 0 X-Timer: S1767446508.691922,VS0,VE0 Strict-Transport-Security: max-age=300