• <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)鏈接

            搜索

            最新評論

            97久久精品人人做人人爽| 久久午夜夜伦鲁鲁片免费无码影视| 久久精品国产亚洲AV电影| 狠狠色丁香久久综合婷婷| 亚洲国产成人久久综合野外| 久久人人爽爽爽人久久久| 久久精品无码一区二区日韩AV| 一本久久a久久精品亚洲| 国产成人精品久久综合| 久久久久亚洲av无码专区导航| 精品国产乱码久久久久久浪潮 | 久久99精品国产99久久6| 久久久噜噜噜久久中文字幕色伊伊| 伊人丁香狠狠色综合久久| 亚洲色大成网站www久久九| 久久精品一区二区三区中文字幕 | 久久国产精品偷99| 好属妞这里只有精品久久| 亚洲女久久久噜噜噜熟女| 青春久久| 亚洲乱码日产精品a级毛片久久| 99久久精品国产综合一区| 久久91精品国产91久久麻豆| 久久久久久久久久久久中文字幕 | 久久精品无码一区二区app| 久久精品国产免费| 久久久久久久99精品免费观看| 色综合久久久久综合体桃花网 | 国产精品99久久久精品无码 | 久久狠狠色狠狠色综合| 久久99国产乱子伦精品免费| 久久人爽人人爽人人片AV| 久久香蕉国产线看观看精品yw| 精产国品久久一二三产区区别| 久久www免费人成看片| 亚洲中文字幕久久精品无码APP| 久久国产欧美日韩精品免费| 久久精品国产亚洲AV久 | 久久99亚洲综合精品首页| 久久精品免费大片国产大片| 久久中文字幕视频、最近更新|