Remix.run Logo
koshergweilo 5 days ago

> Librebox is currently in demo stage (it implements a limited subset of the Roblox API

Probably worth mentioning this is just a demo. There's a looooong list of API features that aren't implemented (most notably servers and networking)

jay_kyburz 4 days ago | parent [-]

I would start with the servers and networking if I were them. It can be really hard to bolt that on later.

dedicateddev 4 days ago | parent [-]

Good point. We thought about this in advance.

The reason we chose to prioritize client support, then server, was replication. If we develop a strong client with broad support, it makes developing the replication piece easier, since the client already supports the features in mind. It would also allow us to make Librebox more practical for game development in its early stages.

We'd love to see how you could do the client-server model though. Perhaps, there is a new and more efficient way.

jay_kyburz 3 days ago | parent | next [-]

>If we develop a strong client with broad support, it makes developing the replication piece easier, since the client already supports the features in mind

Unless you are running the client against server, you will never know if the client features you are writing are any good.

The games need to run on the server by default, and the clients are just a "view" into what is happening on the server.

For ease of development, your app is a fully functioning server and a client in a single application.

When playing single player, the game is still running on a local server, with only a single client connected.

I strongly recommend building everything around the communication pipeline between the server and client. Make it very easy to dial up latency and packet loss.

dedicateddev a day ago | parent | prev | next [-]

By replication, we mean replicating data from client to server, not replicating features.

gus_tpm 4 days ago | parent | prev [-]

Makes total sense. It's even better for motivation of the developer. The offline client proves that it is possible to continue working on this huge project since it gives you "quick" feedback that you are making progress.

Good luck guys!