View Issue Details

IDProjectCategoryView StatusLast Update
0004999DarkRadiantObjectivespublic08.11.2020 18:36
Reportergrayman Assigned Togreebo  
Status closedResolutionfixed 
Product Version2.6.0 
Target Version2.7.0Fixed in Version2.7.0 
Summary0004999: Problem with satisfying readable objective "when closed"
DescriptionIf I create an objective that's satisfied when I reach page N of a readable, then subsequently decide I want to have the objective satisfied when I close the readable instead, N remains set and causes the following:

Open the readable, where the number of pages is < N.
Read all the pages.
Close the readable.
The objective is NOT satisfied.

Checking whether the objective is satisfied takes into account N when it shouldn't.

While this could be fixed in TDM, it should be caught at the earliest moment, which is in DR. The leftover argument that defines N should be deleted when the objective is no longer "satisfied when page N is reached".
Steps To Reproduce- Open a new map
- Open Map > Objectives Editor
- Add an objective entity plus one objective
- Edit the Objective
- Add Component of Type "Readable page reached
- Set Specifier "Name of single entity", type in any name
- Set Page Number: 4
- Change the component type to "Readable closed"
- Save the objective and the close the editor

Select the objective entity and inspect its arguments:
The "obj1_1_args" key has the value "4" which is the page number, even though it's not needed by and will break the objective logic in-game.
TagsNo tags attached.




10.03.2019 05:23

administrator   ~0011678

Confirmed, the component arguments are not cleared on saving


10.03.2019 06:15

administrator   ~0011679

Fixed in 06e6d35

Related Changesets

DarkRadiant: master 06e6d35e

2019-03-10 07:14:41


Details Diff
Fix issue 0004999: Problem with satisfying readable objective "when closed". Superfluous arguments were kept in the Component when switching types. Affected Issues
mod - plugins/dm.objectives/ce/AIFindBodyComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/AIFindItemComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/AlertComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/CustomClockedComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/CustomComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/DestroyComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/DistanceComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/InfoLocationComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/ItemComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/KillComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/KnockoutComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/LocationComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/PickpocketComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/ReadableClosedComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/ReadableOpenedComponentEditor.cpp Diff File
mod - plugins/dm.objectives/ce/ReadablePageReachedComponentEditor.cpp Diff File

Issue History

Date Modified Username Field Change
26.02.2019 19:07 grayman New Issue
26.02.2019 19:08 grayman Description Updated
10.03.2019 05:23 greebo Note Added: 0011678
10.03.2019 05:23 greebo Status new => confirmed
10.03.2019 05:29 greebo Steps to Reproduce Updated
10.03.2019 05:30 greebo Assigned To => greebo
10.03.2019 05:30 greebo Status confirmed => assigned
10.03.2019 05:31 greebo Product Version 2.7.0 => 2.6.0
10.03.2019 05:31 greebo Target Version => 2.7.0
10.03.2019 06:12 greebo Assigned To greebo => grayman
10.03.2019 06:12 greebo Assigned To grayman => greebo
10.03.2019 06:15 greebo Note Added: 0011679
10.03.2019 06:15 greebo Status assigned => resolved
10.03.2019 06:15 greebo Fixed in Version => 2.7.0
10.03.2019 06:15 greebo Resolution open => fixed
09.01.2020 19:25 greebo Changeset attached => DarkRadiant master 06e6d35e
08.11.2020 18:36 greebo Status resolved => closed