April 24, 2019, 03:48:49 pm

The Gang Garrison 2 Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

Chat with us online! (or @irc.esper.net/#gg2)
Come Mumble with us!

Pages: [1] 2 3 ... 12

Author Topic: Faucet Networking [V1.7.1 released]  (Read 34679 times)

MedO

  • Owns this place
  • *****
  • Karma: 148
  • Offline Offline
  • Posts: 1742
Faucet Networking [V1.7.1 released]
« on: November 28, 2010, 05:25:20 pm »

What's this about?
The Faucet Networking extension aims to provide a sane networking API for multiplayer games. You could probably summarize it as "a better 39dll". Not in the sense that it can do more (not at first anyway,) but in the sense that it's easier to use. It has already replaced 39dll in GG2, and the change simplified the networking code in many places.

What's wrong with 39dll?
Sure, 39dll is widely used, but is it really easy to work with? I've written a few helper scripts in GG2 to deal with some of the complexity of e.g. just reading a fixed number of bytes from a socket, and in my opinion the interface provided by 39dll makes it hard to implement even many of the usual tasks correctly. It also doesn't support IPv6, which is an increasingly important point.

What's done?
The library can be used for TCP and UDP now.

Most recent release
You can always find the most recent release (V1.7.1) here.
The most recent source code is always available in the repository at Github.
Discussion mostly takes place in the GMC thread
« Last Edit: January 29, 2018, 06:06:06 pm by MedO »
Logged
Quote from: Alfred North Whitehead
It is the business of the future to be dangerous; and it is among the merits of science that it equips the future for its duties.

Quote from: John Carmack
[...] if you have a large enough codebase, any class of error that is syntactically legal probably exists there.

L

  • Guest
Re: Faucet Networking Extension
« Reply #1 on: November 28, 2010, 05:27:36 pm »

:o
Logged

Waterfall

  • Guest
Re: Faucet Networking Extension
« Reply #2 on: November 28, 2010, 05:32:26 pm »

What does this mean for GG2 players with no coding experience
Logged

Brotacus

  • Guest
Re: Faucet Networking Extension
« Reply #3 on: November 28, 2010, 05:42:09 pm »

So what's this mean for someone with no coding experience
Logged

MedO

  • Owns this place
  • *****
  • Karma: 148
  • Offline Offline
  • Posts: 1742
Re: Faucet Networking Extension
« Reply #4 on: November 28, 2010, 05:42:40 pm »

If you're aiming for something like "less lag", you'll be disappointed. It will make the code in the actual game cleaner, so maybe fewer bugs, in the long run.
Logged
Quote from: Alfred North Whitehead
It is the business of the future to be dangerous; and it is among the merits of science that it equips the future for its duties.

Quote from: John Carmack
[...] if you have a large enough codebase, any class of error that is syntactically legal probably exists there.

Alfred

  • King of the Modders
  • ******
  • Karma: 162
  • Offline Offline
  • Posts: 1813
Re: Faucet Networking Extension
« Reply #5 on: November 28, 2010, 05:51:28 pm »

And possibly slightly less lag :3
Logged
my name is taimat
i eat a lot of chips
break a lot of games
suck a lot of dicks
Quote
[05:36] <@Vindicator> wow
[05:36] <@Vindicator> bawls taste amazing

aptanananananator

  • White Knight
  • Veteran Beta Tester
  • *****
  • Karma: 98
  • Offline Offline
  • Posts: 6511
  • Indie'll name his kid after me
Re: Faucet Networking Extension
« Reply #6 on: November 28, 2010, 09:45:06 pm »

Soo.. making the netcode simpler and easier to understand/modify?

Sounds good to me :z6:
« Last Edit: November 28, 2010, 09:45:17 pm by [SC] Aptanor »
Logged
[22:07] tank: aptanors jew fro is godlike

Alfred

  • King of the Modders
  • ******
  • Karma: 162
  • Offline Offline
  • Posts: 1813
Re: Faucet Networking Extension
« Reply #7 on: November 29, 2010, 02:47:52 am »

Which, AFAIK, nagn's had some minor success in cramming into 2.2.3 already. Granted my last attempt at marrying the two ideas turned into nagn asking for help while Medo explained the extension. I understood little.
Logged
my name is taimat
i eat a lot of chips
break a lot of games
suck a lot of dicks
Quote
[05:36] <@Vindicator> wow
[05:36] <@Vindicator> bawls taste amazing

[BH] sHN3T

  • Lucky Member
  • *******
  • Karma: 0
  • Offline Offline
  • Posts: 1125
Re: Faucet Networking Extension
« Reply #8 on: November 29, 2010, 04:00:33 am »

Well, I don't understand shit about 39dll, although I understand mplay...
Is this gonna be easier to learn? If  we dont understand 39?
Logged

Alfred

  • King of the Modders
  • ******
  • Karma: 162
  • Offline Offline
  • Posts: 1813
Re: Faucet Networking Extension
« Reply #9 on: November 29, 2010, 04:15:18 am »

I believe that's what he said.
Logged
my name is taimat
i eat a lot of chips
break a lot of games
suck a lot of dicks
Quote
[05:36] <@Vindicator> wow
[05:36] <@Vindicator> bawls taste amazing

NAGN

  • Developer
  • ******
  • Karma: 145
  • Offline Offline
  • Posts: 16800
  • Yeah so now I have an idea
Re: Faucet Networking Extension
« Reply #10 on: November 29, 2010, 10:11:16 pm »


What's done?
 should be usable for basic TCP usage.

implement udpconnect and you will be my hero :panic:
« Last Edit: November 29, 2010, 10:12:28 pm by not L »
Logged

Saniblues

  • Onion Knight
  • Moderator
  • *****
  • Karma: -1306
  • Offline Offline
  • Posts: 12450
Re: Faucet Networking Extension
« Reply #11 on: November 30, 2010, 06:10:29 pm »

how interesting
Logged
Quote from: mop
Quote from: MR MAGN3TIC
I don't like it.  :nah:
Oh, well, you might as well pack up and stop now, because he doesn't like it
I'm bored out of my skull, Lets play a different game!
Lets take a visit down below And cast the world in flames!

MedO

  • Owns this place
  • *****
  • Karma: 148
  • Offline Offline
  • Posts: 1742
Re: Faucet Networking Extension
« Reply #12 on: December 02, 2010, 02:50:09 pm »

Does this really warrant a sticky already? Oh well.

Implementation for the TCP part is underway, but it's going a bit slow because I'm learning several new libraries as I go along, and I never created a big project in C++ either, so there's a lot to check and read up on.

If you want to see what it's going to look like, here's the current state of the API: https://docs.google.com/document/pub?id=1EAEu00nuiSuy3ZMS-ePPBsWu7evaZ5apk9CZaZhaj94
Logged
Quote from: Alfred North Whitehead
It is the business of the future to be dangerous; and it is among the merits of science that it equips the future for its duties.

Quote from: John Carmack
[...] if you have a large enough codebase, any class of error that is syntactically legal probably exists there.

[BH] sHN3T

  • Lucky Member
  • *******
  • Karma: 0
  • Offline Offline
  • Posts: 1125
Re: Faucet Networking Extension
« Reply #13 on: December 02, 2010, 02:51:56 pm »

Wow it's like mplay cross 39dll
I love this. Thanks medo
Logged

NAGN

  • Developer
  • ******
  • Karma: 145
  • Offline Offline
  • Posts: 16800
  • Yeah so now I have an idea
Re: Faucet Networking Extension
« Reply #14 on: December 02, 2010, 04:03:42 pm »

Wow it's like mplay cross 39dll
I love this. Thanks medo
? I don't really see it much, it's pretty much 39dll except with functions that make a lot more sense and some error messaging (with the actual implementation of the networking scripts from gg2)
Logged
Pages: [1] 2 3 ... 12
 

Page created in 0.045 seconds with 36 queries.