[In Design]Bubble Game Server

Discuss game development design and post your game ideas

Post » Sat Jun 08, 2013 7:48 pm

I somehow missed this when it was first posted - just wanted to mention it sounds amazing! Coding the server using c2 itself is exactly what I was hoping for.

I've never done multiplayer coding before, so I don't know what else to ask for. As long as I can send ints, floats and strings back and forth between the two I'm not sure what else I would need.

Am I correct in assuming this the type of thing that people could use to host their own games (if I coded it to work that way) by including the server plugin in the game itself? If the main server was down as a backup or something.
Moderator
B
87
S
32
G
33
Posts: 3,005
Reputation: 27,397

Post » Sat Jun 08, 2013 8:40 pm

Servers written in C2 have already been done.

It was a just-for-fun project, if this can be helpful for this idea, i'll release the code!

Good work, it's interesting to see where C2 is going!

edit: ahh, sorry, looks like you aren't using nodejs. JohnnySheffield2013-06-08 20:45:10
Be nice until it's time to not be nice
B
36
S
9
G
9
Posts: 293
Reputation: 6,652

Post » Sun Jun 09, 2013 3:10 am

@Arima
We are going to set it up that data is transfered and used the same way C2 Function. That way it's familiar :) We will also release a tutorial and a simple model for real time movement. Chat is a great program to always teach the basics, but moving will help convey how developers structure the data for multiplayer.

There will be 1/2 plugins. Client Function for the games and a Node Functions for server data which will offer more features needed. More Channel control, send to entire channels so on. However, it's still under consideration if we will just have it one plugin or 2.

What would you like to see, both Client and Node as one plugin or two?

BubbleBatch.exe will be available to self execution. So if you want to set up your own hardware you can run the server yourself, but we are also looking toward offering cloud based serving.
In cloud based, you can either run your code on a remote computer. That way you don't need to host any hardware
Or you can run a Node on your hardware and use a remote BubbleBath.exe

We are still discussing avenues :)



@JohnnySheffield
heh, Like Arima I totally missed that :D. That's an awesome thing :) fantastic job. That's a great proof of concept and I'm sure you could probably make some games with that.

What we are doing with Bubble is that BubbleBath(which is written in Go) is designed to cope as a routing based server. That way it can handle different games, Bath.exe can be launched on multiple computer and share the work load, handle large set's of Nodes into a cluster. So bubble will be more than just the connection, but to get some of the other work out of the way :)




B
87
S
18
G
9
Posts: 2,455
Reputation: 14,834

Post » Sun Jun 09, 2013 3:39 am

I like the way you think, and i hope you'll manage to get this project in a some stable state...

Although i respect your decision to get some early thought of the other c2 users, i think it would e the best for the project to get to a more or less stable state before you release anything, or try to get useful feedback form users. A lot of people, a lot of opinions. Sometimes useful, sometimes not.

On the other hand, release early, release often.

But, when in doubt, C4!

I'll follow this thread carefully, sounds like you have something here.

---

oohh, i forgot, i even did a simple plugin for writing udp servers in C2, if anybody is interested, here's the thread.JohnnySheffield2013-06-09 03:41:57
Be nice until it's time to not be nice
B
36
S
9
G
9
Posts: 293
Reputation: 6,652

Post » Sun Jun 09, 2013 5:04 am

@JohnnySheffield
that's awesome that your working on a UDP for javascript and C2 through nodewebkit. Once WebRTC and unreliable channel comes out. Can I use your work on UDP?

I appreciate your comments. I do agree. We won't release anything until there is enough to get some basic games going. For us that will be when Channel's, Channel list, channel data, user data is running.
B
87
S
18
G
9
Posts: 2,455
Reputation: 14,834

Post » Sun Jun 09, 2013 2:46 pm

Well, I am playing with @JohnnySheffield stable zackmod and I can't see why anyone would ever need other. It is simple, it is great and I was able to "solve" all the problems I've found.(well, my project is not working on firefox and IE... but that is all)

If you fell that there is a urge for server-side high-level-programming, and you are only trying to get things on a easier way, so, I would advice you to produce on construct2 a drag-and-drop-and-save system for creating and managing socket.io server side code, that and a true guide of how to use the mod would help greatly the community.

First you can design the spawn, then the enemy spawn, then the NPC spawn and his sync solution(be it controlled by the first client connected or by other way), then the basic functions and animations, then a socket.room system based on distance from sprites...

But your project is just great also.
B
7
S
3
G
1
Posts: 154
Reputation: 1,812

Post » Sun Jun 09, 2013 4:26 pm

Bleh had a big long post about server side authentication, and perhaps using some api's like Open Id or Facebook, but the crapy forum software ate it... again.

Ok not real long, but anyways.

@Tom webwis suck green donkey doo
Image Image
B
161
S
48
G
89
Posts: 7,347
Reputation: 66,249

Post » Sun Jun 09, 2013 5:04 pm

@breackzin
We are currently looking at Redis for a model of storing data on the server side. However you have a good point. An easy way to identify what data should be easily stored is a good idea. We will look into that. As an initial thought maybe we can use C2 Dictionary as a model of storage.

We are not using socket.io, we are currently working with raw websocket. Go language does not support socket.io. :( socket.io however is mostly a wrapper of transports to have all the transports look like websocket. It's a nifty piece of tech :)

We will be making tutorials once we have the first development release to share.


@newt I understand your pain. I have lost posts too :D
Well BubbleBath.exe is a raw message handler that forwards messages to clients or nodes and then back and forth. At that level there is no need for authentication. However and often any game with persistent player data requires protection and access by security. So I am actually keen on considering how this can be provided to the C2 developer.

Now this is just an initial thought that been floating around. BubbleBath won't handle authentication. Often Facebook, google login, twitter and all these other sites tend to use proxy logins. A request is made by the client side to login. This is linked directly to to the authentication site and not through visiting site. This validates a cookie for the site to access limited data from FB/Google/Twitter...

Now I have thought about this already because I wanted to possibly integrate Clay.io. We shouldn't get the user password, instead we need a proxy pass that the client sends to bubblebath to use.

The other alternative is that we can look into providing a local user account system. In this model we would build this in C2 so that developers could customize an authentication system.
B
87
S
18
G
9
Posts: 2,455
Reputation: 14,834

Post » Fri Jul 19, 2013 2:39 am

@jayderyu

Any update on this?
B
15
S
4
G
4
Posts: 294
Reputation: 3,225

Post » Fri Jul 19, 2013 3:28 am

@Thndr
We are still working on this. This is a spare time project right now sp limited to our free time. A lot more of the potential backend is in place. Players and Nodes can connect. We are just polishing up on some developer features and protocols.

Hopefully we will have a prelim to show off in a few weeks and to get C2 developers feet wet.

Though a question.

Would you prefer a single Plugin to be used as both the Player and Server game logic or would you rather work with two different plugins?
B
87
S
18
G
9
Posts: 2,455
Reputation: 14,834

PreviousNext

Return to Game Development, Design & Ideas

Who is online

Users browsing this forum: No registered users and 0 guests