• 134 Posts
  • 993 Comments
Joined 9 months ago
cake
Cake day: February 10th, 2024

help-circle



  • I mostly had fun, and felt the work they did to make Night City feel like a proper city, as opposed to the tiny village-sized “city” typical of open world games, really showed. (For example, the fact that people walking down the street had different ages, body types, and walking styles made it easy for me to forgive the occasional pair of NPC clones spawning next to each other.)

    But yes, many of the activities/events offered by the game ended up seeming a bit pointless because their outcome was more or less predetermined.

    Moreover, the RPG aspect of the game lacked depth, which seemed like a lot of wasted potential given that there were plenty of characters that could have been really interesting to get to know. Instead, the character development was nearly all Silverhand, nearly all the time, and I didn’t even have much influence over how that relationship developed.

    Spoilers ahead:

    What about Jackie? He was supposed to be my best friend, but I never had experiences with him to make me feel that way, and then he was gone in just a few scenes. What about Panam? She was so determined to make a difference in the lives of the people who mattered to her, yet she all but vanished once we bonded, after just a couple of missions. What about Judy?? Her personal mission-like encounter was really promising. We supposedly fell in love and were planning to leave the city together, yet for the rest of the game, we had no interaction but “dates” consisting of the same half-dozen lines of dialogue and two or three brief animations, repeated over and over again. I’m sure there are more examples, but I think I’ve made my point.

    I think the biggest disappointment for me was the ending, though. And the other ending that I got by reloading and picking different options, and then the third ending, and the fourth. They all felt like such empty let-downs that I went online to read about the rest. [Edit: These might have been Phantom Liberty endings; I don’t remember for sure.] Surely there must be some good ones, right? Right?

    The only vaguely satisfying ending that I found was a secret one that (IIRC) requires specific choices early in the game, and a very strong bond with Silverhand, and letting the game sit at a particular dialogue screen for several minutes without picking any option. The endings that players are actually meant to experience left me feeling empty. The great deal of time I had sunk into the game was for nothing after all. I guess that could be considered appropriate for a cyberpunk dystopia, but as an experience and a story, it left me feeling cheated. I wished I had my time back.

    So, as I said, I mostly had fun playing it, and it had its share of highlights, but I don’t expect to ever play it again. I hope CD Projekt Red keep much of the technical progress they made with this game (I was so relieved that my character’s movement was responsive for a change!) and work more on character development and player agency in the next one.


  • Elite Dangerous is my go-to lately.

    It’s different to most other games, by not being goal-oriented except for the goals you set for yourself. No main quest line dictating progress. No mandatory tasks. No win condition. Instead, it drops you into a simulation of our entire galaxy roughly 1300 years in the future, where humanity has mastered hyperspace travel and spread through hundreds of star systems.

    (To give an idea of the simulation’s scope: Around 85 million systems have been recorded by players so far, and those are a vanishingly small fraction of what’s out there. Space is big.)

    I like that it offers a variety of activities to fit whatever mood I might be in on a given day. I can hunt pirates, mine asteroids, engage in a bit of piracy myself, find and collect bio samples, infiltrate rival settlements, venture into vast unexplored areas of space, discover Earth-like worlds that nobody has ever encountered before, defend humanity against hostile forces, photograph beautiful stellar phenomena, rescue stranded survivors, customize and finely tune my ship to perform beyond its original specs, team up with friends, pledge to a political power and expand their influence, or chill out as a space trucker and haul cargo to earn enough money for my next upgrade. It can occupy all my attention, or just be relaxing entertainment while I listen to music or an audiobook.

    It’s an MMO in the sense of having a large game world (galaxy) shared by all players in real time, but PvP is optional. One mode exposes you to other players, while another limits you to NPC encounters. You can switch between them at will.

    One warning: A space ship has more than a few controls to learn, and they’re better suited to a game controller or HOTAS than a keyboard and mouse. I use button combinations for almost everything beyond basic flight controls, since there aren’t enough buttons on a controller for everything.



  • This might be an unpopular opinion, but I feel Tears of the Kingdom is overrated. Yes, it has some welcome quality-of-life improvements, and yes, it has more content than its predecessor, but I find the characters less interesting, the environments less inspired, and the encounters more repetitive. Every time I pick it up again, I get bored within a couple hours and go back to another play-through of Breath of the Wild.

    I would vote for Baldur’s Gate 3 over TotK without hesitation.




  • This tool looked interesting to me until I noticed that its external dependency count is in the hundreds, each of which increases exposure to vulnerabilities and supply chain attacks.

    I hope that Rust will some day have a rich enough standard library that the “trust everything” software development model falls out of favour amongst the developers who use it.





  • It’s re-posted from a news community, where it was since removed for not being from an acceptable news site. Unfortunately, the acceptable news sites covered this more than 30 days ago, which disqualifies their articles regardless of whether they were ever posted to the community. shrug

    I couldn’t find a better article in the time I had to spare, so I re-posted this one. I think what’s important in this case is just that word gets out. I don’t see anything misleading about this one, and the EFF link (which is also not exactly a news site) is plainly visible.



  • Some of the APIs in use on Linux today come from older Unix variants. (For this reason, I probably wouldn’t call one of these a “Linux API” as the author did, though I guess it works linguistically for those that are usually present on Linux.) These APIs have semantics that were designed before threading existed on many platforms. Making them thread-safe without breaking existing code can be challenging.

    If setenv(3) is among these, it could explain why glibc’s implementation doesn’t support multi-threaded programs, and why its documentation states as much. To have used it in a multi-threaded environment, ignoring the docs, was a bug in the Steam client. Perhaps it never occurred to the people who ported Steam’s code to glibc that threading issues might be different from what they were used to on other platforms.

    To be fair, the author might be aware of this, as he did refer to glibc’s implementation as a tradeoff rather than a bug.



  • Matrix messaging apps. It’s nice to have modern messaging features, end-to-end encrypted, with no single point of failure, no Google involvement, and no phone numbers. I expect to start recommending it widely when the 2.0 features land in the popular clients.

    WireGuard VPN. It’s fast, even on low-power devices.

    Self-hosted Mumble. Excellent low-latency voice quality for chatting or gaming with friends.

    Radicale, DAVx⁵, and Thunderbird, for calendar and contact sync between mobile and desktop, without handing the data over to Google or anyone else.




  • Cloudflare is a provider that you can choose to have as a part of your own infrastructure.

    Indeed.

    man in the middle implies “attack”

    That can be a convenient shorthand if the parties in a discussion agree to use it as such in context. For example, in a taxonomy of cryptographic attacks, it would make sense. It is not the general meaning, though, at least not a universally accepted one. Similarly, “counter” does not imply “counter attack”, unless we happen to be discussing attack strategy.

    More to the point, nothing that I wrote misrepresents the situation as was claimed by that other person. If I had meant attack, I would have said attack. Rather, they made a leap of logic because I (like most of my colleagues) don’t happen to follow a convention that they like, and picked a fight over it. No thanks.



  • It bugs me when people say Cloudflare is a MitM, because that is a disingenuous representation the situation.

    No, it is a clear description of what is happening: Instead of https keeping the traffic encrypted from user to service, it runs only from user to Cloudflare (and then in some cases from Cloudflare to service, although that’s irrelevant here). The result is that a third party (Cloudflare) is able to read and/or modify the traffic between the two endpoints. This is exactly what we in mean in cryptography discussions by man-in-the-middle.

    You can decide that you don’t mind it because it’s not a secret, or because they haven’t been caught abusing it yet, but to say it’s not a man-in-the-middle is utter nonsense.

    and you opt into it.

    No, the service operator opts in to it, without consulting the user, and usually without informing them. The user has no choice in the matter, and typically no knowledge of it when they send and receive potentially sensitive information. They only way they find out that Cloudflare is involved is if Cloudflare happens to generate an error page, or if they are technically inclined enough to manually resolve the domain name of the service and look up the owner of the net block. The vast majority of users don’t even know how to do this, of course, and so are completely unaware.

    All the while, the user’s browser shows “https” and a lock icon, assuring the user that their communication is protected.

    And even if they were aware, most users would still have no idea what Cloudflare’s position as a middleman means with respect to their privacy, especially with how many widely used services operate with it.

    To be clear, this lack of disclosure is not what makes it a man in the middle. It is an additional problem.

    it cannot be a MitM because both sides of the connection are aware of this layer.

    This is false. Being aware of a man in the middle and/or willingly accepting it does not mean it ceases to exist. It just means it’s not a man-in-the-middle attack.