Score log
Score Log aims to analyze the play frequency and score of the game with multiple game modes like wizard games.
Category¶
- Scribe/FTP type
| Common server 172.19.1.10 | service_metrics-score_log |
|---|---|
| Test Server 222.112.182.65 | service_metrics_test-score_log |
Log specification¶
Note
The snake-cased field, like server_id, is transformed to camel case, like serverId, when it stores in the final storage (BigQuery), and the log sent in the unspecified form, such as serverid, is not saved in its column.
| Field Name | Description | Type | Required |
|---|---|---|---|
| date | The time storing log Format: yyyy-mm-dd hh e.g., 2012-01-19 16:24:00 | string | Y |
| channel | C2S: HIVE, KAK: Kakao, LIN: LINE, WEI: Weibo | string(3) | Y |
| channel_uid | User identifier on login channel (Generally bigint is in use, but some channels may use string type) Send 0 if the information is unknown such as LINE | string(64) | Y |
| game | Use the brand name of game (e.g., derbydays). The third item of app_id e.g., com.com2us.littlelegends.kakao.freefull.apple.global.ios.universal => littlelegends | string(50) | Y |
| game_uid | User identifier used in game server | bigint | Y |
| app_id | AppID which Hive SDK uses e.g., ’com.com2us.derbyday.kakao.freefull.google.global.android. common’ | string | Y |
| level | User or character level in the game (without level, set as 0) | int | Y |
| country | Input the country code directly if client_ip is not given e.g., KR Reference: Identifier Policy | string(2) | N |
| mode_id | Game mode identifier Range: [1–(2^31−1)] | int | Y |
| mode_name | Game mode name For displaying ims. Use Korean | string(50) | Y |
| mode_name_en | Game mode name For checking logs. Use English | string(50) | Y |
| submode_id | Identifer of sub-game mode (starts from 1). Without sub-mode, set as 0 | int | Y |
| submode_name | The name of sub-game mode. Without sub-mode, set as 0 For displaying ims. Use Korean | string | Y |
| submode_name_en | The name of sub-game mode. Without sub-mode, set as 0 For checking logs. Use English | string | Y |
| account_id | Unique account identifier in server (PK) | bigint | Y |
| account_level | Account level of user. In the game without level, set as 0 | int | Y |
| character_id | Character identifier used in server Set this identifier as 0 if the game has no character | bigint | Y |
| character_type_id | The value of character type used in server Set this value as 0 if the game has no character | int | Y |
| character_level | Character level used in server Set this level as 0 if the game has no character | int | Y |
| score | Game score of user If game records only win and loss, the average score becomes win ratio; 100 means win, and 0 means loss | int | Y |
| client_ip | Client IP. This value extracts the value of country from GeoIP | string(32) | Y |
| server_ip | Server IP | string(32) | Y |
| company | Game publishing company, the target of log: e.g., "C2S": Com2uS, "GVI": Com2uS Holdings | string(3) | Y |
| server_id | Server Code Refer to Table of Server Code to input server code (JSON Input Code) If the field is 0, it means null Games published before adding server_id do not have any field, it is set as 0 Games published before adding server_id are prepared for the upcoming service, so it is added to the metatable as 1 | string | Y |
| deviceid | Device ID on HIVE. The identifier which abstracts advertising identifier (Android: AdvertisingID; iOS: IDFA) | bigint | N (18.04.12) |
| guid | Unique key generated per log Random format such as uuid is recommended | varchar(64) | N |
Log sample¶
{
"date": "2014-03-21 15:56:42",
"channel": "KAK",
"channel_uid": 88063254889771792,
"game": "enjoyyut",
"game_uid": 88063254889771792,
"app_id": "com.com2us.enjoyyut.kakao.freefull.google.global.android.common",
"level": 1,
"mode_id": 1,
"mode_name": "SMALL",
"submode_id": 2,
"submode_name": "SPECIAL",
"grade_id": 2,
"grade_name": "SOLO3",
"score": 1,
"server_ip": "172.27.156.99",
"client_ip": "14.63.172.59",
"company": "C2S",
"server_id": 1,
"guid": "ca4bd34c867f4617a819ae139d8d6670"
}
How to use¶
- Score Log helps examine the frequency of play and the location of the users depending on the Mode > Submode > Grade.
- New mode or event mode is available to analyze the play type of users.
- Make sure to discuss with game project manager, PIC of platform planning team and BI planning team about how to distinguish Mode > Submode > Grade before using the log.