{ inputs, lib, ... }: with lib; let operators = { masterodie = { uuid = "c0e67091-d6d0-4cf2-89d5-d0c6f2bd4f30"; level = 4; bypassesPlayerLimit = true; }; Rooomi = { uuid = "5c5b4a28-e292-46fa-bf92-3b21f577c30e"; level = 4; bypassesPlayerLimit = true; }; }; whitelist = { } // attrsets.mapAttrs (n: v: v.uuid) operators; jvmArgs = "-XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+AlwaysActAsServerClassMachine -XX:+AlwaysPreTouch -XX:+DisableExplicitGC -XX:+UseNUMA -XX:NmethodSweepActivity=1 -XX:ReservedCodeCacheSize=400M -XX:NonNMethodCodeHeapSize=12M -XX:ProfiledCodeHeapSize=194M -XX:NonProfiledCodeHeapSize=194M -XX:-DontCompileHugeMethods -XX:MaxNodeLimit=240000 -XX:NodeLimitFudgeFactor=8000 -XX:+UseVectorCmov -XX:+PerfDisableSharedMem -XX:+UseFastUnorderedTimeStamps -XX:+UseCriticalJavaThreadPriority -XX:ThreadPriorityPolicy=1 -XX:AllocatePrefetchStyle=3 -XX:+UseG1GC -XX:MaxGCPauseMillis=130 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=28 -XX:G1HeapRegionSize=16M -XX:G1ReservePercent=20 -XX:G1MixedGCCountTarget=3 -XX:InitiatingHeapOccupancyPercent=10 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=0 -XX:SurvivorRatio=32 -XX:MaxTenuringThreshold=1 -XX:G1SATBBufferEnqueueingThresholdPercent=30 -XX:G1ConcMarkStepDurationMillis=5 -XX:G1ConcRSHotCardLimit=16 -XX:G1ConcRefinementServiceIntervalMillis=150"; in { imports = [ inputs.minecraft-server-flake.nixosModules.minecraft-servers ]; services.minecraft-servers = { velocitySecret = "01KqxtMy3kEH"; openFirewall = true; domain = "odie.home.arpa"; inherit jvmArgs; servers = { vanilla-plus = { inherit whitelist operators; stopCommand = null; enable = true; autoStart = false; openFirewall = true; serverProperties = { online-mode = false; enforce-secure-profile = true; server-name = "GajaCraft Survival"; server-port = 25566; server-ip = "127.0.0.1"; difficulty = "easy"; gamemode = "survival"; max-players = 10; white-list = true; enforce-whitelist = true; pause-when-empty-seconds = 1; force-gamemode = true; view-distance = 12; }; }; flat = { inherit whitelist operators; enable = true; stopCommand = null; autoStart = false; serverProperties = { online-mode = false; enforce-secure-profile = true; server-name = "GajaCraft Creative Flat"; server-port = 25567; server-ip = "127.0.0.1"; difficulty = "hard"; gamemode = "creative"; max-players = 10; white-list = true; enforce-whitelist = true; pause-when-empty-seconds = 1; force-gamemode = true; view-distance = 12; generate-structures = false; level-type = "minecraft:flat"; generator-settings = ''{"biome": "minecraft:desert", "layers": [ { "block": "minecraft:bedrock", "height": 1 }, { "block": "minecraft:sandstone", "height": 62 } ] }''; }; }; velocity.enable = true; }; extraOptions = { flat = { memory = "2G"; port = 25567; mapPort = 8101; voicePort = 24455; blacklist = [ "Discord" "bluemap" "bmm-fabric" ]; whitelist = [ "worldedit" ]; }; vanilla-plus = { memory = "4G"; port = 25566; mapPort = 8100; voicePort = 24454; blacklist = [ "Discord" "bluemap" "bmm-fabric" ]; whitelist = [ "worldedit" ]; }; velocity = { port = 25565; mapPort = 8100; voicePort = 24454; }; }; }; }