Changes for page Breaking Changes

Last modified by Michael Baumgardt on 2026/04/17 12:03

From version 40.1
edited by stefan
on 2019/09/19 13:06
Change comment: added GetLocalizedInteractiveNotificationKey() for 3.0 Beta 1
To version 33.1
edited by stefan
on 2019/06/26 12:02
Change comment: added setup_conversation_minigame note

Summary

Details

Page properties
Content
... ... @@ -25,10 +25,6 @@
25 25  )))|=(((
26 26  Summary
27 27  )))
28 -|(% colspan="3" %)(% colspan="3" %)
29 -(((
30 -== 3.00 ==
31 -)))
32 32  |(% colspan="1" %)(% colspan="1" %)
33 33  (((
34 34  Scripts
... ... @@ -37,11 +37,11 @@
37 37  3.0 Beta 1
38 38  )))|(% colspan="1" %)(% colspan="1" %)
39 39  (((
40 -Script action **<add_actor_to_room/> **attribute **'room'** renamed to **'object'**
36 +<setup_conversation_minigame/> script action removed
41 41  )))
42 42  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
43 43  (((
44 -Due to engine changes, script action <add_actor_to_room/> has had the attribute 'room' changed to 'object', which is more accurate. Most likely requires a 'position' if a slot is not provided.
40 +//The script action was a left over from the XR era and was never supported in X4 and couldn't be used in a meaningful way. It was therefore decided to better drop it altogether as it's not expected having been used by any mods.//
45 45  )))
46 46  |(% colspan="1" %)(% colspan="1" %)
47 47  (((
... ... @@ -51,80 +51,10 @@
51 51  3.0 Beta 1
52 52  )))|(% colspan="1" %)(% colspan="1" %)
53 53  (((
54 -Script action **<set_doors_locked/>** attribute **'group'** changed
50 +<hack_via_control_panel/> script action removed
55 55  )))
56 56  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
57 57  (((
58 -//The 'group' attribute of <set_doors_locked/> can no longer be a list. It must be a single tag value. Previously, a list containing one tag was accepted, which was redundant.//
59 -)))
60 -|(% colspan="1" %)(% colspan="1" %)
61 -(((
62 -Scripts
63 -)))|(% colspan="1" %)(% colspan="1" %)
64 -(((
65 -3.0 Beta 1
66 -)))|(% colspan="1" %)(% colspan="1" %)
67 -(((
68 -Script conditions **<event_hack_*/>** and **<event_controlpanel_hack_*/>** removed
69 -)))
70 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
71 -(((
72 -//These events were never triggered, with the exception of <event_hack_started/> on the player entity for instant control panel hacks. Use <event_player_hacked_object> instead.//
73 -)))
74 -|(% colspan="1" %)(% colspan="1" %)
75 -(((
76 -Scripts
77 -)))|(% colspan="1" %)(% colspan="1" %)
78 -(((
79 -3.0 Beta 1
80 -)))|(% colspan="1" %)(% colspan="1" %)
81 -(((
82 -Script actions **<set_hack_target/>** and **<abort_hack/>** removed
83 -)))
84 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
85 -(((
86 -//These actions had no effect and were removed.//
87 -)))
88 -|(% colspan="1" %)(% colspan="1" %)
89 -(((
90 -Scripts
91 -)))|(% colspan="1" %)(% colspan="1" %)
92 -(((
93 -3.0 Beta 1
94 -)))|(% colspan="1" %)(% colspan="1" %)
95 -(((
96 -**<setup_conversation_minigame/>** script action removed
97 -)))
98 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
99 -(((
100 -//The script action was a leftover from the XR era and was never supported in X4 and couldn't be used in a meaningful way. It was therefore decided to better drop it altogether as it's not expected having been used by any mods.//
101 -)))
102 -|(% colspan="1" %)(% colspan="1" %)
103 -(((
104 -Scripts
105 -)))|(% colspan="1" %)(% colspan="1" %)
106 -(((
107 -3.0 Beta 1
108 -)))|(% colspan="1" %)(% colspan="1" %)
109 -(((
110 -<add_player_choice_*> **confidence** attribute removed
111 -)))
112 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
113 -(((
114 -//The default confidence of player options is another leftover from the XR era and had no effect in X4.//
115 -)))
116 -|(% colspan="1" %)(% colspan="1" %)
117 -(((
118 -Scripts
119 -)))|(% colspan="1" %)(% colspan="1" %)
120 -(((
121 -3.0 Beta 1
122 -)))|(% colspan="1" %)(% colspan="1" %)
123 -(((
124 -**<hack_via_control_panel/>** script action removed
125 -)))
126 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
127 -(((
128 128  //Unused script action <hack_via_control_panel/> was removed.//
129 129  )))
130 130  |(% colspan="1" %)(% colspan="1" %)
... ... @@ -141,17 +141,6 @@
141 141  (((
142 142  //GetMiniGameCursorPosition() was a left over from the XR era and never supposed to be shipped with X4. The function practically always returned 0 and hence we don't expect the removal of this obsolete function causing any actual mod to break.//
143 143  )))
144 -|(((
145 -UI core
146 -)))|(((
147 -3.0 Beta 1
148 -)))|(((
149 -**FFI: **GetLocalizedInteractiveNotificationKey can return icon placeholders
150 -)))
151 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
152 -(((
153 -//In 3.0 Beta 1 we added support to display icons for keyboard bindings, if an icon is available for the specified keys. This results in GetLocalizedInteractiveNotificationKey() potentially returning a different text now if such an icon is assigned to the mapped key/button.//
154 -)))
155 155  |(% colspan="1" %)(% colspan="1" %)
156 156  (((
157 157  Scripts
... ... @@ -160,12 +160,12 @@
160 160  3.0 Beta 1
161 161  )))|(% colspan="1" %)(% colspan="1" %)
162 162  (((
163 -**$ware.illegal** updated
78 +$ware.illegal updated
164 164  )))
165 165  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
166 166  (((
167 -//$ware.illegal used to return true if the specified ware has the 'illegal' tag which is no longer used.//
168 -//It now returns true if $ware is illegal to any faction in the game.//
82 +$ware.illegal used to return true if the specified ware has the 'illegal' tag which is no longer used.
83 +\\It now returns true if $ware is illegal to any faction in the game.
169 169  )))
170 170  |(% colspan="1" %)(% colspan="1" %)
171 171  (((
... ... @@ -175,11 +175,13 @@
175 175  3.0 Beta 1
176 176  )))|(% colspan="1" %)(% colspan="1" %)
177 177  (((
178 -MD script **RML_Flight_Along_Path** removed
93 +'checkoperational' filter behaviour changed
179 179  )))
180 180  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
181 181  (((
182 -//The MD script RML_Flight_Along_Path was not referened and was removed.//
97 +//Actions and conditions which use the 'checkoperational' filter now behave differently. Instead of changing how 'class' and 'exactclass' behave, checkoperational == true adds an additional filter for the components being of state operational, equivalent to state="componentstate.operational". This is implicitly enabled in action elements (e.g. <find_.../>) or condition elements (e.g. <count_...>), meaning that find_ship will only find operational ships. Using such actions/conditions with checkoperational="false" will include non-operational components such as wrecked and constructions. Existing uses may find that results now exclude non-operational components.//
98 +
99 +//Sub nodes such as match_child will have checkoperational default to false. Existing uses may find that results now include non-operational components.//
183 183  )))
184 184  |(% colspan="1" %)(% colspan="1" %)
185 185  (((
... ... @@ -189,45 +189,12 @@
189 189  3.0 Beta 1
190 190  )))|(% colspan="1" %)(% colspan="1" %)
191 191  (((
192 -parameters of **<event_venture_mission_completed/>** changed
109 +MD script **RML_Flight_Along_Path** removed
193 193  )))
194 194  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
195 195  (((
196 -//old params: param = venture details, param2 = ships involved, param3 = duration//
197 -//new params: param = venture detail list: [mission name, mission type], param2 = list of ships involved, param3 = duration//
113 +//The MD script RML_Flight_Along_Path was not referened and was removed.//
198 198  )))
199 -|(% colspan="3" %)(% colspan="3" %)
200 -(((
201 -== 2.60 ==
202 -)))
203 -|(((
204 -Scripts
205 -)))|(((
206 -2.60 Beta 1
207 -)))|(((
208 -'**checkoperational**' filter behaviour changed
209 -)))
210 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
211 -(((
212 -//Actions and conditions which use the 'checkoperational' filter now behave differently. Instead of changing how 'class' and 'exactclass' behave, checkoperational == true adds an additional filter for the components being of state operational, equivalent to state="componentstate.operational". This is implicitly enabled in action elements (e.g. <find_.../>) or condition elements (e.g. <count_...>), meaning that find_ship will only find operational ships. Using such actions/conditions with checkoperational="false" will include non-operational components such as wrecked and constructions. Existing uses may find that results now exclude non-operational components.//
213 -
214 -//Sub nodes such as match_child will have checkoperational default to false. Existing uses may find that results now include non-operational components.//
215 -)))
216 -|(((
217 -Scripts
218 -)))|(((
219 -2.60 Beta 1
220 -)))|(((
221 -$container.**supplyresources** behavior changed
222 -)))
223 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
224 -(((
225 -//The script keyword $container.supplyresources now includes reserved wares.//
226 -)))
227 -|(% colspan="3" %)(% colspan="3" %)
228 -(((
229 -== 2.20 ==
230 -)))
231 231  |(% colspan="1" %)(% colspan="1" %)
232 232  (((
233 233  UI core
... ... @@ -260,10 +260,6 @@
260 260  (((
261 261  //The underlying behaviour remains the same in that it involves the buildprocessor, not the buildmodule. The attribute name has simply been corrected.//
262 262  )))
263 -|(% colspan="3" %)(% colspan="3" %)
264 -(((
265 -== 2.00 ==
266 -)))
267 267  |(% colspan="1" %)(% colspan="1" %)
268 268  (((
269 269  Scripts
... ... @@ -410,10 +410,6 @@
410 410  (((
411 411  //Changed return value type to const char* to better identify failure reasons in Lua script.//
412 412  )))
413 -|(% colspan="3" %)(% colspan="3" %)
414 -(((
415 -== 1.50 ==
416 -)))
417 417  |(((
418 418  UI extensions
419 419  )))|(((
... ... @@ -479,10 +479,6 @@
479 479  (((
480 480  (% style="color: rgb(0,0,0);" %)//CancelConstruction() now returns if the cancellation was successful. //
481 481  )))
482 -|(% colspan="3" %)(% colspan="3" %)
483 -(((
484 -== 1.32 ==
485 -)))
486 486  |(((
487 487  UI extensions
488 488  )))|(((
... ... @@ -494,10 +494,6 @@
494 494  (((
495 495  //Instead of "nextdestname", use the properties "destination" or "destinationsector" to retrieve a destination component, then retrieve its "name" property.//
496 496  )))
497 -|(% colspan="3" %)(% colspan="3" %)
498 -(((
499 -== 1.20 ==
500 -)))
501 501  |(((
502 502  UI extensions
503 503  )))|(((
Confluence.Code.ConfluencePageClass[0]
id
... ... @@ -1,1 +1,1 @@
1 -86835243
1 +83460874
url
... ... @@ -1,1 +1,1 @@
1 -https://www.egosoft.com:8444/confluence/wiki/spaces/X4WIKI/pages/86835243/Breaking Changes
1 +https://www.egosoft.com:8444/confluence/wiki/spaces/X4WIKI/pages/83460874/Breaking Changes