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 19.1
edited by Daniel Turner
on 2019/02/08 11:54
Change comment: corrected style

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -xwiki:XWiki.stefan
1 +xwiki:XWiki.Daniel
Content
... ... @@ -25,288 +25,7 @@
25 25  )))|=(((
26 26  Summary
27 27  )))
28 -|(% colspan="3" %)(% colspan="3" %)
29 -(((
30 -== 3.00 ==
31 -)))
32 -|(% colspan="1" %)(% colspan="1" %)
33 -(((
34 -Scripts
35 -)))|(% colspan="1" %)(% colspan="1" %)
36 -(((
37 -3.0 Beta 1
38 -)))|(% colspan="1" %)(% colspan="1" %)
39 -(((
40 -Script action **<add_actor_to_room/> **attribute **'room'** renamed to **'object'**
41 -)))
42 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
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.
45 -)))
46 -|(% colspan="1" %)(% colspan="1" %)
47 -(((
48 -Scripts
49 -)))|(% colspan="1" %)(% colspan="1" %)
50 -(((
51 -3.0 Beta 1
52 -)))|(% colspan="1" %)(% colspan="1" %)
53 -(((
54 -Script action **<set_doors_locked/>** attribute **'group'** changed
55 -)))
56 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
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 -//Unused script action <hack_via_control_panel/> was removed.//
129 -)))
130 -|(% colspan="1" %)(% colspan="1" %)
131 -(((
132 -UI core
133 -)))|(% colspan="1" %)(% colspan="1" %)
134 -(((
135 -3.0 Beta 1
136 -)))|(% colspan="1" %)(% colspan="1" %)
137 -(((
138 -**Lua: **GetMiniGameCursorPosition() removed
139 -)))
140 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
141 -(((
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 -)))
144 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 -|(% colspan="1" %)(% colspan="1" %)
156 -(((
157 -Scripts
158 -)))|(% colspan="1" %)(% colspan="1" %)
159 -(((
160 -3.0 Beta 1
161 -)))|(% colspan="1" %)(% colspan="1" %)
162 -(((
163 -**$ware.illegal** updated
164 -)))
165 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
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.//
169 -)))
170 -|(% colspan="1" %)(% colspan="1" %)
171 -(((
172 -Scripts
173 -)))|(% colspan="1" %)(% colspan="1" %)
174 -(((
175 -3.0 Beta 1
176 -)))|(% colspan="1" %)(% colspan="1" %)
177 -(((
178 -MD script **RML_Flight_Along_Path** removed
179 -)))
180 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
181 -(((
182 -//The MD script RML_Flight_Along_Path was not referened and was removed.//
183 -)))
184 -|(% colspan="1" %)(% colspan="1" %)
185 -(((
186 -Scripts
187 -)))|(% colspan="1" %)(% colspan="1" %)
188 -(((
189 -3.0 Beta 1
190 -)))|(% colspan="1" %)(% colspan="1" %)
191 -(((
192 -parameters of **<event_venture_mission_completed/>** changed
193 -)))
194 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
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//
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 -|(% colspan="1" %)(% colspan="1" %)
232 -(((
233 -UI core
234 -)))|(% colspan="1" %)(% colspan="1" %)
235 -(((
236 -2.20 Beta 3/4
237 -)))|(% colspan="1" %)(% colspan="1" %)
238 -(((
239 -**Lua: GetControllerInfo()** returned mouseSteering/mouseCursor values are undefined.
240 -)))
241 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
242 -(((
243 -//2.20 Beta 3 introduced the new direct mouse steering mode. The mode was however not integrated as a first level mode and hence GetControllerInfo() returned the "gamepad" mode while direct mouse steering was active.
244 -In 2.20 Beta 4 we improved the situation slightly so that a call to GetControllerInfo() will return either "mouseCursor" or "mouseSteering" in any of the 3 mouse modes.//
245 -
246 -//It's a pending change to ensure that the returned mode is more reasonable in an upcoming patch. So be aware that another breaking change might be introduced at some point.
247 -//
248 -)))
249 -|(% colspan="1" %)(% colspan="1" %)
250 -(((
251 -Scripts
252 -)))|(% colspan="1" %)(% colspan="1" %)
253 -(((
254 -2.20 Beta 3
255 -)))|(% colspan="1" %)(% colspan="1" %)
256 -(((
257 -Attribute for build related conditions e.g. **<event_build_finished/>** renamed from 'buildmodule' to 'buildprocessor'
258 -)))
259 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
260 -(((
261 -//The underlying behaviour remains the same in that it involves the buildprocessor, not the buildmodule. The attribute name has simply been corrected.//
262 -)))
263 -|(% colspan="3" %)(% colspan="3" %)
264 -(((
265 -== 2.00 ==
266 -)))
267 -|(% colspan="1" %)(% colspan="1" %)
268 -(((
269 -Scripts
270 -)))|(% colspan="1" %)(% colspan="1" %)
271 -(((
272 -2.00 Beta 1
273 -)))|(% colspan="1" %)(% colspan="1" %)
274 -(((
275 -**<event_build_finished/> **param2 now returns null instead of a construction sequence
276 -)))
277 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
278 -(((
279 -//The construction sequence which was finished should now be accessed via the buildtask provided via param3.//
280 -)))
281 -|(% colspan="1" %)(% colspan="1" %)
282 -(((
283 -Scripts
284 -)))|(% colspan="1" %)(% colspan="1" %)
285 -(((
286 -2.00 Beta 1
287 -)))|(% colspan="1" %)(% colspan="1" %)
288 -(((
289 -**param.boarding.{...}** strength parameters removed
290 -)))
291 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
292 -(((
293 -//The 'recruitstrength', 'veteranstrength' and 'elitestrength' script parameters were no longer required for balancing the boarding gameplay, and were removed.//
294 -)))
295 -|(% colspan="1" %)(% colspan="1" %)
296 -(((
297 -Scripts
298 -)))|(% colspan="1" %)(% colspan="1" %)
299 -(((
300 -2.00 Beta 1
301 -)))|(% colspan="1" %)(% colspan="1" %)
302 -(((
303 -**$defensible.boardee/$defensible.boarder** and **<set_object_boarder/>/<remove_object_boarder/>** removed
304 -)))
305 -|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
306 -(((
307 -//Due to changes to boarding in X4, the boarding connections accessed by these script properties and actions became redundent and thus, removed. Any connections set by these actions in a savegame will not survive loading.//
308 -)))
309 -|(((
310 310  UI extensions
311 311  )))|(((
312 312  2.00 Beta 1
... ... @@ -356,7 +356,7 @@
356 356  )))|(((
357 357  2.00 Beta 1
358 358  )))|(((
359 -**<shoot/>/<shoot_at/>** attribute changes.
78 +Attribute changes to **<shoot/>** and **<shoot_at/>**
360 360  )))
361 361  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
362 362  (((
... ... @@ -371,7 +371,7 @@
371 371  )))|(((
372 372  2.00 Beta 1
373 373  )))|(((
374 -**FFI: GetBuildTask()/GetNumBuildTasks()** got a new "buildmoduleid" parameter.(% class="confluenceTd" %)
93 +**FFI**: Added "**buildmoduleid**" parameter to (% style="color: rgb(0,0,0);" %)**GetBuildTasks() **and (% style="color: rgb(0, 0, 0); color: rgb(0, 0, 0)" %)**GetNumBuildTasks()**(% style="color: rgb(0,0,0);" %).
375 375  )))
376 376  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
377 377  (((
... ... @@ -382,7 +382,7 @@
382 382  )))|(((
383 383  2.00 Beta 1
384 384  )))|(((
385 -**Lua:** **GetLibraryEntry()** retrieved a new "buildresources" field.
104 +**Lua: **Added "**buildresources**" field to the return value of **GetLibraryEntry()** for buildmodules.
386 386  )))
387 387  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
388 388  (((
... ... @@ -393,11 +393,11 @@
393 393  )))|(((
394 394  2.00 Beta 1
395 395  )))|(((
396 -(% style="color: rgb(0,0,0);" %)**Lua:**(% style="color: rgb(0, 0, 0); color: rgb(0, 0, 0)" %)** CalculateTotalHullFraction()**(% style="color: rgb(0,0,0);" %)** **(%%)was removed.(% style="color: rgb(0,0,0);" %)
115 +**Lua: **Removed (% style="color: rgb(0,0,0);" %)**CalculateTotalHullFraction().**
397 397  )))
398 398  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
399 399  (((
400 -//Unused, derelict function from XR - use GetComponentData(..., "hullpercent") instead.//
119 +//Unused, derelict function from XR - use **GetComponentData(..., "hullpercent")** instead.//
401 401  )))
402 402  |(((
403 403  UI extensions
... ... @@ -404,26 +404,22 @@
404 404  )))|(((
405 405  2.00 Beta 1
406 406  )))|(((
407 -**FFI: (% style="color: rgb(0,0,0);" %)RequestDockAtReason()/(% style="color: rgb(0, 0, 0); color: rgb(0, 0, 0); color: rgb(0, 0, 0); color: rgb(0, 0, 0); color: rgb(0, 0, 0)" %)UndockPlayerShip()(%%) **changed their return values.(% style="color: rgb(0,0,0);" class="confluenceTd" %)
126 +**FFI: **Changed return value of (% style="color: rgb(0,0,0);" %)**RequestDockAtReason()** and (% style="color: rgb(0, 0, 0); color: rgb(0, 0, 0)" %)**UndockPlayerShip()**.
408 408  )))
409 409  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
410 410  (((
411 -//Changed return value type to const char* to better identify failure reasons in Lua script.//
130 +//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  )))|(((
420 420  1.50 Beta 3
421 421  )))|(((
422 -**Lua: GetComponentData() **changed behavior of "docksizes" propertly.(% class="confluenceTd" %)
137 +**Lua: **Changed **GetComponentData() **property (% style="color: rgb(0,0,0);" %)"**docksizes**".
423 423  )))
424 424  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
425 425  (((
426 -//The "docksizes" property no longer includes internal ship storage docks.//
141 +//The "**docksizes**" property no longer includes internal ship storage docks.//
427 427  )))
428 428  |(((
429 429  All
... ... @@ -430,7 +430,7 @@
430 430  )))|(((
431 431  1.50 Beta 2
432 432  )))|(((
433 -**Meaning of "Shipyard"** was corrected throughout Lua/MD/AI scripts, so that Wharfs are not Shipyards (unlike in XR).
148 +Corrected **meaning of "Shipyard"** throughout Lua/MD/AI scripts, so that Wharfs are not Shipyards (unlike in XR).
434 434  )))
435 435  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
436 436  (((
... ... @@ -445,11 +445,11 @@
445 445  )))|(((
446 446  1.50 Beta 2
447 447  )))|(((
448 -**FFI: UpgradeGroupInfo **datatype was changed.(% class="confluenceTd" %)
163 +**FFI**: Added "**operational**" field to (% style="color: rgb(0,0,0);" %)**UpgradeGroupInfo **struct.
449 449  )))
450 450  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
451 451  (((
452 -//Added new "operational" field to retrieve information about number of operational upgrades in a group.//
167 +//Added information about number of operational upgrades in a group, affected functions: (% style="color: rgb(0,0,0);" %)GetUpgradeGroupInfo().//
453 453  )))
454 454  |(% colspan="1" %)(% colspan="1" %)
455 455  (((
... ... @@ -459,7 +459,7 @@
459 459  1.50 Beta 1
460 460  )))|(% colspan="1" %)(% colspan="1" %)
461 461  (((
462 -**FFI: SetGuidance()** removed useinfopoint argument.
177 +**FFI:** Removed **SetGuidance()** argument useinfopoint.
463 463  )))
464 464  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
465 465  (((
... ... @@ -473,39 +473,31 @@
473 473  )))|(((
474 474  1.50 Beta 1
475 475  )))|(((
476 -**FFI: CancelConstruction() **changed its return value.(% class="confluenceTd" %)
191 +**FFI:** Changed return value for (% style="color: rgb(0,0,0);" %)**CancelConstruction()**.
477 477  )))
478 478  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
479 479  (((
480 -(% style="color: rgb(0,0,0);" %)//CancelConstruction() now returns if the cancellation was successful. //
195 +(% 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  )))|(((
489 489  1.32
490 490  )))|(((
491 -**Lua: GetComponentData() **removed the "nextdestname" property.
202 +**Lua:** Removed **GetComponentData()** property "**nextdestname**".
492 492  )))
493 493  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
494 494  (((
495 -//Instead of "nextdestname", use the properties "destination" or "destinationsector" to retrieve a destination component, then retrieve its "name" property.//
206 +//Instead of "nextdestname", use the GetComponentData() 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  )))|(((
504 504  1.20
505 505  )))|(((
506 -**FFI: GetAAOption()** got a new "useconfig" parameter.(% class="confluenceTd" %)
213 +**FFI**: Added "**useconfig**" parameter to (% style="color: rgb(0,0,0);" %)**GetAAOption()**.
507 507  )))
508 508  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
509 509  (((
510 -//The AA setting was changed to check the new setting with the user. In order to restore the old setting (% style="color: rgb(0,0,0);" %)GetAAOption() gets the option to retrieve the config settings.//
217 +//The AA setting was changed to check the new setting with the user. In order to restore the old setting (% style="color: rgb(0,0,0);" %)**GetAAOption() **gets the option to retrieve the config settings.//
511 511  )))
Confluence.Code.ConfluencePageClass[0]
id
... ... @@ -1,1 +1,1 @@
1 -86835243
1 +78578521
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/78578521/Breaking Changes