this post was submitted on 24 May 2025
468 points (97.2% liked)
Games
38773 readers
1273 users here now
Welcome to the largest gaming community on Lemmy! Discussion for all kinds of games. Video games, tabletop games, card games etc.
Weekly Threads:
Rules:
-
Submissions have to be related to games
-
No bigotry or harassment, be civil
-
No excessive self-promotion
-
Stay on-topic; no memes, funny videos, giveaways, reposts, or low-effort posts
-
Mark Spoilers and NSFW
-
No linking to piracy
More information about the community rules can be found here and here.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
That's nothing new.
Gamers who don't know any programming, or maybe made a little utility for themselves. Looovee to bring out the old "just change one line of code", "just add this model", etc. to alter something in a game.
They literally do not understand how complex systems become, specially in online multiplayer games. Riot had issues with their spaghetti code, and people were crawling over eachother to explain how "easy" it would be to just change an ability. Without realizing that it could impact and potentially break half a dozen other abilities.
Diablo4 has memory leak issues. As a software engineer myself, I just don't see any excuse for a game this long in production to have memory leak problems.
There is no doubt that a lot of games are getting rushed without being properly tested.
gamedev be like
Tbf memory leaks can be very hard to diagnose and can also be hard to avoid in any software written in a language like C++, which is probably what Diablo 4 is written in.
In large scale online games you have issues ranging from obscure things causing memory leaks based on drivers, hardware combinations, etc. and all the way to basic things getting overlooked. One of my favorite examples being GTA5 online.
They forgot to update a function from early testing, and it was in the game for about a decade before someone else debugged the launch process. And then realized that it was going through the entire comparison file for each item it checked on the local list. So "changing a few lines" ended up reducing initial load times by up to 70% depending on the cpu and storage media.
EDIT: I've been drinking and probably misreemebred parts, so here is the post about how he found the issue
That's kind of a funny example because, on a quick skim, nothing he did was exceptionally clever or unusual (other than workarounds for not having source code). R* basically paid him 10k for some basic profiling that they never bothered to do.