ゲームは、本当はゲーム会社にあるサーバーっていうパソコンの中にあって、スマホからゲーム会社のサーバーにアクセスすることでゲームが出来ると習いました。
でも、サーバーは、誰でもアクセスできるものじゃなくて、サーバーで仕事をする人がいて、その人が仕事をしている間はメンテナンス中だからゲームが出来ないとも言われました。
サーバーは、誰でもアクセスできるものじゃないのに、どうしてスマホでゲームが出来るのですか?
サーバーとは「サービスを提供するもの」という意味です。世の中にはたくさんのサーバーがありますが、その内容は様々であり、「誰でもアクセス出来るもの」もあれば「誰でもはアクセスできないもの」もあります。
また誰でもアクセスできると言っても、アクセスできるのはあくまで「サーバーが誰でもアクセスできるように公開しているサービス」だけですし、その機能についてもメンテナンス等で一時的に利用できなくなる事もあります。
言って見れば、サーバーと言うのは、「インターネット内に開かれたお店」のようなものです。誰でも利用できるお店もあれば会員証がないと入れないお店もありますし、入れると言っても客が店のバックヤードにまで入れるわけでもないですし、定休日などで利用できない事もあるわけです。
スマホゲームの場合、ゲーム自体はサーバーではなくスマホ内にあります。ただし、大抵のスマホゲームは、そのゲームのデータを常にサーバーとやり取りして動いています。サーバーはあくまで「ゲームのデータをやり取りするサービス」だけを提供しており、スマホ内のゲームが「データを利用するお客さん」として動いているのです。
また、そのサーバーはあくまでそのゲームのデータを提供するだけのサービスになっていますので、そのゲーム以外からは一切利用できません。そのゲームの方もまた、そのサーバー専用として作られていますので、使えないからといって他のサーバーにするという事は一切出来ません。
このため、サーバーが一時的にでもサービス停止(つまりは閉店)していると、ゲームは遊ぶ事が出来なくなるわけです。
サーバに接続しないタイプのゲームもあります。
サーバに接続するタイプのゲームはMMOとかソーシャルゲームとかいいます。
他のプレイヤーと協力プレイするようなタイプのものが多いです。
サーバとはクライアントサーバモデルのサーバの事であり、
https://ja.wikipedia.org/wiki/%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%E3%82%B5%E3%83%BC%E3%83%90%E3%83%A2%E3%83%87%E3%83%AB
http://www.tdk.co.jp/techmag/knowledge/200805/
この場合、スマホはクライアントになります。
サーバは数百人、数千人という大勢のクライアントから
要求される大量のリクエストを処理します。
サーバの仕事が少なければ少ないほどサーバの反応速度は早くなりますので、
クライアント側で処理できる作業は全てクライアント側に任せてしまうんです。
このように、両者はそれぞれ異なる役割の仕事を行いますので、
当然ながら走らせるプログラムもそれぞれ異なります。
サーバは24時間365日ずっと電源を入れっぱなしなんですが、
機械なので当然故障などもありえます。
サーバが故障してしまうとどうなるかというと、
頑張って育てたプレイヤーデータが全て吹き飛ぶわけですね。
そうなった場合にも被害を最小限に留めるため、
定期的なメンテナンスでクライアントからの要求を止めて、
データのバックアップを行ったりします。
データは普通サーバ上にあります。クライアント側にはありません。
クライアント側でデータを管理するとデータの不法改造がやり放題ですからね。
このメンテナンスを行えるのは運営会社の人だけですので、
その意味では誰でもアクセスできるわけではありません。
でもメンテナンスしていない時であれば誰でもアクセスできます。
ただし、自分のデータにアクセスできるよう、
IDとパスワードを入力して自分のアカウントにアクセスしているはずです。
「教科書とノートで勉強が出来る仕組みを教えてください。
勉強は、本当は学校にいる教師っていう人の中にあって、教科書とノートから学校の教師にアクセスすることで勉強が出来ると習いました。
でも、教師には、誰でもアクセスできるものじゃなくて、教師として仕事をしているのは人間だから、人間が家に帰って風呂に入ったりごはんをたべたり寝たりしている間はメンテナンス中だから勉強が出来ないとも言われました。
教師は、誰でもアクセスできるものじゃないのに、どうして教科書とノートで勉強が出来るのですか?」
応えは「教師の存在が勉強のすべてじゃないから。(サーバーの存在がゲームのすべてじゃないから)」ですね。
スマホにはゲーム(のクライアントソフト)をダウンロードしたり、登録したりすることが必要です。
登録することでユーザーとしてサーバーと話すことができます。
これは、学校に入って生徒としての資格を得てからようやくその学校の先生とおしゃべりできるようになる、というのと似ています。不正行為をすると生徒としての資格をはく奪されるところも似ています。