Суббота, 23 Ноября 2024, 22:36

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Вопросы по движкам и архитектуре браузерных игр
ServelatikДата: Суббота, 17 Ноября 2012, 11:14 | Сообщение # 1
был не раз
Сейчас нет на сайте
Доброй ночи игроделы)
Передо мной стоит задача, создать браузерную игру(стратегию). Но есть немного непонятных моментов. Сервер игры нужно писать на чистой java(работа с большими объемами данных + скорость разработки). Встает вопрос - как организовать взаимодействие между браузером и сервером? Какие на сегодняшний день существуют технологии? В какую сторону гуглить?

Добавлено (17.11.2012, 11:14)
---------------------------------------------
Или на этом форуме принято задавать вопросы в виде: "Аааа, я делаю свою супермега игруху браузерную ААА класса, где будет OVER9000 уровней, ах да еще это будет MMORPG, но я не знаю как программировать, так что напишите как это сделать за полчаса."?

HackTrucachДата: Суббота, 17 Ноября 2012, 11:22 | Сообщение # 2
участник
Сейчас нет на сайте
Честное слово, хотел ответить нормально, но после того про читал про, что на этом форуме принято, расхотел. Видимо у вас нет не какого уважения к собеседнику?

Но на вопрос всё таки отвечу. Я чую у вас нету опыта проектирования серверов? раз уж вы не знаете, что к серверу можно подключатся через сокеты, и что эти сокеты поддерживает PHP, так же, как работает в браузере ваша РТС? Flash плагин? HTML5? или другие плагиновые системы, на подобии Unity Web Player? если же сами плагин писали, то почему бы, в этот плагин не встроить поддержку вашего сервера? в общем на вопрос ответить трудно, так как нету информации, как работает ваша RTS

P.S у JAVA есть расширения для работы в браузере


Организатор флешмоба #100игрзанеделю

Сообщение отредактировал HackTrucach - Суббота, 17 Ноября 2012, 11:30
goldsphereДата: Суббота, 17 Ноября 2012, 11:26 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
Quote (Servelatik)
браузерную игру(стратегию)

Если RTS, то можно взять джаву, а если TBS, то и php хватит


FinderX - Android Аркада
ServelatikДата: Суббота, 17 Ноября 2012, 12:08 | Сообщение # 4
был не раз
Сейчас нет на сайте
Извините за излишнюю резкость, но сколько я просто читал форум, то видел в среди таких тем, из десяти только одну нормальную. У меня есть опыт проектирования промышленных систем и разработки клиент серверных приложений, с использованием сокетов. Но java я использовал только для специфических приложений(интеллектуальные мультиагентные системы). Как я понимаю использованть нужно стандартные средства java. Типа вот такого:

Code

import java.net.ServerSocket;
import java.net.Socket;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.InputStreamReader;
import java.io.BufferedReader;

/**
   * Created by yar 09.09.2009
   */
public class HttpServer {

      public static void main(String[] args) throws Throwable {
          ServerSocket ss = new ServerSocket(8081);
          while (true) {
              Socket s = ss.accept();
              System.err.println("Client accepted");
              new Thread(new SocketProcessor(s)).start();
          }
      }

      private static class SocketProcessor implements Runnable {

          private Socket s;
          private InputStream is;
          private OutputStream os;

          private SocketProcessor(Socket s) throws Throwable {
              this.s = s;
              this.is = s.getInputStream();
              this.os = s.getOutputStream();
          }

          public void run() {
              try {
                  readInputHeaders();
                  writeResponse("<html><body><h1><script src=\b/my/script.js\b></script></h1></body></html>");
              } catch (Throwable t) {
                  /*do nothing*/
              } finally {
                  try {
                      s.close();
                  } catch (Throwable t) {
                      /*do nothing*/
                  }
              }
              System.err.println("Client processing finished");
          }

          private void writeResponse(String s) throws Throwable {
              String response = "HTTP/1.1 200 OK\r\n" +
                      "Content-Type: text/html\r\n" +
                      "Content-Length: " + s.length() + "\r\n" +
                      "Connection: close\r\n\r\n";
              String result = response + s;
              os.write(result.getBytes());
              os.flush();
          }

          private void readInputHeaders() throws Throwable {
              BufferedReader br = new BufferedReader(new InputStreamReader(is));
              while(true) {
                  String s = br.readLine();
                  if(s == null || s.trim().length() == 0) {
                      break;
                  }
              }
          }
      }
}


Сообщение отредактировал Servelatik - Суббота, 17 Ноября 2012, 12:10
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг