Zh/Compile Errors

__TOC__
== 通用术语 ==
* 节点 -- 编译器正在计算的固体、边、区域、位置等。
* XXX -- 替换为固体编号或其他唯一标识符。
== 一般错误 ==
;The system cannot find the file specified
:如果没有要复制的BSP文件，或者目标不存在，则编译结束时的文件复制操作会输出此错误。这通常意味着VBSP在写入BSP文件之前就遇到了错误。检查VBSP输出是否有任何错误。
:请确保键入的文件名正确，不包括任何破折号、句点等。如果问题仍然存在，请在保存文件时尝试键入文件扩展名。
:如果你还没有运行为其制作地图的游戏，或者在你试图编译地图时，你试图放置最终BSP文件的目标路径不存在，则会由于 Hammer 缺乏创建文件夹的能力而出现此错误。这种情况发生在各种人身上，最常见的情况是收到错误的人最近在计算机崩溃、计算机损坏、病毒或其他可能导致计算机数据/内存丢失的原因后重新启动了计算机。如果发生这种情况，你所要做的就是运行你正在为其制作地图的游戏，或者简单地浏览到与你试图在文件浏览器中放置最终.BSP的文件目录最近的文件目录，并创建一个与所选输出文件夹名称相同的文件夹。
:有关原因的更多信息，请点击。
;Error opening mapname.bsp
:编译器找不到地图的BSP文件，或者该文件已损坏。可能是由于错误，没有创建BSP。如果没有，请检查路径名。
;SteamStartup() failed: SteamStartup(0xf,0x12eac4) failed with error 1: The registry is in use by another process, timeout expired
:尝试重新编译地图或重新启动 Steam。
;WARNING node with unbounded volume
:当地图的某个部分接触到，或者在 Hammer 地图网格之外时，就会发生这种情况。远离网格的边缘，然后进行编译。
:试图编译包含 func_instance 且内部启用了警戒线的地图也可能返回此错误。
:也可能导致这种情况。
== BSP (vbsp.exe) ==
; **** leaked ****
:你的地图中至少存在有一个。地图的内部没有正确地密封到外部的空隙中。在 Hammer 中加载。从指定实体开始的红线将在某个点穿过泄漏口。在三维视图中跟着它，(用固体)密封泄漏口并重新编译。
:有时，在复制和/或移动后，它们的原点可能会泄漏到边界之外，导致看似不存在的实体泄漏。要解决这个问题，只需选择明显泄漏的实体，右键单击它并选择「Center Origins」。如果你不知道具体是哪个实体导致了泄漏，请尝试将原点集中在同一类的所有实体上（Map → Entity Report → Sort by class）。
;Brush XXX: WARNING, microbrush
:固体太小，无法编译（通常小于1个 Hammer 单位）。通过指定的编号。删除该固体并创建一个更大的固体。
;Brush XXX: FloatPlane: bad normal
:固体在「平面」上有一个不必要的顶点。可能是使用的结果。通过指定的编号。再次使用「顶点工具」(Vertex Tool)通过将不必要的顶点与另一个顶点重合来修复它。创建顶点过多的小型弯曲固体时也可能发生这种情况。
;Can't find surfaceprop for material, using default
:贴图中有一个纹理没有。可能你在世界固体上使用了「模型」的纹理。使用，在使用过的纹理中搜索「模型」，然后由其他纹理替换。如果使用自定义纹理，请确保它们具有 键值。
;Error displacement found on a(n) (entityname) entity - not supported
:你的地图中有一个绑定到的固体实体。置换表层不可能是固体实体。搜索带有置换表层的固体实体，然后移除置换表层或将固体实体移回正常世界固体。
;Error! To use model "filename.mdl" with static_prop, it must be compiled with $staticprop!
:你的地图中有一个 使用了不正确的物理模型。该模型不会出现在游戏中。使用 或 替代。
;Error loading studio model ""!
:你的地图中有一个 模型没有使用模型或者使用了不正确的模型文件名。
;Face List Count >= OVERLAY_BSP_FACE_COUNT
:有一个面上有太多的 s 或一个 Overlay 应用到了太多的面上。
:也有可能是在带有多个 info_overlay 的大固体上将光照贴图比例设置更改为低值（1-8）。
;material "" not found
:面或 Overlay 不使用纹理或纹理文件名不正确。
;Memory leak: mempool blocks left in memory:
:一个不会影响地图的长期错误。忽略。
;Too many t-junctions to fix up!
:目前尚不清楚究竟是什么原因导致了这一问题的出现。已知与泄漏一起出现在近距离地图上。首先，密封泄漏，如果问题仍然存在，请减少你的 和 实体的数量。
;Bad planenum
:编辑器没有正确保存文件-重新保存并编译。这也可能是由多个固体与另一个重叠造成的——通常是由糟糕的雕刻造成的。
;Tried parent
:编译中的节点没有父节点-这是非常罕见的，但很可能是由通过 Hammer 的安全保护的顶点操作错误引起的。想象一个盒子，但整个盒子只是一面。
;XXX with splits
:固体面已经被切割了，这是一个很大的禁忌。尝试和修复它的最佳方法是寻找微小的固体渗透，例如接触1 x 1 x 1固体侧面的尖端。
;vbsp.exe 崩溃的潜在原因（无错误消息）
:置换表层上使用了 Playerclip 纹理。
 
:1个单位高度的位移，不同侧的单位为4。
;Multiple references for cubemap on texture ../path/stonefloor006a_3328_640_-640!!
:你有至少一个的面直接连接到其他多个 cubemap。你需要找到这两个面重叠的 cubemap，并重新分配面给错误的 cubemap。最后一个错误的数字是坐标，你可以使用 View->Go to Coordinates 来去到它们的坐标。
;Material <name> is depending on itself through materialval $bottommaterial!
:基本上，这个错误表明场景中的材质着色器参数 $bottommaterial 引用了它自己的一个 vmt！只要找到这些材料并将此值替换为你想要的另一个值，例如水就设置为：$bottommaterial" "dev/dev_waterbeneath2" 或其他你想要的。仔细检查材料名称，它可以是相同的名称，但前缀为「a」、「b」，你甚至不会注意到这一点！
== VIS (vvis.exe) ==
;loadportals: couldn't read filename.prt
:Vvis找不到由vbsp创建的 Portal 文件。vbsp没有创建它是因为错误（泄露？），或者 vvis 使用了不正确的文件路径。（解决方法是确保地图名称没有大写字母或句点。）
:或者：你创建了一些新的 Areaportal，但使用VBSP的「Only entities」(仅实体)模式进行编译。
:或者：你不小心将 light_environment 实体放置/移动到了天空盒的边界之外。（这不会产生泄漏吗？）
;Leaf (portal XXX) with too many portals.
:有一个区域的几何形状太复杂了。尽量简化一些房间和走廊，并使用 制作小结构。
== RAD (vrad.exe) ==
;Texture axis perpendicular to face at (XXX, XXX, XXX)
:在指定的坐标处，存在一个不正确的面。试着找到这个面，并确保纹理「与世界对齐」(aligned to world)。
;WARNING: Too many light styles on a face (XXX,XXX,XXX)
:在指定的坐标处，有一个面被过多的「效果」灯光照亮。这包括具有名称（即编译了打开和关闭状态的灯光，以便你可以切换它们）或使用闪烁等效果的灯光。删除其中一些，禁用闪烁效果或确保它们没有名称。
;<number> degenerate faces
退化面是计算为没有面积或面积为负的面。这可能会导致照明问题。
:这也可能与纹理的透明度有关。
;warning - face vectors parallel to face normal. bad lighting will be produced
:使用「对齐到纹理」(Align to texture) ( + 鼠标右键) 时可能会发生这种情况。要修复，找到引起它的笔刷（回溯最近的更改），将受影响的面与「世界」(World) 或「面」(Face) 对齐，然后手动应用纹理设置。
== 另请参阅 ==
* 
== 外部链接 ==
* Interlopers.net - 自动错误检查 - 你还可以上传编译日志。
* HL.LOGOUT.FR - 自动错误检查 - 上述工具的替代方案（法语）。