MCBDSHost - Professional Minecraft Bedrock Server Management

Server Properties Feature

Features SERVER_PROPERTIES_FEATURE.md

Server Properties Viewer

Feature Added

A new Server Properties page has been added to the Public UI that displays the Minecraft Bedrock server's server.properties file in a read-only, organized format.

Files Created/Modified

New Files

  1. MCBDS.API\Controllers\ServerPropertiesController.cs

    • API endpoint to read and parse server.properties
    • Categorizes properties for easier viewing
    • Provides descriptions for known properties
  2. MCBDS.PublicUI\Components\Pages\ServerProperties.razor

    • Blazor page to display server properties
    • Accordion-style grouped by category
    • Visual indicators for boolean and numeric values

Modified Files

  1. MCBDS.ClientUI\MCBDS.ClientUI.Shared\Services\BedrockApiService.cs

    • Added GetServerPropertiesAsync() method
    • Added response DTOs
  2. MCBDS.PublicUI\Components\Layout\NavMenu.razor

    • Added navigation link to Server Properties page

UI Features

Accordion Categories

Properties are grouped into logical categories:

  • Server - Server name, ports, visibility
  • Gameplay - Game mode, difficulty, cheats
  • World - Level name, seed
  • Players & Permissions - Authentication, allowlist
  • Performance - View distance, threads, tick distance
  • Network - Compression, packet limiting
  • Anti-Cheat - Server authoritative settings
  • Client - Texture packs, skins, chunk generation
  • Miscellaneous - Chat, logging, other settings

Visual Indicators

  • Boolean values:
    • true (green badge)
    • false (gray badge)
  • Numeric values: Blue badge
  • Empty values: Italic "(empty)" text
  • String values: Plain text

Property Details

Each property shows:

  • Key name (monospace code format)
  • Current value
  • Description (if available)

API Endpoint

GET /api/serverproperties

Returns the server.properties content parsed and categorized.

Response:

{
  "path": "C:\\Binaries\\BDS\\server.properties",
  "lastModified": "2024-01-15T14:30:00",
  "totalProperties": 35,
  "categories": [
    {
      "category": "Server",
      "properties": [
        {
          "key": "server-name",
          "value": "Dedicated Server",
          "description": "The server name shown in the in-game server list",
          "category": "Server"
        }
      ]
    }
  ]
}

Path Resolution

The API finds server.properties by:

  1. Using Runner:ExePath configuration to locate the bedrock server directory
  2. Looking for server.properties in that directory

Page Layout


 Server Properties                                    
 View the current Minecraft Bedrock server config     

 35 properties from C:\...\server.properties          
 Last modified: 1/15/2024 2:30 PM    [ Refresh]     

  Read-Only View - Edit file directly to change     

   Server                              [4]        
  
  Property         Value               Desc      
  server-name      Dedicated Server    Name...   
  server-port      19132               IPv4...   
  max-players      10                  Max...    
  
   Gameplay                            [4]        
  
  gamemode         survival            ...       
  difficulty       easy                ...       
  allow-cheats      false             ...       
  
   World                               [2]        
   Players & Permissions               [3]        
 ...                                                  

Read-Only Design

This page is intentionally read-only because:

  1. Modifying server.properties requires a server restart
  2. Some settings only apply at world creation
  3. Incorrect values could break the server
  4. Direct file editing is safer for configuration

To modify settings:

  1. Stop the Bedrock server
  2. Edit server.properties directly
  3. Restart the server

Or use the Commands page for runtime changes:

  • changesetting difficulty hard
  • changesetting allow-cheats true

Testing

  1. Start the API with Aspire
  2. Navigate to Public UI
  3. Click "Server Properties" in nav menu
  4. Verify properties load correctly
  5. Click category headers to expand/collapse
  6. Click "Refresh" to reload

Status

  • Build: Successful
  • API: Created
  • UI: Created
  • Navigation: Added
  • Ready for: Use

The Server Properties viewer is now available in the Public UI!

Support MCBDSHost Development

Help us continue developing and improving MCBDSHost. Your support makes a difference!