一键导入
dependency-sources
Locate source code for Moss and Simsilica library dependencies. Use this instead of extracting from jars when investigating library internals.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Locate source code for Moss and Simsilica library dependencies. Use this instead of extracting from jars when investigating library internals.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
ArenaModule interface (api/) — arena-composition contract per ADR-0008. ModuleCatalog, ModuleLoader, and ArenaModuleSystem are live. Author new ArenaModule classes under infinity-server/src/main/java/infinity/modules/<category>/ and register them in ModuleCatalog.
Work with Subspace Infinity arena settings — the per-arena `arena.groovy` files under `zone/arenas/`, the Groovy `conf/` preset fragment library (section/shipSection/shipSections DSL), the recursive `include` directive, the `SettingsSystem` typed accessors, and the `~loadArena`/`~swapMap` commands. Use when adding or reading settings, creating a new arena, or splitting settings fragments.
Explains the api ↔ server ↔ client layering of Subspace Infinity — which module new code belongs in, how data flows between layers, which packages live in which Gradle module, and the SimEthereal + RMI boundaries. Use when deciding where a new file should live, tracing data across layers, or explaining the project structure.
Overview of Subspace Infinity project structure, tech stack, and conventions. Use when understanding the codebase, finding files, or learning project patterns.
Create Zay-ES EntityComponent classes for the ECS architecture. Use when creating new components, data holders, or entity attributes.
Debug Entity-Component-System issues including EntitySet problems, memory leaks, and component queries. Use when troubleshooting ECS bugs or entity processing issues.
基于 SOC 职业分类
| name | dependency-sources |
| description | Locate source code for Moss and Simsilica library dependencies. Use this instead of extracting from jars when investigating library internals. |
All live source trees are under ~/github/assofohdz/. Read directly with the Read tool — no jar extraction needed.
~/github/assofohdz/moss/)| Module | Source Root |
|---|---|
| mblock (block/geometry/materials) | moss/mblock/src/main/java/com/simsilica/mblock/ |
| mblock-physb (physics shapes) | moss/mblock-physb/src/main/java/com/simsilica/mblock/phys/ |
| mphys (physics engine) | moss/mphys/src/main/java/com/simsilica/mphys/ |
| sio2-mblock (SiO2 integration) | moss/sio2-mblock/src/main/java/com/simsilica/mblock/ |
| sio2-mphys (SiO2 physics) | moss/sio2-mphys/src/main/java/com/simsilica/mphys/ |
| bpos (body position) | moss/bpos/src/main/java/com/simsilica/bpos/ |
| mworld (world/paging) | moss/mworld/src/main/java/com/simsilica/mworld/ |
geom/GeometryFactory.java — renders CellArray to JME geometry; looks up materials by MaterialType.getId()geom/MaterialType.java — getId() returns toString() e.g. MaterialType{name=tile, geomReqs=[]}geom/DefaultPartBuffer.java — groups GeomParts by MaterialType+PrimitiveTypegeom/GeomPart.java — holds geometry data + MaterialTypegeom/DefaultPartFactory.java — passes GeomPart templates to buffer unchangedconfig/MaterialRegistry.java — loads .mset binary; loadCompiledMaterials() returns mutable HashMapLightUtils.java — DIRECT_SUN = toLight(15,0,0,0); sun=15 → alpha=1.0, RGB=0 → vertex color black~/github/assofohdz/simsilica-deps/)| Library | Source Root |
|---|---|
| Lemur (UI + InputMapper) | simsilica-deps/Lemur/src/main/java/com/simsilica/lemur/ |
| zay-es (ECS) | simsilica-deps/zay-es/src/main/java/com/simsilica/es/ |
| SiO2 (app framework) | simsilica-deps/SiO2/src/main/java/com/simsilica/ |
| SimEthereal (networking) | simsilica-deps/SimEthereal/src/main/java/com/simsilica/ethereal/ |
| SimMath | simsilica-deps/SimMath/src/main/java/com/simsilica/mathd/ |
input/InputMapper.java — activateGroup(), addAnalogListener(), map(FunctionId, Axis)input/AnalogFunctionListener.java — valueActive(FunctionId, double value, double tpf)input/Axis.java — MOUSE_WHEEL, MOUSE_X, MOUSE_Y, JOYSTICK_LEFT_X, etc.input/FunctionId.java — new FunctionId(group, name)If you modify Moss or a Simsilica lib, publish it locally before rebuilding the game:
cd ~/github/assofohdz/moss && ./gradlew publishToMavenLocal
cd ~/github/assofohdz/simsilica-deps && ./gradlew publishToMavenLocal