• 0 Posts
  • 219 Comments
Joined 3 years ago
cake
Cake day: June 25th, 2023

help-circle


  • Jet says the following

    If you want https it’s gotta be a external DNS record anyway, might as well point to internal ips

    My point is, the A record, the one pointing to an IP address, doesn’t need to be public/external, it’s not needed for the wildcard cert, so it can be kept internal.

    I’m mentioning the other challenge trying to make it clear why the record matters for that, and not for a wildcard cert, sorry if that just made things more confusing.


  • Perhaps a better analogy is a painter who has no idea what their canvas is made out of; they know it’s a canvas, they know it’s for painting, they’re faintly aware they’re using some material stretched over a frame, but they just assumed a canvas is a canvas and they just never considered there might be other options than the one they’ve been getting.


  • The point is, the challenge doesn’t require a public DNS A record pointing to your IP, it’s not involved in issuing a wildcard certificate. It requires you to control DNS records for the domain to issue a temporary TXT or something record to prove it, one which you can remove afterwards. This was my point in the original comment.

    It’s A and AAAA records that are used when you open a website in a browser to map the domain to an IP address, the ones I’m saying don’t need to be public.

    The challenge dosent require your site to be public only the DNS to be public.

    And just to be clear, that was describing a different kind of challenge, the simpler one which most people probably use, and which does actually involve A records.


  • I’m a bit confused by what you’re saying, because to my knowledge the DNS entry you’re mentioning won’t help with getting a certificate at all. Challenges will typically require either having the DNS entry point to a publicly reachable website (doesn’t get you wildcard) or proving the ability to modify records for the domain by adding something like a TXT record on the fly, which shouldn’t require A/AAAA records.

    So you should be able to do the second type of challenge without a global A record to get a wildcard certificate, and use local DNS for the A record?


  • If you want https it’s gotta be a external DNS record anyway

    Not sure what you mean by that, but off the top of my head, you can get certificates via challenges that prove DNS control (rather than checking if the DNS points to your server), and you can get wildcard certificates so you don’t even have to expose the existence of subdomains.

    And that’s ignoring the option of using your own CA, which only really works with your own devices, but for local access might be viable.



  • Roguelike is more complex, there’s no governing body to decide on a proper definition, but I think the consensus that was reached long ago includes elements like turn-based, grid-based, non-modal, playable in an ASCII terminal. I think the last one is outdated, but the rest are significant components of what makes roguelikes… roguelikes.

    Modality in games is a particularly interesting aspect when you start looking at various other games, and something that matches up with things I dislike in games. One fun example is movement in FPS games, which can be built either on universal mechanics or a predefined moveset - some games will allow you to perform a vault move when next to a low obstacle, other games might let you crouch, jump, and crouch while jumping to get over low obstacles.


  • There are plenty of games with that that suck, so it can’t be the foundation of what Souls-likes are.

    I’m sure there are also plenty of games with exploration that suck, I don’t think that really makes it a valid point. I can’t speak to what soulslikes are, since I haven’t played the original games, but a game can implement one element well and still fail at being an interesting game, which doesn’t invalidate that element in any way.

    Realistically, can’t both combat and exploration be foundational elements of soulslike? I got the impression a big part is the way the combat works, usually involving a lot of commitment into your combat moves, with animations on attacks, dodges, heals, and multiple ways to be punished (and punish enemies), including plain damage, wasting items, wasting stamina.










  • Yeah, it’s so annoying how every crossplatform project is having to do that, it’s such a burden on all those indie developers all managing so much hardware and automation to support those platforms. /s

    I think I’ve seen the same argument against Linux package managers in general, and it’s bullshit in the way that it’s not on the projects to package for each distro, it’s on the project to provide a functioning build system, or at least binaries, and from there it’s on the distribution maintainers to figure out packaging.

    But also, in cases where packaging is more complex than just one dependency system for a whole language, it would be beneficial to have one unified system - if all languages are packaged in a unified way for specific system package managers, then you only need to develop a system for them once across all languages, and then you might have one system you need to plug your project into, and from there it could be automatically packaged into all those systems.


  • Worth noting is that C# generally uses compiled libraries, not quite binaries but CIL rather than source code, so that’s what you get when adding references and NuGet packages. And at the same time, compiled C# files include a lot of metadata about the code, like class structure and method signatures, so one .DLL is all you need to use a library.

    NPM is a more complex situation. To say there is one build system is already misleading, since there isn’t a build system built into JS - packages can be source distribution, or they can use a variety of tools, minifiers, packages for web or for Node, and occasionally include native libraries/binaries or otherwise compile native code from other sources.

    I think generally new languages have their own package managers primarily because older languages weren’t planned for convenient dependency management, so solutions for that are stapled on top of their stuff, aren’t compatible with existing libraries, often have some annoyances, and there are often multiple alternatives that were independently developed. On the other hand, new languages can just plan things out from the start, tweaking the language to work well for libraries, and establishing a single tool to avoid fragmentation.