• 0 Posts
  • 58 Comments
Joined 1 year ago
cake
Cake day: October 4th, 2023

help-circle
  • Note what other people in this thread are saying.

    Sorry, but being a developer I can tell when players are just repeating half-truths they read online.

    There’s no reason why strategies that work in any other kind of computer science shouldn’t work in gaming.

    In fact, it sounds like you think a ‘ban’ is something bad to these players or will stop them. If it did, I’d probably be enjoying Rust still.

    The difference between an attack costing $0.00 and $$0.01 is enough to reduce attack volume by orders of magnitude.

    Even just costing the attacker 30 seconds is enough to have a massive effect, which is why captchas exist.

    Game keys tend to be in the $1 - $5 range, which makes bans an extremely useful tool.


  • This is also the same for radar hacks. Or if you play a MoBa, screen alert hacks. All they do is boost player performance without being detectable. Most server side anti-cheat can only pick up on certain things, I don’t know Minecraft’s solution but I doubt it catches disguised cheating via code injection.

    The real question is: why does the client even know about players who aren’t visible to them?

    The solution with Minecraft PvP is simple: if you can’t see a player, the server won’t even tell you the player exists.

    If you use a wallhack you can see players walk behind a wall and then just disappear as if they had logged out, and suddenly reappear from behind the wall on the other side as if they had logged in.

    What Minecraft anticheat systems do is relatively simple:

    1. They only send information to clients if the players should have that information as well
    2. after every movement, action, etc they calculate whether the movement you did would have been possible by a real human given the information you should have had at that point, and if not, you’re banned
    3. all actions and movements are compared over minutes of gameplay and, if your actions are too different from all other players, sent to review by a human (and potentially banned)

    You don’t need to install anticheat on the player’s computers. The players can run all the mods and cheats they want, but cheaters can only see the same information as all other players, can only move the same way as all other players, and can’t shoot faster or more precise than any other player.

    So while some people may still be cheating, at that point you can’t tell the difference anymore.

    For comparison, this is btw how all other software outside of gaming is written. In all other parts of computer science you’d get fired if you did what game developers do.

    Imagine if reddit would send all DMs to all users and only make the DMs invisible on the client. That’d be an immediate lawsuit. Instead, the server validates who should be able to see what and only sends that information.

    Or imagine if banks allowed anyone to make any transaction they wanted, only the banking app verifying that you’ve actually got that much money. Utterly ridiculous. Of course the servers validate whether you should actually be allowed to do that.

    As result, writing third party apps for most websites is allowed, the EU even requires banks to support third party apps, but modded clients for videogames are considered a security risk. What the fuck.




  • That’s still not gonna help at all. There are already hardware cheats using an nvidia jetson nuc, an hdmi splitter, and a usb interceptor plugged between mouse, keyboard and computer.

    Using just image recognition and slight adjustments to your mouse movement you can already get an impossible to detect aimbot.

    Now the real question is: why are cheats bad? If a cheater is flying in godmode, sure, that ruins the game. But if the game forces cheaters to play the same way top human players are playing… If you can’t tell the difference, does it matter?

    By just running all simulation server side and banning superhuman reactions you can easily ban all superhuman cheats. Matchmaking will just sort players by skill and you’ll have a peaceful game again.

    If you’re playing chess, you don’t know if your opponent uses a chess computer or not. And it doesn’t matter. The game is still fun.


  • Honestly, supporting linux makes absolutely no sense for vanguard.

    If you use vanguard, it’s because you’re fine with a company taking full control of your system, installing a rootkit tracking your every move.

    If you use Linux, at least part of the reason is because you want to take control over your computer back.

    To support vanguard on linux, you’d have had to run vanguard as hypervisor with linux running in a para-VM, or you’d have had to modify most of the linux kernel to add tracking and control capabilities that’d never get merged upstream and would break with every update.

    The resulting system would be closer to android or a playstation than to actual linux distros.



  • justJanne@startrek.websitetoScience Memes@mander.xyztemperature
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    10 months ago

    In timekeeping, there are so called stratums to describe how correct a clock is.

    Stratum 0 is a physical process, an inherent property of the universe. An atomic clock would be stratum 0.

    Stratum 1 is a clock defined based on a stratum 0 clock. For example, GPS clocks are usually stratum 1, so are timeservers at universities with atomic clocks.

    Stratum 2 is a clock defined based on a stratum 1 clock, for example, your router’s ntp server if it syncs its time based on gps or a university’s timeserver.

    So if we adopt this jargon for units:

    Meter is a stratum 1 unit, defined based on the stratum 0 properties of lightspeed and cesium resonance.

    Inch is a stratum 2 unit, defined based on the stratum 1 meter.








  • Considering that reading source code can take a long time

    You’ll get faster over time, until reading code is faster than reading documentation, as code will always represent what’s truly happening, while docs are frequently outdated.

    In a language the user isn’t familiar with

    If you’re not that familiar with the language, it’s likely you won’t be contributing to the project. Open source projects usually to have quite limited resources, so they tend to optimize docs and dev UX for people who are likely to contribute.




  • I’m a software dev as well.

    But I often layer multiple windows in the same tile of the screen. e.g. I may have the IDE with the software I’m working on in one tile, the IDE with the library source code I’m working with in the second tile, and a live build of the app in the third tile. But I’ve also got documentation, as a website, in the same tile as the IDE with the lib’s source.

    Now when I switch between the IDE with the lib’s source, and the browser with the lib’s documentation, I only want that tile to change. No problem, with KDEs taskbar and window switcher I can quickly do that.

    But when using the applications menu on Gnome I get a disrupting UI across all screens that immediately rips me out of whatever I was doing.