Lewati ke konten utama

Quest, Achievement & Daily Gift

Daily gift

client:claimDailyGift()

FieldType
Signature(self: Client) → string?
Returnsstring?nil kalau sukses
Asyncyes

Ngirim RqWG (WorldGiftRequest). Server bales sama slot calendar, timestamp, sama isi gift-nya. No-op kalau udah diklaim hari ini.

Achievement

client:getAchievements()

FieldType
Signature(self: Client) → {table}
ReturnsTabel 1-indexed berisi row {id, name, description, current, completed_level, claimed_level, max_level, requirements, rewards, final_target, reward}
Asyncyes

client:getAchievement(id)

FieldType
Signature(self: Client, id: number) → table?
ReturnsRow achievement tunggal, atau nil kalau id-nya nggak dikenal
Asyncyes

client:claimAchievement(id, level)

FieldType
Signature(self: Client, id: number, level: number) → string?
Returnsstring?nil kalau sukses
Common errorsErrors.CANCELLED, Errors.DISCONNECTED
Asyncyes
local list = client:getAchievements()
local one = client:getAchievement(id)
client:claimAchievement(id, level)

Quest

client:getQuests()

FieldType
Signature(self: Client) → {table}
ReturnsTabel 1-indexed berisi row {id, title, description, quest_type, current_step, step_progress, amount, reward_gems, reward_xp, reward_extra, slot}. id itu string lengkap (misal "DailyQuest127")
Asyncyes

client:acceptQuest(questId?)

FieldType
Signature(self: Client, questId: number?) → (string, string?)
Returns(id, err) — string id quest yang di-resolve, plus kode Errors.* opsional
Common errorsErrors.CANCELLED, Errors.DISCONNECTED, Errors.OTHER
Asyncyes

Tanpa arg auto-pilih quest yang eligible berdasar metadata pool bundled + level bot. Lewatkan id numerik buat force quest tertentu (misal 127 buat DailyQuest127).

client:claimQuest(questId)

FieldType
Signature(self: Client, questId: string) → string?
Returnsstring?nil kalau sukses
Common errorsErrors.CANCELLED, Errors.DISCONNECTED
Asyncyes

Lewatkan string id lengkap ("DailyQuest127" / "Tutorial10"). Auto-rute CdQ vs CtQ berdasar prefix.

client:discardQuest(slotIndex)

FieldType
Signature(self: Client, slotIndex: number) → string?
Returnsstring?nil kalau sukses
Common errorsErrors.CANCELLED, Errors.DISCONNECTED
Asyncyes

Buang daily quest di slot index (0 atau 1). Quest tutorial nggak bisa dibuang.

local quests = client:getQuests()
client:acceptQuest() -- accept quest yang available berikutnya
client:acceptQuest(questId) -- … atau id tertentu
client:claimQuest(quest_id_str)
client:discardQuest(slot_index)