
CustomScreenMenu
A groundbreaking plugin that completely customizes players' screen option menus and features 3D mode
CustomScreenMenu 1.4.1
release15 апреля 2026 г.📌 Changelog – v1.4.1 🔒 Security Updates
- Password Hash Algorithm Upgrade - Upgraded from insecure SHA-256 to BCrypt encryption algorithm.
- New registrations automatically use BCrypt encryption. Existing users' passwords are automatically upgraded to the new format upon first successful login.
- Temporary OP Operation Security Enhancement - Improved security mechanism for [op] command execution to ensure OP status is correctly restored. 🧵 Concurrency Safety Fixes
- Fixed Non-Thread-Safe Collections - Replaced all HashMap/HashSet with thread-safe ConcurrentHashMap, resolving potential concurrency issues in multi-threaded environments. 🧹 Code Quality Improvements
- New Command Execution Utility Class - Unified command execution logic, supporting command prefixes such as [console] , [op] , [player] , [server] .
- Code Cleanup - Removed duplicate import statements and simplified code structure.
- Added support for version 1.21.11 ⚠️ Notes
- BCrypt computation is slower than SHA-256; this is a normal security characteristic and not a performance concern.
CustomScreenMenu 1.4.0
release6 апреля 2026 г.CustomScreenMenu 更新日志 / Changelog
[1.4.0] - 2026-03-01
🆕 新增功能 / New Features
NPC镜像系统 / NPC Mirror System
-
新增NPC镜像模块 - 在3D菜单中创建玩家镜像NPC
- 自动同步玩家装备(头盔、胸甲、护腿、靴子、主手、副手)
- 支持SkinsRestorer皮肤同步
- 可配置NPC位置偏移和朝向
- 支持菜单关联配置,可指定哪些菜单启用NPC
- NPC名称支持自定义格式和PlaceholderAPI变量
- 玩家可单独禁用自己的NPC创建
-
Added NPC Mirror Module - Create player mirror NPCs in 3D menus
- Auto-sync player equipment (helmet, chestplate, leggings, boots, main hand, off hand)
- Support SkinsRestorer skin synchronization
- Configurable NPC position offset and orientation
- Menu association configuration to specify which menus enable NPCs
- NPC name supports custom format and PlaceholderAPI variables
- Players can individually disable their own NPC creation
WASD导航系统 / WASD Navigation System
-
新增WASD导航模块 - 使用键盘导航菜单
- W/S 键上下选择菜单项
- A/D 键左右选择菜单项
- 空格键确认执行命令
- 与原有光标控制系统完全兼容,可同时使用
- 支持菜单关联配置
- 选择时自动放大选中项并播放音效
- 选择冷却机制防止快速连续选择
-
Added WASD Navigation Module - Navigate menus using keyboard
- W/S keys for up/down selection
- A/D keys for left/right selection
- Space key to confirm and execute commands
- Fully compatible with existing cursor control system, can be used simultaneously
- Menu association configuration support
- Auto-enlarge selected item and play sound effect on selection
- Selection cooldown mechanism to prevent rapid consecutive selections
PlaceholderAPI变量 / PlaceholderAPI Variables
-
新增WASD导航PAPI变量
%cmp_wasd_menu%- 当前WASD菜单名称%cmp_wasd_enabled%- 是否启用WASD导航%cmp_wasd_index%- 当前选中索引%cmp_wasd_x%- 当前X坐标%cmp_wasd_y%- 当前Y坐标%cmp_wasd_z%- 当前Z坐标%cmp_wasd_location%- 完整位置信息(格式:菜单名,x,y,z)%cmp_<菜单名>_xyz%- 指定菜单的坐标
-
Added WASD Navigation PAPI Variables
%cmp_wasd_menu%- Current WASD menu name%cmp_wasd_enabled%- Whether WASD navigation is enabled%cmp_wasd_index%- Current selected index%cmp_wasd_x%- Current X coordinate%cmp_wasd_y%- Current Y coordinate%cmp_wasd_z%- Current Z coordinate%cmp_wasd_location%- Full location info (format: menu_name,x,y,z)%cmp_<menu_name>_xyz%- Coordinates for specified menu
⚙️ 配置文件 / Configuration Files
新增配置文件 / New Configuration Files
-
npc_config.yml- NPC镜像系统配置- 启用/禁用NPC功能
- NPC位置偏移配置
- 菜单关联设置(白名单/黑名单模式)
- 名称显示配置(支持PAPI变量)
- 装备和皮肤同步开关
-
wasd_config.yml- WASD导航系统配置- 启用/禁用WASD导航
- 导航阈值配置
- 选择冷却时间
- 音效配置
- 菜单关联设置
-
npc_config.yml- NPC mirror system configuration- Enable/disable NPC feature
- NPC position offset configuration
- Menu association settings (whitelist/blacklist mode)
- Name display configuration (supports PAPI variables)
- Equipment and skin sync toggles
-
wasd_config.yml- WASD navigation system configuration- Enable/disable WASD navigation
- Navigation threshold configuration
- Selection cooldown time
- Sound effect configuration
- Menu association settings
菜单配置扩展 / Menu Configuration Extensions
- 新增
wasd-enabled选项 - 单独控制每个菜单的WASD导航开关 - Added
wasd-enabledoption - Individually control WASD navigation for each menu
🔧 命令 / Commands
NPC命令 / NPC Commands
/cursormenu npc toggle- 切换NPC创建状态/cursormenu npc enable- 启用NPC创建/cursormenu npc disable- 禁用NPC创建/cursormenu npc status- 查看NPC状态/cursormenu npc reload- 重载NPC配置/cursormenu npc rotate <角度>- 旋转NPC
🔌 依赖 / Dependencies
新增软依赖 / New Soft Dependencies
-
FancyNpcs (可选) - NPC镜像功能必需
-
SkinsRestorer (可选) - NPC皮肤同步支持
-
FancyNpcs (optional) - Required for NPC mirror feature
-
SkinsRestorer (optional) - NPC skin synchronization support
📝 权限 / Permissions
新增权限 / New Permissions
cursormenu.npc.toggle- 切换NPC创建状态cursormenu.npc.status- 查看NPC状态cursormenu.npc.reload- 重载NPC配置cursormenu.npc.rotate- 旋转NPC
🔄 兼容性 / Compatibility
-
✅ NPC镜像系统和WASD导航系统均为模块化设计
-
✅ 不修改原有CMP核心功能
-
✅ 所有新功能可独立启用/禁用
-
✅ 与原有光标控制系统完全兼容
-
✅ NPC mirror system and WASD navigation system are modularly designed
-
✅ No modifications to original CMP core functionality
-
✅ All new features can be independently enabled/disabled
-
✅ Fully compatible with existing cursor control system
📦 文件结构 / File Structure
com.cmenu.ui/
├── npc/ # NPC镜像模块
│ ├── NPCModule.java
│ ├── NPCMirrorManager.java
│ ├── NPCMirrorHook.java
│ ├── NPCConfig.java
│ └── NPCCommandHandler.java
└── wasd/ # WASD导航模块
├── WASDModule.java
├── WASDNavigationManager.java
├── WASDNavigationHook.java
├── WASDConfig.java
├── WASDSession.java
└── WASDExpansion.java
升级说明 / Upgrade Notes
从 1.3.x 升级到 1.4.0 / Upgrading from 1.3.x to 1.4.0
-
备份配置文件 - 升级前请备份现有配置
-
删除旧版本jar - 删除
CustomScreenMenu-1.3.x.jar -
放入新版本jar - 将
CustomScreenMenu-1.4.0.jar放入 plugins 目录 -
首次启动 - 会自动生成
npc_config.yml和wasd_config.yml -
安装依赖插件(可选)- 安装 FancyNpcs 和 SkinsRestorer 以启用完整功能
-
Backup configuration files - Please backup existing configurations before upgrading
-
Delete old jar - Delete
CustomScreenMenu-1.3.x.jar -
Place new jar - Put
CustomScreenMenu-1.4.0.jarin plugins directory -
First startup - Will auto-generate
npc_config.ymlandwasd_config.yml -
Install dependency plugins (optional) - Install FancyNpcs and SkinsRestorer for full functionality
CustomScreenMenu 1.3.7
release15 марта 2026 г.🚀 Milestone Update This version is a turning point. The plugin is set to enter the 1.4.0 era in the next release.
New Features
Fully Customizable Login/Registration System
Complete support for player registration, login, password visibility, and account record-keeping.
Local SQL player data storage is now supported.
Improvements
All remaining ProtocolLib-related code has been removed.
Enhanced IP binding and admin IP whitelist functionality.
Improved menu loading speed and responsiveness.
Bug Fixes
Fixed the issue with teleportation not supporting return to a specified coordinate in version 1.21.8.
Fixed password errors during player login and registration in the test version.
CustomScreenMenu 1.3.6
release10 марта 2026 г.Changelog – v1.3.6
New Features
Added link functionality: Add link: "[link]https://xxxxxxx" in the configuration to send a clickable link that redirects to a webpage.
# Text component 1 layout5: permission: cursormenu.button.test.layout4 name: Join Official QQ Group # X-axis of the text component x: 2 # Y-axis of the text component y: -1.0 # Z-axis of the text component z: 3.5 tilt: x: 0.0 # Pitch (up/down tilt) y: 0.0 # Yaw (left/right tilt) z: 0.0 # Roll (forward/backward tilt) command: [] link: "[link]https://XXXXX|&cClick to join our official QQ group"
Fixes
Fixed an issue where, when a player was in a menu and used the /cmenu reload command to reload the configuration, if camera-block-check was enabled, the blocks that were removed would not be restored after exiting the menu.
CustomScreenMenu 1.3.5
release1 марта 2026 г.New Features
Password input variables %cursormenu_input_password% captures the first chat message entered by the player. %cursormenu_password_visibility% returns whether the entered content is currently visible. %cursormenu_input_confirm_password% captures the second confirmation input by the player. Same-level sub-menus: Directly expand sub-pages under the same coordinates without needing to exit and re-enter. Instant main-menu switch: If the world and coordinates match, directly refresh to another main menu without going through the “close-reopen” process. Text hover effects: Default is off. When enabled, highlights/shadows are displayed when the mouse hovers over text. SQL data storage support. Experimental WorldGuard compatibility: Initial support for region detection, with ongoing improvements. Fixes & Optimizations
Fixed several minor bugs. Optimized code structure to enhance overall performance.
