Project Road map 09/2020

Hello everyone,

We felt it was time to put another message out and provide some clarity around the project, where it is heading and what we have planned.

Firstly though I wanted to say a huge thank you to all of you. The project would not be this far without your feedback, excitement and demands for more. The project has grown so much since when I first put my initial plans and ideas on the BeamNG.drive forum.

So what is the plan?
Well today we had an important discussion about how we all feel about the project, what the community are saying and what we think we can do. Below is the outcome of said meeting/discussion.

Launcher Plans:

  • Other than small things around stability we feel this is working quite well. It does all that we needed it to do. So we will be working on improving its stability further.

Client Plans:

  • Firstly @jojos38 is going to be spending some time trying to work on some of the bugs that exist in game. This includes things such as the showing of outdated servers & fixing the outdated server issue even though it is not outdated.
  • @jojos38 and myself are going to be working hard to improve the documentation of the mod. This includes comments in the code AND on the wiki which will be created on the GitHub repository.
  • There is also going to be a push to further improve the client code such as removing disused code and analysing the performance of functions.
  • Parts of the client are also going to be moved into separate resources hopefully. Things such as the chat will be converted into their own resources designed to be run by the server. This will hopefully help to build a platform for people that they can use to analyse, study and eventually build their own resources.

Server Plans:

  • We are looking at the possibility of trying to open some of the server source code to the public for you to be able to help contribute towards it. At the moment this is still in very early stages and might not happen still but we are looking into it.
  • Efforts are being made to fix the current stability issue and then work can begin in trying to build a fully Linux compatible build too.
  • We are edging closer to making the server something we are happy to publicly release so that anyone can host a server. While I am on this topic, the reason we have not released it just yet is because we are concerned about the strain that the possible calls for help will put on our support team. We know that it is not 100% ready yet but this is why it is not at version 1 and has not been released. This also seems like a fitting time to say thank you to all of the server boosters and pateron donators. Without your support, testing and feedback we would not be able to make the progress we do now. Even if half of it you do not see.
  • The Lua system will be receiving further updates and work to try to enhance it more.
  • There are also plans to make the server console actually have the ability for user input too!
  • Server UI will also be a optional thing by the time we hit version 1!!

Backend Plans:

  • As I’m sure you are aware our systems were down the other morning for some maintenance, this maintenance was part of the first steps for us making moves towards having better up-time and faster downloads for all of you. Over the next few months I will be putting more work into this trying to further improve it.
  • The initial page of keymaster will also be receiving its much needed functionality soon. Unfortunately I cannot give you a date on this yet but it is still something I very much want to make happen and it will happen.

Well I think that just about sums up where we are going to be going with the project. No doubt there are some missing bits and some bits I am holding back to tease you with down the road a little but do not be mistaken, the current silence from the team does not mean the team have given up, we just have lives too that’s all.

Be sure to checkout the Trello we update that occasionally but it gives you a way to see things progress from behind the scenes.

Thank you for reading and of course leave your thoughts below!

BeamMP Mod Team

@Loki Fair enough. I can understand for the client → launcher → server. Not sure where the backend comes into this as it has 0 influence by the user. To be honest non of the communication should be touched by anyone since it is all done over the system we created for you to use to make it easiest for the user.

Since you want to know though all communication is done over UDP and TCP between the Client, Launcher & server. UDP is only used once in the session.

I feel it could be incredibly valuable if the protocol between the Server software and all relevant services (the beam-mp backend, clients, etc) was documented. I’m not quite sure how much is going on computation wise on the server (seems to be minimal given the nearly zero resource usage) but allowing for developers to completely control how the server software behaves would only be beneficial in my eyes. Since auth keys are still required in the first place it’s not like this opens up opportunity for circumventing the auth keys system. Maybe there’s a lack of session authentication or something that I’m not seeing, but I can’t tell you how many times I’ve just wanted to reimplement the server software on my own so I could tune some random things not properly exposed to the Lua Api