]> icculus.org git repositories - divverent/nexuiz.git/blob - data/build-compat-pack.sh
more stuff into compat pack
[divverent/nexuiz.git] / data / build-compat-pack.sh
1 #!/bin/sh
2
3 # list of files v2.4.2 clients need to play on svn servers
4
5 COMPAT_FILES="
6         effectinfo.txt
7         gfx/crosshairtuba.tga
8         gfx/hud/inv_weapon0.tga
9         gfx/hud/inv_weapon10.tga
10         gfx/hud/inv_weapon11.tga
11         gfx/hud/inv_weapon12.tga
12         gfx/hud/inv_weapon13.tga
13         gfx/hud/inv_weapon14.tga
14         gfx/hud/inv_weapon15.tga
15         gfx/hud/inv_weapon1.tga
16         gfx/hud/inv_weapon2.tga
17         gfx/hud/inv_weapon3.tga
18         gfx/hud/inv_weapon4.tga
19         gfx/hud/inv_weapon5.tga
20         gfx/hud/inv_weapon6.tga
21         gfx/hud/inv_weapon7.tga
22         gfx/hud/inv_weapon8.tga
23         gfx/hud/inv_weapon9.tga
24         gfx/hud/inv_weapon_hlacmod_renameit.tga
25         gfx/hud/keys/key_backward_inv.tga
26         gfx/hud/keys/key_backward.tga
27         gfx/hud/keys/key_bg.tga
28         gfx/hud/keys/key_crouch_inv.tga
29         gfx/hud/keys/key_crouch.tga
30         gfx/hud/keys/key_forward_inv.tga
31         gfx/hud/keys/key_forward.tga
32         gfx/hud/keys/key_jump_inv.tga
33         gfx/hud/keys/key_jump.tga
34         gfx/hud/keys/key_left_inv.tga
35         gfx/hud/keys/key_left.tga
36         gfx/hud/keys/key_right_inv.tga
37         gfx/hud/keys/key_right.tga
38         gfx/hud/num_0_stroke.tga
39         gfx/hud/num_0.tga
40         gfx/hud/num_1_stroke.tga
41         gfx/hud/num_1.tga
42         gfx/hud/num_2_stroke.tga
43         gfx/hud/num_2.tga
44         gfx/hud/num_3_stroke.tga
45         gfx/hud/num_3.tga
46         gfx/hud/num_4_stroke.tga
47         gfx/hud/num_4.tga
48         gfx/hud/num_5_stroke.tga
49         gfx/hud/num_5.tga
50         gfx/hud/num_6_stroke.tga
51         gfx/hud/num_6.tga
52         gfx/hud/num_7_stroke.tga
53         gfx/hud/num_7.tga
54         gfx/hud/num_8_stroke.tga
55         gfx/hud/num_8.tga
56         gfx/hud/num_9_stroke.tga
57         gfx/hud/num_9.tga
58         gfx/hud/num_colon_stroke.tga
59         gfx/hud/num_colon.tga
60         gfx/hud/num_minus_stroke.tga
61         gfx/hud/num_minus.tga
62         gfx/hud/num_plus_stroke.tga
63         gfx/hud/num_plus.tga
64         gfx/hud/sb_accuracy.tga
65         gfx/hud/sb_ammobg.tga
66         gfx/hud/sb_armor.tga
67         gfx/hud/sbar.tga
68         gfx/hud/sb_bullets.tga
69         gfx/hud/sb_cells.tga
70         gfx/hud/sb_flag_blue_carrying.tga
71         gfx/hud/sb_flag_blue_lost.tga
72         gfx/hud/sb_flag_blue_shielded.tga
73         gfx/hud/sb_flag_blue_taken.tga
74         gfx/hud/sb_flag_red_carrying.tga
75         gfx/hud/sb_flag_red_lost.tga
76         gfx/hud/sb_flag_red_shielded.tga
77         gfx/hud/sb_flag_red_taken.tga
78         gfx/hud/sb_fuel.tga
79         gfx/hud/sb_health.tga
80         gfx/hud/sb_highlight_1.tga
81         gfx/hud/sb_highlight_2.tga
82         gfx/hud/sb_highlight_3.tga
83         gfx/hud/sb_highlight_4.tga
84         gfx/hud/sb_invinc.tga
85         gfx/hud/sb_kh_blue.tga
86         gfx/hud/sb_kh_pink.tga
87         gfx/hud/sb_kh_red.tga
88         gfx/hud/sb_kh_yellow.tga
89         gfx/hud/sb_nexball_carrying.tga
90         gfx/hud/sb_rocket.tga
91         gfx/hud/sb_scoreboard_bg.tga
92         gfx/hud/sb_scoreboard_tableheader.tga
93         gfx/hud/sb_shells.tga
94         gfx/hud/sb_str.tga
95         gfx/hud/sb_timerbg.tga
96         models/ctf/shield.md3
97         models/ctf/shockwavetransring.md3
98         models/gibs/arm.md3
99         models/gibs/arm.md3_0.skin
100         models/gibs/arm.md3_1.skin
101         models/gibs/arm.md3_2.skin
102         models/gibs/bloodyskull.md3
103         models/gibs/bloodyskull.md3_0.skin
104         models/gibs/bloodyskull.md3_1.skin
105         models/gibs/bloodyskull.md3_2.skin
106         models/gibs/chest.md3
107         models/gibs/chest.md3_0.skin
108         models/gibs/chest.md3_1.skin
109         models/gibs/chest.md3_2.skin
110         models/gibs/chunk.mdl
111         models/gibs/eye.md3
112         models/gibs/leg1.md3
113         models/gibs/leg1.md3_0.skin
114         models/gibs/leg1.md3_1.skin
115         models/gibs/leg1.md3_2.skin
116         models/gibs/leg2.md3
117         models/gibs/leg2.md3_0.skin
118         models/gibs/leg2.md3_1.skin
119         models/gibs/leg2.md3_2.skin
120         models/gibs/smallchest.md3
121         models/gibs/smallchest.md3_0.skin
122         models/gibs/smallchest.md3_1.skin
123         models/gibs/smallchest.md3_2.skin
124         models/onslaught/boom.md3
125         models/onslaught/controlpoint_icon_dmg1.md3
126         models/onslaught/controlpoint_icon_dmg2.md3
127         models/onslaught/controlpoint_icon_dmg3.md3
128         models/onslaught/controlpoint_icon_gib1.md3
129         models/onslaught/controlpoint_icon_gib2.md3
130         models/onslaught/controlpoint_icon_gib4.md3
131         models/onslaught/controlpoint_pad2.md3
132         models/onslaught/generator_dead.md3
133         models/onslaught/generator_dmg1.md3
134         models/onslaught/generator_dmg2.md3
135         models/onslaught/generator_dmg3.md3
136         models/onslaught/generator_dmg4.md3
137         models/onslaught/generator_dmg5.md3
138         models/onslaught/generator_dmg6.md3
139         models/onslaught/generator_dmg7.md3
140         models/onslaught/generator_dmg8.md3
141         models/onslaught/generator_dmg9.md3
142         models/onslaught/gen_gib1.md3
143         models/onslaught/gen_gib2.md3
144         models/onslaught/gen_gib3.md3
145         models/onslaught/ons_ray.md3
146         models/onslaught/shockwave.md3
147         models/onslaught/shockwavetransring.md3
148         models/sprites/as-defend_frame0.tga
149         models/sprites/as-destroy_frame0.tga
150         models/sprites/as-push_frame0.tga
151         models/sprites/bluebase_frame0.tga
152         models/sprites/bluebase.tga
153         models/sprites/danger_frame0.tga
154         models/sprites/danger.tga
155         models/sprites/defend.tga
156         models/sprites/destroy.tga
157         models/sprites/dom-blue_frame0.tga
158         models/sprites/dom-neut_frame0.tga
159         models/sprites/dom-pink_frame0.tga
160         models/sprites/dom-red_frame0.tga
161         models/sprites/dom-yellow_frame0.tga
162         models/sprites/flagcarrier_frame0.tga
163         models/sprites/flagcarrier.tga
164         models/sprites/helpme_frame0.tga
165         models/sprites/helpme.tga
166         models/sprites/here_frame0.tga
167         models/sprites/here.tga
168         models/sprites/item-extralife_frame0.tga
169         models/sprites/item-extralife_frame1.tga
170         models/sprites/item-fuelregen_frame0.tga
171         models/sprites/item-fuelregen_frame1.tga
172         models/sprites/item-invis_frame0.tga
173         models/sprites/item-invis_frame1.tga
174         models/sprites/item-jetpack_frame0.tga
175         models/sprites/item-jetpack_frame1.tga
176         models/sprites/item-shield_frame0.tga
177         models/sprites/item-shield_frame1.tga
178         models/sprites/item-speed_frame0.tga
179         models/sprites/item-speed_frame1.tga
180         models/sprites/item-strength_frame0.tga
181         models/sprites/item-strength_frame1.tga
182         models/sprites/keycarrier-blue_frame0.tga
183         models/sprites/keycarrier-blue.tga
184         models/sprites/keycarrier-finish_frame0.tga
185         models/sprites/keycarrier-finish.tga
186         models/sprites/keycarrier-friend_frame0.tga
187         models/sprites/keycarrier-friend.tga
188         models/sprites/keycarrier-pink_frame0.tga
189         models/sprites/keycarrier-pink.tga
190         models/sprites/keycarrier-red_frame0.tga
191         models/sprites/keycarrier-red.tga
192         models/sprites/keycarrier-yellow_frame0.tga
193         models/sprites/keycarrier-yellow.tga
194         models/sprites/key-dropped_frame0.tga
195         models/sprites/key-dropped.tga
196         models/sprites/nb-ball_frame0.tga
197         models/sprites/ons-cp-atck-blue_frame0.tga
198         models/sprites/ons-cp-atck-blue_frame1.tga
199         models/sprites/ons-cp-atck-neut_frame0.tga
200         models/sprites/ons-cp-atck-neut_frame1.tga
201         models/sprites/ons-cp-atck-red_frame0.tga
202         models/sprites/ons-cp-atck-red_frame1.tga
203         models/sprites/ons-cp-blue_frame0.tga
204         models/sprites/ons-cp-blue.tga
205         models/sprites/ons-cp-dfnd-blue_frame0.tga
206         models/sprites/ons-cp-dfnd-blue_frame1.tga
207         models/sprites/ons-cp-dfnd-red_frame0.tga
208         models/sprites/ons-cp-dfnd-red_frame1.tga
209         models/sprites/ons-cp-neut_frame0.tga
210         models/sprites/ons-cp-neut.tga
211         models/sprites/ons-cp-red_frame0.tga
212         models/sprites/ons-cp-red.tga
213         models/sprites/ons-gen-blue_frame0.tga
214         models/sprites/ons-gen-blue.tga
215         models/sprites/ons-gen-red_frame0.tga
216         models/sprites/ons-gen-red.tga
217         models/sprites/ons-gen-shielded_frame0.tga
218         models/sprites/ons-gen-shielded.tga
219         models/sprites/push.tga
220         models/sprites/race-checkpoint_frame0.tga
221         models/sprites/race-checkpoint.tga
222         models/sprites/race-finish_frame0.tga
223         models/sprites/race-finish.tga
224         models/sprites/redbase_frame0.tga
225         models/sprites/redbase.tga
226         models/sprites/waypoint_frame0.tga
227         models/sprites/waypoint.tga
228         models/sprites/wpn-campingrifle_frame0.tga
229         models/sprites/wpn-crylink_frame0.tga
230         models/sprites/wpn-electro_frame0.tga
231         models/sprites/wpn-gl_frame0.tga
232         models/sprites/wpn-hagar_frame0.tga
233         models/sprites/wpn-hlac_frame0.tga
234         models/sprites/wpn-hookgun_frame0.tga
235         models/sprites/wpn-laser_frame0.tga
236         models/sprites/wpn-minstanex_frame0.tga
237         models/sprites/wpn-nex_frame0.tga
238         models/sprites/wpn-porto_frame0.tga
239         models/sprites/wpn-rl_frame0.tga
240         models/sprites/wpn-seeker_frame0.tga
241         models/sprites/wpn-shotgun_frame0.tga
242         models/sprites/wpn-uzi_frame0.tga
243         models/weapons/g_tuba.md3
244         models/weapons/h_tuba.dpm
245         models/weapons/v_tuba.md3
246         particles/particlefont.tga
247         scripts/onslaught.shader
248         sound/announcer/male/amazing.ogg
249         sound/announcer/male/awesome.ogg
250         sound/ctf/blue_capture.wav
251         sound/ctf/blue_dropped.wav
252         sound/ctf/blue_returned.wav
253         sound/ctf/blue_taken.wav
254         sound/ctf/flag_respawn.wav
255         sound/ctf/red_capture.wav
256         sound/ctf/red_dropped.wav
257         sound/ctf/red_returned.wav
258         sound/ctf/red_taken.wav
259         sound/misc/armor10.wav
260         sound/misc/armor17_5.wav
261         sound/misc/armor1.wav
262         sound/misc/armor25.wav
263         sound/misc/itemrespawncountdown.ogg
264         sound/misc/poweroff.wav
265         sound/misc/powerup.ogg
266         sound/misc/shield_respawn.wav
267         sound/misc/strength_respawn.wav
268         sound/onslaught/electricity_explode.ogg
269         sound/onslaught/ons_hit1.ogg
270         sound/onslaught/ons_hit2.ogg
271         sound/onslaught/ons_spark1.ogg
272         sound/onslaught/ons_spark2.ogg
273         sound/onslaught/shockwave.ogg
274         sound/player/pyria-skadi/coms/needhelp2.ogg
275         sound/weapons/tuba_note0.ogg
276         sound/weapons/tuba_note-10.ogg
277         sound/weapons/tuba_note10.ogg
278         sound/weapons/tuba_note-11.ogg
279         sound/weapons/tuba_note11.ogg
280         sound/weapons/tuba_note-12.ogg
281         sound/weapons/tuba_note12.ogg
282         sound/weapons/tuba_note-13.ogg
283         sound/weapons/tuba_note13.ogg
284         sound/weapons/tuba_note-14.ogg
285         sound/weapons/tuba_note14.ogg
286         sound/weapons/tuba_note-15.ogg
287         sound/weapons/tuba_note15.ogg
288         sound/weapons/tuba_note-16.ogg
289         sound/weapons/tuba_note16.ogg
290         sound/weapons/tuba_note-17.ogg
291         sound/weapons/tuba_note17.ogg
292         sound/weapons/tuba_note-18.ogg
293         sound/weapons/tuba_note18.ogg
294         sound/weapons/tuba_note19.ogg
295         sound/weapons/tuba_note-1.ogg
296         sound/weapons/tuba_note1.ogg
297         sound/weapons/tuba_note20.ogg
298         sound/weapons/tuba_note21.ogg
299         sound/weapons/tuba_note22.ogg
300         sound/weapons/tuba_note23.ogg
301         sound/weapons/tuba_note24.ogg
302         sound/weapons/tuba_note25.ogg
303         sound/weapons/tuba_note26.ogg
304         sound/weapons/tuba_note27.ogg
305         sound/weapons/tuba_note-2.ogg
306         sound/weapons/tuba_note2.ogg
307         sound/weapons/tuba_note-3.ogg
308         sound/weapons/tuba_note3.ogg
309         sound/weapons/tuba_note-4.ogg
310         sound/weapons/tuba_note4.ogg
311         sound/weapons/tuba_note-5.ogg
312         sound/weapons/tuba_note5.ogg
313         sound/weapons/tuba_note-6.ogg
314         sound/weapons/tuba_note6.ogg
315         sound/weapons/tuba_note-7.ogg
316         sound/weapons/tuba_note7.ogg
317         sound/weapons/tuba_note-8.ogg
318         sound/weapons/tuba_note8.ogg
319         sound/weapons/tuba_note-9.ogg
320         sound/weapons/tuba_note9.ogg
321         sound/weapons/unavailable.wav
322         sound/weapons/weaponpickup.ogg
323         textures/bloodyskull_alien_glow.tga
324         textures/bloodyskull_alien.tga
325         textures/bloodyskull.jpg
326         textures/bloodyskull_robot_gloss.tga
327         textures/bloodyskull_robot_glow.tga
328         textures/bloodyskull_robot.tga
329         textures/generator_destroyed.tga
330         textures/generator_lightning2.tga
331         textures/generator_lightning.tga
332         textures/generator.tga
333         textures/meat_alien_gloss.tga
334         textures/meat_alien_glow.tga
335         textures/meat_alien_norm.tga
336         textures/meat_alien.tga
337         textures/meat_gloss.tga
338         textures/meat_norm.tga
339         textures/meat_robot_gloss.tga
340         textures/meat_robot_glow.tga
341         textures/meat_robot_norm.tga
342         textures/meat_robot.tga
343         textures/meat.tga
344         textures/ons_boom1.tga
345         textures/ons_gengib.tga
346         textures/ons_icon.tga
347         textures/ons_icon_thrust.tga
348         textures/ons_pad.tga
349         textures/ons_ray.tga
350         textures/ons_shockwave1.tga
351         textures/ons_shockwave2.tga
352         textures/ons_smoke1.tga
353         textures/ons_text.tga
354         textures/tuba_gloss.tga
355         textures/tuba_glow.tga
356         textures/tuba.tga
357         scripts/tuba.shader
358 "
359
360 rm -rf pack
361 mkdir pack
362 for F in $COMPAT_FILES; do
363         case "$F" in
364                 */*)
365                         mkdir -p pack/${F%/*}
366                         ;;
367         esac
368         cp "$F" pack/"$F"
369 done
370
371 cd pack
372
373 find textures/ -type f -print0 | qual=85 scaledown=256x256 xargs -0 ../../misc/tools/jpeg-if-not-alpha.sh
374
375 if false; then
376         find . -name \*.ogg | while IFS= read -r NAME; do
377                 c=`vorbiscomment -l "$NAME"`
378                 oggdec -o "$NAME.wav" "$NAME"
379                 oggenc -q 0 -o "$NAME" "$NAME.wav"
380                 echo "$c" | vorbiscomment -w "$NAME"
381                 rm -f "$NAME.wav"
382                 touch "${NAME%.ogg}.wav" # to disable this file, should the client have it
383         done
384 fi
385
386 rev=`svnversion .. | sed 's/M$//g; s/.*://g;'`
387 pack="zzz_svn-compat-$rev"
388 echo "Support files to play on svn servers of revision $rev" > "$pack.txt"
389 7za a -tzip -mx=9 "../$pack.pk3" .
390 rm -f "$pack.txt"
391
392 cd ..
393 rm -rf pack