frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Open in hackernews

Making a Speedrun Timer in D

https://bradley.chatha.dev/blog/linux-speedrun-timer-dlang/post/
41•LorenDB•4d ago

Comments

WalterBright•3h ago
From the article:

"I semi-recently played through the original Deus Ex, and enjoyed my time with it so much that I felt like getting into speedrunning it, which ended up with me having to create a custom speedrun timer that “injects” itself into the game in order to implement features such as auto-splitting and load time removal.

This article details the rough journey I went through. It’s not super well structured, but I was sorely lacking resources such as this when I was implementing the more complicated parts of the timer, so I wanted to share my experience.

This is basically a detailing of “baby’s first game hack” as none of the techniques I’ve used here are advanced, and are more basic building blocks for injecting your own stuff into another process, but resources like this article were severely lacking/hard to find in my experience, so I imagine this will still be useful to someone.

If you read this entire thing then I’m afraid to say you have a fatal case of nerdism (welcome!)."

the_plus_one•2h ago
Very cool post! I enjoy anything that has to do with game hacking, and it's nice to see D, a language I don't have a ton of experience with. Just one note you/the author may be curious about:

> Notably a process_vm_writev syscall also exists, however it adhears to memory page protections - so if I wanted to inject data into a write-protected memory page, it’d fail.

You can work around this by convincing the process to re-mmap() the read-only section with PROT_WRITE. One way I've done this is by building a shared library with __attribute__((constructor)) that gets LD_PRELOADed into the game binary, though you have to be careful with the timing (e.g. your library may start running before the game has allocated the mapping you're looking for). That said, if you've done this, you are also free to just allocate your own memory rather than having to look for unused portions of it.

Proposed NOAA Budget Kills Program Designed to Prevent Satellite Collisions

https://skyandtelescope.org/astronomy-news/proposed-noaa-budget-kills-program-to-prevent-satellite-collisions/
178•bikenaga•3h ago•84 comments

Kimi k2 largest open source SOTA model?

https://github.com/MoonshotAI/Kimi-K2
75•ConteMascetti71•2h ago•19 comments

MacPaint Art from the Mid-80s Still Looks Great Today

https://blog.decryption.net.au/posts/macpaint.html
623•decryption•10h ago•135 comments

A better Ghidra MCP server – GhidrAssistMCP

https://github.com/jtang613/GhidrAssistMCP
13•jtang613•1h ago•2 comments

Bypassing Google's big anti-adblock update

https://0x44.xyz/blog/web-request-blocking/
4•deryilz•29m ago•0 comments

Vibe-Coding a PCB – surprisingly good

https://atomic14.substack.com/p/vibe-coding-a-pcb-surprisingly-good
66•iamflimflam1•3h ago•28 comments

Exposing a web service with Cloudflare Tunnel

https://erisa.dev/exposing-a-web-service-with-cloudflare-tunnel/
12•sturza•3d ago•0 comments

Arizona resident dies from the plague less than 24 hours after showing symptoms

https://www.independent.co.uk/news/health/arizona-plague-death-cases-b2787325.html
119•Anon84•2h ago•32 comments

OpenAI’s Windsurf deal is off, and Windsurf’s CEO is going to Google

https://www.theverge.com/openai/705999/google-windsurf-ceo-openai
904•rcchen•22h ago•574 comments

Show HN: BinaryRPC – Lightweight WebSocket-based RPC framework in modern C++

https://github.com/efecan0/binaryrpc-framework
37•efecan0•3h ago•20 comments

Supreme Court's Ruling Practically Wipes Out Free Speech for Sex Writing Online

https://ellsberg.substack.com/p/free-speech
127•macawfish•1h ago•109 comments

Context Engineering Guide

https://nlp.elvissaravia.com/p/context-engineering-guide
16•Bogdanp•3d ago•4 comments

Malware found in official gravityforms plugin indicating supply chain breach

https://patchstack.com/articles/critical-malware-found-in-gravityforms-official-plugin-site/
168•taubek•12h ago•36 comments

Show HN: DesignArena – crowdsourced benchmark for AI-generated UI/UX

https://www.designarena.ai/
37•grace77•4h ago•12 comments

Working through 'Writing A C Compiler'

https://jollygoodsw.wordpress.com/2025/03/13/working-through-writing-a-c-compiler/
62•AlexeyBrin•7h ago•20 comments

ETH Zurich and EPFL to release a LLM developed on public infrastructure

https://ethz.ch/en/news-and-events/eth-news/news/2025/07/a-language-model-built-for-the-public-good.html
602•andy99•1d ago•90 comments

The fish kick may be the fastest subsurface swim stroke yet (2015)

https://nautil.us/is-this-new-swim-stroke-the-fastest-yet-235511/
119•bookofjoe•7h ago•97 comments

First malaria treatment for babies approved for use

https://www.bbc.com/news/articles/c89e872jdjxo
98•toomuchtodo•4d ago•25 comments

Stone–Wales Transformations

https://johncarlosbaez.wordpress.com/2025/07/12/stone-wales-transformation/
32•chmaynard•5h ago•3 comments

Faking a JPEG

https://www.ty-penguin.org.uk/~auj/blog/2025/03/25/fake-jpeg/
355•todsacerdoti•20h ago•83 comments

Sieve (YC X25) is hiring researchers to build large video datasets for AI labs

https://sievedata.com/about/jobs
1•mvoodarla•7h ago

Making a Speedrun Timer in D

https://bradley.chatha.dev/blog/linux-speedrun-timer-dlang/post/
41•LorenDB•4d ago•2 comments

Preliminary report into Air India crash released

https://www.bbc.co.uk/news/live/cx20p2x9093t
342•cjr•23h ago•679 comments

Commodore 64 Ultimate

https://www.commodore.net
119•peterkelly•10h ago•73 comments

Lost Chapter of Automate the Boring Stuff: Audio, Video, and Webcams in Python

https://inventwithpython.com/blog/lost-av-chapter.html
5•AlSweigart•2h ago•0 comments

Jank is C++

https://jank-lang.org/blog/2025-07-11-jank-is-cpp/
270•Jeaye•1d ago•94 comments

Fundamentals of garbage collection (2023)

https://learn.microsoft.com/en-us/dotnet/standard/garbage-collection/fundamentals
110•b-man•3d ago•25 comments

Watchfiles: Simple, modern and fast file watching for Python, written in Rust

https://github.com/samuelcolvin/watchfiles
17•Labo333•3d ago•3 comments

Replication of Quantum Factorisation Records with an 8-bit Home Computer [pdf]

https://eprint.iacr.org/2025/1237.pdf
118•sebgan•17h ago•27 comments

New Date("wtf") – How well do you know JavaScript's Date class?

https://jsdate.wtf
235•OuterVale•11h ago•130 comments