2010-05-20 3 views
1

먼저 내 이야기를 소개하겠습니다. 페이스 북에서 멀티 플레이어 네트워크 게임을 개발하기 위해 플래시는 왕 이었지만 클라이언트를 위해 많은 리소스를 소비하며 카드 게임에는 가치가없는 것처럼 느낍니다. 따라서 프론트 엔드는 Javascript (물론 jQuery와 함께)를 사용하고 PHP와 백엔드를 사용할 것이라는 아이디어가 있습니다. 그러나 실시간 통신을 위해서는 PHP와 Javascript만으로는 불가능합니다. MySQL에서 모든 플레이어의 움직임을 기록하고 다른 브라우저로 다시 표시하는 것은 이치에 맞지 않습니다. 따라서 XMPP 서비스에 대한 아이디어가 있습니다. XMPP 서비스는 심지어 PHP 없이도 브라우저를 브라우저에 전달하고 Strophe 및 Javascript로 내용을 표시 할 수 있습니다.FaceBook에서 XMPP 기반 PHP 및 Javascript 멀티 플레이어 네트워크 게임을 실행할 수 있습니까?

마지막으로 필자는 필요한 모든 도구를 갖추고 있지만 스스로 대답 할 수없는 몇 가지 질문이 있습니다.

1) PHP와 Javascript간에 XMPP 서버가 작동하는 방식은 무엇입니까? MySQL에서 사용자 레코드를 가져오고 이동을 계산 한 다음 원하는 사용자에게 결과를 전달해야합니다. 인증 시스템도 있으므로 PHP가 내가 잘못하지 않았으니주의를 기울일 것입니다.

2)이 질문은이 게시물의 제목입니다. FaceBook에서 XMPP 기반 PHP 및 Javascript 멀티 플레이어 네트워크 게임을 실행할 수 있습니까?

시간과 조언에 감사드립니다.

답변

1

PHP 소켓을 사용하여 연결이 가능하며 PHP로 데이터를 보내기 위해 Ajax를 사용하여 쉽게 XMPP 서버로 보낼 수 있습니다. PHP를 사용하여 XMPP 서버와 통신하기위한 number of libraries도 있습니다. Facebook에 관해서는 스크립트에 아무런 영향을 주어서는 안됩니다. 올바르게 기억한다면 Facebook이 자체 샌드 박스에서 앱을 실행하므로 Facebook API를 해결하기 위해 특별한 조치를 취할 필요가 없습니다.

+0

감사합니다. 한가지 더 궁금한 점이 있습니다.) ... 아약스를 PHP에서 XMPP로 작성했습니다. 즉, 브라우저의 움직임 데이터가 Ajax와 함께 PHP로 전송 된 다음 XMPP 서버로 전달 된 다음 PHP를 통해 다른 브라우저의 XMPP 클라이언트로 전달된다는 의미입니까? – Devyn

+1

나는 그렇게 생각한다. 자바와 만 소켓 통신을 할 수 있는지 잘 모르겠다. 이 경우 PHP는 XMPP 서버와 클라이언트 사이의 매개체로 생각하십시오. Javascript에서 타이머를 사용하여 PHP가 새로운 동작을 위해 서버에 ping을 수행하도록 Ajax 요청을 실행하십시오. –

관련 문제