Game TikTok LIVE là gì?
Game tương tác TikTok LIVE là trải nghiệm do người xem điều khiển, nơi hành động của khán giả tác động trực tiếp tới lối chơi. Khi người xem gửi chat, tặng quà, thả tim hoặc follow idol, các sự kiện đó kích hoạt phản ứng trong game - sinh quái, đổi môi trường hoặc điều khiển nhân vật.
Một số ví dụ phổ biến:
- Đấu trường điều khiển bằng chat - người xem gõ lệnh để vào đội và chiến đấu
- Hiệu ứng kích hoạt bằng quà - tặng Hoa hồng thì sinh một vật phẩm, Vũ trụ thì mở trận đánh boss
- Mưa tim - lượt thích ảnh hưởng tới trọng lực, tốc độ hoặc độ khó
- Thông báo follow - follower mới sinh ra NPC đồng minh
Cách hoạt động
Game của bạn kết nối tới TikTools API qua WebSocket và nhận sự kiện thời gian thực từ phiên TikTok LIVE. Mỗi sự kiện gồm username của người xem, hành động họ thực hiện và dữ liệu liên quan (giá trị quà, tin nhắn chat, v.v.).
// The flow:
// 1. Viewer watches TikTok LIVE stream
// 2. Viewer sends a gift/chat/like
// 3. TikTool API delivers the event via WebSocket
// 4. Your game receives the event and responds
TikTok LIVE → TikTool API → WebSocket → Your Game EngineCách 1: Game web (JavaScript)
Cách đơn giản nhất - kết nối thẳng từ trình duyệt hoặc backend Node.js:
import { TikTokLive } from '@tiktool/live'
const client = new TikTokLive({
uniqueId: 'streamer_username',
apiKey: process.env.TIKTOOL_API_KEY
})
// Gift → Spawn an item based on gift value
client.on('gift', (event) => {
const item = event.diamondCount >= 100
? 'boss_enemy'
: event.diamondCount >= 10
? 'power_up'
: 'small_coin'
spawnItem(item, event.nickname)
console.log(`${event.nickname} spawned a ${item} with ${event.giftName}!`)
})
// Chat → Let viewers vote or issue commands
client.on('chat', (event) => {
const cmd = event.comment.toLowerCase().trim()
if (cmd === '!join') {
addPlayer(event.nickname, event.userId)
} else if (cmd === '!left' || cmd === '!right') {
movePlayer(event.nickname, cmd.replace('!', ''))
}
})
// Like → Increase game speed or difficulty
client.on('like', (event) => {
increaseDifficulty(event.totalLikeCount)
})
// Viewer count → Scale the challenge
client.on('viewer_count', (event) => {
setEnemySpawnRate(event.viewerCount / 100)
})
await client.connect()
console.log('🎮 Game connected to TikTok LIVE!')Cách 2: Unity (C#)
Dùng kết nối WebSocket thuần từ Unity - không cần thêm plugin nào:
using System;
using UnityEngine;
using NativeWebSocket; // Install via Package Manager
public class TikTokLiveGame : MonoBehaviour
{
WebSocket ws;
async void Start()
{
ws = new WebSocket(
"wss://api.tik.tools?uniqueId=streamer_username&apiKey=YOUR_API_KEY"
);
ws.OnMessage += (bytes) =>
{
var json = System.Text.Encoding.UTF8.GetString(bytes);
var msg = JsonUtility.FromJson<TikToolEvent>(json);
switch (msg.@event)
{
case "gift":
SpawnGiftEffect(msg.data.giftName, msg.data.diamondCount);
break;
case "chat":
ProcessChatCommand(msg.data.comment, msg.data.user.nickname);
break;
case "like":
IncreaseDifficulty();
break;
}
};
await ws.Connect();
Debug.Log("Connected to TikTok LIVE!");
}
void Update()
{
#if !UNITY_WEBGL || UNITY_EDITOR
ws?.DispatchMessageQueue();
#endif
}
}Mẹo thiết kế game
- Hiện tên người xem - hiển thị username của người tặng quà hoặc người chat trong game để người xem thấy mình được ghi nhận
- Co giãn theo người xem - dùng sự kiện
viewer_countđể tự điều chỉnh độ khó - Các mức quà - gắn giá trị quà TikTok (1💎 = nhỏ, 10💎 = vừa, 100💎+ = cực đỉnh) với hiệu ứng trong game
- Thời gian hồi - chống spam bằng thời gian hồi theo từng người dùng cho lệnh chat
- Phản hồi trực quan - luôn cho thấy điều gì đã xảy ra khi người xem tương tác để khán giả luôn hào hứng
Câu hỏi thường gặp
Có cần API chính thức của TikTok để làm game LIVE không?
Không. TikTok không có API công khai cho sự kiện livestream LIVE. TikTool cung cấp API bên thứ ba được quản lý, gửi qua WebSocket, chạy với mọi game engine. Bản đánh giá Sandbox miễn phí 7 ngày là đủ để làm prototype cho game.
Tôi dùng được những sự kiện nào trong game?
Tất cả sự kiện: chat, gift, like, follow, share, member (vào phòng), viewer_count. Xem Tài liệu sự kiện để có tài liệu đầy đủ.
Có dùng được với Godot, GameMaker hay engine khác không?
Có. Mọi engine hỗ trợ kết nối WebSocket đều dùng được TikTool API. Kết nối tới wss://api.tik.tools và parse các tin nhắn JSON. Không cần SDK.