ertuncozbay.dev/projects/pointblank-linux.html

229 lines
12 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html lang="en" data-theme="colorful">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Point Blank on Linux (Standalone Rust Launcher) — Projects — Ertunç Özbay</title>
<meta name="description" content="Download, install, and build commands for Point Blank on Linux by Ertunç Özbay: Standalone Linux desktop launcher written in Rust with 100% unmodified official CheatBlocker anti-cheat and DirectX 9/11 support.">
<link rel="icon" type="image/svg+xml" href="../assets/images/favicon.svg">
<link rel="stylesheet" href="../assets/css/style.css?v=2">
</head>
<body>
<a class="skip-link" href="#main-content">Skip to main content</a>
<header class="site-header">
<div class="container header-inner">
<a class="site-brand" href="../index.html">
<span class="brand-mark" aria-hidden="true">EÖ</span>
<span>
Ertunç Özbay
<span class="brand-subtitle">embedded // hardware // open-source</span>
</span>
</a>
<div class="header-controls">
<div class="theme-switcher" role="group" aria-label="Select UI Theme">
<button type="button" class="theme-btn" data-set-theme="colorful" aria-pressed="true">🎨 Colorful</button>
<button type="button" class="theme-btn" data-set-theme="neon" aria-pressed="false">🌈 Neon</button>
<button type="button" class="theme-btn" data-set-theme="blueprint" aria-pressed="false">📐 Blueprint</button>
</div>
<button class="nav-toggle" type="button" data-nav-toggle aria-expanded="false" aria-controls="primary-navigation">
<span aria-hidden="true">☰</span>
<span data-nav-label>Menu</span>
</button>
<nav id="primary-navigation" class="site-nav" data-site-nav aria-label="Main navigation">
<ul class="nav-list">
<li><a class="nav-link" href="../index.html">Home</a></li>
<li><a class="nav-link" href="../about.html">About</a></li>
<li><a class="nav-link" href="../projects/index.html" aria-current="page">Projects</a></li>
<li><a class="nav-link" href="../blog/index.html">Blog</a></li>
<li><a class="nav-link" href="../lab.html">Lab</a></li>
<li><a class="nav-link" href="../contact.html">Contact</a></li>
</ul>
</nav>
</div>
</div>
</header>
<main id="main-content">
<div class="container">
<nav class="breadcrumb" aria-label="Breadcrumb">
<a href="index.html">← Back to Projects</a>
</nav>
<article>
<header class="workshop-hero">
<div class="card-meta">
<span class="badge badge-coral">Status: v1.0.0 Pre-Compiled Binary Released</span>
<span>Project 03 // Rust • Linux Systems • Wine &amp; DirectX 9/11</span>
</div>
<h1><span class="gradient-title">Point Blank on Linux — Standalone Community Launcher</span></h1>
<p class="hero-lead">
An all-in-one standalone Linux desktop launcher written in <strong>Rust</strong> that runs Point Blank (Zepetto / TAM Game) on Linux with <strong>100% unmodified official game files and native CheatBlocker anti-cheat</strong> (<code>CB.exe</code> + <code>CB.cbm</code>).
</p>
<p class="reading-width">
Built on Arch Linux without requiring Heroic, Lutris, or external wrappers—featuring automated Wine prefix &amp; Winetricks provisioning, 16-byte TLS-aligned runtime support for DirectX 11, multi-region authentication, and native 1920×1080 borderless fullscreen at 200 FPS.
</p>
<div class="button-row">
<a class="btn btn-emerald" href="/assets/downloads/pointblank-linux-v1.0.0-linux-x86_64.tar.gz">⬇ Download v1.0.0 Linux Binary (.tar.gz)</a>
<a class="btn btn-primary" href="http://34.57.151.250:3000/ertunc-ozbay/pointblank-linux" rel="noopener noreferrer">💻 View GitHub Repo</a>
<a class="btn btn-cyan" href="http://34.57.151.250:3000/ertunc-ozbay/pointblank-linux/releases" rel="noopener noreferrer">📦 All GitHub Releases</a>
<a class="btn btn-youtube" href="#poc-video">🎬 Watch PoC Video Slot</a>
</div>
</header>
<!-- YouTube Proof-of-Concept Video Placeholder -->
<section id="poc-video" class="poc-video-section" aria-labelledby="pb-video-heading">
<div class="poc-video-card">
<span class="section-label">🎬 Proof of Concept // YouTube Video Showcase</span>
<h2 id="pb-video-heading">YouTube Proof-of-Concept Demonstration</h2>
<div class="poc-video-screen" role="region" aria-label="YouTube Proof of Concept Video Placeholder">
<div class="poc-play-badge" aria-hidden="true">
<div class="poc-play-triangle"></div>
</div>
<span class="poc-status-pill">🎥 YouTube PoC Video — Recording / Coming Soon</span>
<div class="poc-video-title">Point Blank Running Natively on Arch Linux (DX11 / 200 FPS / Official CheatBlocker)</div>
<p class="poc-video-desc">
Upcoming YouTube proof-of-concept gameplay and setup walkthrough showing prefix auto-provisioning, DirectX 11 200 FPS performance on Linux, and unmodified CheatBlocker anti-cheat execution.
</p>
</div>
</div>
</section>
<!-- Download & Terminal Commands Section -->
<section class="section-block" aria-labelledby="p4-commands">
<span class="section-label">01 // Direct Download &amp; Linux Terminal Commands</span>
<h2 id="p4-commands">Quick Download &amp; Launch Commands</h2>
<p class="reading-width">
You do not need to compile from source—download and run the pre-compiled `x86_64` Linux release archive directly from the terminal:
</p>
<div class="code-window">
<div class="code-window-header">
<span class="code-window-title">
<span class="code-dots"><span class="code-dot red"></span><span class="code-dot amber"></span><span class="code-dot green"></span></span>
bash — Download, Extract &amp; Run Pre-Compiled Release (v1.0.0)
</span>
<button type="button" class="copy-code-btn" data-copy-code>📋 Copy Commands</button>
</div>
<pre><code># 1. Download &amp; extract the official pre-compiled Linux x86_64 release archive
curl -L -O http://34.57.151.250/assets/downloads/pointblank-linux-v1.0.0-linux-x86_64.tar.gz
tar -xzf pointblank-linux-v1.0.0-linux-x86_64.tar.gz
cd pointblank-linux-v1.0.0-linux-x86_64
# 2. Make executable and launch (or install desktop menu shortcut)
chmod +x pointblank-linux install-desktop.sh
./install-desktop.sh
./pointblank-linux</code></pre>
</div>
<h3>1. Install System Dependencies (Arch / Ubuntu / Fedora)</h3>
<div class="code-window">
<div class="code-window-header">
<span class="code-window-title">
<span class="code-dots"><span class="code-dot red"></span><span class="code-dot amber"></span><span class="code-dot green"></span></span>
bash — Install Wine, Winetricks, 32-bit Vulkan &amp; MinGW-w64
</span>
<button type="button" class="copy-code-btn" data-copy-code>📋 Copy Commands</button>
</div>
<pre><code># Arch Linux / CachyOS / Manjaro / EndeavourOS (with [multilib] enabled)
sudo pacman -Syu --needed wine wine-mono wine-gecko winetricks mingw-w64-gcc \
lib32-vulkan-icd-loader vulkan-icd-loader cabextract curl unzip
# Ubuntu / Debian / Linux Mint / Pop!_OS
sudo dpkg --add-architecture i386 &amp;&amp; sudo apt update
sudo apt install -y wine wine32 wine64 winetricks gcc-mingw-w64-i686 \
mesa-vulkan-drivers mesa-vulkan-drivers:i386 cabextract curl unzip
# Fedora / Nobara
sudo dnf install -y wine winetricks mingw32-gcc vulkan-loader vulkan-loader.i686 \
cabextract curl unzip</code></pre>
</div>
<h3>2. Build from Source with Cargo (Rust)</h3>
<div class="code-window">
<div class="code-window-header">
<span class="code-window-title">
<span class="code-dots"><span class="code-dot red"></span><span class="code-dot amber"></span><span class="code-dot green"></span></span>
bash — Clone &amp; Compile Rust Source Code
</span>
<button type="button" class="copy-code-btn" data-copy-code>📋 Copy Commands</button>
</div>
<pre><code>git clone http://34.57.151.250:3000/ertunc-ozbay/pointblank-linux.git
cd pointblank-linux
cargo build --release
./target/release/pointblank-linux</code></pre>
</div>
</section>
<section class="section-block reading-width" aria-labelledby="p4-overview">
<span class="section-label">02 // Systems Engineering Overview</span>
<h2 id="p4-overview">Solving Low-Level Windows-on-Linux Compatibility</h2>
<ul>
<li><strong>16-Byte TLS-Aligned Runtime for DirectX 11:</strong> Automatically provisions a 16-byte TLS-aligned <code>ntdll.dll</code> Wine runtime so both <strong>DirectX 9</strong> (<code>DXVersion = 9</code>) and <strong>DirectX 11</strong> (<code>DXVersion = 11</code>) render cleanly without crashes.</li>
<li><strong>One-Click Isolated Prefix Provisioning:</strong> Configures <code>~/.local/share/pointblank-linux/prefix</code> with <code>vcrun2022</code> (<code>mfc140.dll</code>, <code>msvcp140.dll</code>, <code>vcruntime140.dll</code>), <code>d3dx9_31..43</code>, <code>d3dcompiler_43</code>, <code>d3dx11_43</code>, and Edge WebView2 (<code>109.0.1518.78</code>).</li>
<li><strong>In-Game <code>F11</code> Borderless Fullscreen Helper:</strong> Compiles a lightweight MinGW-w64 helper utility for instant 1920×1080 borderless fullscreen switching at 200 FPS.</li>
</ul>
</section>
<section class="section-block reading-width" aria-labelledby="p4-specs">
<span class="section-label">03 // Technical Specifications</span>
<h2 id="p4-specs">Confirmed Capabilities &amp; Supported Distros</h2>
<table class="spec-table">
<thead>
<tr>
<th scope="col">Subsystem</th>
<th scope="col">Specification</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Primary Language</strong></td>
<td>Rust (Standalone Linux <code>x86_64</code> executable)</td>
</tr>
<tr>
<td><strong>Anti-Cheat Compatibility</strong></td>
<td>100% Unmodified Official CheatBlocker (<code>CB.exe</code> + <code>CB.cbm</code>)</td>
</tr>
<tr>
<td><strong>Render Pipelines</strong></td>
<td>DirectX 9 &amp; DirectX 11 (1920×1080 Borderless Fullscreen @ 200 FPS)</td>
</tr>
<tr>
<td><strong>Direct Binary Download</strong></td>
<td><a href="/assets/downloads/pointblank-linux-v1.0.0-linux-x86_64.tar.gz">pointblank-linux-v1.0.0-linux-x86_64.tar.gz</a></td>
</tr>
<tr>
<td><strong>Source Repository</strong></td>
<td><a href="http://34.57.151.250:3000/ertunc-ozbay/pointblank-linux" rel="noopener noreferrer">git.ertuncozbay.dev/ertunc-ozbay/pointblank-linux</a></td>
</tr>
</tbody>
</table>
</section>
</article>
</div>
</main>
<footer class="site-footer">
<div class="container footer-inner">
<div>
<strong>Ertunç Özbay</strong> — Electrical &amp; Electronics Engineering Student • <a href="mailto:ertunc.ozbay@outlook.com">ertunc.ozbay@outlook.com</a>
</div>
<ul class="footer-links" aria-label="Footer links">
<li><a href="../projects/index.html">Projects</a></li>
<li><a href="../blog/index.html">Blog</a></li>
<li><a href="../lab.html">Lab</a></li>
<li><a href="../contact.html">Contact</a></li>
<li><a href="http://34.57.151.250:3000/ertunc-ozbay" rel="noopener noreferrer">GitHub</a></li>
<li><a href="https://www.linkedin.com/in/ertunc-ozbay" rel="noopener noreferrer">LinkedIn</a></li>
</ul>
</div>
</footer>
<script src="../assets/js/main.js?v=2"></script>
</body>
</html>