A Flash Developer Resource Site

Page 1 of 2 12 LastLast
Results 1 to 20 of 23

Thread: Flash Nexus 2, new protocol need opinions!

  1. #1
    Senior Member
    Join Date
    Nov 2000
    Posts
    123
    Hi Guys

    Having created the first flashnexus (www.flashnexus.com), I've learnt many things, one of which is flash's speed problem processing these messages.

    To sort out these problems I'm proposing the following new server structure, and would relaly like feedback.

    The server will be based on a current IRC server build. IRC for those of you that don't know, stands for Internet Relay Chat.

    The server will be compatible with current irc clients, such as mirc, *****x, java etc. However will allow flash, director and any other programming language to also connect.

    One example might be our Bomberman game we have. If i wanted to create a game, I click 'create game', this makes me join a new room, and I sit there waiting for people.

    Non-flash users will not be able to join this room, only flash users. Then once we have enough players, the game can get under way.

    However if I wanted to join a room, I could either join a normal 'game_room' or a 'chat_room', where the 'chat_room' can be made up of a mixture of flash and mirc users.

    What I'm trying to do, is remove the necessity of re-inventing the wheel, as IRC has been incredibly succesful, and flash could communicate with it.

    Also an advantage would be the ability to develop your own 'bots' much like eggdrops available for chat rooms, your bots could provide you with server-side scripting, for things you didnt want to have to include in your client.

    I'm open to all suggestions and comments.

    Steve Cox

    PS, This could become a mammoth task, if anyone can program in C\C++ and is interested in helping me, please email me!!


  2. #2
    Senior Member tupps's Avatar
    Join Date
    Jan 2001
    Location
    Melbourne
    Posts
    2,035
    It sounds like an excellent idea, building on top of IRC protocol.

    Would it be easier to create a XML<-->IRC gateway, whereby your flash users could utilise XML and hook into existing IRC servers. Am I not wrong in thinking that a lot of the under the hood stuff that has already been done by IRC is what is going to take the most of your time?

    Would it therefore be better to hook into and modify an existing IRC server?

    Which ever way you look at it mammoth task springs to mind.

    Thanks

    Luke


  3. #3
    Senior Member
    Join Date
    Nov 2000
    Posts
    123
    Hi

    I've thought about just adding an intermediate gateway to translate from IRC to XML and vice versa, it's this kind of feedback I'm after!

    If I was to build the server as one complete solution, it will be based on an existing server, such as Unreal IRCD, which is open source, as will be mine.

    The only problem with a gateway, is that the gateway would have to open twice as many ports, ie, flash--gateway--irc

    I'm not sure on ther performance implications on this, but worth looking at!

    I'm going to go research now

    Steve

  4. #4
    Senior Member tupps's Avatar
    Join Date
    Jan 2001
    Location
    Melbourne
    Posts
    2,035
    You are probably correct about the gateway information. Although if the gateway was running on the same machine the connections would not be killing the network.

    Is it possible to build your stuff as a patch or plugin for the IRC server or are you going to have to build a completely seperate server that has the flash/XML integration hard wired in?

    Thanks

    Luke

  5. #5
    Senior Member
    Join Date
    Nov 2000
    Posts
    123
    Initially I'm going to build it into a seperate server, but once it's done, there's no reason why it can't be built as a plugin.

    I'm also looking at working on some 'bots' to sit on the server, which would allow things such as SMS messaging, ICQ paging etc.

    These could be communicated with through flash!

    Steve

  6. #6
    Junior Member
    Join Date
    Jul 2001
    Posts
    3
    hi,

    first of all: great work, emphatic!
    my suggestions:
    you could build a gateway with pure php!
    php provides socket function (ok, afak there is a warning in the php-documentation: Socket functions: This module is EXPERIMENTAL. bla bla). no problem, so far ;-)
    now you can connect with flash-xml-socket-connection to that newly created php-socket and do that translation to a irc-server (without any extra-library).
    that php-script can run on every system with php-support. yeah!

    keep on the good work.

    cya dreco


  7. #7
    Senior Member tupps's Avatar
    Join Date
    Jan 2001
    Location
    Melbourne
    Posts
    2,035
    How good is PHP handling of a socket connections? I would assume that they would follow the web paradigm of being individual connections and not persistant?

    The other thing is how easy would it be to integrate PHP-->IRC, as well as allowing the individual socket connection to talk to each other through PHP, this would be especially tricky as I don't beleive that PHP gives allow you to commiunicate across sessions.

    I would however point out that I could be quite wrong here as I have never played with Sockets on PHP. Also note that it is only the latest version of PHP that allows this.

    Thanks

    Luke

  8. #8
    Senior Member
    Join Date
    Nov 2000
    Posts
    123
    Hey

    PHP is a posibility, but I'm unsure of the performance it would give.

    I decided to go with the gateway idea, so you could connect to _any_ IRC server, but initially building this in c++.

    I want a good fast version, so I know how I want messages to communicate and parse, before i proceed to other languages.

    CGI, PERL and PHP are all good choices, and I would like to work on these once I have a test c++ version up.

    Steve

  9. #9
    Senior Member tupps's Avatar
    Join Date
    Jan 2001
    Location
    Melbourne
    Posts
    2,035
    You might want to look at the PHP doco/source as it has IRC gateway function (was searching through the PHP doco this arvo and saw it)

    http://www.php.net/manual/en/ref.ircg.php

    When you say you are going to be building it for C++ is that going to be cross platform or are you looking purely at Windows based platform?

    Thanks

    Luke

  10. #10
    Senior Member
    Join Date
    Nov 2000
    Posts
    123
    thanks for the link, I'll take a look at it!

    I'm building it cross platform, initially for linux, then windows then Mac os X.

    I would like a solution that covers just about everyone who could want to use it.

    Steve

  11. #11
    Senior Member tupps's Avatar
    Join Date
    Jan 2001
    Location
    Melbourne
    Posts
    2,035
    If you are building it for Linux then the port to OSX will be quicker (like I am guessing less than an hour) than Windows. MacOS X is FreeBSD based so you shouldn't really have to much of a problem if you are using standard networking stuff.

    A lot of stuff compiles out of the box, just a few of the configuration stuff is in different spots. I am pretty sure this is what happened with Apps such as mySQL.

    Give me a yell if you want a hand with the MacOSX stuff.

    Thanks

    Luke

  12. #12
    Junior Member
    Join Date
    Jul 2001
    Posts
    3

    Lightbulb nexus2 and java

    in my opinion your first version of nexus2 should be written in java (java-servlet). it should perform as fast as c++ since there isn't a gui (server running with apache+tomcat).
    the second part would be a gui (also in java with a nice jfc-interface) to configure the nexus2-server (this 2 apps could run on different machines - it would be easy to maintain etc)

    if you like this idea i would be interested
    in helping you to develop nexus2.
    (if i have time to do so ;-) )


    cya

  13. #13
    Senior Member tupps's Avatar
    Join Date
    Jan 2001
    Location
    Melbourne
    Posts
    2,035
    I don't see any reason to write it as a Java servlet as it is not going to be running via a web server, Nexus 2 is a engine that will be making socket connection above port 1024. I could see the advantages of building a Java based system that could utilise mulitple OS's

    Also there would be issues with having the Servlet engine not necessarily starting the server on restart, and would add unnecessary complications to the system.

    Thanks

    Luke

  14. #14
    Senior Member
    Join Date
    Feb 2001
    Location
    Provo, Utah
    Posts
    1,112

    Uhh...

    Here's my two cents::

    If you want this to be a 'best seller' - make the installation 'finish-able' within 5 clicks, and make it's 'interface-ability' for newbies.

    Please don't take that to mean I don't want advanced capabilities, but there are still a lot of people out there who are learning this stuff... and you'll scare them away if it's too complex initially *cough Enhydra chough*...

    Did that make any sense??

    Oh yeah.. and have a version for win98se...

  15. #15
    Senior Member tupps's Avatar
    Join Date
    Jan 2001
    Location
    Melbourne
    Posts
    2,035
    I agree that everything should be easy, but how many people are going to be newbies and building this sort of service. The most important thing I can think of is that it has the features that a serious user wants and needs.

    The other thing is that one needs a service that can run reliably and has the stability as well.

    Thanks

    Luke

  16. #16
    Senior Member
    Join Date
    Nov 2000
    Posts
    123
    Hi

    Well, I've started a version, which will be as tupps first suggested, a gateway.

    This way it will be compatible with any IRC server online.

    I'm trying to make it easy for someone to use, but these things aren't the easiest.

    If a user understands flash, and xml, they will be able to pick it up, and install it no probs.

    Those that 'want to make the next quake in flash, but only want to click a few buttons' need to look elsewhere.. This is merely a solution to remove the server side programming, which inhibits flash designers.

    I will be making a windows 98 version, but not initially. I'm building from a very strong, solid and fast base, any GUI will slow it down, so initially, that's on hold.

    Java is a possibility, but I don't really want the overheads over JDE, it's getting people to succesfully configure JDE, then the nexus. I'd rather a program they can install, from the box.

    Administration will initially be via telnet, but eventually will be a gui, presuming it's performance doesnt suffer.

    Steve

  17. #17
    Senior Member
    Join Date
    Feb 2001
    Location
    Provo, Utah
    Posts
    1,112

    Uhh...

    You're right guys.. it needs to be powerful - but remember, not every Flash developer is a linux guru. That's all I was sayin'...

  18. #18
    Senior Member tupps's Avatar
    Join Date
    Jan 2001
    Location
    Melbourne
    Posts
    2,035
    One thing I was thinking that could be quite usefull and set u apart from the rest is the ability to have web based connections as well.

    As a socket connection does not work behind a restrictive firewall, you could have the ability to produce XML files that would allow the user to load chat information by polling a web server. This way if your flash chat application can't make a socket connection then it could send and receive the info via a web server. Polling the server every 30 seconds for new messages.

    Don't know how easy it would be to do but if you have a data source that was easy to access via scripting languages on a web server then it could be quite easy.

    Thanks

    Luke

  19. #19
    Senior Member
    Join Date
    Nov 2000
    Posts
    123
    I agree that not every user is a linux guru, and I will be providing it as painless as possible.

    It should be just running a few commands.. *should*

    Tupps, I think it's a great idea, It shouldn't be that difficult to build in, and could be a very useful feature.

    Thanks alot for the comments guys

    Steve

  20. #20
    Junior Member
    Join Date
    Feb 2001
    Posts
    25
    I'm working on a flash game right now that I wish to make multiplayer compatible.

    I thought I had struck gold when I stumbled across Nexus, but after downloading and installing the program, I had no idea what to do.

    Also, the examples on the Nexus site aren't working...

    Your work is very appreciated, and I wish you the best of luck with Nexus 2. But please don't charge $150 (or anything for that matter).


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  




Click Here to Expand Forum to Full Width

HTML5 Development Center