[Vietnam Mobile Day 2013] - Phát triển ứng dụng game đa nền tảng smart fox server

1,548 views

Published on

Diễn giả: Nguyễn Ngọc Thủy
Đơn vị: Tamtay.vn

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,548
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
64
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

[Vietnam Mobile Day 2013] - Phát triển ứng dụng game đa nền tảng smart fox server

  1. 1. Phát triển ứng dụng đa nền tảng– SmartFox ServerPhạm NgọcThủy –Tamtay JSC
  2. 2. Nội dung trình bày Tại sao lại chọn SmartFox server(SFS)? Cấu trúc, tính năng SFS Cơ sở lập trình SFS: Các phase của SFS SFSExtension SFS Class Ví dụ về các game có thể phát triển dựa trên SFS
  3. 3. Tại sao lại dùng SmartFox? Tiềm năng của các game multiplayer trên mobile. Sử dụng trong quá trình mobile hóa ứng dụng. Phát triển các ứng dụng mobile độc lập.
  4. 4. SFS – Cấu trúc
  5. 5. Tính năng Server core Platform Client
  6. 6. Cấu trúc Zone/Room
  7. 7. Cài đặt Server Client
  8. 8. SFS Phase: Connection 2 bước thực hiện kết nối: Mở kết nối vật lýTCP tới server. Client và server thực hiện kết nối và trao đổi các thông tin cấuhình. Hệ thống Highly Resilient Connection (HRC): CONNECTION_RETRY CONNECTION_RESUME
  9. 9. Connection phase: Code iOS_smartFox = [[SmartFox2XClient alloc] initSmartFoxWithDebugMode:YES delegate:self];[_smartFox loadConfig:@"config.xml" connectOnSuccess:YES];Config.xml:<SmartFoxConfig><ip>127.0.0.1</ip><port>9933</port><blueBoxIpAddress>127.0.0.1</blueBoxIpAddress><blueBoxPort>8080</blueBoxPort><smartConnect>true</smartConnect><httpPort>8080</httpPort><httpPollSpeed>750</httpPollSpeed><zone>BasicExamples</zone></SmartFoxConfig>
  10. 10. Connection phase: Code iOSSmartFox2XClient * client = [[SmartFox2XClient alloc]initSmartFoxWithDebugMode:YES delegate:self];[client connect:@"127.0.0.1" port:9933];
  11. 11. SFS Phase: Login Default_login Custom_login Params: User_name Password Zone_name Extra_params
  12. 12. Login phase: Code iOSCustom login:[client send:[LoginRequest requestWithUserName:[UserName] password:[Pass]zoneName:@”[ZoneName]" params:nil]];Default login:[client send:[LoginRequest requestWithUserName:loginName password:@"" zoneName:nilparams:nil]];Or:[client send:[LoginRequest request]];
  13. 13. SFS Phase: Join, create room Tạo room mới: Tĩnh Động JoinRoomRequest: Id Pass Room_to_leave As_spect
  14. 14. Join, create room: Code iOSC1: [client send:[JoinRoomRequest requestWithId:@”[RoomName]"]];C2: : [client send:[JoinRoomRequest requestWithId:[RoomName]pass:[RoomPassword] roomIdToLeave:[IDLastRoom] asSpect:[Spectator?]]];Create room:[client send:[CreateRoomRequest requestWithRoomSettings:[RoomSettings]]];
  15. 15. ClientAPI Public APIs Custom Requests
  16. 16. PublicAPIs: Code iOS SendRequest:[client send:[PublicMessageRequest requestWithMessage:str]]; Response:-(void)onPrivateMessage:(SFSEvent *)evt{SFSUser *sender = [evt.params objectForKey:@"sender"];NSLog(@"PM: %@, from: %@", [evt.paramsobjectForKey:@"message"], sender.name);}
  17. 17. SFSExtension ZoneLevelExtension RoomLevelExtension ServerAPI APIClasses Services DataClasses
  18. 18. SFSExtension: Code iOSSendRequest:[client send:[ExtensionRequest requestWithExtCmd:@”[CommandName]" params:[Params]]];Response:-(void)onExtensionResponse:(SFSEvent *)evt{NSString *str = [evt.params objectForKey:@"cmd"];SFSObject *obj = [evt.params objectForKey:@"params"];}
  19. 19. Bạn đã sẵn sàng? Ý tưởng sản phẩm. Nhân lực. Server. Client: iOS: Mac OS, iOS SDK, Xcode Android:Android SDK, Eclipse
  20. 20. Ví dụ về game có thể triển khai Turn based games. Audition phiên bản mobile?
  21. 21. Hỏi & ĐápChân thành cảm ơn!Thông tin diễn giả:Phạm NgọcThủy –Trưởng nhóm mobileEmail:Thuy.pham@tamtay.vnCông ty Cổ phầnTamtay – Số 43 LàngYên Phụ -Tây Hồ - HàNội

×