Dedicated Server & Players

Get help using Construct 2

Post » Thu Mar 20, 2014 1:00 pm

Hey there, I've been experimenting with the sort of typical MMO server style whereby you have a dedicated server and multiple clients connecting to this single authoritative server.

I'm trying to eliminate the need of the server actually rendering any of the action which the client typically needs to.
In essence, I just want the server to be a simple command prompt sort of executable which does all the server logic and sends out the necessary updates every tick.

Problems I've ran into so far is that there is no easy way to sync the players because if the server doesn't have the player objects in it, it cannot use the sync action to easily spread the changes that's been sent to the server by each client. Does anyone have any ideas on how to do this, anything I'm missing etc.? I'm going to keep experimenting, but it seems as though the capability of making a real time multiplayer game with a stripped down server that simply processes server logic is quite troublesome!
B
37
S
11
G
6
Posts: 962
Reputation: 11,254

Post » Sun Mar 23, 2014 9:13 pm

Thanks for bringing this up, I'm curious as well.
ImageImageImageImage
B
62
S
19
G
51
Posts: 633
Reputation: 30,816

Post » Tue Mar 25, 2014 3:52 am

Anyone's looking into this more?
B
37
S
11
G
6
Posts: 962
Reputation: 11,254

Post » Wed Mar 26, 2014 7:28 pm

I wish. :p
ImageImageImageImage
B
62
S
19
G
51
Posts: 633
Reputation: 30,816

Post » Wed Mar 26, 2014 9:56 pm

it seems like you're trying to make the server out of C2... if so, that's not likely to work, usually minimal servers need their own scripting.

if you want to streamline the server, the key is for the server to maintain the schema for all players and the necessary updates, and then for the client to interpret the updates into the "visual/intereactive" representation. in that way you don't need to work about the specific objects in the client, as long as they are correctly tied to the schema.
B
7
S
3
G
1
Posts: 184
Reputation: 1,352

Post » Tue Apr 01, 2014 6:54 am

@rho You make a point, but what would be the correct way (in terms of the MP Events) to go about doing this?
Yeah, I want to make a server with C2 which handles the data of each player and sends back updates to everyone, without needed to process the visual representation on it's own screen.
B
37
S
11
G
6
Posts: 962
Reputation: 11,254

Post » Wed Apr 02, 2014 7:49 pm

Rory, I hadn't considered using C2 as a server. I suspect the best way is to look at the multi-player tutorials and the new web-rtc functionality. i'm not sure how best to do it after that as anything significant in size is likely to need a database and c2 doesn't support that functionality yet - to my knowledge. for me, c2 is the wrong tool for the server that you are planning.
B
7
S
3
G
1
Posts: 184
Reputation: 1,352

Post » Wed Apr 02, 2014 7:56 pm

If you don't want the server to do any rendering work, make all the layers visible. If you like you can then put an extra layer on top with a text object with some information, but remember that text objects that change every tick can be slow on some setups, so you might want to just do 1 second updates or something.
Scirra Founder
B
387
S
230
G
87
Posts: 24,249
Reputation: 192,240

Post » Wed Apr 02, 2014 8:17 pm

Hmm... this sounds quite interesting an experiment to try out. If you give it a go let us know how it goes.
Freefall Bird
B
47
S
9
G
5
Posts: 280
Reputation: 5,781

Post » Wed Apr 02, 2014 9:18 pm

If your using a single master controller. You should not be using object syncing. Even if you followed Ashley's suggestion of not rendering by making layers invisible. You are still going to be stuck with the fact that all your players will be sharing the same game area. So that means collisions with each other. It's not viable to use 1 Room to host 1000 players among different game zones. Clients can't cope with the massive data in and out and the server will probably buckle too.

So if your going to use a single room server you shouldn't use object sync. My suggestion is to go ahead and create 1 server host per room/zone. If your planning to have 100 player per zone that's only 1 software app running per room to be a server host and that isn't so bad. Of course you will need to figure another tech to have each room server talk to each other.

I've started a project based on a similar principles to an MMO although more like Phantasy Start Online rather than WoW. I have a thread running in the WIP and I also have a devlog(my sig). It's a slow burn project for me as I have other priority projects. However I will be putting up the first online stage of development soon.

The thread is here
derelict-online-project-wip_t100117
B
90
S
18
G
9
Posts: 2,455
Reputation: 15,013

Next

Return to How do I....?

Who is online

Users browsing this forum: FlyingRam, jkmalau, MadSpy, Manubis and 13 guests