Jump to content
Returning Members: Password Reset Required ×

Conquer Online Enthrallment (Anti-Addiction System)


Recommended Posts

Posted

Hi All,

So I was documenting MsgUserAttrib for 5517 and ended up down a (long!) rabbit-hole looking into a system that exists in the Conquer English binaries but was region gated to china. I found it fascinating such a system existed, and although it has absolutely no practical usage - I'm still sharing my finding here for others in case anyone is interested too.

Foreword: This is based on observing and reverse engineering client patch 5517. The message flow section is inferred and the system is entirely inactive on non-Chinese clients unless patched (see wiki page for how to do so yourself... if you want! )

What is it?

Enthrallment is the client-side implementation of China's Anti-Addiction regulation [1][2], introduced circa 2007. Players in China were required to register their account with a personal ID card. Under-18s faced progressive restrictions the longer they played in a single day.

The system is entirely gated on the client locale (a hardcoded string in GraphicData.dll). On Chinese clients this returns 中文. On all other builds (e.g. English) the system is completely inactive and all related messages are silently skipped. The server tracks online and offline time per day (midnight to midnight) and pushes updates to the client via MsgUserAttrib.

States and Thresholds

From archived official documentation and reverse engineering the binary, the thresholds and game states a player under 18 would reach are: 

  • Healthy (0-3 hours): Normal XP and item drops. A system message reminder is shown every hour.
  • Fatigue (3-5 hours): XP gain and item drops are halved. A popup appears every 30 minutes. The client blocks all item and action operations (equip, use, sell, buy, pick up, trade, attack) with an "Operation Failed" system message.
  • Unhealthy (5+ hours): No XP gain or item drops. A popup appears every 15 minutes. Same operation blocks as Fatigue apply.

Inferred Message Flow

On login, the server sends two MsgUserAttrib packets to sync the player's accumulated online and offline time for the day. Once received, a status icon appears and a system message is shown summarizing their current session time.

The server sends periodic USERATTRIB_ENTHRALLMENT_ONLINE_TIME_SYNC updates. When accumulated online time hits 1hr, 2hr, or 3hr, the summary message is shown again as a reminder.

At 3 hours, the server sends USERATTRIB_ENTHRALLMENT_UPDATE_STATE with Data1 = 50 (Fatigue). The client shows two dialogs: one telling the player their rewards are reduced, and a countdown before teleporting them to Twin City.

Enthrallment.thumb.jpg.b109ad8abb755de4259ad5d725bfdfb7.jpg

At 5 hours, the same packet is sent with Data1 = 0 (Unhealthy). A single dialog informs the player rewards are now zero.

At midnight, USERATTRIB_ENTHRALLMENT_RESET clears both timers and resets state to Healthy.

Full details are on the wiki (tho pending a PR merge, will update post with main wiki links once merged)

 

References & Thanks To

[1] https://en.wikipedia.org/wiki/Anti-Addiction_System_for_Online_Games

[2] Official Documentation (WebArchive, In Chinese) https://web.archive.org/web/20091203031124/http://zf.91.com/guide/fcm/

Massive thank you to @kennylovecode https://cooldown.dev/topic/536-conquer-online-cn-client-patch - with this preservation I was able to readd all the icons related to this to the English build!

------

 

I know if such a system existed back when I used to play Conquer, it'd have certainly killed the addiction for me! 😂

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...