View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006224 | The Dark Mod | Feature proposal | public | 09.01.2023 22:39 | 15.06.2023 20:49 |
Reporter | stgatilov | Assigned To | stgatilov | ||
Priority | normal | Severity | feature | Reproducibility | N/A |
Status | resolved | Resolution | fixed | ||
Product Version | TDM 2.11 | ||||
Target Version | TDM 2.12 | Fixed in Version | TDM 2.12 | ||
Summary | 0006224: Extend location separator dmap warnings to portal settings | ||||
Description | Many different warnings were added in 0005354 to make sure location separators work as intended. Most of them apply to all kind of entities which are linked to a visportal. Such kind of entities is called idPortalEntity in C++ code (see idPortalEntity::Spawn) and has two derived classes: idLocationSeparatorEntity idPortalSettingsEntity We should extend dmap warnings to portal settings as well. | ||||
Tags | No tags attached. | ||||
Trying to decide whether having both kind of entities on the same visportal is an error or not: https://forums.thedarkmod.com/index.php?/topic/20226-dropped-visportal-diagnostic/&do=findComment&comment=486268 |
|
This is how it works right now. 1) Portal settings (mainly sound_loss) are applied in PostSpawn function of portal entities (both info_locationSeparator and info_portalSettings are portal entities). 2) The function overrides previous values, so if several entities apply different settings to the same visportal, the last values win. But this is not certain, of course =) I won't be surprised if some information from previous calls might persist... 3) Both types of portal entities schedule PostSpawn in their own code, and do that after 18 ms of spawning. And since spawn happens on map start, I assume that it happens in order entities are listed in .map file. So the bottom line is: if one visportal is contacted by several entities of types info_locationSeparator / info_portalSettings, then settings are taken from the latest entity in .map file. Which comes last is pretty undefined of course =) the type does not matter for sure Moreover, notice that the location-blocking capability works differently. The visportal blocks locations if there is at least one location separator which contacts it. |
|
So the actual change is here: r10401 Take info_portalsettings entities into account when checking location separators in dmap. Also I changed DR-visible description of these two entity types (which has not been done in ages): r16812 Improved editor_usage of info_locationSeparator and info_portalSettings. Minor stuff: r10400 Deleted references of light_loss spawnarg on portal entities. r16810 Deleted references of light_loss spawnarg on portal entities. r16811 Added bad info_portalsettings to portal diagnostics test map. |
|
Date Modified | Username | Field | Change |
---|---|---|---|
09.01.2023 22:39 | stgatilov | New Issue | |
09.01.2023 22:39 | stgatilov | Status | new => assigned |
09.01.2023 22:39 | stgatilov | Assigned To | => stgatilov |
09.01.2023 22:39 | stgatilov | Relationship added | related to 0005354 |
11.06.2023 10:07 | stgatilov | Relationship added | related to 0003042 |
11.06.2023 10:53 | stgatilov | Note Added: 0016016 | |
15.06.2023 13:37 | stgatilov | Note Added: 0016019 | |
15.06.2023 20:49 | stgatilov | Note Added: 0016020 | |
15.06.2023 20:49 | stgatilov | Status | assigned => resolved |
15.06.2023 20:49 | stgatilov | Resolution | open => fixed |
15.06.2023 20:49 | stgatilov | Fixed in Version | => TDM 2.12 |