How does it know what isn't visible? Can it handle glass? Frosted glass? Smoke? What if I can't see the player but I can see their shadow? What if I can't see them because they're behind me but I can hear their footsteps? What if I have 50ms ping and the player is invisible after turning a corner because the server hasn't realized I can see them yet?
To answer all those questions you either have to render the entire game on the server for every player (not possible) or make the checks conservative enough that cheaters still get a significant advantage.
I never understoof why google gave up so early on cloud gaming. Clearly it is the future, the infrastructure will need to develop but your userbase can grow by the day.
I live a bit remote on an island group, and even though I have a 500Mbit Fiber, my latency to the next GeforceNOW datacenter is 60-70ms (which is my latency to most continental datacenters, so not NVidias fault). That makes it unplayable for i.e. Battlefield 6 (I tried, believe me), but I have been playing Fortnite (which is less aim sensitive) for 100+ hours with that.
And under such system, how do you stop people from abusing latency-compensation to make their character appear out of thin air on the opponent’s perspective by fake-juking a corner to trick the netcode into not sending the initial trajectory of your peeks?
I'm coming from a place of complete ignorance here, so take my question as genuine and not trying to imply that this _should_ be an easy problem. But what exactly is it that makes it so difficult to have a KVM that lets me connect two computers to two high definition (2k in my case) monitors, along with some basic USB peripherals and audio components and switch between them? Every single device I've found has had some drawbacks like not supporting high framerates (144hz), not supporting Mac/Linux/Windows, only supporting audio output and not a microphone, not supporting thunderbolt or only supporting low resolutions.
Is it just that there's no market for it and that the cost of it would just be too high? If money was not an issue, would there still be technical reasons that this is impossible?
Because those signals are really high-speed, and the protocols are really complicated.
Doing the equivalent of "yank cable from PC 1, plug cable in PC 2" is just about doable at a reasonable price point. Anything more complicated either requires a bunch of expensive hard-to-source dedicated chips, or a bunch of hard-to-implement software solutions. Especially stuff like reliable keyboard-controlled switching or USB-C laptop connectivity is a nightmare.
In practice this means you either have to give up on features, or let the price balloon to unacceptable levels.
That option isn't always available, at least in the US. Unless you live in a right-to-work state, you may be forced to join the union as a condition of employment.
Just to save someone 5 minutes of research, if you are using the EKS AMIs based on AL2023 or Bottlerocket, this is already done for you by pointing to an image on ECR. At least on Bottlerocket, I haven't checked AL2023, the image is baked into the AMI so you don't even need to pull it from ECR.
This is not exactly true. The az names are indeed randomized per account, and this is the identifier that you see everywhere in the APIs. The difference now is that they also expose a mapping from AZ name (randomized) to AZ id (not randomized), so that you can know that AZ A in one account is actually in the same datacenter as AZ B in a different account. This becomes quite relevant when you have systems spread across accounts but want the communication to stay zonal.
Oh wow. Thanks for telling me this. I didn't know that this was different for different regions. I just checked some of my accounts, and indeed the mapping is stable between accounts for for example Frankfurt, but not Sydney.
Because vengeance has never done anyone any good. You never feel better after getting vengeance, just hollow. Thus, a good legal system should strive to provide justice, not vengeance.
To use the example from a sibling comment, if a person kills a child and the father kills this guy out of vengeance .. it will do those children good, who can now live in safety afterwards from that person.
But if in reality the murderer also had family who did not believe he murdered anyone in the first place now set out to seek justice/vengeance, then yes, it becomes a war .. which is why we have courts and police nowdays, but what justice is, is still rather arbitarily defined. Concretely it means enforcing the law. And laws are written by people.
Have you ever distributed vengeance so you can personally speak how you felt? Or are you mindlessly repeating strings of words that are supposed to go together like an LLM?
I don't have to justify to you, random internet stranger. I have made my share of experience, and read a fair bit about that of others, in history and literature; and I'm confidently standing behind my opinion.
What you are asking about is called Retributive Justice.
The reason the answer is not clear is attitudes to Retributive Justice vary widely across cultures and political systems. In OECD countries, the dominant (but not universal view) is there is no role for Retributive Justice in a modern society.
That is my position. The reason I don't think vengeance should be part of Justice is it's counter productive. The role of society as I see it, is to create an environment that produces nice things for myself and my family, so we prosper. I think it's self evident having as many people as possible working hard maximises this.
Justice is a unfortunate blight on that. Producing nice things requires people to work cooperatively, people working cooperatively requires rules. You can't have someone kill another for food when they could be working on a farm instead, so we have a rule for that. The role of Justice is to encourage people to follow those rules, so Justice is necessary too. But Justice is costly. It requires police, lawyers, judges, and jails. It removes people who could be producing nice things from society and makes them a burden to carry instead. "An eye for an eye" sounds equitable, but it means there are now two people without an eye instead of one. There have been calculations on what the Justice systems costs a typical OECD country. The answer seems to be around 2% of GDP. For the USA, that's about $600 billion per year.
Because of that large cost to me it is self evident you want as little Justice as possible. Just enough so just about everyone follows the rules, and no more. If you are forced to productive people from society and feed, house, and protect them in a jail, then you should strive to redirect, educate, and train them so when released they will become productive, and produce nice things. For me. This is called rehabilitation. Every modern society preaches rehabilitation over vengeance, but not all do it.
So what rule does vengeance play in this? Vengeance is by definition punishing people more than rehabilitation requires. Thus it costs money to extract vengeance. Sometimes a lot of money. In my country jailing someone for life means it costs my government $300/day, potentially for decades. That means I have less nice things. It even means the victim has less nice things, in the end. After all, that money could be paying for teachers and schools, to educate the victims kids. The conclusion most most people in OECD societies have drawn from that is vengeance has no role in Justice.
In this view, the becoming the victim of a crime is no different to any another unfortunate event, like losing your house to a storm, or becoming the victim of a plane crash, or dying from cancer. You don't get to seek vengeance for those events, so why should being the victim of a crime be any different? Adding to that, you are not entirely powerless against random destructive events. You can insure against them. Crime is no different. We can and do insure against the ill effects of crime.
The company I work for has a similar, yet even worse instance of this. The employee satisfaction survey was advertised as anonymous, but when I looked into the implementation they were just hashing the email address, of which there were only a few thousand. A more conspiratorial mind would conclude that it is to easily be able to find who a particular piece of feedback came from, but in this case I legitimately think it's just incompetence and not being able to figure out a better way of ensuring each employee can only submit the survey once.
This year it's advertised as confidential, rather than anonymous, so I suppose that is an improvement.
Not calling it anonymous is an improvement. Before I retired, I read many "anonymous" surveys taken by my reports. Any free-form text in the survey that goes beyond a sentence fragment usually made it obvious who wrote it. At least in the case of my teams, writing styles tended to be pretty distinct, as were the things each person cared about enough to write at any length. I tried to ignore the clues, but it was usually so obvious that it jumped out at me. The people administering such things insisted that anonymous meant their name wasn't on it, so it was fair to call it that.
A lot of people simply imagines that anonymity means un-identifiable. It's far from true, but i think some are honestly making the mistake, rather than being nefarious.
When you say that the filter would disallow connecting directly to IP addresses, how would that work? When I open a tcp connection, there's no reference to any domain name. Do you think CF would proactively resolve all the domain names in my whitelist (repeatedly, in case the IPs change) and check the IP I'm connecting to against the list of IPs those domains would resolve to? That sounds like a very brittle solution.
It sounds like you haven’t done the requisite research and are asking me to do it for you. That’s not very nice. The TLDR is that the outbound request doesn’t go directly to the internet. It first goes through your interposer worker where you can sent direct TCP requests and only allow HTTP requests through after filtering for domain.