A Flash Developer Resource Site

Page 3 of 15 FirstFirst 123456713 ... LastLast
Results 41 to 60 of 284

Thread: The Grand Multiplayer Thread

  1. #41
    Gross Pecululatarian Ed Mack's Avatar
    Join Date
    Dec 2001
    Location
    UK
    Posts
    2,954
    Yes, java is perfect for socket servers.

  2. #42
    madskool.wordpress.com brutfood's Avatar
    Join Date
    Apr 2002
    Posts
    469

    I am oficially a moron...

    ..In the eyes of my WEB host anyway.

    I got a socket server and flash client working on my own computer (I actually modified one written in Perl). So I asked OzWebHost, who host my site some questions about hosting it online.

    I assumed (probably incorrectly), that I had to be allocated a port number - that I couldn't just pick one out of a hat.

    I got the reply:-

    "This is not our problem..._ we do not provide programming assistance unless paid for.."

    Another question I asked is where in the directory to put the socket server, and what to do about permissions. (I asked this, because I had problems on my own computer until I got it right). OzWebHost replied:-

    "Again, we are not a programming school.. we are a web host. Read up about Linux/Perl etc.
    _
    It has nothing to do with FS, perl open and close request._ not sockets"

    - Ok so maybe I am stupid. I have post-graduate qualifications in technical stuff - but as you all know, they don't teach you anything useful at university.

    Can anyone shed some light on these issues? I was also going to ask about making sure the s-server was always running? cron? But I didn't think I'd get that past OzWebHost without insult...

    Polite enlightenment anyone? Aplologies for my ignorance.
    AIR, ActionScript 3, Flex and Flash expert and freelance developer

  3. #43
    Junior Member
    Join Date
    Oct 2002
    Posts
    23
    alot of these multi-user sockets are expensive... for example, a 30 person connection for ElectroServer i think is $250.. how can a high-school freshman dish out that type of money? what im trying to get at, if you cant see, is do you guys know if any of these offer discounts for students?? it would help me... :P

    -joe

    ps rpgprogrammer, or any1.. how can i get the trial version of electroserver on my website? i use http://www.addr.com/ to host my site.. but i cant figure out what i need to do.. help??

  4. #44
    Member
    Join Date
    Dec 2002
    Posts
    58

    ISP

    Email your ISP, or call them by phone. Then, ask them if they will allow you to put Electroserver for your domain. Alot of ISP's dont allow this, but, there is one ISP that is specifically for hosting ELECTROSERVER on your domain. I forgot what there site was. Im pretty sure that it runs around 18$/month for 30-40 gig of bandwidth, plus 100 meg disk space, and the electroserver trial version.
    If you are interested in a postition for making an RPG like Diablo in Flash, contact us at flashrpgprogrammer@yahoo.com

  5. #45
    Junior Member
    Join Date
    Oct 2002
    Posts
    23
    hey rpg,
    when you say "Email your ISP..." do you mean my webhost? sorry, i dont know all of the terminologies.. so in my case that would be http://www.addr.com/? thanks for the help...


    -joe

    edit:
    ps.. if they were to agree to host this, what would i have to do? like changing the IP adress in the .cfg file or what? what else?
    Last edited by joe_m_87; 02-18-2003 at 08:19 AM.

  6. #46
    madskool.wordpress.com brutfood's Avatar
    Join Date
    Apr 2002
    Posts
    469

    I really AM having a studid day.

    I don't understand? But I'm having a stupid day - and I'm beyond caring about making a fool of myself

    What makes these commercial socket servers worth the money over the free examples you can find over the internet (such as the Moock server in Java), which you can then modify and tailor to your own requirements?

    Do they hand-craft assembly language for efficiency and increased bandwidth?
    AIR, ActionScript 3, Flex and Flash expert and freelance developer

  7. #47
    Senior Member
    Join Date
    Jun 2000
    Posts
    896
    Hi brutfood,

    Your webhost sounds like its run by a bunch of touchy people. Don't take it personally. That person probably has the lowest job at the webhost and the only way he/she can feel powerful is by slamming someone else. Just order about 50 pizzas and have them sent to their building. Give the name of the insulting tech-support worker as the person who placed the order :-)

    Regarding 'what makes commercial socket-servers any good':
    Well that's a good question. You want to know why to pay for one rather than modify and use an open-source one. Well the most simple answer is that modifying the code of a socket-server...and knowing what to modify...isn't something that most people can do. I consider myself quite savvy. I've been programming for years and wouldn't even know where to start when it comes to modifying the Java source to one of these things. Luckily another Electrotank employee is a Java nut and built us one from scratch (ElectroServer). But don't count on that level of expertise from many people that don't already have too much to do. To reiterate this point more concisely: if someone knows how to modify the source of a Java socket-server, then they should do it. But how often does that happen?

    The second point is regarding time and support. With some of the commercial socket-servers you are getting something that has made it through real-world tests and have several open-source examples for you to use. This cuts months out of development time. For intances, you can buy ElectroServer and have a chat and/or multiplayer game on your site almost immediately...the same day if you are quick enough. But if you have to develop this stuff from scratch it could take days, weeks, or months.

    Good luck finding the answers that you are looking for.

  8. #48
    Member
    Join Date
    Dec 2002
    Posts
    58
    Hey Joe,

    yes, you would change the IP in the Configuration File, then, email your ISP the file (the ES Program Folder). Now, have them run ES on the server, and change the IP settings on your game to the IP of your host. Now you're good to go

    You're Welcome!
    If you are interested in a postition for making an RPG like Diablo in Flash, contact us at flashrpgprogrammer@yahoo.com

  9. #49
    Gross Pecululatarian Ed Mack's Avatar
    Join Date
    Dec 2001
    Location
    UK
    Posts
    2,954
    The socket servers out there (partly due to the specialisation - games) are quite limited in general, I think there are only about 10 or so out there to be bought/downloaded. Because of this, the open source/free pool of socket servers is tiny, and lacks the features you pay for in Unity or Electroserver (ie. a room based archetechture and nice rounded off APIs). This of course doesn't stop you going out there and learning some java from tutorials ( http://java.sun.com for example) and writing a socket server that tops them all.

  10. #50
    Gross Pecululatarian Ed Mack's Avatar
    Join Date
    Dec 2001
    Location
    UK
    Posts
    2,954

    Re: I am oficially a moron...

    I had a longer reply to this, but accidently hit one of the side buttons on my mouse MS kindly sets to back, losing all my typings If I don't explain something enough, just ask.

    Originally posted by brutfood
    ..In the eyes of my WEB host anyway.

    I assumed (probably incorrectly), that I had to be allocated a port number - that I couldn't just pick one out of a hat.


    Most ISPs/webhosts block most of their ports to the outside world for security. Only a few are open like http (80) and ftp (various, I'm not sure). You will have to ask the ISP to opena port for you most likely. You could use a lower port that is open like 80, but normal flash clients can't connect to this for silly security reasons

    Another question I asked is where in the directory to put the socket server, and what to do about permissions. (I asked this, because I had problems on my own computer until I got it right). OzWebHost replied:-

    I'm guessing that you are allowed access to your "home directory", a folder with your name on it most likely from all you'll be allowed to see of it. Inside this lies a WWW directory, in which everything is on view to the world normally (you can secure access, but this depends on things, not suitable for your executables really).

    It's above the WWW directory (or beside it, but not IN IT) that you place your server files. This way nobody sees the configuration and the admin passwords ect... As for permissions, this depends. For perl scripts, binary executables (ie a C program compiled under the correct conditions) they must be chmoded (change mode) to 7xx, where the x's are what you want other people in your user group (maybe nobody) and everyone else's access to be respectively. This can be from 0 to 7, 0 being no access and 7 being read+write+exec permissions. I think 5 is read only, but check up on this before using it.

    Your webhost tech desk sounds overworked and underpayed... sorry.

  11. #51
    Member
    Join Date
    Feb 2003
    Location
    Ireland
    Posts
    66
    Hey,

    I was just wondering whether there were any tutorials on the polling method, or if anyone could send me an example (mofu@eircom.net). I know php but I am not too sure how this works,

    any help would be great

    Cheers.
    Check out my site @ www.mattsnet.tk
    My Entry for FK 48 Hour Game Contest: Almond Chicken
    Check Out my latest wip: No Name Yet!
    The graphics are totally PRELIM!! I am working on proper fighter sprites! And still working on the side scrolling

    For any questions: Email Me

  12. #52
    madskool.wordpress.com brutfood's Avatar
    Join Date
    Apr 2002
    Posts
    469
    The 'polling method' is just the normal way that you probably use PHP, but doing it over and over again (polling) in a loop .

    It is all controlled from the ActionScript end, and the PHP just responds pasively to requests. You use:-

    loadVariables(), or myvars.load() -> myvars.onData=...in the usual way.

    Use this to receive the current state of the variables (perhaps held in a text file or database) that are shared between all the clients.

    If you want to change these variables, you pass up some parameters, and the server-side code changes its variables and sets them up ready for future polls.

    The socket method on the other hand enables the server-side script to signal the ActionScript. So the Server-Side script can do the controlling here. Or, any flash client can transmit data to the server side code to be disseminated down to all the other flash clients, without them having to poll for them.
    AIR, ActionScript 3, Flex and Flash expert and freelance developer

  13. #53
    dont let the man drag you down skate_boarder_43's Avatar
    Join Date
    Mar 2001
    Posts
    121
    Next year i can take a bunch of different programming classes and i want to write a socket server. I want to decide which language i want to pursue and get good at based on which would make the server run the fastest. any suggestions?

  14. #54
    Senior Member
    Join Date
    Sep 2002
    Posts
    138
    Start learning now, by then there will be a new buzzword floating around this board and socket servers will be like duct tape--sooo last week. There are enough tutorials and forums on the web about any language that you can get your start.

    For my money, PHP is by far the easiest and is used by many large sites now.

  15. #55
    SaphuA mosterdfles_flash's Avatar
    Join Date
    Jan 2002
    Location
    Tha Couch
    Posts
    935

    Okeej :)

    I've read most post's here... but I kinda don't get it

    Could anyone plz make a simple tut of a simple multiplayer game???
    It would be great!
    'How Art Is The Visual While We’re Artificial…'

    Mail & MSN
    My Not Finisched Page!
    Nick: SaphuA

  16. #56
    Senior Member
    Join Date
    Jun 2000
    Posts
    896
    mosterdfles_flash,

    You can download an example open-source multiplayer game here: http://www.electrotank.com/ElectroServer/

    To play it you first need to install ElectroServer. If you are using Windows, then download from the Windows link. There is a file in there that explains how to install it.

    I don't know of any tutorials that walk you through all of this, but if you've got some cash you should pick up my book (see my footer). It takes you through step-by-step, installing the server, making a chat, making a multiplayer game.

  17. #57
    madskool.wordpress.com brutfood's Avatar
    Join Date
    Apr 2002
    Posts
    469
    i2thicko.com here!

    I'm just trying to get some new stuff working online - So I have a stupid question.

    How do I run a socket server? How do I set it up so it always runs? Do I use cron to start it up every midnight? To test it on my own computer, I just opened a terminal window and run it - I have (unix ssh) terminal access to my host, but I need to ensure that I not only tell it to run - but it keeps running.
    AIR, ActionScript 3, Flex and Flash expert and freelance developer

  18. #58
    Member
    Join Date
    Feb 2003
    Posts
    96

    Electro server

    Hi do any of you know elctro server well info to tell if I could use it for a racing game?
    Kinda dumb
    Im a stupid NoOb
    Matt

  19. #59
    Junior Member
    Join Date
    Mar 2003
    Posts
    10

    handling latency sync issues

    hi all

    i'm currently in the early stages of designing an online multiplayer rts style game. and trying to decide if flash would be a decent platform to do it on. our game design is similar to the campaign map of the total war series, albeit vastly simplified, and most importantly: real-time.

    i'm wondering about the latency issues involved in socket servers and what people's experience of it is. i set up a test using commserver and also aquaserver and measured the roundtrip times of messages for varying numbers of clients. It was generally pretty fast (<50ms) but this was all on a local machine so i expect it is much worse over a modem. neither server seemed to scale all that well either. they were fine with just two clients, getting about 20ms, but the time went up 10-20 ms for each client after that. so i imagine that with 50 clients, they lag would be around 500ms, just on the server-side (let alone the additional delay of the player's modem, which could be seconds or more).

    Usability guidelines generally recommend a delay of <100ms, after which a user starts to notice the delay, the game would feel sluggish and unresponsive.

    commercial games generally use a number of synchronisation methods to get around these problems. if you've ever played quake online you probably noticed another player jitter from one place to another at some point. basically they use routines that save snapshots of the game state at each moment, and if an event comes in from another player that conflicts with an event you've already executed, the state is rolled back to before the inconsistency appeared.

    of course, our game isn't going to be as time critical as quake but we want to make it seem as smooth as possible.

    has anyone who's made a multiplayer game with socket servers encountered these problems? how did you get around them? can anyone point me to some open-source actionscript that addresses the issue that we can adapt, or to give me a better idea of how to approach it?

    thanks...

  20. #60
    Senior Member
    Join Date
    Jun 2000
    Posts
    896
    Hi EviPuppetMaster,

    If you are going to make a multiplayer RTS game, then you will definately need a custom socket-server solution. In this case the server will not only route messages to the different users, but it will have to make decisions based on the game. It would be a nightmare to try to force the client machines to talk to eachotehr round-robin to pass all of the RTS information. Plus if you do it round-robin style then someone can easily cheat.

    Not that this is the answer for you, but we are working on another version of ElectroServer right now. When done it will accept generic 'plugins' of AI code. In that way one could have all of the speed and stable backbone of a normal chat server and just worry about coding the AI for the game.

    Good luck!

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