Walkable ship interiors in gamespace - the project's own interior kit (Tools/Kit/*: kit_build.py batches, kit_geo, kit_rules.json, kit_parts.json, import_kit.py, showroom on key U), kit rooms inside a ship (interior.kit_modules in <Ship>_hs.json, hs_interior.py, Tools/Assets/kit_rooms.py, kit_layout.py, hull_fit), the walkable ship (WalkSeat/WalkRamp sockets, SetInteriorWalk, F to stand up/sit/leave), interior lights (SHADOWED_SOCKETS, InteriorOnly, MegaLights), materials, grime cards, decals and labels, cockpit glass/hologram/control modules, space.Kit*/space.Walk/space.Where console commands, measure_look targets and interior traps. Reference files: kit-design.md (kit design language, grid, sections, budgets) and steadfast-legacy.md (the old Steadfast interior pipeline). Load when adding or changing interior rooms, kit parts, props, decals, lights or materials, walking inside a ship, or fixing holes, flicker, grey checkerboard or wrong colours inside a ship.
Resources
2Install
npx skillscat add michaelkocandrle/gamespace/ship-interior Install via the SkillsCat registry.
Interiér lodi
Aktuální stav interiérů (co je hotové, otevřené body, další krok): Docs/CURRENT.md. Vizuální předání: skillvisual-review. Historie dávek kitu a kol kritika: Docs/Archive/skills/ship-interior_2026-09-30.md.
Referenční soubory tohoto skillu (čti podle úlohy):
kit-design.md– designový jazyk kitu, mřížka, průřezy S/N/W/T/L, pivoty, sockety, jména, texely, rozpočty,
kolize, seznam dílů. Čísla platí jen vArtSource/Kit/kit_rules.json.steadfast-legacy.md– starý zkušební interiér Steadfastu (build_steadfast_interior.py,import_interior.py,M_KitTrim, tagy,test_interior.py), klávesa I.
Pravidla autora (závazná)
- Nic nového do 3D bez schváleného 2D návrhu. Pro každou loď technický list ve tvaru RSI Ship Matrix
(ArtSource/Ships/<Loď>/<Loď>_spec.json), popsaný řez a půdorysy palub, kde má každá místnost a každý předmět
účel (Design/<Loď>_layout.json). Výkresypython Tools/Design/draw_ship_design.py <layout.json>. - Styl SC: teplá/neutrální tmavá architektura, světelné lišty, tmavý základ, studené hologramové UI. Styl,
ne kopie jednoho obrázku. Paleta podle výrobce je vkit_rules.json(palettes), popis vkit-design.md§4. - Žádná výplň: bedny, sudy, rekvizity „pro detail“ působí levně. Klávesnice u dveří = no-go (i jako
displejový modul). Procedurální pult z kvádrů = „levná low-poly hra“, no-go. - Sedadla a funkční díly procedurálně; AI geometrie v lodi ne (Meshy sedadlo vyřazeno 25. 9. 2026).
- Žádná jména ze Star Citizenu (lodě, firmy, stanice); naše: Halcyon Freightworks, Kestrel Dynamics, Veyra.
- Assety zdarma (licence!) nebo po dílech, nikdy celá sestava jedním promptem, žádné placené balíky (skill
asset-sources). - Posuzuje se z první osoby (oko ~1,65 m), snímky 1920×1080 (cíl výkonu 1440p / 60 fps, CLAUDE.md). Stylový záměr kroku patří do briefu kritika.
- Optimalizace až na konci, když je vzhled hotový (autor 29. 9. 2026).
Kit: stavba dílů
python Tools/Kit/kit_trim_sheet.py # trim sheet 4096x2048 @ 1024 px/m -> ArtSource/Kit/Textures (+ trim_index.json)
python Tools/Kit/kit_screens.py # atlas obrazovek displejů (T_Kit_Screens.png)
MSYS_NO_PATHCONV=1 "/c/Program Files/Blender Foundation/Blender 5.2/blender.exe" -b --factory-startup \
--python Tools/Kit/kit_build.py -- <walls|batch2|batch3|batch4|...> [--only <díly>] [--sections W,N] [--no-render]
python Tools/Kit/kit_catalog.py <dávka> # katalogový list Docs/Kit/catalog_batch<N>.png.\Tools\run_editor_python.ps1 Tools\Assets\import_kit.py # /Game/Kit + ukázka v TestSpace
.\Tools\Shots.ps1 -Preset kit_showroom2 -Editor -Width 1920 -Height 1080- Soubory:
Tools/Kit/kit_geo.py(třídaPart: geometrie po rolích materiálů, zkosené boxy a desky, lisovaný
panel, trubky, UV podle os, UV1 = ID panelu, barva vrcholůCol, UCX, SOCKET_),kit_walls.py,kit_batch2/3/4/4b.py,kit_liner.py(obložení trupu),kit_build.py(stavba, decaly přeshs_decals.Placer, export FBX, manifest,
rendery).kit_build.jobs()drží úlohy všech dávek;--onlypostaví vybrané díly. - Výstupy:
ArtSource/Kit/Kit_*.blend,ArtSource/Kit/Export/SM_Kit_*.fbx,kit_manifest.json(rozměry,
trojúhelníky proti rozpočtu, materiály, sockety v UE cm s parametry světel, kolize,colour_masks,service_labels), renderySaved/KitCatalog/. - Nový díl: rodina v
kit_parts.json(chybějící díl z pilotu jakopilot_needs), rozměry zkit_rules.json,
rozpočet trojúhelníků, socketySOCKET_Snap_*,SOCKET_Light_n(typ, role, cd, dosah),SOCKET_Decal_n. - Decaly dílů:
label(p, item, bod, normála, xdir, ydir);xdir × ydirmusí být normála plochy, jinakKITBUILD
hlásí „mirrored frame“ (WORKFLOW 9.6 ct). Servisní štítek jen u hardwaru, který pojmenovává, nikdy stejný na
sousedních modulech (import_kit.check_layout_labelsshodí import, hlídátest_kit_showroom.py). Štítek leží celý
na okraji prolisu nebo celý v prohlubni (9.6 cm). - Oděr a špína z geometrie:
kit_geodává barvě rohů G = 0 plochám z bevelu (Part.edge_faces);Colje v doméně
rohů,kit_build.join()převede bodovou barvu decalů na rohy, exportcolors_type="LINEAR";kit_buildspadne,
když masky nepřežijí (9.6 cq, cr). - Karty špíny: díl deklaruje
Part.grime(kind, at, normal, up, size, alpha, wear=False),kit_build.decals
kartu položí paprskem (hs_decals.Placer.card_at);upmíří ke zdroji špíny. Záměr „udržovaná pracovní loď“:
špína jen ve spárách, u soklu, kolem poklopů a madel, vyšlapaná linie, stékání pod mřížkami. Na tmavém grafitu
je špína světlejší matný prach (tmavá není vidět, 9.6 dl), karty mělké 0,18 / 0,1 m (hlubší dělají opar, dm). - Materiály kitu: role
Kit_Primary/Structure/Accent/Signal/RubbernaM_Ship_Layeredse statickým přepínačemSurfaceDetail(lodě ho mají vypnutý); trim na vlastním masteruM_Kit_Trim(neM_Ship_PBR, 9.6 dd), kovové
pruhy trimu s drsností ≥ 0,5 (de). Společné hodnotyimport_kit.SURFACE, role vlayered(..., **detail).
Lak je dielektrikum (PaintMetallic0,1); kov konstrukce bez odrazů Lumenu nad ~0,5 splývá s panely. - UE (
import_kit.py): díly do/Game/Kit/Meshesfunkcemiimport_ship(bez Nanite), staré meshe se před
importem mažou (reimport držel staré sockety),MI_Kit_<Výrobce>_<Role>v/Game/Kit/Materials. - Ukázka kitu v
TestSpace(0, −500, 0) m:import_kit.SHOWROOM(wall_runs,run_parts,placed,prov_spots,prov_boxes), tagKitShowroom, přestavuje se při každém importu; import spadne, když délky modulů
nesedí na běh. Klávesa U /space.Showroom [annex|stairs]prochází ukázka → přístavba → hala → zpět.
Nábytek z kitu (dávka 6, Tools/Kit/kit_furniture.py, 30. 9. 2026)
kit_build.py -- furniture: lůžkoFurniture_Bunk21L_A, skříňLocker10L_A, hygienická buňkaHygiene15L_A,
výdejníkFood16L_A; rozpočettri_budget.Furniture15 000 (lůžko ~11 tis.). RecenzeDocs/Reviews/2026-09-30_cabin_furniture.md.- Pivot „faced“: na podlaze pod středem zadní hrany, čelo +X, šířka +Y. V lodi
run_parts[[x, y], [dx, dy], [díl]]: yaw podle směru, +Y dílu je směr otočený o +90°. - U obložení trupu (průřez L): zadní hrana
WALL_GAP0,1 m od líce, nic nadtop_at(x)(zkosení minus žebra
8 cm, WORKFLOW 9.6 er); kontrola Blenderem headlessTools/Kit/kit_clash.py -- <Loď> Furniture_. - Polštáře jako výšková plocha
pad()(kit_geo.Part.mesh, sdílené vrcholy): zaoblený okraj, vyboulená pole,
švy jako prohlubně, knoflíky (9.6 eu); normála tkaninyTools/Kit/kit_fabric_normal.py→T_Kit_Fabric_N,import_kit.pyji dá naMI_Kit_Halcyon_Cushion. - Dveře a zásuvky v poli zapuštěném za plochým rámem:
front_plate(..., press=DEEP),DEEP = (0.035, 0.012, 0.006)
(trojiceinsetvkit_geo.box, 9.6 et); kování na rám nebo na dno pole. - Popisky nábytku jsou šablonové nápisy (
generate_interior_decals.stencil) v setupu lodi; na lisovaném poli střed
decalu na čelo (9.6 ew). Soft-key popisky tlačítek patří na stránku displeje (kit_screens.py).
Místnosti z kitu v lodi
- Recept
interior.kit_modulesv<Loď>_hs.jsonpopisuje místnosti v metrech layoutu (x dopředu, y na levobok,
z od paluby):rooms,wall_runs(začátek, konec, normála líce, moduly),run_parts(portály, stropy, podlahy,
přepážkyBulkhead_Door*s pivotem v rohu na líci),stand_in_floor,width(šířka kit místnosti, průřezy
L41/L38 obložení trupu),keep(co zůstává lodní:floor,objects,fittings),light_scale,
přepínačenabled. hs_interior.pyv místnosti z kitu postaví jen přepážky, tmavou vrstvu nad stropem a náhrady; objekty layoutu
a decaly interiéru tam přeskočí. Nápisy setupu slegacy_roomplatí jen pro místnosti bez kitu
(kit_layout.active_rooms,decal_active). Starý kit v receptu (interior.kit) se staví vždy, když ho recept
má (9.6 ei).- UE:
Tools/Assets/kit_rooms.py(voláimport_kit.pyiimport_ship.py) vloží díly doBP_Ship_<Loď>pod Hull
jakoInteriorMod_NN_<díl>a světla ze socketů jakoLight_fix_kit_NN. Sdílená matematika rozmístěníTools/Kit/kit_layout.py: ship space = layout +assemble.offset, y v UE zrcadlené, yaw v Blenderu opačně. - Po změně:
kit_build.py -- <dávka>→import_kit.py→ přestavba lodi (hs_build_ship,hs_assemble_ship,gamespace_ship_export.py, 9.6 eq) →import_ship.py/kit_rooms.py→test_ship_geometry.py <Loď>(díry, plovoucí díly,hull_in_rooms,walk_blocked, nápisy) → presetywayfarer_roomsawayfarer_walk. - Řez trupem se skutečnými díly:
Tools/Kit/hull_fit_kit_rooms.py(Blender, pak--draw) →Docs/Kit/hull_fit_<loď>_kit_rooms.png; nákladový prostorTools/Kit/hold_fit.py; plán místnostiTools/Kit/cabin_plan.py,hold_grid_plan.py.
Světla interiéru v lodi
- Každé svítidlo, lišta a linka má své světlo s krátkým dosahem; světla u svítidel
hs_fixture_lights.py
(receptinterior.fixture_lights,fix_N), světla kitu ze socketů dílů. - Stín jen hlavní světla (
SHADOWED_SOCKETS: lineární ve žlabech, bodovky stropních panelů); ostatní kontaktní
stíny, prosvětlení stěn ×0,5 (SOCKET_SCALE). Díly kitu ve světelném kanálu 1, světla v 0 a 1. - Bodovky, svatozáře stropu (
Light_Halo), wash stěn, výklenky a stavová světla jen v režimu interiéru
(INTERIOR_ONLY_SOCKETS, tagInteriorOnly,ASpaceshipPawn::InteriorOnlyLights); v letu nesvítí (9.6 dz). - Režim osvětlení interiéru (
ASpacePlayerController::ApplyInteriorLighting,SetInteriorLighting, pro snímky
s volnou kamerouspace.InteriorLighting 1|0): MegaLights (2 vzorky na pixel), vypnuté odrazy Lumenu, interiérové
meshe mimo stíny slunce (9.6 dr, ds). MegaLights se předehřívají na startu levelu (-NoMegaLightsPrewarmvypne). - Široká místnost (průřezy L41/L38): bodovka 50°, 260 cd se stínem, svatozář 6 cd neutrální, bodovky na stěny
60 cd / 70° skloněné 22°, žlábek 0,5 cd/m, wash dolů po stěně 5 cd/m; kajuta tlumenálight_scale0,6 (9.6 em). - Vnitřní světla nesou
specular(výchozí 0,25; plný dělal bílé body na skle). Světlo displeje na okolí patří
před sklo ve výšce jeho středu (9.6 bz). Každé nové světlo s měřením výkonu.
Průchozí loď
- Sockety trupu z receptu
assemble.sockets:WalkSeat(za křeslem na podlaze kokpitu,rotate_z_deg180) aWalkRamp(v nákladovém prostoru u rampy). Loď s oběma je průchozí (HasWalkInterior). - F v lodi:
LeaveSeat(přistálá nebo pod 1 m/s), jinakExitShip. Pěšky v lodi: u křesla (170 cm od socketuCockpit) sednout, u rampy (220 cm) ven jen po přistání. Zvenku F u průchozí lodi = dovnitř po rampě. SetInteriorWalk(true): trupECC_PawnIgnore, meshe Interior / InteriorKit / InteriorMod_* QueryOnly a blokují
Pawn + Visibility, s lodí jedeASpaceGravityVolume. Kolize místností zatím po polygonech (CTF_USE_COMPLEX_AS_SIMPLE
z importu); pravidlo kitu „UCX boxy, nikdy complex-as-simple“ se zavede s optimalizací na konci.- Kapsle v lodi 56 cm × 1,80 m (
SetShipCapsule), mimo loď 84 cm × 1,92 m. Oko 1,65 m nad podlahou. - Kontrola
walk_blockedvtest_ship_geometry.py: kapsle každými dveřmi layoutu a přes schody; zavřené dveře
vchecks.walk_exempt; blokovaný střed dveří je chyba, okraje varováníwalk_tight. Pak presetwayfarer_walk
a log (space.Where,WALK end,sits down). Nástrahy 9.6 eb (ploška v průchodu), ec (hlava na schodech),
ed (přistání ve scénáři), el (trup těsně za lícem).
Hráč v interiéru
- První osoba výchozí a v lodích jediná (
APlayerCharacter::SetFirstPerson):FirstPersonCamera165 cm nad
chodidly, 14 cm před obličejem, FOV 90°, ±80°, hlava skrytá. V pěšky přepíná první/třetí osobu (3P jen na
testy; v lodi je V coupled/decoupled). - Gravitace:
APlayerCharacter::UpdateGravityse ptáASpaceGravityVolumedřív než planety.
Konzolové příkazy (zabalená hra i scénáře snímků, nic se neukládá)
| Příkaz | Co |
|---|---|
space.Interior |
do interiéru Steadfastu a zpět (= I) |
space.Showroom [annex|stairs] |
ukázka kitu (= U) |
space.Walk <vpřed> <vpravo> <s> [yaw] |
chůze jako držené klávesy; log WALK end at … |
space.Interact |
co teď dělá F (vstát, sednout, ven po rampě, dovnitř) |
space.Where |
chodec v lodi: poloha v souřadnicích lodi (cm), podlaha, čeho se kapsle dotýká |
space.FlatSpot [°] [km] |
loď nad nejbližší rovné místo (přistání pro scénáře chůze) |
space.Door 1|0|-1 |
dveře otevřít / zavřít / automaticky |
space.InteriorLighting 1|0 |
režim osvětlení interiéru pro volnou kameru |
space.Kit <Param> <hodnota> [část jména MI] |
skalár materiálů interiéru a kitu (Lift, WearAmount, GrimeAmount, DecalOpacity…) |
space.KitColor <Param> R G B [jméno] |
barva materiálů (Gunmetal, PrimaryColor…) |
space.KitLight Work|Accent|All|Showroom <Vlastnost> <hodn.> |
světla (Intensity, IntensityScale, Temperature, CastShadows…) |
space.KitReset |
materiály, světla, slunce a sky light zpět – první příkaz každé varianty |
space.LightList |
výpis světel |
Kód: Source/gamespace/SpaceInterior.*, SpaceInteriorTuning.cpp, SpacePlayerController.*, SpaceshipPawn.*
(průchozí loď). Ladit nejdřív za běhu ve scénáři, hodnotu pak zapsat do skriptu nebo receptu (+ test).
Snímky a měření
.\Tools\Shots.ps1 -Preset <x> -Editor během kroku, -Package na konci. Volná kamera: "camera": "free",camera_location / camera_look_at v metrech; v prostoru lodi camera_local / look_local (m, X dopředu,
Y doprava, Z nahoru). console příkazy platí do konce běhu → varianty začínej space.KitReset.
| Preset | Účel |
|---|---|
wayfarer_rooms |
všechny místnosti Wayfareru z výšky očí |
wayfarer_walk |
průchozí Wayfarer: přistání, vstát, schody, kajuta, chodba, náklad, ven, dovnitř, zpět do křesla |
wayfarer_kit_corridor, wayfarer_perf |
chodba z kitu před/po; výkon 3× interiér, 3× let (perf_log.py) |
kit_showroom2, kit_annex, kit_bays, kit_material |
ukázka kitu, přístavba, výklenky, materiál |
sc_look |
1080p, auto expozice; python Tools/Shots/measure_look.py <složka> |
flicker_check |
8× stejná kamera; python Tools/Shots/measure_flicker.py <složka> <mapa.png> |
Cílové rozsahy SC (interiér, auto expozice): průměr 0,13–0,23, p50 0,08–0,18, p90 0,32–0,53, p99 0,56–0,88,
B/R 0,72–1,05 (teplé), detail 0,024–0,035. Blikání < 0,1 % pixelů. Výkon měř v zabalené hře ve 1080p (skillunreal-shots-and-look).
Kontrola geometrie lodi
Před každým předáním python Tools/Tests/test_ship_geometry.py [Loď] (Blender headless, ~15 s, GEOTEST SUMMARY … PASS;
běží i sám na konci hs_assemble_ship.py). Tools/Blender/check_ship_geometry.py: zrcadlené decaly, plovoucí díly,
průniky za obložení a ven z trupu, hull_in_rooms, placeholder materiály, díry z oka a z kamer presetu<loď>_interior.json, walk_blocked. Díly kitu dosadí sám (add_kit_rooms). Výstup Saved/GeoCheck/
(GEOCHECK_DEBUG=1 = barevný render po objektech). Výjimky checks.floating_exempt, checks.walk_exempt.
Díry zavírá tmavý plášť Int_HullSkin a obložení (9.6 bm–bo).
Kokpit a sklo (hs pipeline)
- Sedadlo je procedurální
hs_cockpit.pilot_seat(skořepina, polstrované panely se švy, rádius hran 2,8 cm). - Ovládací moduly:
hs_cockpit.control_module(g, c, right, up, n, w, h, rows, tree=); ovladačeguarded,guarded_red,rotary,rocker,button,encoder,led_w,led_o,led_blink. Každý ovladač včetně LED
má štítekck_*(knihovna decalů,hs_cockpit.LABELS, kladehs_interior_decals); neumístěné štítky vypíše
stavba jakoINTDECALS {"labels_failed": …}→ rozšiř modul. - Decaly interiéru jako mesh decaly:
interior.decals→hs_interior_decals.py(itemspaprskem,scatter
mřížkou paprsků:axis: "x"= mřížka y×z,axis: "z"= mřížka x×y,grab_bars), partInteriorDecals. - Odraz skla podle kamery:
MPC_ShipView.InsideView(1 = kamera v obálce partůInterior*), nastavujeASpaceshipPawn::UpdateViewCollection;M_Ship_Glassmíchá hodnoty zvenku a…Inside, uvnitř se vypínár.Lumen.TranslucencyReflections.FrontLayer.Enable. Loď s interiérem mápawn.hide_canopy_in_cockpit: false
(9.6 ca–cb). - Hologram lodi = vnější obálka
hs_cockpit._envelope(bm, voxels=160, smooth=30), kanopa patří do obálky;M_Ship_Holojednostranný (9.6 cc). - Výtka „text na displeji useknutý z oka“: nejdřív odsazení stránky v C++, pak ray cast z
SOCKET_Cockpitna body
skla a výpis zasaženého objektu (9.6 bw).
Nástrahy (příznak → příčina → oprava)
- Černé přesně vodorovné plochy s
M_Ship_PBR, triplanár jinde špatně promítnutý →(float3x3)přetypování
strukturyFDFMatrix/FDFInverseMatrix; používejDFToFloat3x3(...). Normálová mapa v Custom node je BC5 bez
modrého kanálu, z dopočítat. Hlídátest_material_hlsl.py. (9.6 dg, dh) - Šedá šachovnice v zabalené hře (v editoru OK) → materiál se nezkompiloval: chybí usage flag
(used_with_nanite,used_with_static_mesh,used_with_instanced_static_meshes) nebo sampler bez výchozí
textury. Hledej „Failed to compile Material“ v%APPDATA%\Unreal Engine\AutomationTool\Logs\…\Log.txt. (9.3 f) - Zevnitř díra / chybí strop → UE kreslí jednostranně; díl lícem dovnitř, obložení nebo tmavý plášť; kamery
snímků patří dovnitř. (9.3 h, i, q) - Blikání jen v pohybu → dvě plochy v jedné rovině; měř
flicker_check, maž jen skutečné kopie. Díly kitu se
nepotkávají v jedné rovině. (9.3 p) - Nový materiál nečekaně svítí oranžově → jméno obsahuje
light/screen(starý import, 9.3 aa). - Světla svítí modře →
unreal.Color(255, 238, 214)je BGRA; jen keywordr=, g=, b=, a=. (9.5 e) - Světlo za stěnou nic nesvítí; po přesunu dovnitř měř znovu. (9.3 l)
- Pomalý interiér → stíny lokálních světel (22 světel = 15 ms z 18); stín jen hlavní světla, interiér je
pixel-bound. Stínové mapy slunce v interiéru 3,2–3,8 ms. (9.3 r, 9.6 dr) - Statické světlo za běhu nereaguje na
SetIntensity→ příkazy píšou vlastnosti +MarkRenderStateDirty(). (9.3 j) - C++ nenajde herce v buildu → label je jen editor; používej tagy. (9.5 h)
- Kolize zůstala →
set_collision_enabled()se s levelem neuloží;set_collision_profile_name("NoCollision"). (9.3 t) - Sklo/hologram rozbitý → průsvitné/aditivní materiály nesmí na Nanite; vlastní mesh, import vypne
nanite_settings.StaticMeshEditorSubsystemheadless =None. (9.3 u, o) - Pin materiálu se nepřipojil →
PowermáBase/Exp,TextureSamplepinUVs;connect_material_expressionsjen vrátí False → používejlink(), který chybu ohlásí. (9.3 w) - Headless UE Python:
unreal.Rotatorjen keywordy;spawn_actor_from_objectpadá →spawn_actor_from_class(StaticMeshActor)+set_static_mesh;rerun_construction_scriptsnení →UFUNCTION(BlueprintCallable). (9.5) - Blender bmesh:
faces.new()má nulovou normálu dobm.normal_update(), nové vrcholy index −1 dobm.verts.index_update(). (9.3 s) - Nápis zrcadlený po přestavbě → v setupu chybí
flip_u/flip_v; hlídátest_decal_orientation.pyatest_ship_import.py. (9.6 dy) - Text v AI obrázku: pevná mřížka („exact 4 by 4 grid, one element centered in each cell, black background“),
políčka se řežou výpočtem. (9.3 z) - Příkazy scénáře drž idempotentní (přepínač běžel dvakrát). (9.3 m)
- Assety načítané podle cesty musí být v
DirectoriesToAlwaysCook(/Game/Environments,/Game/Kit…). (9.3 b) - Malý díl kitu drahý na trojúhelníky → rámečky difuzorů na obou stranách, bevely se 2 segmenty, zaslepené
průběžné trubky →bezel_face,segments=1,caps=False. Rozpočet stropu =Ceiling_base500 + 3500 na metr
(autor 30. 9. 2026). (9.6 en) - Kit podlaha v místnosti L jen 1 cm pod líc obložení; lodní podlahu vypne
"floor"mimokit_modules.keep,
mezeru u přepážkystand_in_floor; decal na podlazemax_depth_cm1,5. (9.6 ep, eo) - Polštář nebo kování „plave“ → lisované pole je 6 / 12 mm hluboké → polštář 7 mm do panelu, kování na rám.
Karta špíny visí → paprsek trefil tlačítko nebo rám před panelem. (9.6 es, et, ev)