Thread: Game server developing

  1. #1
    Registered User
    Join Date
    Dec 2008
    Posts
    7

    Game server developing

    Hi guys, i tried to search answers, but there are too many information. So if you can answer, thx you.

    I work with php but want to write own server applications. What i would to read for crossplatform server side application developing? What you use for work with sockets, threads and how you create a daemon or windows servise? How i can communicate two servers for using one variales? I hear something about pipes... How i can work with databases?


    Sorry for my bad english, i'm ukrainian.

  2. #2
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    That's a lot of questions. There's only one word to answer them:

    Google.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  3. #3
    Registered User
    Join Date
    Dec 2008
    Posts
    7
    Quote Originally Posted by CornedBee View Post
    That's a lot of questions. There's only one word to answer them:

    Google.

    I know what is a google but there are too many crap. I post this questions for getting true answers. When i was start php learning, i read bad information so in future i had many problems. I want to use newer methods of questions solutions.

  4. #4
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Unfortunately, if you ask very open-ended questions where there is no direct, concrete answer, I doubt that you will be able to get an answer here. The full answer to your question would certainly be several pages of tightly printed text, if not the subject of a book of 100's of pages.

    For socket/network programming in general, this site is a good starting point for what I understand (I have not actually done any real network programming myself).
    http://beej.us/guide/bgnet/



    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  5. #5
    Registered User
    Join Date
    Dec 2008
    Posts
    7
    I read some books about C and C++ but there are not exists this information. I want just links if anyone can post them. As i understand i would use some boost classes=/ Does anybody use boost.asio?

  6. #6
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Quote Originally Posted by majesty View Post
    I read some books about C and C++ but there are not exists this information. I want just links if anyone can post them. As i understand i would use some boost classes=/ Does anybody use boost.asio?
    But the subject is SO HUGE that simply posting links (assuming they exist and are known) would potentially be many pages - and that again assumes that we know the page is good, rather than just posting a link to googled pages that MAY OR MAY NOT be good.

    As SPECIFIC questions.

    Should you use boost.asio? Who knows. What are you actually doing in your (game) server? What is the limiting factor for bandwidth, processing efficency, ability to work in parallel etc? Is there other alternatives to boost.asio - I'm sure there are - I've never used that particular functionality, so I don't know if there is any PARTICULAR problem or advantage with that package. But it's not a straight-forward answer, as we do not know what your particular problem is, and thus can't explain the right solution.

    Your question is a bit like "I want to build a race-car", and then "Should I use slick tyres". Well, yes, if you have dry tarmac/concrete as a the racing surface, I'm sure the slick tyres are a good choice - however, if the expectation is to run on loose sand or wet tarmac, there are most likely A LOT of tyres that would be better that slick tyres.

    Does this make sense to you?

    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  7. #7
    Registered User
    Join Date
    Nov 2005
    Posts
    673
    (off-topic)Why do English people spell "Tyre" instead of "Tire" it. Tyre looks like it should be pronounced like Tier.

  8. #8
    Woof, woof! zacs7's Avatar
    Join Date
    Mar 2007
    Location
    Australia
    Posts
    3,459
    > Tyre looks like it should be pronounced like Tier.
    Maybe if you're American... who bashed up their own version of "English".

  9. #9
    chococoder
    Join Date
    Nov 2004
    Posts
    515
    crossplatform effectively means Java, especially if you want performance (if you don't, Ruby or Python may also be good options).

    There are heaps of information available on writing server applications, libraries full of books.

  10. #10
    Registered User
    Join Date
    Dec 2008
    Posts
    7
    I want to create server that would be listen game client packets on port, then make some calculations and return result to client or make a database query or write message into log. So as i understand i need to create/find configuration file parser, log file wrapper, database wrapper, socket wrapper, and also packet handler. And i want to make in compatible with windows and unix.

    Configuration file parser i can create by myself. But i don't know how it would be better. I think this question i can post in another thread later.

    Log file wrapper is very simple, so i don't think that there will be problems.

    I hadn't work with databases in C++, but i think that there are exists some libraries such as PDO in php.

    I had read some articles about sockets and think that somebody has create library. But if it be better if i would write own socket wrapper - i would do it.

    Packet handler must be hold in system memory and make calculations. As i understand it is a process daemon on unix and service on windows. I had find some articles but not about compatible applications for both operation systems.



    As example of bad manual for me is something about this:

    - for console output i can use printf() or output stream. It would be better to use stream.
    - for programming huge application i can use old structured style or object oriented style, i prefer second.

    I think someone has read some articles and know where they are bad or good. Such as you advised that site.

  11. #11
    Woof, woof! zacs7's Avatar
    Join Date
    Mar 2007
    Location
    Australia
    Posts
    3,459
    > for console output i can use printf() or output stream.
    Erm... same thing really. Unless you're talking about whether to use C or C++. If C++ then you'd probably want to do things the "C++ way".

    Do a design first, no-one can tell you how you're going to do it -- that's up to you!

  12. #12
    Registered User
    Join Date
    Dec 2008
    Posts
    7
    Quote Originally Posted by zacs7 View Post
    > for console output i can use printf() or output stream.
    Erm... same thing really. Unless you're talking about whether to use C or C++. If C++ then you'd probably want to do things the "C++ way".

    Do a design first, no-one can tell you how you're going to do it -- that's up to you!
    I told about tutorials that say that C functions are preferred in C++ and nothing about C++. If i don't know anything about C++ i would use that, and might have problems with it. It is just a my example of bad learning as i think.

  13. #13
    Malum in se abachler's Avatar
    Join Date
    Apr 2007
    Posts
    3,195
    Quote Originally Posted by zacs7 View Post
    > Tyre looks like it should be pronounced like Tier.
    Maybe if you're American... who bashed up their own version of "English".
    "Ownership of the language isnt a proprietership, its a corporation, and America owns the majority of shares" - Samuel Clemens

    That said, it isnt uncommon for different dialects of the same language to use variable spelling, and in fact the very notion of a 'correct' spelling of any word is an entirely modern notion.

    But as to the OP, you really need to be much much more specific.
    Last edited by abachler; 12-18-2008 at 10:50 AM.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. 20q game problems
    By Nexus-ZERO in forum C Programming
    Replies: 24
    Last Post: 12-17-2008, 05:48 PM
  2. Need book to program game into multiplayer...
    By edomingox in forum Game Programming
    Replies: 3
    Last Post: 10-02-2008, 09:26 AM
  3. Try my game
    By LuckY in forum A Brief History of Cprogramming.com
    Replies: 14
    Last Post: 09-15-2004, 11:58 AM
  4. HELP!wanting to make full screen game windowed
    By rented in forum Game Programming
    Replies: 3
    Last Post: 06-11-2004, 04:19 AM
  5. SMTP Server Not Working
    By (TNT) in forum Networking/Device Communication
    Replies: 1
    Last Post: 07-15-2003, 05:33 AM