• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            天行健 君子當(dāng)自強而不息

            Getting Online with Multiplayer Gaming(4)

             

            Creating a Multiplayer Game Architecture

            When creating your game, if you were to stop mid-stream and try to add multiplayer
            features (features you hadn’t planned on including) chances are you would
            have a hard time making everything work out correctly. Let’s face it—you need to
            be prepared ahead of time, and if your game is going to be multiplayer-compatible,
            you must make sure that you have a solid foundation on which to work.

            You start by understanding what you’re up against when using networks and what
            you can do to ensure that everything works correctly. It will be helpful to look at
            how to use a client/server network architecture.

            NOTE
            A client application is the program the player interacts with during a networked gaming session.
            A server is the network application that serves as the central processing hub of the gaming
            world. Client applications connect to servers and begin communicating player actions back and
            forth. However, ultimately, the server handles the majority of the game-processing functionality.

             

            Working Together: The Client and the Server

            The client and the server communicate back and forth continuously. As players
            (the clients) perform actions in the game, those actions are sent as messages to the
            server for verification. The server, in order to maintain synchronization, takes the
            players’ actions, updates the game world, and then sends game updates to the
            clients. In this way, the server maintains the entire gaming world, whereas the
            clients are merely systems for collecting the players’ actions (and displaying their
            eventual outcomes on the clients’ screens).

            The types of messages sent between the server and clients are numerous, but with
            some well thought-out design, those messages are easily manageable. The messages
            can be the following:

            ■ Connection requests. Joining in a game means connecting to a server. Not
            just anyone can join, however; the server might be operating at its limit or
            the player might not have a valid account. Once a client is connected, the
            real action(s) begin!

            ■ Navigation. Players can move around maps, usually by pressing an arrow on
            the keyboard or clicking their destination on the map. Clients send in movement
            requests and leave it up to the server to return game update messages.

            ■ Combat. With swords swinging and spells erupting, it seems too much to
            deal with. If you were to strip away the fluff, however, you would discover that
            combat is nothing more than an attacker with his form of attack and a
            defender with his form of defense. Clients are the only ones to request combat;
            it’s the job of the server to take combat requests and work them into the
            game updates.

            ■ Resource management. With a world full of goods, players want to be able to
            buy, sell, find, and use just about any resource that they can get their hands
            on. I’m beginning to repeat myself, because resource management comes
            from the client, and requests are sent to the server to use for updates.

            ■ Conversation. What fun is a multiplayer game without the social interaction?
            Characters talk to each other in order to learn vital information or just to
            shoot the breeze. Either way, this is a simple matter of displaying a few lines
            of text. This conversation works both ways, from clients sending in text to the
            server returning text to display.

            ■ Game updates. As mentioned, the server needs to let all clients know the
            state of the game periodically, and the game update messages are just the
            ticket. Game updates usually include the positions of all characters in the
            game, plus information about items and other game resources.


            posted on 2007-12-18 14:58 lovedday 閱讀(174) 評論(0)  編輯 收藏 引用


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            公告

            導(dǎo)航

            統(tǒng)計

            常用鏈接

            隨筆分類(178)

            3D游戲編程相關(guān)鏈接

            搜索

            最新評論

            国产L精品国产亚洲区久久| 国产亚洲精品久久久久秋霞| 久久久久久久久无码精品亚洲日韩| 日韩精品久久久肉伦网站| 97久久香蕉国产线看观看| 久久中文字幕无码专区| 久久亚洲私人国产精品vA| 久久996热精品xxxx| 日韩精品久久无码人妻中文字幕 | 色偷偷88欧美精品久久久| 囯产精品久久久久久久久蜜桃| 国产精品久久一区二区三区| 一本久道久久综合狠狠躁AV | 香港aa三级久久三级| 无码国内精品久久人妻| 色天使久久综合网天天| 99久久精品免费看国产一区二区三区 | 久久国产V一级毛多内射| 久久99精品久久久久久久不卡| 亚洲国产一成久久精品国产成人综合 | 色欲久久久天天天综合网| 欧洲性大片xxxxx久久久| 99久久99久久精品国产| 国产精品毛片久久久久久久| 久久国产色av免费看| 久久精品国产亚洲AV忘忧草18 | 伊人久久大香线蕉av不卡| 亚洲精品国产第一综合99久久| 国产精品免费久久久久影院| 91久久精品国产成人久久| 国内精品久久久久影院一蜜桃| 久久久久国产精品嫩草影院| 日本精品久久久久久久久免费| 777久久精品一区二区三区无码| 91久久精一区二区三区大全| 久久婷婷五月综合97色一本一本| 东方aⅴ免费观看久久av| 日产精品久久久一区二区| 久久婷婷激情综合色综合俺也去| 99国产欧美久久久精品蜜芽 | 人妻无码久久一区二区三区免费|