mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-10-02 02:43:44 +00:00
Brighter icons: a world light, a fill from the camera, a highlight, exposure and contrast; with the defaults the icons' mean luminance matches the game's own model icons (118 against 120 on a scratch set). Every icon parameter is listed once (UgcIconParams: key, setting, range, default); the settings, the dashboard's settings entries and the icon editor come from that list. Presets per kind (player models, each car or rocket build type from ModularBuildComponent) and overrides per model or module combination are in ugc_icon_settings. Saved models wait ugc_debounce_seconds (sharedconfig) after the owner's last save before they're made (ugc.process_after); a client asking for one, the owner leaving the world or a reset ends the wait. Cars and rockets: one icon per combination of modules (sorted LOTs), shared by every build of it; builds of a combination made already are marked made right away, the client's per-blueprint downloads serve the shared files. The dashboard can delete one item's files, purge by filter or all, preview icons with any values on the UGC server (/admin routes, master password), save presets and overrides, and draw a kind's icons again (icons only). Migrations dlu/mysql/86 and dlu/sqlite/69. Not done yet: the dashboard editor's lighting controls in the page script (routes are there), docs for it, the empty-model state, /ugc?item= links, the shared fetch helper; the storage size and property loading bugs are next. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
91 lines
4.3 KiB
INI
91 lines
4.3 KiB
INI
# UGC server: makes the meshes and icons of what players build and serves them to the game client.
|
|
# The master starts it when enable_ugc_server=1 (masterconfig.ini). See docs/UgcServer.md.
|
|
|
|
# HTTP port the game client downloads from (the client's UGCSERVERPORT)
|
|
port=2008
|
|
|
|
# The IP address to bind to. The game client has to reach it, so the default is every interface.
|
|
listen_ip=0.0.0.0
|
|
|
|
# UDP port for the connection to the master server (the next port is used too). It must not clash with another
|
|
# server's ports: auth uses 1500-1501, chat 2005-2006, the dashboard 2010-2011, worlds 3000 and up.
|
|
net_port=2012
|
|
|
|
# The client's UGCSERVERDIR: the path the downloads are under (the client adds /UGCC<DATACENTERID>/...)
|
|
client_path=/ugc
|
|
|
|
# Where the made files are kept (relative to the server binaries), and at most how much space they may take in MB.
|
|
# When there's more, the files used longest ago are deleted; they're made again when asked for. 0: no limit.
|
|
ugc_output_dir=ugc
|
|
ugc_max_storage_mb=2048
|
|
|
|
# Worker threads making files (0: half the CPU cores)
|
|
worker_threads=0
|
|
|
|
# How much of the machine making files may use (changes apply while running):
|
|
# max_cpu_percent: the workers together average at most this share of all CPU cores (0: no limit); they pause
|
|
# between bits of work to stay under it, long renders included.
|
|
# worker_nice: the workers' scheduling priority on Linux, 0 (normal) to 19 (only when nothing else wants the CPU).
|
|
# max_memory_mb: jobs whose estimated memory would go past this together wait for running ones to finish; a job
|
|
# bigger than it alone runs when nothing else does (0: no limit).
|
|
# max_model_bricks: models with more bricks fail with that reason instead of being made (0: no limit).
|
|
# pause_hours: local hours in which no new jobs start, e.g. 18-23 or 22-6 (empty: never).
|
|
max_cpu_percent=0
|
|
worker_nice=0
|
|
max_memory_mb=0
|
|
max_model_bricks=0
|
|
pause_hours=
|
|
|
|
# How often to look for models to make (milliseconds), how many to take at once, and how often a model may fail
|
|
# before it's given up on (the dashboard can try again)
|
|
poll_interval_ms=2000
|
|
poll_batch=32
|
|
max_attempts=3
|
|
|
|
# Models are made like LU Toolbox's Process Model and Bake Lighting make them; these default to its settings.
|
|
# color_palette: lu_toolbox (its LU palette, unknown colors black) or brickdb (the client's Materials.xml).
|
|
# color_variation: each brick's brightness is shifted by up to this percent (the same every time; 0: none).
|
|
# transparent_opacity: transparent bricks' opacity in percent.
|
|
color_palette=lu_toolbox
|
|
color_variation=5
|
|
transparent_opacity=58.82
|
|
|
|
# Levels of detail made, from the client's brickprimitives (0 most detailed, 2 least), and the distances they're
|
|
# drawn at (LU Toolbox picks each level's range from these by which levels are made; lod_cull: drawn up to).
|
|
lods=0,2
|
|
lod_distance_0=0
|
|
lod_distance_1=50
|
|
lod_distance_2=100
|
|
lod_distance_3=280
|
|
lod_cull=10000
|
|
|
|
# The shapes' shader number: S<shader>_Opaque_Model (transparent shapes are S01_Alpha_Model), and whether all
|
|
# transparent bricks are one shape (1) or each its own (0, so the client can sort them)
|
|
shader_opaque=01
|
|
combine_transparent=0
|
|
|
|
# Remove faces that can't be seen from anywhere (optimize_resolution: detail of the renders that decide it;
|
|
# hsr_ground_plane: 1 also removes what can only be seen from below the model)
|
|
remove_hidden_faces=1
|
|
hsr_ground_plane=0
|
|
optimize_resolution=1024
|
|
|
|
# Bake ambient occlusion into the vertex colors: rays per vertex, how far they look, strength 0 (none) to 1, and how
|
|
# much glowing colors add
|
|
bake_ao=1
|
|
ao_samples=64
|
|
ao_distance=5
|
|
ao_strength=1
|
|
glow_strength=6
|
|
|
|
# Icons: size in pixels. A player model's icon is drawn from its finished .nif (LOD 0), a car or rocket's from its
|
|
# modules' meshes put together.
|
|
icon_size=128
|
|
|
|
# How icons are framed and lit: icon_yaw, icon_pitch, icon_fov, icon_margin, icon_offset_x, icon_offset_y,
|
|
# icon_sun_yaw, icon_sun_pitch, icon_sun_strength, icon_ambient, icon_fill, icon_specular, icon_shininess,
|
|
# icon_exposure, icon_contrast, icon_shadows, icon_ao_strength. Their defaults (the framing from LU Toolbox's icon
|
|
# renderer, the light matched to the game's own model icons) and ranges are listed once in the server
|
|
# (UgcIconParams) and on the dashboard's settings page; set one here only to change it. The dashboard's icon editor
|
|
# also keeps presets for player models and each car or rocket type, and overrides for single items, in the database.
|