Repo ↗ · Source README ↗ · Markdown & license bundle

Image reference (original game): Dying Light · original-game artwork, provided by IGDB. Image rights remain with their respective owners. This illustrates the referenced original game, not the actual visuals of this rewrite or mod.

Source maintainer: NeddyTheNoodle · Revision: 01598559955b · Catalogued: 2026-10-12

Source license: MIT · LICENSE · Article: Source README (format adapted)

The source README follows, with formatting adapted for this site and images replaced by source links. Feature, completion and testing claims belong to its authors and have not been independently playtested here. The Traditional Chinese translation was prepared with AI assistance.


DyingLightRust

An experimental, from-scratch Rust rewrite of Dying Light (2015) that reads
game data from your own installed copy at runtime. This repository contains
no game files, extracted assets, or decompiled code.

Status: early. There is no game yet. What exists is a reader for the
game’s resource packs, decoders for textures and meshes, and a viewer that
shows them in a window.

What works

  • Reading all 92 .rpack files in a Dying Light 1.55 install and the ZIP
    Data*.pak files (scripts, per-map data)
  • Decoding textures (all 25,261) and meshes (11,413 of 11,423), viewable in
    a Bevy window
  • The Slums’ static world (about 206,000 objects) with the game’s own
    drawing distances, daylight at 10:00 from the game’s settings (sun,
    shadows, sky, haze, auto exposure), and materials baked by running the
    game’s own shader programs on the CPU (blood, decals, car paint)
  • Walking the Slums on foot (--walk): the game’s collision shapes, speeds,
    gravity, jump height, step height and slope limit; doors open with F
  • Parkour basics: jumping, vaulting low obstacles and climbing ledges with
    the game’s own rules and animations
  • A full first-person body: look down to see your legs. The game’s walk,
    run and sprint moves, its look-at chain (the spine bends as you look up
    and down), its jumps, and its animation blending (moves blend in on the
    game’s curves and times from its own blend settings)
  • Turning on the spot: the legs keep their own facing and step round, as
    in the game
  • Mouse look (the mouse is captured); Esc pauses with Resume and Quit

What doesn’t work yet

  • Hanging from ledges, wall running, combat, enemies, sound, gameplay
  • Water, foliage, the map’s lamps; some materials still look off
  • Night, weather, other maps beyond a first look
  • 10 meshes fail to decode (see docs/formats/mesh.md)
  • Only tested on one Windows 11 PC with game version 1.55 (Steam build 24076292)

Requirements

  • Dying Light (Steam), version 1.55
  • Windows, Rust (MSVC toolchain) and the Visual Studio C++
    Build Tools
  • Single-player / offline use only. Online co-op is out of scope.

Usage

Edit the paths in .cargo/config.toml to match your machine, then:

cargo run --release -p viewer -- mesh common_meshes barrel_a
cargo run --release -p viewer -- mesh common_cod_1 player_1_tpp all
cargo run --release -p viewer -- texture static_load loading_prison
cargo run --release -p viewer -- map slums
cargo run --release -p viewer -- map slums --tex 512
cargo run --release -p viewer -- map slums --walk

In the mesh viewer, drag with the left mouse button to orbit and scroll to
zoom. In the map viewer, drag with the mouse to look around, WASD to move,
Space / Ctrl for up and down, Shift to go faster, scroll to change speed. G switches
between flying and walking; on foot, WASD walks, Shift sprints, Space jumps
(hold it in front of a ledge to climb or vault), and F opens or closes the
door you are looking at (within 2 m). Esc pauses. The first build takes a few minutes (Bevy is large).

Inspection tools:

cargo run --release -p dltool -- check
cargo run --release -p dltool -- list old_town
cargo run --release -p dltool -- paks slums/slums.
cargo run --release -p dltool -- textures
cargo run --release -p dltool -- meshes --decode
cargo run --release -p dltool -- png static_load loading_prison

Extracted files and PNGs go to DL_LOCAL_DIR\extracted, never into this repo.

How it works

See docs/DESIGN.md and the format notes in
docs/formats/.

Credits

  • hhrhhr’s RP6L unpacker:
    the field order of the rpack tables.
  • OpenChrome: format notes for Dying
    Light 1. It has no licence, so its notes were read for facts only and no code
    was copied.
  • Bevy (MIT/Apache-2.0): the engine the viewer runs on.
  • zip (MIT): reads the ZIP .pak files.
  • AI Game Modding Guides:
    the workflow this project follows.

Unofficial fan project. Not affiliated with or endorsed by Techland. No game
assets are included; players supply their own copies. If a rights holder asks
for changes or removal, they will be made.

Built with AI coding agents (Claude Code). Code is MIT licensed.


License and provenance

The README and its translation retain MIT terms. Changes comprise translation, links and formatting. Editable Markdown, the original README, LICENSE and NOTICE files are included in the linked bundle. This grants no rights to the original games, their assets or trademarks.

LICENSE

MIT License

Copyright (c) 2026 DyingLightRust contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.