PW Patcher Skin Editor
A Windows desktop tool for visually previewing and editing Perfect World patcher skin files (mainuni.xml) without manually touching raw XML.Overview
Perfect World patcher skins are defined in a UTF-16LE XML file that maps UI elements to pixel regions in a "map image". Each element has a MapColor (R,G,B) attribute — the editor scans the map image for pixels matching that color to determine where the element appears on screen.This editor lets you:
- See the patcher skin rendered exactly as the game client would
- Click elements in the preview to select them and edit their properties
- Drag elements to reposition them and regenerate the map image automatically
- Add, delete, and configure SkinWindow and element nodes
Usage
- Open — File → Open mainuni.xml… (Ctrl+O). If the default path D:\PW Data\00.PW_ALAMANDA\CLIENT\patcher\skin\mainuni.xml exists, it loads automatically on startup.
- Navigate — use the Skin Structure tree on the left, or the per-window Preview tabs in the center.
- Select an element — click it in the preview, or click its node in the tree. Its attributes appear in the Properties panel on the right.
- Edit properties — click any value cell in the Properties grid and type. Image path cells show a … browse button. Changes are reflected in the preview immediately.
- Move an element — drag it in the preview panel. Moved elements are highlighted in orange; the status bar counts pending moves.
- Add components — use the Komponen panel at the bottom of the tree: + SkinWindow to add a new window, or click an element type button (Button, ProgressBar, …) to add it to the active window.
- Delete an element — select it, then click ✕ Hapus Elemen.
- Save — File → Save (Ctrl+S). The original file is backed up to .bak. If any elements were repositioned, the corresponding map image is regenerated and also backed up.
- Reset moves — View → Reset All Moves (Ctrl+Z) reverts all drag-repositioned elements to their original map positions.
Requirements
- Windows 10/11
- .NET 8 Runtime (Desktop, x64)