Difference between revisions of "HPL3/SOMA/Level Design/Combos"
(Add source-verified reference; mark undocumented workflow and behavior for expansion.) |
(Expand the SOMA guide with verified stock examples, practical steps and precise remaining documentation gaps.) |
||
| Line 1: | Line 1: | ||
{{shortPageTitle}} | {{shortPageTitle}} | ||
| + | |||
{{stub}} | {{stub}} | ||
| − | + | A combo is a saved compound: an arrangement of objects that can be placed again through the SOMA Level Editor’s Combo EditMode. Use it when you want to reuse a group of pieces rather than assemble each member separately. | |
| + | |||
| + | == Understand the three kinds of grouping == | ||
| + | * A '''compound''' groups objects so they can be transformed together in the editor. | ||
| + | * A '''combo''' stores a compound in a <code>.cmb</code> file for placement through Combo EditMode. | ||
| + | * '''Combine EditMode''' groups static geometry for loading as a whole; the toolbar documentation describes this as an optimization feature. This is a separate toolbar mode from placing saved combos. | ||
| + | |||
| + | == Start with a shipped example == | ||
| + | # Open your mod’s map in <code>LevelEditor.exe</code>; see [[HPL3/SOMA/Getting Started/Edit Your First Map|Edit Your First Map]] for the working-mod setup and save/reopen check. | ||
| + | # Select '''Combo EditMode''' on the toolbar. It is the mode documented for placing saved compounds. | ||
| + | # Use <code>combos/urban/tech/alarm_clock.cmb</code> as the small reference combo. It contains <code>alarm_clock_1</code> and <code>alarm_clock_button_1</code>, each referencing its own <code>.ent</code> file. | ||
| + | # After placing the combo, compare its members with that file’s <code>Components</code> and <code>Compound</code> sections. The compound records both member IDs; it is a group containing two entities. | ||
| + | # Move the compound with its '''Position''' property, then save and reopen the mod map. Compound position, rotation and scale transform the group together. | ||
| + | |||
| + | The alarm-clock combo uses <code>entities/urban/tech/alarm_clock/alarm_clock.ent</code> and <code>entities/urban/tech/alarm_clock/alarm_clock_button.ent</code>. A larger example, <code>combos/urban/furniture/desk_work.cmb</code>, contains one desk and three drawer entities. The vegetation example <code>combos/organic/vegetation_clusters/vegetation_cluster01.cmb</code> contains both static objects and an entity. These are examples of the contents a shipped combo can store. | ||
| − | Compound | + | == Compound transforms == |
| + | {| class="wikitable" | ||
| + | ! Property !! What it changes | ||
| + | |- | ||
| + | | '''Name''' || The name of the compound. | ||
| + | |- | ||
| + | | '''Position''' || The compound’s center position. | ||
| + | |- | ||
| + | | '''Rotation''' || The rotation of the group; a member that cannot rotate can restrict this. | ||
| + | |- | ||
| + | | '''Scale''' || The scale of the group; a member that cannot scale can restrict this. | ||
| + | |} | ||
| − | Compound | + | == Saving your own combo == |
| + | The shipped editor includes controls labelled '''Create Compound''', '''Save as Combo''' and '''Destroy Compound'''. The saved examples use the <code>.cmb</code> extension and contain <code>FileIndices</code>, <code>Components</code>, <code>Compound</code> and <code>Thumbnail</code> sections. | ||
| + | |||
| + | The exact save dialog, destination selection, browser refresh procedure and behavior when an existing combo file changes still need direct editor verification. This page therefore does not prescribe an unverified save-and-refresh sequence. | ||
== See also == | == See also == | ||
* [[HPL3/SOMA/Level Design/Compounds|Compound objects]] | * [[HPL3/SOMA/Level Design/Compounds|Compound objects]] | ||
| − | + | * [[HPL3/SOMA/Level Design/Level Editor Toolbar|Editor modes]] | |
| − | + | * [[HPL3/Level Design/Working with Static Objects|Static geometry and automatic combining]] | |
| − | |||
[[Category:English]] | [[Category:English]] | ||
Latest revision as of 14:48, 2 October 2026
|
This article or section is a stub. You can help by adding to it. |
A combo is a saved compound: an arrangement of objects that can be placed again through the SOMA Level Editor’s Combo EditMode. Use it when you want to reuse a group of pieces rather than assemble each member separately.
Contents
Understand the three kinds of grouping
- A compound groups objects so they can be transformed together in the editor.
- A combo stores a compound in a
.cmbfile for placement through Combo EditMode. - Combine EditMode groups static geometry for loading as a whole; the toolbar documentation describes this as an optimization feature. This is a separate toolbar mode from placing saved combos.
Start with a shipped example
- Open your mod’s map in
LevelEditor.exe; see Edit Your First Map for the working-mod setup and save/reopen check. - Select Combo EditMode on the toolbar. It is the mode documented for placing saved compounds.
- Use
combos/urban/tech/alarm_clock.cmbas the small reference combo. It containsalarm_clock_1andalarm_clock_button_1, each referencing its own.entfile. - After placing the combo, compare its members with that file’s
ComponentsandCompoundsections. The compound records both member IDs; it is a group containing two entities. - Move the compound with its Position property, then save and reopen the mod map. Compound position, rotation and scale transform the group together.
The alarm-clock combo uses entities/urban/tech/alarm_clock/alarm_clock.ent and entities/urban/tech/alarm_clock/alarm_clock_button.ent. A larger example, combos/urban/furniture/desk_work.cmb, contains one desk and three drawer entities. The vegetation example combos/organic/vegetation_clusters/vegetation_cluster01.cmb contains both static objects and an entity. These are examples of the contents a shipped combo can store.
Compound transforms
| Property | What it changes |
|---|---|
| Name | The name of the compound. |
| Position | The compound’s center position. |
| Rotation | The rotation of the group; a member that cannot rotate can restrict this. |
| Scale | The scale of the group; a member that cannot scale can restrict this. |
Saving your own combo
The shipped editor includes controls labelled Create Compound, Save as Combo and Destroy Compound. The saved examples use the .cmb extension and contain FileIndices, Components, Compound and Thumbnail sections.
The exact save dialog, destination selection, browser refresh procedure and behavior when an existing combo file changes still need direct editor verification. This page therefore does not prescribe an unverified save-and-refresh sequence.