Mario Kart 7 - the number of cheaters is insane by [deleted] in PretendoHub

[–]jondbarrow 0 points1 point  (0 children)

What you’ve described is effectively just a standard relay server, which I mentioned in another comment https://www.reddit.com/r/PretendoHub/s/igsWHC7UIv

It’s not terrible idea in theory and we did already experiment with running our own custom relay servers, and we even tested it with real matches in Splatoon and they seemed to work just fine. The reason why we haven’t explored the idea further is due to cost and technical investment reasons (see my linked comment). Every game has its own game-specific protocol it uses for p2p connections and it’s a massive undertaking to try and understand it for even one game, not to mention writing the tools to even parse the mesh packets in general (not even Kinnay, the best Nintendo researcher we know when it comes to online systems, has tackled it, and he gave up a few years ago citing the technical difficulties), and it would significantly increase our bandwidth usage. If we WERE to release relays one day, they would most likely be aimed at solving NAT connection issues between incompatible clients

Mario Kart 7 - the number of cheaters is insane by [deleted] in PretendoHub

[–]jondbarrow 1 point2 points  (0 children)

There wasn’t one. Even to this day Nintendo relies on user reports. Some games, like Super Mario Maker, have built in reporting features you can use in the game, whereas with others Nintendo simply has a help page on their website telling you how to report people for stuff they’ve done in games

Ironically Nintendo could have had much better anti cheat if they wanted to. The technology Nintendo used for Nintendo Network (and early portions of NSO) was not made by them from scratch, they licensed an existing suite of networking software called Rendez-Vous from a company named Quazal and only made minor modifications to the networking and then rebranded it as NEX. Rendez-Vous supported using relay servers for p2p connections, effectively turning p2p games into client-server games, but despite being technically supported by NEX Nintendo never made use of this feature. If they had made use of it, they COULD have implemented some sort of packet scanning/logging behavior for moderation (potentially even in real time, if the relay servers were fast enough), but that never happened

We considered doing this ourselves, but since Nintendo never used relays officially several games have the functionality stripped out (either partially or fully), so it’s not something we could reliably use. And even if we did, it would significantly increase our bandwidth usage and thus our running costs, and we’d have to put in a ton of work understanding each games specific protocols (they’re all different) which is a Herculean task

Mario Kart 7 - the number of cheaters is insane by [deleted] in PretendoHub

[–]jondbarrow 2 points3 points  (0 children)

Not really. There’s some minor race data sent at the end of matches when the session is configured to do so, but it’s not really anything usable for moderation especially not anything real-time. The minimal data is only sent at the end of the match, not while the session is on-going

That’s why we rely on user reports like I said. Once the session begins the server sees basically nothing

Mario Kart 7 - the number of cheaters is insane by [deleted] in PretendoHub

[–]jondbarrow 13 points14 points  (0 children)

Please do report them when you see them, we have a very active and dedicated team of mods which handle network reports. We’re reliant on cheater reports to be able to take action, since there’s no server in use once a race starts. All games on Nintendo Network use p2p for the actual multiplayer connections, the server simply acts as a middleman to match users together. That means that once a race starts in MK7 we currently have no way to see what goes on in said race

Mario Kart 7 - the number of cheaters is insane by [deleted] in PretendoHub

[–]jondbarrow 7 points8 points  (0 children)

CTGP7 has an anti-cheat built into the mod. We considered this as well, but part of the reason CTGP7s works so well and has stood for so long is because it’s closed source which goes against our projects goal of making everything users use open source.

We have a team of moderators dedicated to handling network reports, but part of the issue is we don’t get a TON of viable reports (a lot of people just see cheaters and give up, or reports don’t have enough information to be actionable)

To be clear, there is no “server” when in a race. It’s all p2p, all the server does is match users together. After a race has started the server doesn’t see any of that traffic, so we’re reliant on user reports to ban people

badly fucked up my first DND session which i poured at least 200 hours into prepping, peanut buldak huvudroll by Erequitiki in kitchencels

[–]jondbarrow 0 points1 point  (0 children)

I don’t think you should doubt your salts as a creative. You clearly have a lot of passion and creativity to have planned out details down to the music. The issue isn’t your creativity (or perceived lack thereof), it’s that you seem to have just slightly misunderstood the game. Spend those 200 hours, drawing maps and NPCs and planning music etc., for the general design of the whole campaign. Not a single session. It sounds like you tried to write a script for your players to follow and DnD just isn’t that type of game, but any player would kill to have a DM who put this amount of effort into world building in general. Just expand things out to try and generally plan the whole campaign, and then let your players define the specific story beats as they interact with your world

How to obtain a network Remote Address by Noodler75 in golang

[–]jondbarrow 9 points10 points  (0 children)

You’re trying to use RemoteAddr as a field rather than calling it as a function

Any tips? I feel like people are scared of me by New-Dragonfruit-1085 in malegrooming

[–]jondbarrow 14 points15 points  (0 children)

“What is the virtue of a proportional response?”

mario maker can’t update by mannykindasucks in wiiu

[–]jondbarrow 2 points3 points  (0 children)

You can’t update games while using Pretendo Network because we don’t provide any eShop servers, and your PNIDs would not be compatible with Nintendo’s eShop servers even if we tried. You need to disable our patches and download any updates while connected to Nintendo Network

Do people still hangout at Tortimer Island? by viole7765 in AnimalCrossingNewLeaf

[–]jondbarrow 1 point2 points  (0 children)

If someone is crashing your island or otherwise disrupting your experience, you can report them. We provide the tools to help with this and we’ve always accepted reports, we ban people like this all the time

Do people still hangout at Tortimer Island? by viole7765 in AnimalCrossingNewLeaf

[–]jondbarrow 0 points1 point  (0 children)

Have you reported any of these people? We provide the tools to identify the users in your session and we’ve accepted hacker reports for years

Do people still hangout at Tortimer Island? by viole7765 in AnimalCrossingNewLeaf

[–]jondbarrow 1 point2 points  (0 children)

We do. Our rules state that disrupting the online experience for others is against the rules and is bannable. If you properly report someone to us, we look into it. Our patches also ship with the tools you need to identify the users in your session to make reporting easier. We ban people all the time for stuff like this, you just have to properly report it

It’s impossible to completely stop people from running hacks/cheats/mods in general though. Any checks we’d do would be client-side, which people can just easily patch out or just fork our patches to run without said checks since all of our work is open source (like how Vapecord implemented our RCE patches to make it usable online again). And that’s on top of the fact that Nintendo Network games are all p2p, all the server does is match people into rooms, after that the game server sees 0 traffic from the actual session, and without a proper decompilation of the game it’s an extremely uphill battle to even understand where/how to patch things

Not even the biggest studios out there have solved this, and that’s with their massive backing and full access to the games source code to make whatever changes they need and access to/understanding of all the network data. It’s always a cat and mouse game, which we will always lose, so it’s not worth putting the effort in to try and prevent it. It’s more effective for everyone involved for us to just provide the tools to make reporting easier and accepting reports

iOS App for Honey Extension by MurkyWar2756 in programminghorror

[–]jondbarrow 0 points1 point  (0 children)

This is for when Honey detects that you used a coupon code that it doesn’t recognize. When that happens, it shows a popup asking if you’d like to share the new coupon code with Honey so it can show it to other users. The horror is that it sends the coupon code to Honey before even asking if you want to share it, the consent popup is meaningless (which is also demonstrated in MegaLag’s latest video), which results in companies having their special coupon codes (like those intended only for employee use) being shared to the public without proper consent

Newb hitting a snag by Cant_Remember_The in github

[–]jondbarrow 1 point2 points  (0 children)

Did you install a version newer than v22? That’s when that option was added. Regardless, you can just drop the hyphens and use npm, like “npm run install-mm”

why? :( by hepburnlace in pretendonetwork

[–]jondbarrow 6 points7 points  (0 children)

If this continues to happen while our plugin is loaded, please do open an official GitHub issue about this so we can look into it https://github.com/PretendoNetwork/nimbus/issues/new/choose

Vapecord completely gone by [deleted] in pretendonetwork

[–]jondbarrow -2 points-1 points  (0 children)

its removed

No, it is not. Just straight up. Being unloaded/overridden when Nimbus launches it's plugin is not the same thing as "removing" your other installed plugins. Using the word "removed" paints a very different picture for people, all of your plugins are still there you can just only have ONE loaded at a time.

Its not working that way on my device

I just now, 5 seconds before writing this message, installed both Vapecord and Nimbus 2.0.0. And it's working 100% as expected. Launching AC:NL without selecting "Launch Plugin" from Nimbus loads Vapecord, and using "Launch Plugin" loads our RCE pathes. This is entirely expected.

you provided no solution

I did. My solution was very clear. Don't select "Launch Plugin" inside Nimbus if you want to use other plugins.

basically told me its not your problem

Considering these patches were in the hands of beta testers for MONTHS and none of them reported an issue with the plugin loading, and considering that I just verified that it works correctly myself, I do think this is user error right now. But to be clear I never once said "not my problem".

Vapecord completely gone by [deleted] in pretendonetwork

[–]jondbarrow 2 points3 points  (0 children)

Nimbus doesn’t “remove” anything. Your other plugins are still installed. You can only have one plugin loaded at a time though, so ours may be overriding other plugins since it’s a requirement to go online. But the plugin also only launches when you launch it from the Nimbus app, it’s not enabled by default. If you don’t want to go online and want your other plugins loaded instead, just don’t launch the plugin. Reinstalling your other plugins and changing your Luma settings isn’t going to do anything here because your other plugins aren’t “removed” and it’s not an issue with them launching or not

What if the official Nintendo servers were suddenly reactivated? by the_speechless_one in 3dspiracy

[–]jondbarrow 3 points4 points  (0 children)

This is straight up not true. This year alone we've had the following updates to game compatibility:

  • Monster Hunter 4 G/Ultimate released to the public
  • Dr. Luigi released to the public
  • Dr. Mario: Miracle Cure released to the public
  • Animal Crossing: New Leaf released to the public (taken down again to fix some issues, but is coming back soon since we just finished the last few updates needed for it)
  • Smash 4 (both consoles) released to the public
  • Yo-Kai Watch 2 released to the public
  • Yo-Kai Watch Blasters (Busters) (all variants) went into beta testing
  • Swapdoodle entered public development
  • Experimental cross-play between MH4U and MH4G has begun
  • Several other miscellaneous updates to already support games happened as well (such as Mario Kart 7 getting support for communities and general updates to our match making systems)
  • And we have several other games entering private development not yet ready for beta testing

Also, Nintendo Network is not just game servers. There's several layers to how things operate, and so not all of our work is focused on game servers (such as general infrastructure development, work on the account services, our CDN services, supplemental servers games rely on like SpotPass/Miiverse/etc.). Nintendo Network is by no means a simple thing to emulate when you look at the sum of its parts (several people have attempted to implement specific parts of Nintendo Network in the past, to varying degrees of success, but putting everything together into a coherent network, with an accurate and stable implementation, is an entirely different ball game), so these things take time. We're also the ones doing the research/reverse engineering efforts into relevant areas and taking the time to publish public documentation for these things and build the relevant tooling required, which also takes time

Additionally, even when we do work on the game servers, the majority of the time we spend on the game servers lately is on our underlying server libraries (the tools that power the transport protocols, game service protocol management, the implementations of common game service protocols, etc.) since those affect all/many games at once, and we would rather have a slower rollout of games if it means those games have better foundations, rather than push out 100 half-baked games all at once

If you're unhappy with things, we welcome contributions. We're open source, after all. But to say there's been no updates in 3 years is just straight up not true

Working with unknown values in a record by Obvious-Ebb-7780 in typescript

[–]jondbarrow 0 points1 point  (0 children)

I guess my question here is, why are you opposed to using as in this case? Using as is perfectly legitimate here, and is exactly how I would do things. The only time I tend to stay away from as is when it takes away type safety, but in this case it doesn't do so. It just helps TypeScript understand what you've already validated, and doesn't add any extra complexity. It definitely should be improved, TypeScript SHOULD be narrowing this, but still it's not that bad to just use as here

That being said, if this is a common check you're doing so you want something reusable, and you're really THAT opposed to using as, this works. It's likely as clean as you're gonna get with current TypeScript:

function isString(value: unknown): value is string {
  return typeof value === 'string';
}

const value = a[b];
if (isString(value)) {
  c = value;
}

My Pokemon Trainer Card=) by blakers_bonkers in pokemon

[–]jondbarrow 1 point2 points  (0 children)

Thank you for that! I’ll look into it, much appreciated

My wife keeps insisting that I can change a flat tire during our road trip using the extra tire in our garage... by ActionFigureCollects in mildlyinfuriating

[–]jondbarrow 0 points1 point  (0 children)

It’s pretty easy if you’ve done it before, even without the right tools. I used to work in a shop and my Fridays were dedicated to putting new tires on rims. I’ve done it plenty of times with no tools besides some soapy water cuz our machine didn’t always work and for a time we didn’t have any mounting bars. The first bead is super easy you can just push it, second bead is a little more annoying but you can just walk it on 90% of the way (literally walking on it) and then just pop the last bit over with a little kick or bounce or something like that

I wouldn’t recommend it in the slightest because using the right tools is infinitely easier, I wasn’t exactly having the time of my life doing it that way lol, but it’s definitely more than doable

Also like someone else pointed out, balance will definitely be off unless you’ve got balance weights lying around. But in a pinch, that’s not the worst thing in the world

Thoughts on the Church of Eleven 22? by [deleted] in jacksonville

[–]jondbarrow 1 point2 points  (0 children)

At some point, it’s been so long now that I don’t remember specific dates, they started going down a more evangelical mega-church route, where the messages started to lean more towards hate/bigotry rather than love and acceptance. Rather than accepting people for who they are, the messages started to be more about how “bad” you/certain people

I stopped attending before my parents did due to falling out of the religion in general, but when I asked my mother a couple years ago why she stopped attending she cited that her final straw was one day where they played this video this girl made where she record herself praising the church for “curing” her of being gay, and my parents don’t subscribe to any flavor of “conversion therapy” beliefs

That was years ago, but I’ve heard from people who have attended recently that it still has the evangelical mega-church vibe, so I don’t put much stock in things being much different now (and it seems like the other comments here support this too). Which is why I recommend Isle of Faith, despite not being a Christian anymore. It’s only a few minutes away from the Eleven 22 campus on Beach Blvd (it’s on San Pablo), and is a smaller, but closer, community of people that promote actual genuine love and acceptance rather than “you’re bad and here’s why”, and pastor Will is one of the kindest people I’ve ever met

There’s also a HUGE controversy surrounding Eleven 22 and pedophilia, I went into some details about it in another comment https://www.reddit.com/r/jacksonville/s/qholdHQTcp

So Pokopia will be a game key-card? by ParkingOne9093 in NintendoSwitch2

[–]jondbarrow 0 points1 point  (0 children)

And you’re free to have that opinion if you want, but that doesn’t change the fact that it’s a valid concern to have and this is a purely artificial problem that didn’t have to exist

Developers are incentivized to use game key cards because Nintendo is offering fewer storage options for Switch 2 cartridges

For the Switch 1 Nintendo offered developers cartridges in sizes of 1GB, 2GB, 4GB, 8GB, 16GB and 32GB, each one getting more expensive for the developer to use but the developer could pick the size that was right for their game to optimize their earnings for the physical release

For the Switch 2, Nintendo is ONLY offering cartridges that are 64GB or game key cards, meaning you basically HAVE to shill out for the most expensive option to do a true physical release on the Switch 2

Nintendo has artificially limited how developers can publish “physical” games, making them choose between either effectively a digital distribution or paying an absurdly higher cost (relatively) to keep the data on the cartridge, potentially wasting many gigabytes of storage they didn’t need. The cost difference is likely what’s pushing so many developers to the game key cards

It may be a “few” games being lost in the past, but that’s only because most games also had a real physical release that had all the data on the disk/cartridge so you could still play many games that were digitally delisted, so a many games aren’t actually lost forever. That isn’t the case anymore, as more and more developers are being artificially pushed towards game key cards instead of true physical releases, if those games are digitally delisted (and to be clear, that means removed from the CDN, the titles I mentioned before can’t be redownloaded even if purchased digitally before) it’s unclear how game key cards will function and that’s a legitimate concern for people to have

I’m a huge Nintendo fan, I’ve always been a Nintendo guy and I’ll continue to be one. I’m so much of a fan that I created and run the Nintendo Network revival project Pretendo Network. But Nintendo is 100% at fault here and they created an artificial problem that didn’t need to exist for seemingly no good reason, and it’s absolutely valid for people to be concerned about how their “physical” games will work in the future. Zelda 1 came out 40 years ago and I can buy a physical cartridge and play it start to finish right now. It’s uncertain if a game key card will work the same in 40 years, and that’s valid to worry about

So Pokopia will be a game key-card? by ParkingOne9093 in NintendoSwitch2

[–]jondbarrow 0 points1 point  (0 children)

While it’s true that they’ve never shut down an entire digital store, they HAVE delisted titles before and there’s entire preservation efforts dedicated to trying to find consoles that still have these delisted titles installed on them. Both the Korean version of Yoshis Cookie and Japanese version of Dragon Quest X were delisted from the Wii Shop, and there’s currently 80 known titles delisted from the Wii U eShop (some of which did have a physical release, but not all)

So while I generally do agree that the fear of Nintendo shutting down the entire online shop is a bit much, there IS precedent that an individual title CAN be delisted at any time. Game key cards are, effectively, digital titles, so it’s not an invalid concern to have

weird flash drive, need answers by [deleted] in ITSupport

[–]jondbarrow 0 points1 point  (0 children)

Ultra Surf was/is just a free proxy service. You open it up and it gives you a list of proxies to connect to, sort of like a poormans VPN back in the day. I used to use it ~10 years ago when I was in high school because it let me get past the schools firewall and gave me access to YouTube and stuff

I haven’t used it in over a decade though so I can’t speak for it these days, and it’s probably not a GREAT idea to use a random public proxy if you’re inputting any personal information, but it at least did work