Live data from Hacker News

Ambient: The Multiplayer Game Engine

ambient.run

81–90 of 148 posts

Re: Ambient: The Multiplayer Game Engine

#81

I was shocked to see Stephen Merchant as a co-founder

Yeah - Spitting Images material right there.

That said I wouldn't be altogether shocked to see the real Merchant as a funding | creative founder of a game - he has money to invest and has past form developing voice character parts for established games in addition to having solid screen writing chops which can transfer to game universe development.

Re: Ambient: The Multiplayer Game Engine

#82

Earlier quoted context omitted.

Not necessarily, emulators has been doing this a while I think and with WASM this is the second impl I'm seeing of this. Basically, keep a "full" state backlog and ship user control events, if control events arrive late you simulate forward to "now" from the backlog with corrected input. I've been working on something very similar, gonna comment on the top-level.

Unless they are cooperative games giving copies of the server data model to the client inevitably leads to wild cheating. I give you the example of Escape for tarkov, where not only the data model is shared, but the client is authoritative over the server. A beautiful game ruined by the incompetence of the network-side development team.

Tarkov like most games uses client side prediction with some server side checks on actions, it can be hard to see the difference between a predicted action and client authority, they've been slowly increasing checks over the years as cheat developers finds new things to exploit. Since checks can be costly for performance you don't want to check things you don't have to, so doing it incrementally as you need is ok, for a game that is in a heavy development stage.

Unfortunately they are not doing lazy loading of loose loot and containers (including player/scav), so ESP is extra powerful in this game. But since Tarkov has complex maps there's little point in trying to hide players that are not visible, CSGO and Valorant are the only FPS games that does this but they also have simple and small maps with fewer players. So player-ESP and aimbot will most likely always be possible as long as you can bypass Battleye, so instead of cheaters rushing for loot they can see you might just go and kill you.

Re: Ambient: The Multiplayer Game Engine

#83

"Why not Rust?" is a question I ask about game development a lot these days. I'm an engineer with a decade of experience as a web services engineer, and 5 years of game development engineering. Rust seems like the right direction for game developers -- safer code, faster compile times, more portable binaries. Ambient looks very cool, but I had some questions -- 1) WebAssembly, but no native web player? One of the mos…

Hi, Ambient CPTO here.

1) Yes, we're currently working on this and progress is good, so stay tuned for that! 2) We actually built a collaborative editor for this, which we've been using in-house for a year now. We choose to not release it right now, as there's still some things we need to work out with it, but it's coming too! 3) We plan to monetize services around this, such as game server hosting and tools for people to monetize what they create. 4) So the runtime is completely open source, so anyone can look into the code anyway. If you build something on top of this, you will also be able to choose if your own code should live on the server, client or both. If it's server only it won't be sent to the clients. 5) We've experimented with partial html UIs, but support for it on Rust native isn't great yet. We do have a fairly decent UI implementation (see examples here: https://github.com/AmbientRun/Ambient/tree/main/crates/ui/ex...) though it's not exposed to user code yet, but yeah I hear you that there's a lot of people who know html based UI tech. We'll see exactly where we end up there, but most likely the first step will be to expose the UI library we've built already to users.

Thanks!

Re: Ambient: The Multiplayer Game Engine

#84

Always good to see more game engines coming out. Might I make a suggestion though. For your hero video on the site, I would expect it to be showing off the multiplayer aspect of the engine. Rendering environments, even in extreme detail, is considered table stakes for a game engine. Show off your unique selling point, making multiplayer games much easier than with a different engine.

Ambient co-founder here. You're right, thanks for the feedback, we'll update the website with one soon.

Re: Ambient: The Multiplayer Game Engine

#85

This confused me: > Ambient is a single executable which can run on Windows, Mac and Linux Until I read this: > Note that content is always streamed so the only thing the joining user requires is Ambient itself to join the session. So that's what the wasm is for. Even the client code is streamed to the client when you connect to a server. Interesting take. I hope it's not, as someone else said, an "open core" SaaS wh…

> the runtime handles synchronization of data for you. The first implementation probably just synchronizes every single change in state of the worlds database. I wonder if you can flag things that only the server should know, and somehow calculate what each client can see and know about.

Ambient CPTO here; Yeah that's pretty much how it works; changes on the server state and replicated to clients, which keeps "mirrors" of that state and can augment it in different ways. And yes you can specify exactly which entities and/or components get replicated to the clients. We're working on adding more details on the networking stack: https://github.com/AmbientRun/Ambient/issues/150

Re: Ambient: The Multiplayer Game Engine

#86

Earlier quoted context omitted.

Unless they are cooperative games giving copies of the server data model to the client inevitably leads to wild cheating. I give you the example of Escape for tarkov, where not only the data model is shared, but the client is authoritative over the server. A beautiful game ruined by the incompetence of the network-side development team.

Tarkov like most games uses client side prediction with some server side checks on actions, it can be hard to see the difference between a predicted action and client authority, they've been slowly increasing checks over the years as cheat developers finds new things to exploit. Since checks can be costly for performance you don't want to check things you don't have to, so doing it incrementally as you need is ok, fo…

I agree on most of it. I think the way to do server side check is not in real time during the game, but after the game session ended. You should unload every gamestate on a secondary server that process everything and rate what could be manipulated with a degree of confidence. After this rating drop a lot on a player it should trigger a manual/automatic ban.

Re: Ambient: The Multiplayer Game Engine

#88
post #29

Earlier quoted context omitted.

Rust faster compile time? Faster than what? The terrible compile time is a big reason why I avoid rust for game dev.

> The terrible compile time is a big reason why I avoid rust for game dev. Compile times are the least of your worry. The big problem is lack of tools and libraries in Rust gamedev. You can't even achieve PS2-era graphics with Rust right now. Neither Bevy nor FyRox support blend shapes / morph targets, and that's a two decades old and absolutely essential animation tool. Rust for gamedev is going to take a decade to…

> You can't even achieve PS2-era graphics with Rust right now

That's just straight up false:

https://github.com/EmbarkStudios/kajiya https://github.com/BVE-Reborn/rend3

Re: Ambient: The Multiplayer Game Engine

#89

> The compiled assets are always streamed to clients, so that they can immediately start playing without having to download all of the content first. I think there's a real opportunity here, if done well. It should be feasible to get initial load times down to single digit seconds, https://venge.io style, but then with progressive enhancement to AAA level graphics assets. I think that could be disruptive. Load times…

This is how Roblox has worked for more than a decade. Note the valuation.
Post reply on HN