Paohuzi Card Game Demo System Build Log: Server Deployment and Admin Panel Testing

Disclaimer: This article is for technical education and demonstration only. It is not professional or financial advice. Any real-world deployment must comply with applicable laws and regulations.

Recently I helped a client deploy a Guixiangyuan regional card-game demo system. It focuses on traditional Chinese tile/card games popular in Hunan and Guangxi—Paohuzi, Chehuzi, Liuhuqiang, Hongguaiwan, and similar local variants. The client runs a local cultural entertainment project and wanted to bring hometown gameplay online as a demonstration site. The whole setup took about two days, with plenty of pitfalls along the way. This post documents the process and my real-world tests, hoping to save time for anyone building the same stack.

Game Coverage and Rule Engine Testing

The coverage was a major reason I chose it. The server ships with more than a dozen regional rule sets: Changde Paohuzi, Xiangxiang Gaohuzi, Hengyang Liuhuqiang, Yongzhou Chehuzi, Guilin Zipai, Yueyang Waihuzi, Youxian Penghuzi, Huaihong Hongguaiwan—basically covering the major tile/card schools of Hunan and Guangxi.

The Judgment Engine Is Pretty Detailed

Take sequences as an example. Only consecutive tiles like 1-2-3 or 6-7-8 count as a valid “sentence,” and small tiles must pair with small tiles while large tiles pair with large tiles; when eating a discard, all tiles are revealed. The special 2-7-10 hand has its own independent check, and the same size-tile consistency applies. Three identical tiles fall into three cases: a “kan” when dealt, a “peng” when completing from another player’s discard, and a “wai” when starting with a pair and self-drawing the third—peng reveals all, wai reveals one and hides two. Four-of-a-kind discards also have dedicated logic. I tested dozens of rounds and never saw a misjudgment.

Room Tickets and Match Flow

The system uses a room-ticket model: players spend room tickets to create private rooms, and friends join by room number. This is purely a virtual demo prop for entertainment. Matches support auto-play and reconnect; when a player drops, rejoining restores the hand state, which passed my tests.

Deployment Notes and Pitfalls

My environment was CentOS 7.9 with aaPanel, Java for the game server, PHP + MySQL 5.7 for the admin backend, Redis for caching, and a Cocos-based client build.

Three Things to Watch

Ports caught me first. Besides the usual 80/443, the game server uses several custom communication ports. You must open them in both the aaPanel security group and the cloud provider’s security group. I forgot the cloud side the first time, and the client couldn’t reach the lobby for almost an hour.

Audio assets are the second issue. The package leans heavily on regional voice acting, and the voice pack is large. I recommend hosting static assets on a CDN or object storage; otherwise first-load performance drags. The vendor’s claim of about 1 MB per day refers to incremental match traffic, not the initial resource bundle.

The last point is room-ticket initialization. After installing the backend, go to the prop management section and give test accounts a batch of tickets, or you cannot even create a room for testing.

Highlight: the backend has a built-in data dashboard. Registrations, peak online count, match counts, and room-ticket consumption are all charted. You can also bulk-issue tickets to specific players, which makes event testing much easier.

Backend Management and Customization Space

The admin panel is more comprehensive than I expected. User management lets you inspect each account’s match history and ticket consumption; announcements support client login pop-ups; game rule switches are configured independently by region, so you can enable only Guilin Zipai and Chehuzi while disabling the rest. UI text lives in language-pack files and is easy to edit, but voiceovers are fixed dialect recordings, so replacing language means re-recording audio—keep that customization cost in mind.

On the code side, each tile/card rule has its own independent judgment module. If you want to tweak scoring or add a new variant, you only touch the corresponding module. The client uses Chinese-style art assets with images and sound effects separated, so reskinning does not require touching core code.

Who Should Build This

Honestly, three groups: people running local cultural projects who want an online demo and archive of hometown card games; developers studying how card-game judgment engines are written; and operators with an existing social circle who want to run entertainment sessions. Server requirements are modest—a 2-core 4 GB VM is enough to start, and you can scale once concurrent users grow.

FAQ

Q: What server specs do I need, and how many players can it handle?
A: Start with 2 cores, 4 GB RAM, and 5 Mbps bandwidth. Tile/card match payloads are tiny; my tests showed a single machine can handle around a hundred concurrent users without issue. Beyond that, split the lobby server and match server.

Q: What happens when room tickets run out? Can I control distribution?
A: The backend prop management supports single and bulk issuance. Distribution rules are configured in the admin panel. These are purely entertainment virtual props used in the demo; make sure your user agreement clearly states their purpose and operate in compliance with applicable laws.

Q: How hard is it to change to local rule variants?
A: Moderate. Adjusting scoring only requires editing the corresponding module and adding configuration items. Adding a brand-new variant means writing your own hand-judgment and auto-play logic, so some Java experience helps.

Q: Is the default client UI mandatory?
A: No. Assets and logic are separated. Tile faces, backgrounds, and buttons can all be replaced, and language-pack files handle text. The only catch is that dialect voice packs must be re-recorded.

This article is for technical education only and describes a neutral demo system. Please comply with local laws and platform policies when deploying any software.

Disclaimer: This article is for technical education and demonstration only. It is not professional or financial advice. Any real-world deployment must comply with applicable laws and regulations.

#Paohuzi #server deployment #card game system #admin panel #source code setup