]> icculus.org git repositories - divverent/nexuiz.git/blob - data/build-compat-pack.sh
nexball compat pack files
[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/nexball/ball.md3
125         models/onslaught/boom.md3
126         models/onslaught/controlpoint_icon_dmg1.md3
127         models/onslaught/controlpoint_icon_dmg2.md3
128         models/onslaught/controlpoint_icon_dmg3.md3
129         models/onslaught/controlpoint_icon_gib1.md3
130         models/onslaught/controlpoint_icon_gib2.md3
131         models/onslaught/controlpoint_icon_gib4.md3
132         models/onslaught/controlpoint_pad2.md3
133         models/onslaught/generator_dead.md3
134         models/onslaught/generator_dmg1.md3
135         models/onslaught/generator_dmg2.md3
136         models/onslaught/generator_dmg3.md3
137         models/onslaught/generator_dmg4.md3
138         models/onslaught/generator_dmg5.md3
139         models/onslaught/generator_dmg6.md3
140         models/onslaught/generator_dmg7.md3
141         models/onslaught/generator_dmg8.md3
142         models/onslaught/generator_dmg9.md3
143         models/onslaught/gen_gib1.md3
144         models/onslaught/gen_gib2.md3
145         models/onslaught/gen_gib3.md3
146         models/onslaught/ons_ray.md3
147         models/onslaught/shockwave.md3
148         models/onslaught/shockwavetransring.md3
149         models/sprites/as-defend_frame0.tga
150         models/sprites/as-destroy_frame0.tga
151         models/sprites/as-push_frame0.tga
152         models/sprites/bluebase_frame0.tga
153         models/sprites/bluebase.tga
154         models/sprites/danger_frame0.tga
155         models/sprites/danger.tga
156         models/sprites/defend.tga
157         models/sprites/destroy.tga
158         models/sprites/dom-blue_frame0.tga
159         models/sprites/dom-neut_frame0.tga
160         models/sprites/dom-pink_frame0.tga
161         models/sprites/dom-red_frame0.tga
162         models/sprites/dom-yellow_frame0.tga
163         models/sprites/flagcarrier_frame0.tga
164         models/sprites/flagcarrier.tga
165         models/sprites/helpme_frame0.tga
166         models/sprites/helpme.tga
167         models/sprites/here_frame0.tga
168         models/sprites/here.tga
169         models/sprites/item-extralife_frame0.tga
170         models/sprites/item-extralife_frame1.tga
171         models/sprites/item-fuelregen_frame0.tga
172         models/sprites/item-fuelregen_frame1.tga
173         models/sprites/item-invis_frame0.tga
174         models/sprites/item-invis_frame1.tga
175         models/sprites/item-jetpack_frame0.tga
176         models/sprites/item-jetpack_frame1.tga
177         models/sprites/item-shield_frame0.tga
178         models/sprites/item-shield_frame1.tga
179         models/sprites/item-speed_frame0.tga
180         models/sprites/item-speed_frame1.tga
181         models/sprites/item-strength_frame0.tga
182         models/sprites/item-strength_frame1.tga
183         models/sprites/keycarrier-blue_frame0.tga
184         models/sprites/keycarrier-blue.tga
185         models/sprites/keycarrier-finish_frame0.tga
186         models/sprites/keycarrier-finish.tga
187         models/sprites/keycarrier-friend_frame0.tga
188         models/sprites/keycarrier-friend.tga
189         models/sprites/keycarrier-pink_frame0.tga
190         models/sprites/keycarrier-pink.tga
191         models/sprites/keycarrier-red_frame0.tga
192         models/sprites/keycarrier-red.tga
193         models/sprites/keycarrier-yellow_frame0.tga
194         models/sprites/keycarrier-yellow.tga
195         models/sprites/key-dropped_frame0.tga
196         models/sprites/key-dropped.tga
197         models/sprites/nb-ball_frame0.tga
198         models/sprites/ons-cp-atck-blue_frame0.tga
199         models/sprites/ons-cp-atck-blue_frame1.tga
200         models/sprites/ons-cp-atck-neut_frame0.tga
201         models/sprites/ons-cp-atck-neut_frame1.tga
202         models/sprites/ons-cp-atck-red_frame0.tga
203         models/sprites/ons-cp-atck-red_frame1.tga
204         models/sprites/ons-cp-blue_frame0.tga
205         models/sprites/ons-cp-blue.tga
206         models/sprites/ons-cp-dfnd-blue_frame0.tga
207         models/sprites/ons-cp-dfnd-blue_frame1.tga
208         models/sprites/ons-cp-dfnd-red_frame0.tga
209         models/sprites/ons-cp-dfnd-red_frame1.tga
210         models/sprites/ons-cp-neut_frame0.tga
211         models/sprites/ons-cp-neut.tga
212         models/sprites/ons-cp-red_frame0.tga
213         models/sprites/ons-cp-red.tga
214         models/sprites/ons-gen-blue_frame0.tga
215         models/sprites/ons-gen-blue.tga
216         models/sprites/ons-gen-red_frame0.tga
217         models/sprites/ons-gen-red.tga
218         models/sprites/ons-gen-shielded_frame0.tga
219         models/sprites/ons-gen-shielded.tga
220         models/sprites/push.tga
221         models/sprites/race-checkpoint_frame0.tga
222         models/sprites/race-checkpoint.tga
223         models/sprites/race-finish_frame0.tga
224         models/sprites/race-finish.tga
225         models/sprites/redbase_frame0.tga
226         models/sprites/redbase.tga
227         models/sprites/waypoint_frame0.tga
228         models/sprites/waypoint.tga
229         models/sprites/wpn-campingrifle_frame0.tga
230         models/sprites/wpn-crylink_frame0.tga
231         models/sprites/wpn-electro_frame0.tga
232         models/sprites/wpn-gl_frame0.tga
233         models/sprites/wpn-hagar_frame0.tga
234         models/sprites/wpn-hlac_frame0.tga
235         models/sprites/wpn-hookgun_frame0.tga
236         models/sprites/wpn-laser_frame0.tga
237         models/sprites/wpn-minstanex_frame0.tga
238         models/sprites/wpn-nex_frame0.tga
239         models/sprites/wpn-porto_frame0.tga
240         models/sprites/wpn-rl_frame0.tga
241         models/sprites/wpn-seeker_frame0.tga
242         models/sprites/wpn-shotgun_frame0.tga
243         models/sprites/wpn-uzi_frame0.tga
244         models/weapons/g_tuba.md3
245         models/weapons/h_tuba.dpm
246         models/weapons/v_tuba.md3
247         particles/particlefont.tga
248         scripts/onslaught.shader
249         sound/announcer/male/amazing.ogg
250         sound/announcer/male/awesome.ogg
251         sound/ctf/blue_capture.wav
252         sound/ctf/blue_dropped.wav
253         sound/ctf/blue_returned.wav
254         sound/ctf/blue_taken.wav
255         sound/ctf/flag_respawn.wav
256         sound/ctf/red_capture.wav
257         sound/ctf/red_dropped.wav
258         sound/ctf/red_returned.wav
259         sound/ctf/red_taken.wav
260         sound/misc/armor10.wav
261         sound/misc/armor17_5.wav
262         sound/misc/armor1.wav
263         sound/misc/armor25.wav
264         sound/misc/itemrespawncountdown.ogg
265         sound/misc/poweroff.wav
266         sound/misc/powerup.ogg
267         sound/misc/shield_respawn.wav
268         sound/misc/strength_respawn.wav
269         sound/nexball/bounce.ogg
270         sound/nexball/drop.ogg
271         sound/nexball/shoot1.wav
272         sound/nexball/shoot2.ogg
273         sound/nexball/steal.ogg
274         sound/onslaught/electricity_explode.ogg
275         sound/onslaught/ons_hit1.ogg
276         sound/onslaught/ons_hit2.ogg
277         sound/onslaught/ons_spark1.ogg
278         sound/onslaught/ons_spark2.ogg
279         sound/onslaught/shockwave.ogg
280         sound/player/pyria-skadi/coms/needhelp2.ogg
281         sound/weapons/tuba_note0.ogg
282         sound/weapons/tuba_note-10.ogg
283         sound/weapons/tuba_note10.ogg
284         sound/weapons/tuba_note-11.ogg
285         sound/weapons/tuba_note11.ogg
286         sound/weapons/tuba_note-12.ogg
287         sound/weapons/tuba_note12.ogg
288         sound/weapons/tuba_note-13.ogg
289         sound/weapons/tuba_note13.ogg
290         sound/weapons/tuba_note-14.ogg
291         sound/weapons/tuba_note14.ogg
292         sound/weapons/tuba_note-15.ogg
293         sound/weapons/tuba_note15.ogg
294         sound/weapons/tuba_note-16.ogg
295         sound/weapons/tuba_note16.ogg
296         sound/weapons/tuba_note-17.ogg
297         sound/weapons/tuba_note17.ogg
298         sound/weapons/tuba_note-18.ogg
299         sound/weapons/tuba_note18.ogg
300         sound/weapons/tuba_note19.ogg
301         sound/weapons/tuba_note-1.ogg
302         sound/weapons/tuba_note1.ogg
303         sound/weapons/tuba_note20.ogg
304         sound/weapons/tuba_note21.ogg
305         sound/weapons/tuba_note22.ogg
306         sound/weapons/tuba_note23.ogg
307         sound/weapons/tuba_note24.ogg
308         sound/weapons/tuba_note25.ogg
309         sound/weapons/tuba_note26.ogg
310         sound/weapons/tuba_note27.ogg
311         sound/weapons/tuba_note-2.ogg
312         sound/weapons/tuba_note2.ogg
313         sound/weapons/tuba_note-3.ogg
314         sound/weapons/tuba_note3.ogg
315         sound/weapons/tuba_note-4.ogg
316         sound/weapons/tuba_note4.ogg
317         sound/weapons/tuba_note-5.ogg
318         sound/weapons/tuba_note5.ogg
319         sound/weapons/tuba_note-6.ogg
320         sound/weapons/tuba_note6.ogg
321         sound/weapons/tuba_note-7.ogg
322         sound/weapons/tuba_note7.ogg
323         sound/weapons/tuba_note-8.ogg
324         sound/weapons/tuba_note8.ogg
325         sound/weapons/tuba_note-9.ogg
326         sound/weapons/tuba_note9.ogg
327         sound/weapons/unavailable.wav
328         sound/weapons/weaponpickup.ogg
329         textures/nexball/ball_gloss.tga
330         textures/nexball/ball_norm.tga
331         textures/nexball/ball.tga
332         textures/bloodyskull_alien_glow.tga
333         textures/bloodyskull_alien.tga
334         textures/bloodyskull.jpg
335         textures/bloodyskull_robot_gloss.tga
336         textures/bloodyskull_robot_glow.tga
337         textures/bloodyskull_robot.tga
338         textures/generator_destroyed.tga
339         textures/generator_lightning2.tga
340         textures/generator_lightning.tga
341         textures/generator.tga
342         textures/meat_alien_gloss.tga
343         textures/meat_alien_glow.tga
344         textures/meat_alien_norm.tga
345         textures/meat_alien.tga
346         textures/meat_gloss.tga
347         textures/meat_norm.tga
348         textures/meat_robot_gloss.tga
349         textures/meat_robot_glow.tga
350         textures/meat_robot_norm.tga
351         textures/meat_robot.tga
352         textures/meat.tga
353         textures/ons_boom1.tga
354         textures/ons_gengib.tga
355         textures/ons_icon.tga
356         textures/ons_icon_thrust.tga
357         textures/ons_pad.tga
358         textures/ons_ray.tga
359         textures/ons_shockwave1.tga
360         textures/ons_shockwave2.tga
361         textures/ons_smoke1.tga
362         textures/ons_text.tga
363         textures/tuba_gloss.tga
364         textures/tuba_glow.tga
365         textures/tuba.tga
366         scripts/tuba.shader
367 "
368
369 rm -rf pack
370 mkdir pack
371 for F in $COMPAT_FILES; do
372         case "$F" in
373                 */*)
374                         mkdir -p pack/${F%/*}
375                         ;;
376         esac
377         cp "$F" pack/"$F"
378 done
379
380 cd pack
381
382 find textures/ -type f -print0 | qual=85 scaledown=256x256 xargs -0 ../../misc/tools/jpeg-if-not-alpha.sh
383
384 if false; then
385         find . -name \*.ogg | while IFS= read -r NAME; do
386                 c=`vorbiscomment -l "$NAME"`
387                 oggdec -o "$NAME.wav" "$NAME"
388                 oggenc -q 0 -o "$NAME" "$NAME.wav"
389                 echo "$c" | vorbiscomment -w "$NAME"
390                 rm -f "$NAME.wav"
391                 touch "${NAME%.ogg}.wav" # to disable this file, should the client have it
392         done
393 fi
394
395 rev=`svnversion .. | sed 's/M$//g; s/.*://g;'`
396 pack="zzz_svn-compat-$rev"
397 echo "Support files to play on svn servers of revision $rev" > "$pack.txt"
398 7za a -tzip -mx=9 "../$pack.pk3" .
399 rm -f "$pack.txt"
400
401 cd ..
402 rm -rf pack