Changes for page Breaking Changes

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

From version 29.1
edited by owen
on 2019/05/24 17:31
Change comment: There is no comment for this version
To version 39.1
edited by klaus
on 2019/09/11 11:23
Change comment: Moved checkoperational change to 2.60

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -xwiki:XWiki.owen
1 +xwiki:XWiki.klaus
Content
... ... @@ -25,6 +25,10 @@
25 25  )))|=(((
26 26  Summary
27 27  )))
28 +|(% colspan="3" %)(% colspan="3" %)
29 +(((
30 +== 3.00 ==
31 +)))
28 28  |(% colspan="1" %)(% colspan="1" %)
29 29  (((
30 30  Scripts
... ... @@ -33,13 +33,11 @@
33 33  3.0 Beta 1
34 34  )))|(% colspan="1" %)(% colspan="1" %)
35 35  (((
36 -'checkoperational' filter behaviour changed
40 +Script action **<add_actor_to_room/> **attribute **'room'** renamed to **'object'**
37 37  )))
38 38  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
39 39  (((
40 -//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.//
41 -
42 -//Sub nodes such as match_child will have checkoperational default to false. Existing uses may find that results now include non-operational components.//
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.
43 43  )))
44 44  |(% colspan="1" %)(% colspan="1" %)
45 45  (((
... ... @@ -49,6 +49,119 @@
49 49  3.0 Beta 1
50 50  )))|(% colspan="1" %)(% colspan="1" %)
51 51  (((
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 +|(% colspan="1" %)(% colspan="1" %)
145 +(((
146 +Scripts
147 +)))|(% colspan="1" %)(% colspan="1" %)
148 +(((
149 +3.0 Beta 1
150 +)))|(% colspan="1" %)(% colspan="1" %)
151 +(((
152 +**$ware.illegal** updated
153 +)))
154 +|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
155 +(((
156 +//$ware.illegal used to return true if the specified ware has the 'illegal' tag which is no longer used.//
157 +\\//It now returns true if $ware is illegal to any faction in the game.//
158 +)))
159 +|(% colspan="1" %)(% colspan="1" %)
160 +(((
161 +Scripts
162 +)))|(% colspan="1" %)(% colspan="1" %)
163 +(((
164 +3.0 Beta 1
165 +)))|(% colspan="1" %)(% colspan="1" %)
166 +(((
52 52  MD script **RML_Flight_Along_Path** removed
53 53  )))
54 54  |(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
... ... @@ -57,6 +57,53 @@
57 57  )))
58 58  |(% colspan="1" %)(% colspan="1" %)
59 59  (((
175 +Scripts
176 +)))|(% colspan="1" %)(% colspan="1" %)
177 +(((
178 +3.0 Beta 1
179 +)))|(% colspan="1" %)(% colspan="1" %)
180 +(((
181 +parameters of **<event_venture_mission_completed/>** changed
182 +)))
183 +|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
184 +(((
185 +//old params: param = venture details, param2 = ships involved, param3 = duration//
186 +//new params: param = venture detail list: [mission name, mission type], param2 = list of ships involved, param3 = duration//
187 +)))
188 +|(% colspan="3" %)(% colspan="3" %)
189 +(((
190 +== 2.60 ==
191 +)))
192 +|(((
193 +Scripts
194 +)))|(((
195 +2.60 Beta 1
196 +)))|(((
197 +'**checkoperational**' filter behaviour changed
198 +)))
199 +|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
200 +(((
201 +//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.//
202 +
203 +//Sub nodes such as match_child will have checkoperational default to false. Existing uses may find that results now include non-operational components.//
204 +)))
205 +|(((
206 +Scripts
207 +)))|(((
208 +2.60 Beta 1
209 +)))|(((
210 +$container.**supplyresources** behavior changed
211 +)))
212 +|(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="3" data-highlight-colour="grey" %)
213 +(((
214 +//The script keyword $container.supplyresources now includes reserved wares.//
215 +)))
216 +|(% colspan="3" %)(% colspan="3" %)
217 +(((
218 +== 2.20 ==
219 +)))
220 +|(% colspan="1" %)(% colspan="1" %)
221 +(((
60 60  UI core
61 61  )))|(% colspan="1" %)(% colspan="1" %)
62 62  (((
... ... @@ -87,6 +87,10 @@
87 87  (((
88 88  //The underlying behaviour remains the same in that it involves the buildprocessor, not the buildmodule. The attribute name has simply been corrected.//
89 89  )))
252 +|(% colspan="3" %)(% colspan="3" %)
253 +(((
254 +== 2.00 ==
255 +)))
90 90  |(% colspan="1" %)(% colspan="1" %)
91 91  (((
92 92  Scripts
... ... @@ -233,6 +233,10 @@
233 233  (((
234 234  //Changed return value type to const char* to better identify failure reasons in Lua script.//
235 235  )))
402 +|(% colspan="3" %)(% colspan="3" %)
403 +(((
404 +== 1.50 ==
405 +)))
236 236  |(((
237 237  UI extensions
238 238  )))|(((
... ... @@ -298,6 +298,10 @@
298 298  (((
299 299  (% style="color: rgb(0,0,0);" %)//CancelConstruction() now returns if the cancellation was successful. //
300 300  )))
471 +|(% colspan="3" %)(% colspan="3" %)
472 +(((
473 +== 1.32 ==
474 +)))
301 301  |(((
302 302  UI extensions
303 303  )))|(((
... ... @@ -309,6 +309,10 @@
309 309  (((
310 310  //Instead of "nextdestname", use the properties "destination" or "destinationsector" to retrieve a destination component, then retrieve its "name" property.//
311 311  )))
486 +|(% colspan="3" %)(% colspan="3" %)
487 +(((
488 +== 1.20 ==
489 +)))
312 312  |(((
313 313  UI extensions
314 314  )))|(((
Confluence.Code.ConfluencePageClass[0]
id
... ... @@ -1,1 +1,1 @@
1 -83066959
1 +86048772
url
... ... @@ -1,1 +1,1 @@
1 -https://www.egosoft.com:8444/confluence/wiki/spaces/X4WIKI/pages/83066959/Breaking Changes
1 +https://www.egosoft.com:8444/confluence/wiki/spaces/X4WIKI/pages/86048772/Breaking Changes