ݺߣ

ݺߣShare a Scribd company logo
2019 iFunFactory Dev Day
‘아이펀 엔진으로 MO 게임 서버 개발하기’
‘아이펀 엔진으로 MO 게임 서버 개발하기’
2019 iFunFactory Dev Day
2
남승현 프로그래머
MO 게임 콘텐츠 채워 넣기
2019 iFunFactory Dev Day
목차
• 게임 소개
• 프로젝트 생성
• 데이터베이스 처리 구현
• 기획 데이터 읽기
• 로그인 및 계정 생성
• 캐릭터 이동 (시연)
• 월드와 서버 이동 (시연)
• 캐릭터 공격 (시연)
• 인벤토리 & 랭킹
• 채팅 (시연)
3
2019 iFunFactory Dev Day 4
게임 소개
• Town 과 Field 두 개의 월드로 구성
• 각 월드는 독립된 서버로 구성
• 포탈을 이용하여 두 월드(=서버)를 이동
• Field 월드 에서는 발차기 공격이 가능
• 다른 플레이어를 죽이면 경험치를 획득
• 경험치 랭킹
2019 iFunFactory Dev Day 5
프로젝트 생성
• C++
• Ubuntu
• iFun Engine 의 funapi_initiator 명령어로 프로젝트 생성
2019 iFunFactory Dev Day 6
데이터베이스 처리 구현
• iFun Engine ORM 이용
• DB Table, Query(Stored Procedure) 자동으로 생성, 수정, 호출됨
• 자동으로 만들어지는 C++ 인터페이스 클래스를 사용
• 주요 작업
1. “src/object_model/example.json” 에 모델 정의
2. 빌드하여 인터페이스 클래스 생성
2019 iFunFactory Dev Day 7
데이터베이스 처리 구현: 1. 모델 정의
<src/object_model/example.json>
2019 iFunFactory Dev Day 8
데이터베이스 처리 구현: 2. 빌드하여 인터페이스 코드 생성
<빌드 시 자동으로 생성됨>
2019 iFunFactory Dev Day 9
기획 데이터 읽기
• iFun Engine ResourceManager 를 이용
• 기획 데이터를 JSON 으로 표현
• 서버를 DEB, RPM 패키지에 포함되어 자동으로 설치됨
• 파일 경로 자동으로 관리
• 주요 작업
1. 기획 데이터 정의
2. 데이터 읽기

2019 iFunFactory Dev Day 10
기획 데이터 읽기: 1. 기획 데이터 정의
<game_data/content_settings.json>
2019 iFunFactory Dev Day 11
기획 데이터 읽기: 2. 데이터 읽기
• iFun Engine API: ResourceManager
2019 iFunFactory Dev Day 12
기획 데이터 읽기: 2. 데이터 읽기
<src/devday_server.cc 의 Install() 함수>
2019 iFunFactory Dev Day 13
기획 데이터 읽기: 2. 데이터 읽기
<src/common.cc>
2019 iFunFactory Dev Day 14
로그인 및 계정생성
• iFun Engine SessionService 를 이용하여 TCP/JSON 통신
• AccountManager 를 이용하여 로그인 처리
• World 기능을 이용하여 캐릭터 동기화
• 주요 작업
1. 클라이언트 TCP 접속 받기
2. 로그인 메시지 핸들러: 등록
3. 로그인 메시지 핸들러: 로그인, 중복로그인 처리
4. 로그인 메시지 핸들러: 캐릭터(ORM) 불러오기/생성하기
5. 로그인 메시지 핸들러: 캐릭터를 월드에 입장시키기
2019 iFunFactory Dev Day 15
로그인 및 계정생성: 1. 클라이언트 TCP 접속 받기
<src/MANIFEST.town.json>
2019 iFunFactory Dev Day 16
로그인 및 계정생성: 2. 로그인 메시지 핸들러 - 등록
• iFun Engine API: SessionService
2019 iFunFactory Dev Day 17
로그인 및 계정생성: 2. 로그인 메시지 핸들러 - 등록
<src/town_event_handlers.cc>
2019 iFunFactory Dev Day 18
로그인 및 계정생성: 2. 로그인 메시지 핸들러 - 등록
<src/town_event_handlers.cc>
2019 iFunFactory Dev Day 19
로그인 및 계정생성: 3. 로그인 메시지 핸들러 - 로그인
• iFun Engine API: AccountManager
• iFun Engine API: Event
2019 iFunFactory Dev Day 20
로그인 및 계정생성: 3. 로그인 메시지 핸들러 - 로그인
<OnLogin() 메시지 핸들러 함수>
2019 iFunFactory Dev Day 21
로그인 및 계정생성: 4. 로그인 메시지 핸들러 - 캐릭터 불러오기/생성하기(ORM)
<빌드 시 자동으로 생성됨>
2019 iFunFactory Dev Day 22
로그인 및 계정생성: 4. 로그인 메시지 핸들러 - 캐릭터 불러오기/생성하기(ORM)
<OnLogin1() 함수>
2019 iFunFactory Dev Day 23
로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기
<iFun Engine 의 class World::Object>
2019 iFunFactory Dev Day 24
로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기
<src/common.h>
2019 iFunFactory Dev Day 25
로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기
• iFun Engine API: World
2019 iFunFactory Dev Day 26
로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기
<src/MANIFEST.town.json>
2019 iFunFactory Dev Day 27
로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기
<OnLogin1() 함수 계속>
2019 iFunFactory Dev Day 28
로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기
<OnLogin1() 함수 계속>
2019 iFunFactory Dev Day 29
로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기
• iFun Engine API: World
2019 iFunFactory Dev Day 30
로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기
<src/common.cc>
2019 iFunFactory Dev Day 31
로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기
<src/common.cc>
2019 iFunFactory Dev Day 32
캐릭터 이동
• iFun Engine World 기능을 사용하여 캐릭터가 World 내에서 뛰어다니고
• 위치 변화를 주변에 브로드캐스팅
• 주요 작업
1. 메시지 핸들러 등록
2. 월드 내에서 캐릭터 이동
3. 주변 캐릭터(=클라이언트)에 브로드캐스팅
4. 이동 후 새롭게 시야에 들어온 캐릭터 처리
2019 iFunFactory Dev Day 33
캐릭터 이동: 1. 메시지 핸들러 등록
<src/town_event_handlers.cc>
2019 iFunFactory Dev Day 34
캐릭터 이동: 2. 월드 내 캐릭터 이동 3. 주변에 브로드캐스팅 4. 새롭게 시야에 들어온 캐릭터 처리
<src/town_event_handlers.cc>
2019 iFunFactory Dev Day 35
캐릭터 이동: 3. 주변에 브로드캐스팅
<src/common.cc>
2019 iFunFactory Dev Day 36
캐릭터 이동: 4. 새롭게 시야에 들어온 캐릭터 처리
<src/common.cc>
2019 iFunFactory Dev Day 37
캐릭터 이동
<시연>
데이터베이스 처리(ORM)
로그인 및 캐릭터생성
캐릭터이동
2019 iFunFactory Dev Day 38
월드 이동
• iFun Engine World 를 이용하여 포탈 구역 만들고
• 이동하려는 월드를 가지고 있는 다른 월드 서버 찾기
• AccountManager 를 이용하여 클라이언트를 다른 서버로 보내기
• 주요 작업
1. (Town) 포탈 구역 만들기
2. (Town) “field” 월드 서버 찾기
3. (Town) 클라이언트를 “field” 서버로 보내기
4. (Field) “field” 월드에 입장 시키기
2019 iFunFactory Dev Day 39
월드 이동: 1. 포탈 구역 만들기
<src/MANIFEST.town.json>
2019 iFunFactory Dev Day 40
• iFun Engine API: World
월드 이동: 1. 포탈 구역 만들기
2019 iFunFactory Dev Day 41
월드 이동: 1. 포탈 구역 만들기
<src/town_event_handlers.cc>
2019 iFunFactory Dev Day 42
월드 이동
• iFun Engine API: World
2019 iFunFactory Dev Day 43
월드 이동: 1. 포탈 구역 만들기 2. “field” 서버 찾기
<src/town_event_handlers.cc>
2019 iFunFactory Dev Day 44
월드 이동
• iFun Engine API: AccountManager
2019 iFunFactory Dev Day 45
월드 이동: 3. 클라이언트를 “field” 서버로 보내기
<src/town_event_handlers.cc>
2019 iFunFactory Dev Day 46
월드 이동: 4. “field” 월드에 입장 시키기
• iFun Engine API: AccountManager
2019 iFunFactory Dev Day 47
월드 이동: 4. “field” 월드에 입장 시키기
<src/field_event_handlers.cc>
2019 iFunFactory Dev Day 48
월드 이동: 4. “field” 월드에 입장 시키기
<src/field_event_handlers.cc>
2019 iFunFactory Dev Day 49
월드 이동: 4. “field” 월드에 입장 시키기
<OnRedirected() 계속>
49
2019 iFunFactory Dev Day 50
월드 이동
<시연>
2019 iFunFactory Dev Day 51
캐릭터 공격
• 주요 작업
1. 메시지 핸들러 등록
2. 대상 캐릭터의 HP 를 감소 시킴
3. 대상 캐릭터가 죽었을 때 처리

초기 위치에서 부활

경험치 랭킹 점수 갱신
4. 주변 캐릭터(=클라이언트)에 브로드캐스트
2019 iFunFactory Dev Day 52
캐릭터 공격: 1. 메시지 핸들러 등록
<src/field_event_handlers.cc>
2019 iFunFactory Dev Day 53
캐릭터 공격: 2. 대상 캐릭터 HP 감소
<src/field_event_handlers.cc>
2019 iFunFactory Dev Day 54
캐릭터 공격: 2. 대상 캐릭터 HP 감소 3. 대상 캐릭터 죽었을 때 처리
2019 iFunFactory Dev Day 55
<src/field_event_handlers.cc>
캐릭터 공격: 2. 대상 캐릭터 HP 감소
2019 iFunFactory Dev Day 56
• iFun Engine API: Leaderboard
캐릭터 공격: 3. 대상 캐릭터가 죽었을 때 처리
2019 iFunFactory Dev Day 57
<src/MANIFEST.field.json>
캐릭터 공격: 3. 대상 캐릭터가 죽었을 때 처리
2019 iFunFactory Dev Day 58
캐릭터 공격: 3. 대상 캐릭터가 죽었을 때 처리
<src/field_event_handlers.cc>
2019 iFunFactory Dev Day 59
캐릭터 공격
<시연>
2019 iFunFactory Dev Day 60
인벤토리 & 랭킹
• 주요 작업
1. 메시지 핸들러 등록
2. 인벤토리, 랭킹을 조회하여 응답
2019 iFunFactory Dev Day 61
인벤토리 & 랭킹
<src/field_event_handlers.cc>
2019 iFunFactory Dev Day
인벤토리 & 랭킹
<src/object_model/example.json> <src/field_event_handlers.cc>
2019 iFunFactory Dev Day 63
• iFun Engine API: Leaderboard
인벤토리 & 랭킹
2019 iFunFactory Dev Day 64
인벤토리 & 랭킹
<src/field_event_handlers.cc>
2019 iFunFactory Dev Day 65
인벤토리 & 랭킹
<src/field_event_handlers.cc>
2019 iFunFactory Dev Day 66
채팅
• iFun Engine MulticastServer 기능을 사용
• 서버는 코드 작업 없음
• 클라이언트 플러그인으로 구현
<src/MANIFEST.town.json>
2019 iFunFactory Dev Day 67
채팅
<시연>
인벤토리
랭킹
채팅
경기도 성남시 분당구 대왕판교로 660, 유스페이스1 B동 606호
info@ifunfactory.com 070-4923-6566www.ifunfactory.com

More Related Content

2019 아이펀팩토리 Dev Day 세션4 아이펀엔진에 MO 게임 콘텐츠 채워 넣기 - 남승현

  • 1. 2019 iFunFactory Dev Day ‘아이펀 엔진으로 MO 게임 서버 개발하기’
  • 2. ‘아이펀 엔진으로 MO 게임 서버 개발하기’ 2019 iFunFactory Dev Day 2 남승현 프로그래머 MO 게임 콘텐츠 채워 넣기
  • 3. 2019 iFunFactory Dev Day 목차 • 게임 소개 • 프로젝트 생성 • 데이터베이스 처리 구현 • 기획 데이터 읽기 • 로그인 및 계정 생성 • 캐릭터 이동 (시연) • 월드와 서버 이동 (시연) • 캐릭터 공격 (시연) • 인벤토리 & 랭킹 • 채팅 (시연) 3
  • 4. 2019 iFunFactory Dev Day 4 게임 소개 • Town 과 Field 두 개의 월드로 구성 • 각 월드는 독립된 서버로 구성 • 포탈을 이용하여 두 월드(=서버)를 이동 • Field 월드 에서는 발차기 공격이 가능 • 다른 플레이어를 죽이면 경험치를 획득 • 경험치 랭킹
  • 5. 2019 iFunFactory Dev Day 5 프로젝트 생성 • C++ • Ubuntu • iFun Engine 의 funapi_initiator 명령어로 프로젝트 생성
  • 6. 2019 iFunFactory Dev Day 6 데이터베이스 처리 구현 • iFun Engine ORM 이용 • DB Table, Query(Stored Procedure) 자동으로 생성, 수정, 호출됨 • 자동으로 만들어지는 C++ 인터페이스 클래스를 사용 • 주요 작업 1. “src/object_model/example.json” 에 모델 정의 2. 빌드하여 인터페이스 클래스 생성
  • 7. 2019 iFunFactory Dev Day 7 데이터베이스 처리 구현: 1. 모델 정의 <src/object_model/example.json>
  • 8. 2019 iFunFactory Dev Day 8 데이터베이스 처리 구현: 2. 빌드하여 인터페이스 코드 생성 <빌드 시 자동으로 생성됨>
  • 9. 2019 iFunFactory Dev Day 9 기획 데이터 읽기 • iFun Engine ResourceManager 를 이용 • 기획 데이터를 JSON 으로 표현 • 서버를 DEB, RPM 패키지에 포함되어 자동으로 설치됨 • 파일 경로 자동으로 관리 • 주요 작업 1. 기획 데이터 정의 2. 데이터 읽기

  • 10. 2019 iFunFactory Dev Day 10 기획 데이터 읽기: 1. 기획 데이터 정의 <game_data/content_settings.json>
  • 11. 2019 iFunFactory Dev Day 11 기획 데이터 읽기: 2. 데이터 읽기 • iFun Engine API: ResourceManager
  • 12. 2019 iFunFactory Dev Day 12 기획 데이터 읽기: 2. 데이터 읽기 <src/devday_server.cc 의 Install() 함수>
  • 13. 2019 iFunFactory Dev Day 13 기획 데이터 읽기: 2. 데이터 읽기 <src/common.cc>
  • 14. 2019 iFunFactory Dev Day 14 로그인 및 계정생성 • iFun Engine SessionService 를 이용하여 TCP/JSON 통신 • AccountManager 를 이용하여 로그인 처리 • World 기능을 이용하여 캐릭터 동기화 • 주요 작업 1. 클라이언트 TCP 접속 받기 2. 로그인 메시지 핸들러: 등록 3. 로그인 메시지 핸들러: 로그인, 중복로그인 처리 4. 로그인 메시지 핸들러: 캐릭터(ORM) 불러오기/생성하기 5. 로그인 메시지 핸들러: 캐릭터를 월드에 입장시키기
  • 15. 2019 iFunFactory Dev Day 15 로그인 및 계정생성: 1. 클라이언트 TCP 접속 받기 <src/MANIFEST.town.json>
  • 16. 2019 iFunFactory Dev Day 16 로그인 및 계정생성: 2. 로그인 메시지 핸들러 - 등록 • iFun Engine API: SessionService
  • 17. 2019 iFunFactory Dev Day 17 로그인 및 계정생성: 2. 로그인 메시지 핸들러 - 등록 <src/town_event_handlers.cc>
  • 18. 2019 iFunFactory Dev Day 18 로그인 및 계정생성: 2. 로그인 메시지 핸들러 - 등록 <src/town_event_handlers.cc>
  • 19. 2019 iFunFactory Dev Day 19 로그인 및 계정생성: 3. 로그인 메시지 핸들러 - 로그인 • iFun Engine API: AccountManager • iFun Engine API: Event
  • 20. 2019 iFunFactory Dev Day 20 로그인 및 계정생성: 3. 로그인 메시지 핸들러 - 로그인 <OnLogin() 메시지 핸들러 함수>
  • 21. 2019 iFunFactory Dev Day 21 로그인 및 계정생성: 4. 로그인 메시지 핸들러 - 캐릭터 불러오기/생성하기(ORM) <빌드 시 자동으로 생성됨>
  • 22. 2019 iFunFactory Dev Day 22 로그인 및 계정생성: 4. 로그인 메시지 핸들러 - 캐릭터 불러오기/생성하기(ORM) <OnLogin1() 함수>
  • 23. 2019 iFunFactory Dev Day 23 로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기 <iFun Engine 의 class World::Object>
  • 24. 2019 iFunFactory Dev Day 24 로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기 <src/common.h>
  • 25. 2019 iFunFactory Dev Day 25 로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기 • iFun Engine API: World
  • 26. 2019 iFunFactory Dev Day 26 로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기 <src/MANIFEST.town.json>
  • 27. 2019 iFunFactory Dev Day 27 로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기 <OnLogin1() 함수 계속>
  • 28. 2019 iFunFactory Dev Day 28 로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기 <OnLogin1() 함수 계속>
  • 29. 2019 iFunFactory Dev Day 29 로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기 • iFun Engine API: World
  • 30. 2019 iFunFactory Dev Day 30 로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기 <src/common.cc>
  • 31. 2019 iFunFactory Dev Day 31 로그인 및 계정생성: 5. 로그인 메시지 핸들러 - 캐릭터 월드에 입장 시키기 <src/common.cc>
  • 32. 2019 iFunFactory Dev Day 32 캐릭터 이동 • iFun Engine World 기능을 사용하여 캐릭터가 World 내에서 뛰어다니고 • 위치 변화를 주변에 브로드캐스팅 • 주요 작업 1. 메시지 핸들러 등록 2. 월드 내에서 캐릭터 이동 3. 주변 캐릭터(=클라이언트)에 브로드캐스팅 4. 이동 후 새롭게 시야에 들어온 캐릭터 처리
  • 33. 2019 iFunFactory Dev Day 33 캐릭터 이동: 1. 메시지 핸들러 등록 <src/town_event_handlers.cc>
  • 34. 2019 iFunFactory Dev Day 34 캐릭터 이동: 2. 월드 내 캐릭터 이동 3. 주변에 브로드캐스팅 4. 새롭게 시야에 들어온 캐릭터 처리 <src/town_event_handlers.cc>
  • 35. 2019 iFunFactory Dev Day 35 캐릭터 이동: 3. 주변에 브로드캐스팅 <src/common.cc>
  • 36. 2019 iFunFactory Dev Day 36 캐릭터 이동: 4. 새롭게 시야에 들어온 캐릭터 처리 <src/common.cc>
  • 37. 2019 iFunFactory Dev Day 37 캐릭터 이동 <시연> 데이터베이스 처리(ORM) 로그인 및 캐릭터생성 캐릭터이동
  • 38. 2019 iFunFactory Dev Day 38 월드 이동 • iFun Engine World 를 이용하여 포탈 구역 만들고 • 이동하려는 월드를 가지고 있는 다른 월드 서버 찾기 • AccountManager 를 이용하여 클라이언트를 다른 서버로 보내기 • 주요 작업 1. (Town) 포탈 구역 만들기 2. (Town) “field” 월드 서버 찾기 3. (Town) 클라이언트를 “field” 서버로 보내기 4. (Field) “field” 월드에 입장 시키기
  • 39. 2019 iFunFactory Dev Day 39 월드 이동: 1. 포탈 구역 만들기 <src/MANIFEST.town.json>
  • 40. 2019 iFunFactory Dev Day 40 • iFun Engine API: World 월드 이동: 1. 포탈 구역 만들기
  • 41. 2019 iFunFactory Dev Day 41 월드 이동: 1. 포탈 구역 만들기 <src/town_event_handlers.cc>
  • 42. 2019 iFunFactory Dev Day 42 월드 이동 • iFun Engine API: World
  • 43. 2019 iFunFactory Dev Day 43 월드 이동: 1. 포탈 구역 만들기 2. “field” 서버 찾기 <src/town_event_handlers.cc>
  • 44. 2019 iFunFactory Dev Day 44 월드 이동 • iFun Engine API: AccountManager
  • 45. 2019 iFunFactory Dev Day 45 월드 이동: 3. 클라이언트를 “field” 서버로 보내기 <src/town_event_handlers.cc>
  • 46. 2019 iFunFactory Dev Day 46 월드 이동: 4. “field” 월드에 입장 시키기 • iFun Engine API: AccountManager
  • 47. 2019 iFunFactory Dev Day 47 월드 이동: 4. “field” 월드에 입장 시키기 <src/field_event_handlers.cc>
  • 48. 2019 iFunFactory Dev Day 48 월드 이동: 4. “field” 월드에 입장 시키기 <src/field_event_handlers.cc>
  • 49. 2019 iFunFactory Dev Day 49 월드 이동: 4. “field” 월드에 입장 시키기 <OnRedirected() 계속> 49
  • 50. 2019 iFunFactory Dev Day 50 월드 이동 <시연>
  • 51. 2019 iFunFactory Dev Day 51 캐릭터 공격 • 주요 작업 1. 메시지 핸들러 등록 2. 대상 캐릭터의 HP 를 감소 시킴 3. 대상 캐릭터가 죽었을 때 처리
 초기 위치에서 부활
 경험치 랭킹 점수 갱신 4. 주변 캐릭터(=클라이언트)에 브로드캐스트
  • 52. 2019 iFunFactory Dev Day 52 캐릭터 공격: 1. 메시지 핸들러 등록 <src/field_event_handlers.cc>
  • 53. 2019 iFunFactory Dev Day 53 캐릭터 공격: 2. 대상 캐릭터 HP 감소 <src/field_event_handlers.cc>
  • 54. 2019 iFunFactory Dev Day 54 캐릭터 공격: 2. 대상 캐릭터 HP 감소 3. 대상 캐릭터 죽었을 때 처리
  • 55. 2019 iFunFactory Dev Day 55 <src/field_event_handlers.cc> 캐릭터 공격: 2. 대상 캐릭터 HP 감소
  • 56. 2019 iFunFactory Dev Day 56 • iFun Engine API: Leaderboard 캐릭터 공격: 3. 대상 캐릭터가 죽었을 때 처리
  • 57. 2019 iFunFactory Dev Day 57 <src/MANIFEST.field.json> 캐릭터 공격: 3. 대상 캐릭터가 죽었을 때 처리
  • 58. 2019 iFunFactory Dev Day 58 캐릭터 공격: 3. 대상 캐릭터가 죽었을 때 처리 <src/field_event_handlers.cc>
  • 59. 2019 iFunFactory Dev Day 59 캐릭터 공격 <시연>
  • 60. 2019 iFunFactory Dev Day 60 인벤토리 & 랭킹 • 주요 작업 1. 메시지 핸들러 등록 2. 인벤토리, 랭킹을 조회하여 응답
  • 61. 2019 iFunFactory Dev Day 61 인벤토리 & 랭킹 <src/field_event_handlers.cc>
  • 62. 2019 iFunFactory Dev Day 인벤토리 & 랭킹 <src/object_model/example.json> <src/field_event_handlers.cc>
  • 63. 2019 iFunFactory Dev Day 63 • iFun Engine API: Leaderboard 인벤토리 & 랭킹
  • 64. 2019 iFunFactory Dev Day 64 인벤토리 & 랭킹 <src/field_event_handlers.cc>
  • 65. 2019 iFunFactory Dev Day 65 인벤토리 & 랭킹 <src/field_event_handlers.cc>
  • 66. 2019 iFunFactory Dev Day 66 채팅 • iFun Engine MulticastServer 기능을 사용 • 서버는 코드 작업 없음 • 클라이언트 플러그인으로 구현 <src/MANIFEST.town.json>
  • 67. 2019 iFunFactory Dev Day 67 채팅 <시연> 인벤토리 랭킹 채팅
  • 68. 경기도 성남시 분당구 대왕판교로 660, 유스페이스1 B동 606호 info@ifunfactory.com 070-4923-6566www.ifunfactory.com