// opt/convmap.cfg // assisted AC map conversion // - keeps a list of "maps to process" stored as aliases in saved.cfg // - each run of the script adds the maps listed in "convmaplist", if they are not already on the list // - script can be run multiple times // - amends the main menu (temporarily) with an entry to the batch conversion menu // - to add many maps, add something like convmaplist = [ac_2fort ac_abandoned ac_abyss ac_accomply ac_adventure3 ac_africa] to your autoexec // - this toolset converts maps to map format 10 and helps to fix a lot of errors on maps // - converts media paths that were valid with the old akimbo to the corresponding paths for akimbo2 // - also converts old unconverted map config files from versions before AC 1.2 // - generally nondestructive and can be run multiple times (double conversion should not generate problems), though stage CLEANSLOTS will always edit and save a map, no matter how often // - stage MAPCONFIG is the only stage that will not embed the config file - all later stages embed (format 10 does not require an embedded config, but strongly encourages it) // - can build a secondary list of licenses and mapmessages (also in saved.cfg) to allow bulk-editing of map licenses and messages outside AC if (! (checkalias cmcur)) [ tempalias convmaplist "" ] // pick up map names from the commandline ("run opt/convmap ac_2fort ac_abandoned ac_abyss ac_accomply") if $execnumargs [ convmaplist = "" loop i $execnumargs [ convmaplist = (concat $convmaplist (getalias (concatword execarg (+ 1 $i)))) ] ] looplisti [ CMASTAGE CMAFIRSTERROR CMALASTERROR CMACOMMENT CMANUM ] n [ tempalias $n $i ] tempalias cmstagenames [ NOP MAPCONFIG TRANSCLIP CLEANSLOTS FIXUNASSIGNEDS FIXBADENTS MANUALERRORS MANUALEDITING FIXPICKUPFHF FINDSTRAYENTS CHECKVANTAGEPOINTS ] if (checkalias uncliptagclippedmodels) [ cmstagenames = (concat $cmstagenames REDUCECLIPS) ] tempalias NUMSTAGES (listlen $cmstagenames) looplisti $cmstagenames n [ tempalias $n $i ] // make sure, all maps from convmaplist are "on the list" looplist $convmaplist m [ push mx (concatword __convmap__ $m) if (! (checkalias $mx)) [ push res (loadmap $m) if (>= $res 0) [ // add map to list $mx = (concat 0 (concatword "0x" (h0 8 $res))) echo convmap: added map $$mx ] pop res ] pop mx ] if (! $soundvol) [ soundvol 1 ] // with soundvol 0, mapsound commands don't work properly if (! (checkalias cmcur)) [ // execute this only once const cmset [ // cmset ident index value push nv "" loop i (+ 1 (- $arg2 (listlen $$arg1))) [ $arg1 = (concatword $$arg1 " \"\"") ] looplisti $$arg1 v [ if $i [ nv = (concatword $nv " ") ] if (= $i $arg2) [ nv = (concatword $nv (escape $arg3)) ] [ nv = (concatword $nv (escape $v)) ] ] $arg1 = (pop nv) ] const cmget [ // cmget ident index result (at $$arg1 $arg2) ] const cmprinterror [ if (&b $arg1 0x0000001) [ echo (concatword $arg2 "entity attribute overflow") ] if (&b $arg1 0x0000010) [ echo (concatword $arg2 "map decoder error") ] if (&b $arg1 0x0000100) [ echo (concatword $arg2 "world error -1") ] if (&b $arg1 0x0000200) [ echo (concatword $arg2 "world error -2") ] if (&b $arg1 0x0001000) [ echo (concatword $arg2 "missing skymap texture files") ] if (&b $arg1 0x0002000) [ echo (concatword $arg2 "missing world texture files") ] if (&b $arg1 0x0004000) [ echo (concatword $arg2 "missing mapmodel files") ] if (&b $arg1 0x0008000) [ echo (concatword $arg2 "missing mapsound files") ] if (&b $arg1 0x0010000) [ echo (concatword $arg2 "bad mapsound command in map config") ] if (&b $arg1 0x0020000) [ echo (concatword $arg2 "bad mapmodel command in map config") ] if (&b $arg1 0x0040000) [ echo (concatword $arg2 "bad texture command in map config") ] if (&b $arg1 0x0080000) [ echo (concatword $arg2 "bad loadnotexture command in map config") ] if (&b $arg1 0x0100000) [ echo (concatword $arg2 "error during loading of mapmodels (see earlier console output)") ] if (&b $arg1 0x0200000) [ echo (concatword $arg2 "using unassigned texture slot") ] if (&b $arg1 0x1000000) [ echo (concatword $arg2 "out of range integer value in map config") ] if (&b $arg1 0x2000000) [ echo (concatword $arg2 "out of range float value in map config") ] if (&b $arg1 0x4000000) [ echo (concatword $arg2 "generic cubescript error in map config") ] ] const cmerr_abort 0x0000111 // abort immediately const cmerr_editsave 0x0000200 // fixed by map save in edit mode const cmerr_fixlater 0x010f000 // fix manually anytime const cmerr_config 0x70f0000 // config file error (requires manually fixed config file, abort in stage MAPCONFIG) // state of converter tempalias cmcur "" tempalias cmediting "" tempalias cmeditstage 0 tempalias cmdoneediting "" alias cmstage 1 alias cmdomanual 0 // 1: pause for manual fixing of correctable errors alias cmconverredit 1 // 1: pause for manual edit on conversion error newmenu main menuitem "" -1 menuitem "Map conversion \i\1" [showmenu "Convert maps"] newmenu "Convert maps" menuinit [ resetcurmenu if (! $connected) [ menuheader "" "\f2Please backup all your maps before using convmap. Thx." cmafterfinishediting = "" //if (&& (strlen $cmediting) (! $unsavededits)) [ cmdoneediting ] if (strlen $cmediting) [ menuitem (concatword "Currently editing \fs\f1" $cmediting "\fr in stage " $cmeditstage " (" (at $cmstagenames $cmeditstage) ")") -1 menuitem "" -1 menuitem "Save changes ->" [ cmafterfinishediting = "showmenu [Convert maps]" ; showmenu "Convmap save" ] ] [ menuitem "\f0[ Start/Continue map conversion ]" cmwork ] menuitem "" -1 if (strlen $cmcur) [ menuitem (concatword "Batch processing currently limited to map \fs\f1" $cmcur "\fr only") -1 menuitem "[Remove limitation and continue editing the whole batch]" [ cmcur = "" ; refreshcurmenudelayed ] menuitem "" -1 ] menuitemslider "Conversion stage:\t" 0 -1 $cmstage $cmstagenames [ cmstage = $arg1 ] menuitemradio "On map load errors:\t\t" 0 1 $cmdomanual [ "abort map" "edit manually" ][ cmdomanual = $arg1 ] menuitemradio "On conversion errors:\t\t" 0 1 $cmconverredit [ "abort map" "edit manually" ][ cmconverredit = $arg1 ] menuitem "" -1 menuitem "Show list of maps \i\1" [showmenu "List maps to convert"] menuitem "Add map to list \i\1" [showmenu "Add map to convmap list"] menuitem "Tools menu \i\1" [showmenu "Convert maps tools"] ][ menuheader "" "" menuitem "\f3convmap can only be used offline" -1 ] ] newmenu [Add map to convmap list] menudirlist "packages/maps" cgz [run opt/convmap $arg1 ; closecurmenu] const __cmconfirm [ echo "\fs\f0Done:\fr\t" $arg1 refreshcurmenudelayed ] const cmsetnonabortstage [ looplist (enumalias __convmap__) [mx m] [ if (>= (cmget $mx $CMASTAGE) 0) [ cmset $mx $CMASTAGE $arg1 ] ] cmstage = (+ $arg1 1) ] newmenu "Convert maps tools" menuinit [ resetcurmenu menuheader "" "\f2Please backup all your maps before using convmap. Thx." menuitem "Show list of maps \i\1" [showmenu "List maps to convert"] menuitem "Retry all aborted maps (change negative stages to zero)" [ looplist (enumalias __convmap__) [mx m] [ if (< (cmget $mx $CMASTAGE) 0) [ cmset $mx $CMASTAGE 0 ] ] ; __cmconfirm ] menuitem "Retry all maps (change all stages to zero)" [ looplist (enumalias __convmap__) [mx m] [ cmset $mx $CMASTAGE 0 ] ; __cmconfirm ] looplisti $cmstagenames n [ if (> $i 2) [ menuitem (concat "Set all non-aborted maps to continue with stage" $n) (concat "cmsetnonabortstage" (- $i 1) "; __cmconfirm") ] ] menuitem "\f3Delete list of maps" [ looplist (enumalias __convmap__) [mx m] [ delalias $mx ] ; __cmconfirm ] menuitem "Delete aborted maps from list" [ looplist (enumalias __convmap__) [mx m] [ if (< (cmget $mx $CMASTAGE) 0) [ delalias $mx ] ] ; __cmconfirm ] menuitem "Delete non-aborted maps from list" [ looplist (enumalias __convmap__) [mx m] [ if (> (cmget $mx $CMASTAGE) 0) [ delalias $mx ] ] ; __cmconfirm ] menuitem "" -1 menuitem "Show list of licenses and mapmessages \i\1" [showmenu "List licenses and mapmessages"] menuitem "Generate list of licenses and mapmessages (does not delete existing list)" [cmgenlicenses ; __cmconfirm ] menuitem "Apply list of licenses and mapmessages" [cmapplylicenses ; __cmconfirm ] menuitem "\f3Delete list of licenses and mapmessages" [ looplist (enumalias __convmaplicenses__) [mx m] [ delalias $mx ] ; __cmconfirm ] menuitem "Delete unchanged licenses and mapmessages from list" [cmchangedlicensesonly ; __cmconfirm] menuitem "" -1 menuitem "Reset notexture on all maps in stage 2 or higher" [ looplist (enumalias __convmap__) [mx m] [ if (> (cmget $mx $CMASTAGE) 1) [ loadmap $m ; loadnotexture ; savemap ] ] ; __cmconfirm ] menuitem "Extract config files of maps in stage 2 or higher with errors remaining" [ looplist (enumalias __convmap__) [mx m] [ if (&& (> (cmget $mx $CMASTAGE) 1) (concat loadmap $m)) [ extractconfigfile ; savemap ] ] ; __cmconfirm ] menuitem "Extract config files of maps in stage 2 or higher" [ looplist (enumalias __convmap__) [mx m] [ if (> (cmget $mx $CMASTAGE) 1) [ loadmap $m ; extractconfigfile ; savemap ] ] ; __cmconfirm ] menuitem "Check used media sources of all maps (write list to comment)" [ cm_mediasourcetocomment ; __cmconfirm ] ] newmenu "List licenses and mapmessages" menuinit [ resetcurmenu menusynctabstops 1 looplist (enumalias __convmaplicenses__) [mx m] [ menuitem (concatword $$mx "\t" $m) (concat cmpickmap $m) ] ] const cmgenlicenses [ looplist (enumalias __convmap__) [mx m] [ push mlx (concatword __convmaplicenses__ $m) if (! (checkalias $mlx)) [ loadmap $m $mlx = (concat (escape $mapinfo_license) (escape $mapinfo_comment) (escape $mapmsg)) echo (concatword $m ".cfg: alias " $mlx " " (escape $$mlx)) ] pop mlx ] ] const cmapplylicenses [ looplist (enumalias __convmaplicenses__) [mlx m] [ loadmap $m push changed 0 looplisti $$mlx [ license comment mapmessage ] [ if (! i) [ if (&& (strlen $license) (! (strcmp $license $mapinfo_license))) [ mapinfo_license $license ; changed = 1 ] if (&& (strlen $license) (! (strcmp $comment $mapinfo_comment))) [ mapinfo_comment $comment ; changed = 1 ] if (&& (strlen $mapmessage) (! (strcmp $mapmessage $mapmsg))) [ mapmsg $mapmessage ; changed = 1 ] ] ] if (pop changed) savemap ] ] const cmchangedlicensesonly [ looplist (enumalias __convmaplicenses__) [mlx m] [ loadmap $m if (&& (strcmp (cmget $mlx 2) $mapmsg) (strcmp (cmget $mlx 0) $mapinfo_license)) [ if (|| (! (strlen $mapinfo_license)) (strcmp (cmget $mlx 0) $mapinfo_comment)) [ delalias $mlx ] ] ] ] const cm_mediasourcetocomment [ looplist (enumalias __convmaporigin__) [mx m] [ delalias $mx ] looplist (enumalias __convmap__) [mx m] [ loadmap $m push path "" push origin "" loop i 256 [ path = (mapmodelslotname $i) if (strlen $path) [ origin = (getmapmodelattributes $path distribution) if (! (strlen $origin)) [ origin = "custom_unsorted" ] [__convmaporigin__@(escapenoquotes $origin)] = $origin ] ] looplisti (textureslotusagelist) [cnt used] [ path = (at (edittextureslot $i) 1) if (strlen $path) [ origin = (gettextureorigin $path) [__convmaporigin__@(escapenoquotes $origin)] = $origin ] ] loop i 256 [ path = (at (editmapsoundslot $i) 0) if (strlen $path) [ origin = (getmapsoundorigin $path) [__convmaporigin__@(escapenoquotes $origin)] = $origin ] ] origin = "\f1media sources: official\f2" delalias __convmaporigin__official looplist (enumalias __convmaporigin__) [mx m] [ origin = (concat $origin $$mx) ; delalias $mx ] cmset $mx $CMACOMMENT (pop origin path) ] ] const cmpickmap [ tempalias cmpick $arg1 ; showmenu "Map conversion state" ] newmenu "Map conversion state" menuinit [ resetcurmenu push mx (concatword __convmap__ $cmpick) menuheader "" (concatword "conversion state for map \f1" $cmpick) if (< (cmget $mx $CMASTAGE) 0) [ menuitemtextinput "Conversion aborted at stage\t" (concat cmget $mx $CMASTAGE) (concat cmset $mx $CMASTAGE "$arg1") ][ menuitemtextinput "Converted up to stage\t\t" (concat cmget $mx $CMASTAGE) (concat cmset $mx $CMASTAGE "$arg1") ] menuitem (concat "Errors during first map load:\t\t" (cmget $mx $CMAFIRSTERROR)) (concat cmprinterror (cmget $mx $CMAFIRSTERROR)) menuitem (concat "Errors during most recent map load:\t" (cmget $mx $CMALASTERROR)) (concat cmprinterror (cmget $mx $CMALASTERROR)) menuitemtextinput "Comment\t" [escapenoquotes (cmget @mx @CMACOMMENT)] [cmset @mx @CMACOMMENT (at (addpunct $arg1) 0)] menuitem "" -1 menuitem "\f3[Delete map from batch processing list]" (concat delalias $mx "; closemenu [Map conversion state]") menuitem "[Limit batch processing to this single map]" (concat "cmcur =" $cmpick) menuitemmapload "[Load map]" (concat coop $cmpick) pop mx ] newmenu "List maps to convert" menuinit [ resetcurmenu looplist (enumalias __convmap__) [mx m] [ push mi "" push nt (+ $CMANUM 1) looplisti $$mx v [ mi = (concatword "\fs" $mi $v "\fr\t") -= nt 1 ] loop i $nt [ mi = (concatword $mi "\t") ] menuitem (concatword $mi $m) (concat cmpickmap $m) pop mi nt ] ] newmenu "Convmap save" menuinit [ resetcurmenu if (&& (&& (strlen $cmediting) (strcmp $cmediting (curmap))) $unsavededits) [ menuitem (concatword "\f0[Save changes to " $cmediting "]") (concat savemap $cmediting "; cmdoneediting ; " $cmafterfinishediting) menuitem "" -1 menuitem (concatword "\f3[Throw away changes on " $cmediting "]") (concat "cmdoneediting ; " $cmafterfinishediting) ][ menuitem "nothing to save" (concat "cmdoneediting ; " $cmafterfinishediting) ] ] const cmfinishediting [ if (&& (strlen $cmediting) (strcmp $cmediting (curmap))) [ showmenu "Convmap save" result 1 ][ result 0 ] ] const cmwork [ if $editing edittoggle // end edit mode if (! (player1 alive)) [ spectate sleep 100 cmwork // try again ][ cmwork_contd // alive: go to work ] ] const cmwork_contd [ echo "\f0Continue map conversion up to stage \f1" $cmstage // process unsaved edits tempalias cmafterfinishediting cmwork if (! (cmfinishediting)) [ tempalias cmafterfinishediting "" push n "" push abort 0 push stagefail 0 // loop through all maps and all requested stages loop _curstage $cmstage [ push curstage (+ $_curstage 1) looplist (enumalias __convmap__) [mx mn] [ if (&& (strlen $cmcur) (! (strcmp $cmcur $mn))) continue // fast-forward to cmcur n = (cmget $mx $CMASTAGE) if (&& (&& (>= $n 0) (< $n $curstage)) (! $abort)) [ echo "Processing conversion on map \fs\f1" $mn "\fr stage \fs\f1" (cmget $mx $CMASTAGE) "\fr" // process map $mn stage $curstage if (= $curstage $MAPCONFIG) [ _ignoreillegalpaths 1 ] // hopefully, the illegal paths will be converted... n = (loadmap $mn) _ignoreillegalpaths 0 cmset $mx $CMALASTERROR (concatword "0x" (h0 8 $n)) if (&b $n (if (= $curstage $MAPCONFIG) $cmerr_config $cmerr_abort)) [ cmprinterror $n (concatword "\f3aborting map " $mn ": ") cmset $mx $CMASTAGE (- 0 $curstage) cmset $mx $CMACOMMENT "aborted" ] [ // enter edit mode if (! $editing) edittoggle stagefail = 0 (concatword cm_dostage_ (at $cmstagenames $curstage)) $mx $mn $curstage $n if (&& $stagefail (! $cmconverredit)) [ echo "\f3aborting map" $mn due to problems in conversion stage $curstage cmset $mx $CMASTAGE (- 0 $curstage) cmset $mx $CMACOMMENT "aborted" ] cmprinterror $n "map load error: " if (&& (&b $cmerr_fixlater $n) $cmdomanual) [ abort = 1 ] if (&& $stagefail $cmconverredit) [ abort = 1 ] if $abort [ echo "\f3Pausing for manual error correction. Continue batch run with \"/cmwork\" or use the menu." cmediting = (curmap) cmdoneediting = (concat cmset $mx $CMASTAGE $curstage " ; cmdoneediting = [] ; cmediting = [] ") cmeditstage = $curstage ] [ if $editing edittoggle // end edit mode if (! $stagefail) [ // no errors: save result cmset $mx $CMASTAGE $curstage if (&& $unsavededits (strcmp (curmap) $mn)) [ // finish stage and save changes savemap ] ] ] ] ] ] pop curstage ] if (! $abort) [ echo "\f0Finished map conversion up to stage \f1" $cmstage ] if (&& $abort (strlen (enumtodoentities))) [ sleep 1000 "if (! $editing) edittoggle ; showmenu [TODO entities]" ] pop n abort stagefail ] ] const cm_dostage_ [ echo stage $arg3 processing not available ] const cm_dostage_NOP [] const cm_dostage_MAPCONFIG [ // only change config file - no changes to the cgz in this stage automapconfig // embed config file push cnt (+ (cmfixmapmodelpaths) (cmfixtexturepaths) (cmfixmapsoundpaths) (cmfixskymappaths)) push fixcfg (&b $arg4 0x0000f000) if (!= $cmstage 1) [ fixcfg = 0 ] if (|| $cnt $fixcfg) [ // write cfg, if paths were changed - or if media files were missing (to get a clean cfg to fix manually) savemap ________mapconvtemp // write to temp cgz to clear $unsavededits extractconfigfile // only write config file ] pop cnt fixcfg ] const cm_dostage_TRANSCLIP [ // translate clip entities // automatic changes transformclipentities // general cleanup if (< $waterlevel -128) [ // no water waterlevel -10000 watercolour echo no water used: values reset to defaults ] if (&b $arg4 $cmerr_editsave) savemap ] const cm_dostage_CLEANSLOTS [ // strip and sort all config slots // delete all unused config slots loop ii 256 [ push i (- 255 $ii) ; if (&& (strlen (mapmodelslotname $i)) (strcmp "" (mapmodelslotusage $i))) [deletemapmodelslot $i] ; pop i] loop ii 251 [ push i (- 255 $ii) ; if (&& (strlen (edittextureslot $i)) (strcmp "" (textureslotusage $i))) [deletetextureslot $i] ; pop i] loop ii 256 [ push i (- 255 $ii) ; if (&& (strlen (editmapsoundslot $i)) (strcmp "" (mapsoundslotusage $i))) [deletemapsoundslot $i] ; pop i] // sort all config slots and merge doubles sortmapmodelslots mergeused sorttextureslots mergeused sortmapsoundslots mergeused ] const cm_dostage_FIXUNASSIGNEDS [ // pause on maps with unassigned map models or -sounds if (entstats) [ stagefail = 1 ] ] const cm_dostage_FIXBADENTS [ // pause on maps with entities with illegal attributes looplist (enumentities playerstart) i [ push a (at (editentity $i) 5) // attr2 if (&& (&& (!= $a 0) (!= $a 1)) (!= $a 100)) [ echo (concatword "playerstart entity #" $i " has an illegal attr2 value (" $a ") - allowed are 0, 1 and 100") addtodoentity $i (concatword "illegal attr2 value (" $a ") - allowed are 0, 1 and 100") stagefail = 1 ] pop a ] looplist (enumentities ctf-flag) i [ push a (at (editentity $i) 5) // attr2 if (&& (!= $a 0) (!= $a 1)) [ echo (concatword "ctf-flag entity #" $i " has an illegal attr2 value (" $a ") - allowed are 0 and 1") addtodoentity $i (concatword "illegal attr2 value (" $a ") - allowed are 0 and 1") stagefail = 1 ] pop a ] looplist [playerstart 2 pistol 1 ammobox 1 grenades 1 health 1 helmet 1 armour 1 akimbo 1 ladder 1 ctf-flag 2] [ent attrs] [ looplist (enumentities $ent) i [ push t 0 loop a (- 4 $attrs) [ if (!= (at (editentity $i) (+ 4 $attrs $a)) 0) [ t = 1 ] ] if (pop t) [ addtodoentity $i "unused entity attribute has non-zero value" stagefail = 1 ] ] ] ] const cm_dostage_MANUALERRORS [ // pause on all maps with any errors left if $arg4 [ stagefail = 1 ] ] const cm_dostage_MANUALEDITING [ // pause on all maps stagefail = 1 ] const cm_dostage_REDUCECLIPS [ // automatically un-clip mapmodels if possible if (|| (uncliptagclippedmodels) (unclipentclippedmodels)) [ if $dryrun [stagefail = 1] [duplicateclippedslots_cleanup] ] ] const cm_dostage_FIXPICKUPFHF [ // pause on maps with entities with pickups elevated by unnecessary heightfields looplist [pistol ammobox grenades health helmet armour akimbo] ent [ looplist (enumentities $ent) i [ push entinfo (editentity $i) select (at $entinfo 1) (at $entinfo 2) 2 2 push v 0 selectionwalk [ if (|| $sw_rel_x $sw_rel_y) [ if (|| (= $sw_type 2) (!= $sw_vdelta $v)) [ v = 0 ] // if FHF around or different vdelta: not just an elevated model ][ if (= $sw_type 2) [ v = $sw_vdelta ] // FHF below pickup ] ] if (&& $v (! (&b $v 3))) [ // only mark elevations by whole cube sizes addtodoentity $i "pickup entity elevated old-style, use attr1 instead" stagefail = 1 ] pop v entinfo ] ] ] const cm_dostage_FINDSTRAYENTS [ // find entities sitting in 8x8 solid cubes looplist [playerstart pistol ammobox grenades health helmet armour akimbo ladder ctf-flag light mapmodel ] ent [ looplist (enumentities $ent) i [ push t 0 select (- (at (editentity $i) 1) 4) (- (at (editentity $i) 2) 4) 8 8 selectionwalk [ += t $sw_type ] if (&& (! (pop t)) (strlen (selx))) [ addtodoentity $i "entity placed in solid cubes" stagefail = 1 ] ] ] ] const cm_dostage_CHECKVANTAGEPOINTS [ // check for vantage points, abort if there's no valid one if (! gotovantagepoint) [ echo "\t\t\f9No vantage point set." stagefail = 1 ] ] const cmfixmapmodelpaths [ push cnt 0 push ispre12 0 looplisti [ laptop1 jcdpc/laptop // convert official older than 1.2 rattrap/cbbox toca/cardboardbox rattrap/rbbox ratboy/toca_cardboardbox_reskin rattrap/hanginlamp jcdpc/hanginglamp rattrap/ventflap jcdpc/ventflap rattrap/milkcrate2 ratboy/toca_milkcrate_blue rattrap/milkcrate1 ratboy/toca_milkcrate_red aard makke/aardapple_enginebox barrel makke/barrel barrel2 makke/barrel_fallen barrel-toxic makke/barrel_toxic rattrapbarrel makke/barrel_newsteel rattrapbarrel2 makke/barrel_newsteel_fallen bridge makke/platform bridge_shine makke/platform_shine bulb makke/lightbulb can makke/coke_can can2 makke/coke_can_fallen chair1 makke/office_chair coffeemug makke/coffee_mug comp_bridge makke/platform_bridge drainpipe makke/drainpipe dumpster makke/dumpster elektro makke/electric_meter europalette makke/pallet fag makke/cigarette fence makke/fence_chainlink fencegate_closed makke/fence_chainlink_closed_gate fencegate_open makke/fence_chainlink_no_gate fencepost makke/fence_chainlink_post flyer makke/flyer_propaganda tree01 makke/flyer_environmental gastank makke/fuel_tank icicle makke/icicle hook makke/hook locker makke/locker light01 makke/fluorescent_lamp wood01 makke/broken_wood wrench makke/wrench strahler makke/wall_spotlight streetlamp makke/street_light ladder_rung makke/ladder_1x ladder_7x makke/ladder_7x ladder_8x makke/ladder_8x ladder_10x makke/ladder_10x ladder_11x makke/ladder_11x ladder_15x makke/ladder_15x ladderx15_center3 makke/ladder_15x_offset gutter_h cleaner/grates/grate_hor gutter_v cleaner/grates/grate_vert minelift makke/mine-shaft_elevator screw makke/bolt_nut sail makke/sail snowsail makke/sail_snow wires/2x8 makke/wires/2x8 wires/3x8 makke/wires/3x8 wires/4x8 makke/wires/4x8 wires/4x8a makke/wires/4x8a poster makke/signs/wanted signs/arab makke/signs/arab signs/biohazard makke/signs/biohazard signs/caution makke/signs/caution_voltage signs/maint makke/signs/caution_maintainence signs/flammable makke/signs/flammable signs/speed makke/signs/speed nocamp makke/signs/no_camping roadblock01 makke/roadblock roadblock02 makke/roadblock_graffiti nothing makke/nothing_clip picture1 makke/picture plant01 makke/plant_leafy plant01_d makke/plant_leafy_dry plant01_s makke/plant_leafy_snow grass01 makke/grass_short grass01_d makke/grass_short_dry grass01_s makke/grass_short_snow grass02 makke/grass_long grass02_d makke/grass_long_dry grass02_s makke/grass_long_snow shadowfix/boeufmironton/bidon1 boeufmironton/bidon1 // duplicates shadowfix/boeufmironton/bidon2 boeufmironton/bidon2 shadowfix/boeufmironton/caisse01 boeufmironton/caisse01 shadowfix/boeufmironton/caisse02 boeufmironton/caisse02 shadowfix/boeufmironton/carton1 boeufmironton/carton1 shadowfix/boeufmironton/citerne boeufmironton/citerne shadowfix/boeufmironton/commande1 boeufmironton/commande1 shadowfix/boeufmironton/elevateur boeufmironton/elevateur shadowfix/boeufmironton/palan1 boeufmironton/palan1 shadowfix/boeufmironton/palette1 boeufmironton/palette1 shadowfix/boeufmironton/passerelle boeufmironton/passerelle shadowfix/boeufmironton/portique boeufmironton/portique shadowfix/boeufmironton/poutrelle1 boeufmironton/poutrelle1 shadowfix/boeufmironton/rail boeufmironton/rail shadowfix/boeufmironton/tuyaux1 boeufmironton/tuyaux1 shadowfix/boeufmironton/wagon boeufmironton/wagon shadowfix/sr_persian/wagon sr_persian/wagon shadowfix/sr_persian/wagon2 sr_persian/wagon2 ice/ventflap jcdpc/ventflap pink/lights/ovallamp misterfloppy/ovallamp halfdoor dcp/halfdoor fantomas/barsign fantomas.ua/bar_sign pink/lights/hanginlamp jcdpc/hanginglamp pink/lights/minelamp misterfloppy/minelamp ton ton/up cleaner/gutter_h cleaner/grates/grate_hor cleaner/gutter_v cleaner/grates/grate_vert makkes/vase dcp/vases/vase models/warning_light cleaner/warning_light europalette2 makke/pallet_vert ayers_skull ayers/skull // moved models barique boeufmironton/barique barrel6 dcp/barrel6 beerbottle/beerbottle1 zz_unsorted/beerbottle/1 beerbottle/beerbottle2 zz_unsorted/beerbottle/2 bench2 zz_unsorted/bench boxtrailer sitters/boxtrailer bridge_incas2 boeufmironton/bridge_incas2 bridge_incas boeufmironton/bridge_incas bukz/sundial primevil/sundial campbed sitters/campbed candle dementium4ever/candle car sitters/car2 chain tentus/chains/chain coffin zz_unsorted/coffin container cleaner/container crate psionic/crate curvechain tentus/chains/curvechain dcp_candle dcp/candle digicode cleaner/digicode elecbox acord/elecbox geartrooper/warning_light cleaner/warning_light goal sniper/goal goblet zz_unsorted/goblet grass dcp/grass gravure01 boeufmironton/gravure01 gravure02 boeufmironton/gravure02 gutter_h cleaner/grates/grate_hor gutter_v cleaner/grates/grate_vert helicopter dementium4ever/helicopter heli sitters/heli hotel_sign sr_persian/hotel_sign jeep sitters/jeep kt_kubalwagon kenbeyer/kt_kubalwagon leafs dcp/leafs makke/med_chand dcp/chandelier makke/signs/exit signs/exit2 money sunnyd/money oldchair sr_persian/oldchair old_table sr_persian/old_table old_wagon sr_persian/old_wagon paquet deathstar/paquet piano zz_unsorted/piano picture2 zz_unsorted/picture2 plant1 dcp/plant1 red_cross_jeep cleaner/red_cross_jeep rope zz_unsorted/rope skintrolpc zz_unsorted/trolpc smplant dcp/smplant soleil2 boeufmironton/soleil2 soleil boeufmironton/soleil stairs zz_unsorted/stairs statue deathstar/statue tankwall sitters/tankwall ton/down sitters/ton/down ton/up sitters/ton/up tree_models/mushroom dcp/mushroom treppe sr_persian/treppe2 vent dcp/vent victorian/oldclock cleaner/victorian/oldclock wagon sitters/wagon warning_light geartrooper/warning_light cleaner/dockingring cleaner/docking_ring cleaner/floorhole cleaner/floor_hole cleaner/saloondoors cleaner/saloon_doors cleaner/westerndoors2 cleaner/western_doors_2 cleaner/westerndoors3 cleaner/western_doors_3 cleaner/westerndoorssnoo cleaner/western_doors_snoo cleaner/westernsigns/butts cleaner/western_signs/butts cleaner/westernsigns/noguns cleaner/western_signs/noguns "cleaner/planks/plank(hor)" cleaner/planks/plank_hor thekid/skateboard TheKid/skateboard Raczo/fence1 raczo/fence1 Raczo/fence-post raczo/fence-post pink/lights/light1 sitters/light1 pink/lights/light2 sitters/light2 pink/lights/light3 sitters/light3 pink/lights/light4 sitters/light4 pink/lights/light5 sitters/light5 pink/indust/pallette sitters/pallette cleaner/exting sitters/exting ice/barrel_ice deathstar/barrel_ice ice/tree_snow deathstar/tree_snow ac_library/book zero/book/red ac_library/book2 zero/book/blue ac_library/book3 zero/book ac_library/ladder zero/ladder zero/ac_archives/book_1 zero/book/fault zero/ac_archives/book_2 zero/book zero/ac_archives/book_3 zero/book zero/ac_archives/book_4 zero/book/red zero/ac_archives/book_5 zero/book/mock zero/ac_archives/book_new zero/book/fault zero/ac_archives/book_new2 zero/book/blue zero/ac_archives/book_new3 zero/book/green zero/ac_archives/book_new4 zero/book/red zero/ac_archives/book_new5 zero/book/mock zero/ac_archives/desk zero/desk zero/ac_archives/ivy zero/ivy zero/ac_roots/oldchair_new zero/oldchair_new zero/ac_roots/tonneletv zero/tonneletv_roots zero/ac_roots/yopasign zero/sign/yopa zero/ac_tanglewood/bulletinboard zero/bulletinboard zero/ac_tanglewood/flowerbox zero/flowerbox zero/ac_tanglewood/flowerbox2 zero/flowerbox/2 zero/ac_tanglewood/flowerbox3 zero/flowerbox/3 zero/ac_tanglewood/ghost zero/ghost zero/ac_tanglewood/statue zero/statue zero/ac_tanglewood/statue2 zero/statue/2 zero/ac_tanglewood/window1 zero/window/1 zero/ac_tanglewood/window2 zero/window/2 zero/ac_tanglewood/window3 zero/window/3 ] [ns nr] [ looplist (mapmodelslotbyname (concatword "mapmodels/" $ns)) n [ editmapmodelslot $n "" "" "" "" $nr += cnt 1 if (< $i 79) [ += ispre12 1 ] ] ] push newbench "zz_unsorted/bench" if (> $ispre12 1) [ newbench = "makke/bench_seat" ] // special treatment for "bench", if the config file is "unconverted pre 1.2" looplist (mapmodelslotbyname "mapmodels/bench") n [ editmapmodelslot $n "" "" "" "" $newbench += cnt 1 ] if $cnt [echo replaced $cnt mapmodel slot paths] pop newbench ispre12 result (pop cnt) ] const cmfixtexturepaths [ push cnt 0 looplist [ wotwot/skin/drainpipe.jpg ../models/mapmodels/wotwot/makke_drainpipe_gritty/skin.jpg // convert official older than 1.2 wotwot/skin/commrack.jpg ../models/mapmodels/wotwot/toca_commrack_dull/skin.jpg wotwot/skin/monitor.jpg ../models/mapmodels/wotwot/toca_monitor_dull/skin.jpg wotwot/skin/milkcarton.jpg ../models/mapmodels/wotwot/toca_milkcarton_dull/skin.jpg wotwot/skin/guardrail2.jpg ../models/mapmodels/wotwot/toca_guardrail2_dull/skin.jpg mitaman/zastrow/metal_overlaps.jpg zastrow/metal_overlaps.jpg mitaman/zastrow/metal_plate_fill.jpg zastrow/metal_plate_fill.jpg mitaman/zastrow/metal_siding_kinksb.jpg zastrow/metal_siding_kinksb.jpg mitaman/zastrow/metal_siding_kinks.jpg zastrow/metal_siding_kinks.jpg mitaman/zastrow/sub_doors512A10.jpg zastrow/sub_doors512A10.jpg mitaman/zastrow/sub_doors512A16.jpg zastrow/sub_doors512A16.jpg mitaman/zastrow/sub_doors512B05.jpg zastrow/sub_doors512B05.jpg mitaman/zastrow/sub_window31.jpg zastrow/sub_window31.jpg mitaman/zastrow/sub_window33.jpg zastrow/sub_window33.jpg sub/sub_sand.jpg zastrow/sub_sand.jpg sub/brick_wall_08.jpg zastrow/brick_wall_08.jpg sub/brick_wall_09.jpg zastrow/brick_wall_09.jpg mitaman/various/sub_window23.jpg zastrow/sub_window23.jpg mitaman/various/vent_cap.jpg zastrow/vent_cap.jpg mitaman/various/sub_window38.jpg zastrow/sub_window38.jpg mitaman/various/sub_doors256nf_01.jpg zastrow/sub_doors256nf_01.jpg rattrap/rb_box_07.jpg zastrow/rb_box_07.jpg mitaman/golgotha/elecpanelstwo.jpg golgotha/elecpanelstwo.jpg mitaman/golgotha/metal_bumps2.jpg golgotha/metal_bumps2.jpg mitaman/golgotha/tunnel_ceiling.jpg golgotha/tunnel_ceiling.jpg mitaman/golgotha/hhroofgray.jpg golgotha/hhroofgray.jpg mitaman/golgotha/metal_bumps3.jpg golgotha/metal_bumps3.jpg mitaman/golgotha/tunnel_ceiling_b.jpg golgotha/tunnel_ceiling_b.jpg mitaman/various/5sqtunnelroad.jpg golgotha/5sqtunnelroad.jpg mitaman/3dcafe/door07_a.jpg 3dcafe/door07_a.jpg mitaman/3dcafe/door07.jpg 3dcafe/door07.jpg mitaman/3dcafe/door10_a.jpg 3dcafe/door10_a.jpg mitaman/3dcafe/door10.jpg 3dcafe/door10.jpg mitaman/3dcafe/door12.jpg 3dcafe/door12.jpg mitaman/3dcafe/door15.jpg 3dcafe/door15.jpg mitaman/3dcafe/objects08.jpg 3dcafe/objects08.jpg mitaman/3dcafe/objects09_a.jpg 3dcafe/objects09_a.jpg mitaman/3dcafe/stone18.jpg 3dcafe/stone18.jpg mitaman/grsites/brick051.jpg grsites/brick051.jpg mitaman/grsites/brick065.jpg grsites/brick065.jpg mitaman/grsites/wood060.jpg grsites/wood060.jpg mitaman/various/metal020.jpg grsites/metal020.jpg mitaman/various/metal026.jpg grsites/metal026.jpg mitaman/various/036metal.jpg lemog/036metal.jpg mitaman/various/006metal.jpg lemog/006metal.jpg mitaman/various/063bois.jpg lemog/063bois.jpg mitaman/various/063bois_b.jpg lemog/063bois_b.jpg mitaman/various/027metal.jpg lemog/027metal.jpg makke/windows.jpg golgotha/windows.jpg makke/window.jpg golgotha/window.jpg makke/panel.jpg golgotha/panel.jpg makke/door.jpg golgotha/door.jpg makke/smallsteelbox.jpg golgotha/smallsteelbox.jpg makke/klappe3.jpg golgotha/klappe3.jpg makke/bricks_2.jpg mayang/bricks_2.jpg wotwot/urban/manhole1.jpg mayang/manhole1.jpg wotwot/urban/hatch1.jpg mayang/hatch1.jpg wotwot/urban/grill2_s.jpg mayang/grill2_s.jpg wotwot/urban/door3.jpg mayang/door3.jpg wotwot/urban/airvent1.jpg mayang/airvent1.jpg rattrap/rb_trim_03.jpg golgotha/rb_trim_03.jpg rattrap/rb_window.jpg makke/rb_window.jpg rattrap/rb_window2.jpg makke/rb_window2.jpg rattrap/rb_trim_01.jpg noctua/ground/rb_trim_01.jpg rattrap/rb_trim_02.jpg makke/rb_trim_02.jpg rattrap/rb_box_01.jpg makke/rattrap/rb_box_01.jpg rattrap/rb_box_02.jpg makke/rattrap/rb_box_02.jpg rattrap/rb_box_03.jpg makke/rattrap/rb_box_03.jpg rattrap/rb_box_04.jpg makke/rattrap/rb_box_04.jpg rattrap/rb_box_05.jpg makke/rattrap/rb_box_05.jpg rattrap/rb_box_06.jpg makke/rattrap/rb_box_06.jpg rattrap/rb_concrete.jpg makke/rattrap/rb_concrete.jpg rattrap/rb_bricks_01.jpg mayang/rb_bricks_01.jpg rattrap/rb_bricks_02.jpg mayang/rb_bricks_02.jpg rattrap/rb_bricks_03.jpg mayang/rb_bricks_03.jpg rattrap/rb_planks02_trim.jpg noctua/wood/planks02_trim_vert.jpg exoduss/text45.jpg exoduss/arab2.jpg // duplicates exoduss/text14.jpg exoduss/granite1.jpg exoduss/text32.jpg exoduss/granite8.jpg exoduss/text22.jpg exoduss/mot190.jpg exoduss/text23.jpg exoduss/lol6.jpg exoduss/text36.jpg exoduss/granite6.jpg exoduss/text30.jpg exoduss/lol4.jpg exoduss/text3.jpg exoduss/lol1.jpg exoduss/text27.jpg exoduss/lol2.jpg exoduss/text2.jpg exoduss/granite4.jpg exoduss/stripes.jpg exoduss/granite7.jpg exoduss/text21.jpg exoduss/granite7.jpg exoduss/text37.jpg exoduss/granite7.jpg exoduss/text1.jpg exoduss/granite3.jpg exoduss/text17.jpg exoduss/wall.jpg exoduss/text38.jpg exoduss/granite5.jpg exoduss/text28.jpg exoduss/lol3.jpg exoduss/text13.jpg exoduss/aztec3.jpg exoduss/wall4.jpg exoduss/text33.jpg exoduss/text35.jpg exoduss/granite2.jpg exoduss/text4.jpg exoduss/ground3.jpg exoduss/text9.jpg exoduss/floor.jpg exoduss/text24.jpg exoduss/lol5.jpg exoduss/text8.jpg exoduss/wall10.jpg exoduss/text15.jpg exoduss/wall7.jpg exoduss/text20.jpg exoduss/wall8.jpg exoduss/text29.jpg exoduss/ground2.jpg exoduss/text10.jpg exoduss/256-01a.jpg exoduss/text7.jpg exoduss/wall9.jpg exoduss/text19.jpg exoduss/wall6.jpg exoduss/text31.jpg exoduss/granite10.jpg exoduss/text18.jpg exoduss/wall5.jpg cleaner/ikbase/ik_floor_conc128a.jpg cube/ikbase/ik_floor_conc128a.jpg exoduss/floor.jpg cube/ikbase/ik_floor_conc128a.jpg bukz/door1.jpg 3dcafe/door10_a.jpg bukz/door2.jpg 3dcafe/door07_a.jpg exoduss/text6.jpg cube/dg/muv158.jpg exoduss/mot190.jpg cleaner/dg/mot190.jpg mitaman/063bois.jpg lemog/063bois.jpg RKTnoob/b10.jpg RKTnoob/brick10.jpg // renamed RKTnoob/b1.jpg RKTnoob/brick1.jpg RKTnoob/b2.jpg RKTnoob/brick2.jpg RKTnoob/b3.jpg RKTnoob/brick3.jpg RKTnoob/b4.jpg RKTnoob/brick4.jpg RKTnoob/b5.jpg RKTnoob/brick5.jpg RKTnoob/b6.jpg RKTnoob/brick6.jpg RKTnoob/b7.jpg RKTnoob/brick7.jpg RKTnoob/b8.jpg RKTnoob/brick8.jpg RKTnoob/b9.jpg RKTnoob/brick9.jpg RKTnoob/c10.jpg RKTnoob/color10.jpg RKTnoob/c11.jpg RKTnoob/color11.jpg RKTnoob/c12.jpg RKTnoob/color12.jpg RKTnoob/c13.jpg RKTnoob/color13.jpg RKTnoob/c14.jpg RKTnoob/color14.jpg RKTnoob/c15.jpg RKTnoob/color15.jpg RKTnoob/c16.jpg RKTnoob/color16.jpg RKTnoob/c17.jpg RKTnoob/color17.jpg RKTnoob/c18.jpg RKTnoob/color18.jpg RKTnoob/c19.jpg RKTnoob/color19.jpg RKTnoob/c1.jpg RKTnoob/color1.jpg RKTnoob/c20.jpg RKTnoob/color20.jpg RKTnoob/c21.jpg RKTnoob/color21.jpg RKTnoob/c22.jpg RKTnoob/color22.jpg RKTnoob/c23.jpg RKTnoob/color23.jpg RKTnoob/c24.jpg RKTnoob/color24.jpg RKTnoob/c25.jpg RKTnoob/color25.jpg RKTnoob/c26.jpg RKTnoob/color26.jpg RKTnoob/c27.jpg RKTnoob/color27.jpg RKTnoob/c28.jpg RKTnoob/color28.jpg RKTnoob/c29.jpg RKTnoob/color29.jpg RKTnoob/c2.jpg RKTnoob/color2.jpg RKTnoob/c30.jpg RKTnoob/color30.jpg RKTnoob/c31.jpg RKTnoob/color31.jpg RKTnoob/c32.jpg RKTnoob/color32.jpg RKTnoob/c3.jpg RKTnoob/color3.jpg RKTnoob/c4.jpg RKTnoob/color4.jpg RKTnoob/c5.jpg RKTnoob/color5.jpg RKTnoob/c6.jpg RKTnoob/color6.jpg RKTnoob/c7.jpg RKTnoob/color7.jpg RKTnoob/c8.jpg RKTnoob/color8.jpg RKTnoob/c9.jpg RKTnoob/color9.jpg RKTnoob/f1.jpg RKTnoob/floor1.jpg RKTnoob/f2.jpg RKTnoob/floor2.jpg RKTnoob/f3.jpg RKTnoob/floor3.jpg RKTnoob/g10.jpg RKTnoob/gate10.jpg RKTnoob/g11.jpg RKTnoob/gate11.jpg RKTnoob/g12.jpg RKTnoob/gate12.jpg RKTnoob/g13.jpg RKTnoob/gate13.jpg RKTnoob/g14.jpg RKTnoob/gate14.jpg RKTnoob/g1.jpg RKTnoob/gate1.jpg RKTnoob/g2.jpg RKTnoob/gate2.jpg RKTnoob/g3.jpg RKTnoob/gate3.jpg RKTnoob/g4.jpg RKTnoob/gate4.jpg RKTnoob/g5.jpg RKTnoob/gate5.jpg RKTnoob/g6.jpg RKTnoob/gate6.jpg RKTnoob/g7.jpg RKTnoob/gate7.jpg RKTnoob/g8.jpg RKTnoob/gate8.jpg RKTnoob/g9.jpg RKTnoob/gate9.jpg RKTnoob/m2/10.jpg RKTnoob/metal2/floor4.jpg RKTnoob/m2/11.jpg RKTnoob/metal2/floor5.jpg RKTnoob/m2/12.jpg RKTnoob/metal2/floor6.jpg RKTnoob/m2/13.jpg RKTnoob/metal2/floor7.jpg RKTnoob/m2/14.jpg RKTnoob/metal2/floor8.jpg RKTnoob/m2/15.jpg RKTnoob/metal2/floor9.jpg RKTnoob/m2/16.jpg RKTnoob/metal2/wall7.jpg RKTnoob/m2/17.jpg RKTnoob/metal2/wall8.jpg RKTnoob/m2/18.jpg RKTnoob/metal2/wall9.jpg RKTnoob/m2/19.jpg RKTnoob/metal2/wall10.jpg RKTnoob/m2/1.jpg RKTnoob/metal2/floor1.jpg RKTnoob/m2/20.jpg RKTnoob/metal2/wall11.jpg RKTnoob/m2/21.jpg RKTnoob/metal2/wall12.jpg RKTnoob/m2/22.jpg RKTnoob/metal2/wall13.jpg RKTnoob/m2/23.jpg RKTnoob/metal2/wall14.jpg RKTnoob/m2/24.jpg RKTnoob/metal2/wall15.jpg RKTnoob/m2/25.jpg RKTnoob/metal2/wall16.jpg RKTnoob/m2/26.jpg RKTnoob/metal2/wall17.jpg RKTnoob/m2/27.jpg RKTnoob/metal2/wall18.jpg RKTnoob/m2/28.jpg RKTnoob/metal2/wall19.jpg RKTnoob/m2/29.jpg RKTnoob/metal2/wall20.jpg RKTnoob/m2/2.jpg RKTnoob/metal2/floor2.jpg RKTnoob/m2/3.jpg RKTnoob/metal2/floor3.jpg RKTnoob/m2/4.jpg RKTnoob/metal2/wall1.jpg RKTnoob/m2/5.jpg RKTnoob/metal2/wall2.jpg RKTnoob/m2/6.jpg RKTnoob/metal2/wall3.jpg RKTnoob/m2/7.jpg RKTnoob/metal2/wall4.jpg RKTnoob/m2/8.jpg RKTnoob/metal2/wall5.jpg RKTnoob/m2/9.jpg RKTnoob/metal2/wall6.jpg RKTnoob/m2/a1.jpg RKTnoob/metal2/sand1.jpg RKTnoob/m2/a2.jpg RKTnoob/metal2/rock1.jpg RKTnoob/m2/a3.jpg RKTnoob/metal2/rock2.jpg RKTnoob/m2/a4.jpg RKTnoob/metal2/floor10.jpg RKTnoob/m2/a5.jpg RKTnoob/metal2/sand2.jpg RKTnoob/m2/a6.jpg RKTnoob/metal2/floor11.jpg RKTnoob/m2/a7.jpg RKTnoob/metal2/floor12.jpg RKTnoob/m2/a8.jpg RKTnoob/metal2/floor13.jpg RKTnoob/m2/a9.jpg RKTnoob/metal2/floor14.jpg RKTnoob/m2/b1.jpg RKTnoob/metal2/floor15.jpg RKTnoob/m2/b2.jpg RKTnoob/metal2/floor16.jpg RKTnoob/m2/b3.jpg RKTnoob/metal2/floor17.jpg RKTnoob/m2/b4.jpg RKTnoob/metal2/floor18.jpg RKTnoob/m2/b5.jpg RKTnoob/metal2/floor19.jpg RKTnoob/m2/b6.jpg RKTnoob/metal2/rock3.jpg RKTnoob/m2/b7.jpg RKTnoob/metal2/tiles1.jpg RKTnoob/m2/b8.jpg RKTnoob/metal2/tiles2.jpg RKTnoob/m2/b9.jpg RKTnoob/metal2/tiles3.jpg RKTnoob/m2/c1.jpg RKTnoob/metal2/tiles4.jpg RKTnoob/m2/c2.jpg RKTnoob/metal2/wall21.jpg RKTnoob/m2/c3.jpg RKTnoob/metal2/wall22.jpg RKTnoob/m2/c4.jpg RKTnoob/metal2/rock4.jpg RKTnoob/m2/c5.jpg RKTnoob/metal2/rock5.jpg RKTnoob/m2/c6.jpg RKTnoob/metal2/rock6.jpg RKTnoob/m2/c7.jpg RKTnoob/metal2/rock7.jpg RKTnoob/m2/d1.jpg RKTnoob/metal2/floor20.jpg RKTnoob/m2/d2.jpg RKTnoob/metal2/floor21.jpg RKTnoob/m2/d3.jpg RKTnoob/metal2/sand3.jpg RKTnoob/m2/d4.jpg RKTnoob/metal2/rock8.jpg RKTnoob/m2/d5.jpg RKTnoob/metal2/sand4.jpg RKTnoob/m2/r08_dark.jpg RKTnoob/metal2/floor22.jpg RKTnoob/m2/r08_light.jpg RKTnoob/metal2/floor23.jpg RKTnoob/m2/x01_dark.jpg RKTnoob/metal2/floor24.jpg RKTnoob/m2/xx10.jpg RKTnoob/metal2/facade1.jpg RKTnoob/m2/xx11.jpg RKTnoob/metal2/brick10.jpg RKTnoob/m2/xx12.jpg RKTnoob/metal2/brick11.jpg RKTnoob/m2/xx13.jpg RKTnoob/metal2/brick12.jpg RKTnoob/m2/xx14.jpg RKTnoob/metal2/brick13.jpg RKTnoob/m2/xx15.jpg RKTnoob/metal2/tiles5.jpg RKTnoob/m2/xx16.jpg RKTnoob/metal2/rock9.jpg RKTnoob/m2/xx17.jpg RKTnoob/metal2/floor25.jpg RKTnoob/m2/xx18.jpg RKTnoob/metal2/facade2.jpg RKTnoob/m2/xx19.jpg RKTnoob/metal2/facade3.jpg RKTnoob/m2/xx1.jpg RKTnoob/metal2/brick1.jpg RKTnoob/m2/xx20.jpg RKTnoob/metal2/door1.jpg RKTnoob/m2/xx21.jpg RKTnoob/metal2/door2.jpg RKTnoob/m2/xx22.jpg RKTnoob/metal2/door3.jpg RKTnoob/m2/xx23.jpg RKTnoob/metal2/door4.jpg RKTnoob/m2/xx24.jpg RKTnoob/metal2/floor26.jpg RKTnoob/m2/xx25.jpg RKTnoob/metal2/floor27.jpg RKTnoob/m2/xx26.jpg RKTnoob/metal2/floor28.jpg RKTnoob/m2/xx27.jpg RKTnoob/metal2/wall23.jpg RKTnoob/m2/xx28.jpg RKTnoob/metal2/wall24.jpg RKTnoob/m2/xx29.jpg RKTnoob/metal2/wall25.jpg RKTnoob/m2/xx2.jpg RKTnoob/metal2/brick2.jpg RKTnoob/m2/xx30.jpg RKTnoob/metal2/wall26.jpg RKTnoob/m2/xx31.jpg RKTnoob/metal2/wall27.jpg RKTnoob/m2/xx32.jpg RKTnoob/metal2/wall28.jpg RKTnoob/m2/xx33.jpg RKTnoob/metal2/wall29.jpg RKTnoob/m2/xx34.jpg RKTnoob/metal2/wall30.jpg RKTnoob/m2/xx35.jpg RKTnoob/metal2/border1.jpg RKTnoob/m2/xx36.jpg RKTnoob/metal2/border2.jpg RKTnoob/m2/xx37.jpg RKTnoob/metal2/wood1.jpg RKTnoob/m2/xx38.jpg RKTnoob/metal2/wood2.jpg RKTnoob/m2/xx39.jpg RKTnoob/metal2/brick14.jpg RKTnoob/m2/xx3.jpg RKTnoob/metal2/brick3.jpg RKTnoob/m2/xx40.jpg RKTnoob/metal2/brick15.jpg RKTnoob/m2/xx41.jpg RKTnoob/metal2/brick16.jpg RKTnoob/m2/xx42.jpg RKTnoob/metal2/brick17.jpg RKTnoob/m2/xx43.jpg RKTnoob/metal2/brick18.jpg RKTnoob/m2/xx44.jpg RKTnoob/metal2/brick19.jpg RKTnoob/m2/xx45.jpg RKTnoob/metal2/brick20.jpg RKTnoob/m2/xx46.jpg RKTnoob/metal2/brick21.jpg RKTnoob/m2/xx47.jpg RKTnoob/metal2/brick22.jpg RKTnoob/m2/xx48.jpg RKTnoob/metal2/brick23.jpg RKTnoob/m2/xx4.jpg RKTnoob/metal2/brick4.jpg RKTnoob/m2/xx5.jpg RKTnoob/metal2/brick5.jpg RKTnoob/m2/xx6.jpg RKTnoob/metal2/brick6.jpg RKTnoob/m2/xx7.jpg RKTnoob/metal2/brick7.jpg RKTnoob/m2/xx8.jpg RKTnoob/metal2/brick8.jpg RKTnoob/m2/xx9.jpg RKTnoob/metal2/brick9.jpg RKTnoob/m/b01.jpg RKTnoob/metal/brick01.jpg RKTnoob/m/b02.jpg RKTnoob/metal/brick02.jpg RKTnoob/m/b03.jpg RKTnoob/metal/brick03.jpg RKTnoob/m/b04.jpg RKTnoob/metal/brick04.jpg RKTnoob/m/b05.jpg RKTnoob/metal/brick05.jpg RKTnoob/m/b06.jpg RKTnoob/metal/brick06.jpg RKTnoob/m/b07.jpg RKTnoob/metal/brick07.jpg RKTnoob/m/b08.jpg RKTnoob/metal/brick08.jpg RKTnoob/m/b09.jpg RKTnoob/metal/brick09.jpg RKTnoob/m/b10.jpg RKTnoob/metal/brick10.jpg RKTnoob/m/b11.jpg RKTnoob/metal/brick11.jpg RKTnoob/m/b12.jpg RKTnoob/metal/brick12.jpg RKTnoob/m/b13.jpg RKTnoob/metal/brick13.jpg RKTnoob/m/b14.jpg RKTnoob/metal/brick14.jpg RKTnoob/m/b15.jpg RKTnoob/metal/brick15.jpg RKTnoob/m/b16.jpg RKTnoob/metal/brick16.jpg RKTnoob/m/b17.jpg RKTnoob/metal/brick17.jpg RKTnoob/m/b18.jpg RKTnoob/metal/brick18.jpg RKTnoob/m/b19.jpg RKTnoob/metal/brick19.jpg RKTnoob/m/crate1.jpg RKTnoob/metal/crate1.jpg RKTnoob/m/crate2.jpg RKTnoob/metal/crate2.jpg RKTnoob/m/crate3.jpg RKTnoob/metal/crate3.jpg RKTnoob/m/crate4.jpg RKTnoob/metal/crate4.jpg RKTnoob/m/g01.jpg RKTnoob/metal/green01.jpg RKTnoob/m/g02.jpg RKTnoob/metal/green02.jpg RKTnoob/m/g03.jpg RKTnoob/metal/green03.jpg RKTnoob/m/g04.jpg RKTnoob/metal/green04.jpg RKTnoob/m/g05.jpg RKTnoob/metal/green05.jpg RKTnoob/m/r01.jpg RKTnoob/metal/red01.jpg RKTnoob/m/r02.jpg RKTnoob/metal/red02.jpg RKTnoob/m/r03.jpg RKTnoob/metal/red03.jpg RKTnoob/m/r04.jpg RKTnoob/metal/red04.jpg RKTnoob/m/r05.jpg RKTnoob/metal/red05.jpg RKTnoob/m/r06.jpg RKTnoob/metal/red06.jpg RKTnoob/m/r07.jpg RKTnoob/metal/red07.jpg RKTnoob/m/r08.jpg RKTnoob/metal/red08.jpg RKTnoob/m/r09.jpg RKTnoob/metal/red09.jpg RKTnoob/m/r10.jpg RKTnoob/metal/red10.jpg RKTnoob/m/r11.jpg RKTnoob/metal/red11.jpg RKTnoob/m/x01.jpg RKTnoob/metal/misc01.jpg RKTnoob/m/x02.jpg RKTnoob/metal/misc02.jpg RKTnoob/m/x03.jpg RKTnoob/metal/misc03.jpg RKTnoob/m/x04.jpg RKTnoob/metal/misc04.jpg RKTnoob/m/x05.jpg RKTnoob/metal/misc05.jpg RKTnoob/m/x06b.jpg RKTnoob/metal/misc06b.jpg RKTnoob/m/x06.jpg RKTnoob/metal/misc06.jpg RKTnoob/m/x07.jpg RKTnoob/metal/misc07.jpg RKTnoob/m/x08.jpg RKTnoob/metal/misc08.jpg RKTnoob/m/x09.jpg RKTnoob/metal/misc09.jpg RKTnoob/m/x10.jpg RKTnoob/metal/misc10.jpg RKTnoob/m/x11.jpg RKTnoob/metal/misc11.jpg RKTnoob/m/x12.jpg RKTnoob/metal/misc12.jpg RKTnoob/m/x13.jpg RKTnoob/metal/misc13.jpg RKTnoob/m/x14.jpg RKTnoob/metal/misc14.jpg RKTnoob/m/x15.jpg RKTnoob/metal/misc15.jpg RKTnoob/m/x16.jpg RKTnoob/metal/misc16.jpg RKTnoob/m/y01.jpg RKTnoob/metal/yellow01.jpg RKTnoob/m/y02.jpg RKTnoob/metal/yellow02.jpg RKTnoob/m/y03.jpg RKTnoob/metal/yellow03.jpg RKTnoob/m/y04.jpg RKTnoob/metal/yellow04.jpg RKTnoob/m/y05.jpg RKTnoob/metal/yellow05.jpg RKTnoob/m/y06.jpg RKTnoob/metal/yellow06.jpg RKTnoob/o/a1.jpg RKTnoob/open/wall1.jpg RKTnoob/o/a2.jpg RKTnoob/open/wall2.jpg RKTnoob/o/a3.jpg RKTnoob/open/floor1.jpg RKTnoob/o/a4.jpg RKTnoob/open/wall3.jpg RKTnoob/o/a5.jpg RKTnoob/open/wood1.jpg RKTnoob/o/a6.jpg RKTnoob/open/wall4.jpg RKTnoob/o/box_r.jpg RKTnoob/open/fakebox.jpg RKTnoob/pinyin/a17.jpg RKTnoob/pinyin/tiles1.jpg RKTnoob/pinyin/a18.jpg RKTnoob/pinyin/tiles2.jpg RKTnoob/pinyin/a19.jpg RKTnoob/pinyin/tiles3.jpg RKTnoob/pinyin/a20.jpg RKTnoob/pinyin/tiles4.jpg RKTnoob/pinyin/a21.jpg RKTnoob/pinyin/tiles5.jpg RKTnoob/pinyin/a22.jpg RKTnoob/pinyin/facade4.jpg RKTnoob/pinyin/a23.jpg RKTnoob/pinyin/wall1.jpg RKTnoob/pinyin/a26.jpg RKTnoob/pinyin/wall3.jpg RKTnoob/pinyin/a27.jpg RKTnoob/pinyin/border2.jpg RKTnoob/pinyin/a7.jpg RKTnoob/pinyin/facade1.jpg RKTnoob/pinyin/a8.jpg RKTnoob/pinyin/facade2.jpg RKTnoob/pinyin/a9.jpg RKTnoob/pinyin/facade3.jpg RKTnoob/s1.jpg RKTnoob/special1.jpg RKTnoob/s2.jpg RKTnoob/special2.jpg RKTnoob/s3.jpg RKTnoob/special3.jpg RKTnoob/s4.jpg RKTnoob/special4.jpg RKTnoob/s5.jpg RKTnoob/special5.jpg RKTnoob/s6.jpg RKTnoob/special6.jpg RKTnoob/s7.jpg RKTnoob/special7.jpg RKTnoob/sf2/c10.png RKTnoob/scifi2/rivet10.png RKTnoob/sf2/c11.png RKTnoob/scifi2/rivet11.png RKTnoob/sf2/c12.png RKTnoob/scifi2/rivet12.png RKTnoob/sf2/c1.png RKTnoob/scifi2/rivet1.png RKTnoob/sf2/c2.png RKTnoob/scifi2/rivet2.png RKTnoob/sf2/c3.png RKTnoob/scifi2/rivet3.png RKTnoob/sf2/c4.png RKTnoob/scifi2/rivet4.png RKTnoob/sf2/c5.png RKTnoob/scifi2/rivet5.png RKTnoob/sf2/c6.png RKTnoob/scifi2/rivet6.png RKTnoob/sf2/c7.png RKTnoob/scifi2/rivet7.png RKTnoob/sf2/c8.png RKTnoob/scifi2/rivet8.png RKTnoob/sf2/c9.png RKTnoob/scifi2/rivet9.png RKTnoob/sf2/ee.png RKTnoob/scifi2/easteregg.png RKTnoob/sf/b1.jpg RKTnoob/scifi/box1.jpg RKTnoob/sf/b2.jpg RKTnoob/scifi/box2.jpg RKTnoob/sf/b3.jpg RKTnoob/scifi/box3.jpg RKTnoob/sf/b4.jpg RKTnoob/scifi/box4.jpg RKTnoob/sf/d1.jpg RKTnoob/scifi/door1.jpg RKTnoob/sf/d2.jpg RKTnoob/scifi/door2.jpg RKTnoob/sf/d3.jpg RKTnoob/scifi/door3.jpg RKTnoob/sf/d4.jpg RKTnoob/scifi/door4.jpg RKTnoob/sf/d5.jpg RKTnoob/scifi/door5.jpg RKTnoob/sf/d6.jpg RKTnoob/scifi/door6.jpg RKTnoob/sf/f10.jpg RKTnoob/scifi/floor10.jpg RKTnoob/sf/f11.jpg RKTnoob/scifi/floor11.jpg RKTnoob/sf/f12.jpg RKTnoob/scifi/floor12.jpg RKTnoob/sf/f13.jpg RKTnoob/scifi/floor13.jpg RKTnoob/sf/f14.jpg RKTnoob/scifi/floor14.jpg RKTnoob/sf/f15.jpg RKTnoob/scifi/floor15.jpg RKTnoob/sf/f16.jpg RKTnoob/scifi/floor16.jpg RKTnoob/sf/f17.jpg RKTnoob/scifi/floor17.jpg RKTnoob/sf/f18.jpg RKTnoob/scifi/floor18.jpg RKTnoob/sf/f19.jpg RKTnoob/scifi/floor19.jpg RKTnoob/sf/f1.jpg RKTnoob/scifi/floor1.jpg RKTnoob/sf/f20.jpg RKTnoob/scifi/floor20.jpg RKTnoob/sf/f21.jpg RKTnoob/scifi/floor21.jpg RKTnoob/sf/f22.jpg RKTnoob/scifi/floor22.jpg RKTnoob/sf/f23.jpg RKTnoob/scifi/floor23.jpg RKTnoob/sf/f24.jpg RKTnoob/scifi/floor24.jpg RKTnoob/sf/f25.jpg RKTnoob/scifi/floor25.jpg RKTnoob/sf/f26.jpg RKTnoob/scifi/floor26.jpg RKTnoob/sf/f27.jpg RKTnoob/scifi/floor27.jpg RKTnoob/sf/f28.jpg RKTnoob/scifi/floor28.jpg RKTnoob/sf/f29.jpg RKTnoob/scifi/floor29.jpg RKTnoob/sf/f2.jpg RKTnoob/scifi/floor2.jpg RKTnoob/sf/f30.jpg RKTnoob/scifi/floor30.jpg RKTnoob/sf/f31.jpg RKTnoob/scifi/floor31.jpg RKTnoob/sf/f32.jpg RKTnoob/scifi/floor32.jpg RKTnoob/sf/f33.jpg RKTnoob/scifi/floor33.jpg RKTnoob/sf/f34.jpg RKTnoob/scifi/floor34.jpg RKTnoob/sf/f35.jpg RKTnoob/scifi/floor35.jpg RKTnoob/sf/f36.jpg RKTnoob/scifi/floor36.jpg RKTnoob/sf/f37.jpg RKTnoob/scifi/floor37.jpg RKTnoob/sf/f38.jpg RKTnoob/scifi/floor38.jpg RKTnoob/sf/f39.jpg RKTnoob/scifi/floor39.jpg RKTnoob/sf/f3.jpg RKTnoob/scifi/floor3.jpg RKTnoob/sf/f40.jpg RKTnoob/scifi/floor40.jpg RKTnoob/sf/f41.jpg RKTnoob/scifi/floor41.jpg RKTnoob/sf/f42.jpg RKTnoob/scifi/floor42.jpg RKTnoob/sf/f43.jpg RKTnoob/scifi/floor43.jpg RKTnoob/sf/f44.jpg RKTnoob/scifi/floor44.jpg RKTnoob/sf/f45.jpg RKTnoob/scifi/floor45.jpg RKTnoob/sf/f46.jpg RKTnoob/scifi/floor46.jpg RKTnoob/sf/f47.jpg RKTnoob/scifi/floor47.jpg RKTnoob/sf/f48.jpg RKTnoob/scifi/floor48.jpg RKTnoob/sf/f49.jpg RKTnoob/scifi/floor49.jpg RKTnoob/sf/f4.jpg RKTnoob/scifi/floor4.jpg RKTnoob/sf/f50.jpg RKTnoob/scifi/floor50.jpg RKTnoob/sf/f51.jpg RKTnoob/scifi/floor51.jpg RKTnoob/sf/f52.jpg RKTnoob/scifi/floor52.jpg RKTnoob/sf/f53.jpg RKTnoob/scifi/floor53.jpg RKTnoob/sf/f54.jpg RKTnoob/scifi/floor54.jpg RKTnoob/sf/f55.jpg RKTnoob/scifi/floor55.jpg RKTnoob/sf/f56.jpg RKTnoob/scifi/floor56.jpg RKTnoob/sf/f57.jpg RKTnoob/scifi/floor57.jpg RKTnoob/sf/f58.jpg RKTnoob/scifi/floor58.jpg RKTnoob/sf/f5.jpg RKTnoob/scifi/floor5.jpg RKTnoob/sf/f6.jpg RKTnoob/scifi/floor6.jpg RKTnoob/sf/f7.jpg RKTnoob/scifi/floor7.jpg RKTnoob/sf/f8.jpg RKTnoob/scifi/floor8.jpg RKTnoob/sf/f9.jpg RKTnoob/scifi/floor9.jpg RKTnoob/sf/l10.jpg RKTnoob/scifi/line10.jpg RKTnoob/sf/l11.jpg RKTnoob/scifi/line11.jpg RKTnoob/sf/l12.jpg RKTnoob/scifi/line12.jpg RKTnoob/sf/l13.jpg RKTnoob/scifi/line13.jpg RKTnoob/sf/l14.jpg RKTnoob/scifi/line14.jpg RKTnoob/sf/l15.jpg RKTnoob/scifi/line15.jpg RKTnoob/sf/l16.jpg RKTnoob/scifi/line16.jpg RKTnoob/sf/l17.jpg RKTnoob/scifi/line17.jpg RKTnoob/sf/l18.jpg RKTnoob/scifi/line18.jpg RKTnoob/sf/l19.jpg RKTnoob/scifi/line19.jpg RKTnoob/sf/l1.jpg RKTnoob/scifi/line1.jpg RKTnoob/sf/l20.jpg RKTnoob/scifi/line20.jpg RKTnoob/sf/l21.jpg RKTnoob/scifi/line21.jpg RKTnoob/sf/l22.jpg RKTnoob/scifi/line22.jpg RKTnoob/sf/l23.jpg RKTnoob/scifi/line23.jpg RKTnoob/sf/l24.jpg RKTnoob/scifi/line24.jpg RKTnoob/sf/l25.jpg RKTnoob/scifi/line25.jpg RKTnoob/sf/l26.jpg RKTnoob/scifi/line26.jpg RKTnoob/sf/l27.jpg RKTnoob/scifi/line27.jpg RKTnoob/sf/l28.jpg RKTnoob/scifi/line28.jpg RKTnoob/sf/l29.jpg RKTnoob/scifi/line29.jpg RKTnoob/sf/l2.jpg RKTnoob/scifi/line2.jpg RKTnoob/sf/l30.jpg RKTnoob/scifi/line30.jpg RKTnoob/sf/l31.jpg RKTnoob/scifi/line31.jpg RKTnoob/sf/l32.jpg RKTnoob/scifi/line32.jpg RKTnoob/sf/l33.jpg RKTnoob/scifi/line33.jpg RKTnoob/sf/l34.jpg RKTnoob/scifi/line34.jpg RKTnoob/sf/l35.jpg RKTnoob/scifi/line35.jpg RKTnoob/sf/l36.jpg RKTnoob/scifi/line36.jpg RKTnoob/sf/l37.jpg RKTnoob/scifi/line37.jpg RKTnoob/sf/l38.jpg RKTnoob/scifi/line38.jpg RKTnoob/sf/l39.jpg RKTnoob/scifi/line39.jpg RKTnoob/sf/l3.jpg RKTnoob/scifi/line3.jpg RKTnoob/sf/l40.jpg RKTnoob/scifi/line40.jpg RKTnoob/sf/l41.jpg RKTnoob/scifi/line41.jpg RKTnoob/sf/l42.jpg RKTnoob/scifi/line42.jpg RKTnoob/sf/l43.jpg RKTnoob/scifi/line43.jpg RKTnoob/sf/l44.jpg RKTnoob/scifi/line44.jpg RKTnoob/sf/l45.jpg RKTnoob/scifi/line45.jpg RKTnoob/sf/l46.jpg RKTnoob/scifi/line46.jpg RKTnoob/sf/l47.jpg RKTnoob/scifi/line47.jpg RKTnoob/sf/l48.jpg RKTnoob/scifi/line48.jpg RKTnoob/sf/l4.jpg RKTnoob/scifi/line4.jpg RKTnoob/sf/l5.jpg RKTnoob/scifi/line5.jpg RKTnoob/sf/l6.jpg RKTnoob/scifi/line6.jpg RKTnoob/sf/l7.jpg RKTnoob/scifi/line7.jpg RKTnoob/sf/l8.jpg RKTnoob/scifi/line8.jpg RKTnoob/sf/l9.jpg RKTnoob/scifi/line9.jpg RKTnoob/sf/m1.jpg RKTnoob/scifi/mesh1.jpg RKTnoob/sf/m2.jpg RKTnoob/scifi/mesh2.jpg RKTnoob/sf/m3.jpg RKTnoob/scifi/mesh3.jpg RKTnoob/sf/m4.jpg RKTnoob/scifi/mesh4.jpg RKTnoob/sf/m5.jpg RKTnoob/scifi/mesh5.jpg RKTnoob/sf/m6.jpg RKTnoob/scifi/mesh6.jpg RKTnoob/sf/r1.jpg RKTnoob/scifi/border1.jpg RKTnoob/sf/r2.jpg RKTnoob/scifi/border2.jpg RKTnoob/sf/s10.jpg RKTnoob/scifi/console10.jpg RKTnoob/sf/s11.jpg RKTnoob/scifi/console11.jpg RKTnoob/sf/s12.jpg RKTnoob/scifi/console12.jpg RKTnoob/sf/s13.jpg RKTnoob/scifi/console13.jpg RKTnoob/sf/s14.jpg RKTnoob/scifi/console14.jpg RKTnoob/sf/s15.jpg RKTnoob/scifi/console15.jpg RKTnoob/sf/s16.jpg RKTnoob/scifi/console16.jpg RKTnoob/sf/s1.jpg RKTnoob/scifi/console1.jpg RKTnoob/sf/s2.jpg RKTnoob/scifi/console2.jpg RKTnoob/sf/s3.jpg RKTnoob/scifi/console3.jpg RKTnoob/sf/s4.jpg RKTnoob/scifi/console4.jpg RKTnoob/sf/s5.jpg RKTnoob/scifi/console5.jpg RKTnoob/sf/s6.jpg RKTnoob/scifi/console6.jpg RKTnoob/sf/s7.jpg RKTnoob/scifi/console7.jpg RKTnoob/sf/s8.jpg RKTnoob/scifi/console8.jpg RKTnoob/sf/s9.jpg RKTnoob/scifi/console9.jpg RKTnoob/sf/w10.jpg RKTnoob/scifi/wall10.jpg RKTnoob/sf/w11.jpg RKTnoob/scifi/wall11.jpg RKTnoob/sf/w12.jpg RKTnoob/scifi/wall12.jpg RKTnoob/sf/w13.jpg RKTnoob/scifi/wall13.jpg RKTnoob/sf/w14.jpg RKTnoob/scifi/wall14.jpg RKTnoob/sf/w15.jpg RKTnoob/scifi/wall15.jpg RKTnoob/sf/w16.jpg RKTnoob/scifi/wall16.jpg RKTnoob/sf/w17.jpg RKTnoob/scifi/wall17.jpg RKTnoob/sf/w18.jpg RKTnoob/scifi/wall18.jpg RKTnoob/sf/w19.jpg RKTnoob/scifi/wall19.jpg RKTnoob/sf/w1.jpg RKTnoob/scifi/wall1.jpg RKTnoob/sf/w20.jpg RKTnoob/scifi/wall20.jpg RKTnoob/sf/w21.jpg RKTnoob/scifi/wall21.jpg RKTnoob/sf/w22.jpg RKTnoob/scifi/wall22.jpg RKTnoob/sf/w23.jpg RKTnoob/scifi/wall23.jpg RKTnoob/sf/w24.jpg RKTnoob/scifi/wall24.jpg RKTnoob/sf/w25.jpg RKTnoob/scifi/wall25.jpg RKTnoob/sf/w26.jpg RKTnoob/scifi/wall26.jpg RKTnoob/sf/w27.jpg RKTnoob/scifi/wall27.jpg RKTnoob/sf/w28.jpg RKTnoob/scifi/wall28.jpg RKTnoob/sf/w2.jpg RKTnoob/scifi/wall2.jpg RKTnoob/sf/w3.jpg RKTnoob/scifi/wall3.jpg RKTnoob/sf/w4.jpg RKTnoob/scifi/wall4.jpg RKTnoob/sf/w5.jpg RKTnoob/scifi/wall5.jpg RKTnoob/sf/w6.jpg RKTnoob/scifi/wall6.jpg RKTnoob/sf/w7.jpg RKTnoob/scifi/wall7.jpg RKTnoob/sf/w8.jpg RKTnoob/scifi/wall8.jpg RKTnoob/sf/w9.jpg RKTnoob/scifi/wall9.jpg RKTnoob/sf/x10.jpg RKTnoob/scifi/border9.jpg RKTnoob/sf/x11.jpg RKTnoob/scifi/border10.jpg RKTnoob/sf/x12.jpg RKTnoob/scifi/border11.jpg RKTnoob/sf/x13.jpg RKTnoob/scifi/border12.jpg RKTnoob/sf/x14.jpg RKTnoob/scifi/neon1.jpg RKTnoob/sf/x15.jpg RKTnoob/scifi/neon2.jpg RKTnoob/sf/x16.jpg RKTnoob/scifi/neon3.jpg RKTnoob/sf/x17.jpg RKTnoob/scifi/neon4.jpg RKTnoob/sf/x18.jpg RKTnoob/scifi/neon5.jpg RKTnoob/sf/x19.jpg RKTnoob/scifi/neon6.jpg RKTnoob/sf/x1.jpg RKTnoob/scifi/misc1.jpg RKTnoob/sf/x20.jpg RKTnoob/scifi/neon7.jpg RKTnoob/sf/x21.jpg RKTnoob/scifi/neon8.jpg RKTnoob/sf/x22.jpg RKTnoob/scifi/neon9.jpg RKTnoob/sf/x23.jpg RKTnoob/scifi/neon10.jpg RKTnoob/sf/x24.jpg RKTnoob/scifi/neon11.jpg RKTnoob/sf/x25.jpg RKTnoob/scifi/neon12.jpg RKTnoob/sf/x26.jpg RKTnoob/scifi/neon13.jpg RKTnoob/sf/x27.jpg RKTnoob/scifi/neon14.jpg RKTnoob/sf/x28.jpg RKTnoob/scifi/mesh8.jpg RKTnoob/sf/x29.jpg RKTnoob/scifi/mesh9.jpg RKTnoob/sf/x2.jpg RKTnoob/scifi/mesh7.jpg RKTnoob/sf/x30.jpg RKTnoob/scifi/mesh10.jpg RKTnoob/sf/x31.jpg RKTnoob/scifi/neon15.jpg RKTnoob/sf/x32.jpg RKTnoob/scifi/neon16.jpg RKTnoob/sf/x33.jpg RKTnoob/scifi/neon17.jpg RKTnoob/sf/x34.jpg RKTnoob/scifi/neon18.jpg RKTnoob/sf/x35.jpg RKTnoob/scifi/neon19.jpg RKTnoob/sf/x36.jpg RKTnoob/scifi/neon20.jpg RKTnoob/sf/x37.jpg RKTnoob/scifi/neon21.jpg RKTnoob/sf/x38.jpg RKTnoob/scifi/neon22.jpg RKTnoob/sf/x39.jpg RKTnoob/scifi/neon23.jpg RKTnoob/sf/x3.jpg RKTnoob/scifi/misc2.jpg RKTnoob/sf/x40.jpg RKTnoob/scifi/border13.jpg RKTnoob/sf/x41.jpg RKTnoob/scifi/border14.jpg RKTnoob/sf/x42.jpg RKTnoob/scifi/border15.jpg RKTnoob/sf/x43.jpg RKTnoob/scifi/border16.jpg RKTnoob/sf/x44.jpg RKTnoob/scifi/border17.jpg RKTnoob/sf/x45.jpg RKTnoob/scifi/border18.jpg RKTnoob/sf/x46.jpg RKTnoob/scifi/border19.jpg RKTnoob/sf/x47.jpg RKTnoob/scifi/border20.jpg RKTnoob/sf/x48.jpg RKTnoob/scifi/border21.jpg RKTnoob/sf/x49.jpg RKTnoob/scifi/border22.jpg RKTnoob/sf/x4.jpg RKTnoob/scifi/border3.jpg RKTnoob/sf/x5.jpg RKTnoob/scifi/border4.jpg RKTnoob/sf/x6.jpg RKTnoob/scifi/border5.jpg RKTnoob/sf/x7.jpg RKTnoob/scifi/border6.jpg RKTnoob/sf/x8.jpg RKTnoob/scifi/border7.jpg RKTnoob/sf/x9.jpg RKTnoob/scifi/border8.jpg RKTnoob/w1.jpg RKTnoob/wood1.jpg RKTnoob/w2.jpg RKTnoob/wood2.jpg RKTnoob/w3.jpg RKTnoob/wood3.jpg RKTnoob/w4.jpg RKTnoob/wood4.jpg RKTnoob/w5.jpg RKTnoob/wood5.jpg RKTnoob/w6.jpg RKTnoob/wood6.jpg RKTnoob/w7.jpg RKTnoob/wood7.jpg RKTnoob/x10.jpg RKTnoob/misc10.jpg RKTnoob/x11.jpg RKTnoob/misc11.jpg RKTnoob/x12.jpg RKTnoob/misc12.jpg RKTnoob/x13.jpg RKTnoob/misc13.jpg RKTnoob/x14.jpg RKTnoob/misc14.jpg RKTnoob/x15.jpg RKTnoob/misc15.jpg RKTnoob/x16.jpg RKTnoob/misc16.jpg RKTnoob/x17.jpg RKTnoob/misc17.jpg RKTnoob/x18.jpg RKTnoob/misc18.jpg RKTnoob/x19.jpg RKTnoob/misc19.jpg RKTnoob/x1.jpg RKTnoob/misc1.jpg RKTnoob/x20.jpg RKTnoob/misc20.jpg RKTnoob/x21.jpg RKTnoob/misc21.jpg RKTnoob/x22.jpg RKTnoob/misc22.jpg RKTnoob/x23.jpg RKTnoob/misc23.jpg RKTnoob/x24.jpg RKTnoob/misc24.jpg RKTnoob/x25.jpg RKTnoob/misc25.jpg RKTnoob/x26.jpg RKTnoob/misc26.jpg RKTnoob/x27.jpg RKTnoob/misc27.jpg RKTnoob/x28.jpg RKTnoob/misc28.jpg RKTnoob/x29.jpg RKTnoob/misc29.jpg RKTnoob/x2.jpg RKTnoob/misc2.jpg RKTnoob/x30.jpg RKTnoob/misc30.jpg RKTnoob/x31.jpg RKTnoob/misc31.jpg RKTnoob/x32.jpg RKTnoob/misc32.jpg RKTnoob/x33.jpg RKTnoob/misc33.jpg RKTnoob/x3.jpg RKTnoob/misc3.jpg RKTnoob/x4.jpg RKTnoob/misc4.jpg RKTnoob/x5.jpg RKTnoob/misc5.jpg RKTnoob/x6.jpg RKTnoob/misc6.jpg RKTnoob/x7.jpg RKTnoob/misc7.jpg RKTnoob/x8.jpg RKTnoob/misc8.jpg RKTnoob/x9.jpg RKTnoob/misc9.jpg cleaner/egyptsoc/032-03c.jpg cube/egyptsoc/032-03c.jpg cleaner/egyptsoc/032-04a.jpg cube/egyptsoc/032-04a.jpg cleaner/egyptsoc/032-05d.jpg cube/egyptsoc/032-05d.jpg cleaner/egyptsoc/048-02h.jpg cube/egyptsoc/048-02h.jpg cleaner/egyptsoc/064-02b.jpg cube/egyptsoc/064-02b.jpg cleaner/egyptsoc/064-03a.jpg cube/egyptsoc/064-03a.jpg cleaner/egyptsoc/128-02a.jpg cube/egyptsoc/128-02a.jpg cleaner/egyptsoc/128-04a.jpg cube/egyptsoc/128-04a.jpg cleaner/egyptsoc/256-01a.jpg cube/egyptsoc/256-01a.jpg cleaner/egyptsoc/256-03b.jpg cube/egyptsoc/256-03b.jpg cleaner/egyptsoc/block01a.jpg cube/egyptsoc/block01a.jpg cleaner/egyptsoc/block07b.jpg cube/egyptsoc/block07b.jpg cleaner/egyptsoc/block10c.jpg cube/egyptsoc/block10c.jpg cleaner/egyptsoc/lig_032-03b1.jpg cube/egyptsoc/lig_032-03b1.jpg cleaner/egyptsoc/lig_032-03r1.jpg cube/egyptsoc/lig_032-03r1.jpg cleaner/egyptsoc/lig_032-04b1.jpg cube/egyptsoc/lig_032-04b1.jpg cleaner/egyptsoc/lig_032-04r1.jpg cube/egyptsoc/lig_032-04r1.jpg cleaner/egyptsoc/lig_064-01b1.jpg cube/egyptsoc/lig_064-01b1.jpg cleaner/egyptsoc/lig_128-05b1.jpg cube/egyptsoc/lig_128-05b1.jpg cleaner/egyptsoc/s064-01e.jpg cube/egyptsoc/s064-01e.jpg cleaner/egyptsoc/s064-03a.jpg cube/egyptsoc/s064-03a.jpg cleaner/egyptsoc/s064-05c.jpg cube/egyptsoc/s064-05c.jpg cleaner/egyptsoc/s064-05f.jpg cube/egyptsoc/s064-05f.jpg cleaner/egyptsoc/solidgrate1b.jpg cube/egyptsoc/solidgrate1b.jpg cleaner/egyptsoc/stone01a.jpg cube/egyptsoc/stone01a.jpg cleaner/egyptsoc/stone01b.jpg cube/egyptsoc/stone01b.jpg cleaner/egyptsoc/stone01d.jpg cube/egyptsoc/stone01d.jpg cleaner/egyptsoc/stone02b.jpg cube/egyptsoc/stone02b.jpg cleaner/egyptsoc/stone03b.jpg cube/egyptsoc/stone03b.jpg cleaner/egyptsoc/stone04b.jpg cube/egyptsoc/stone04b.jpg cleaner/egyptsoc/stone04d.jpg cube/egyptsoc/stone04d.jpg cleaner/egyptsoc/stone10b.jpg cube/egyptsoc/stone10b.jpg cleaner/egyptsoc/stone10d.jpg cube/egyptsoc/stone10d.jpg cleaner/egyptsoc/v064-01b.jpg cube/egyptsoc/v064-01b.jpg cleaner/egyptsoc/v096-01b.jpg cube/egyptsoc/v096-01b.jpg cleaner/egyptsoc/v128-03a.jpg cube/egyptsoc/v128-03a.jpg cleaner/egyptsoc/woodmgrid1a.jpg cube/egyptsoc/woodmgrid1a.jpg cleaner/ikbase/ik_cwall06a.jpg cube/ikbase/ik_cwall06a.jpg cleaner/jf1/jf32.jpg cube/jf1/jf32.jpg cleaner/jf1/jfflr.jpg cube/jf1/jfflr.jpg cleaner/jf1/jfgrid.jpg cube/jf1/jfgrid.jpg exoduss/256-01a.jpg cube/egyptsoc/256-01a.jpg exoduss/lol5.jpg cube/ik2k/ik_brick_6464a.jpg exoduss/lol6.jpg cube/ik2k/ik_brick_6464c.jpg exoduss/text16.jpg cube/dg/floor_pavement_stone4_4moss.jpg exoduss/text25.jpg cube/dg/floor_pavement_stone4_2.jpg exoduss/text26.jpg cube/dg/floor_pavement_stone4_3.jpg exoduss/text34.jpg cube/dg/mur059.jpg exoduss/text39.jpg cube/egyptsoc/128-02a.jpg exoduss/text40.jpg cube/ik2k/ik_floor_brick128a.jpg exoduss/text41.jpg cube/ik2k/ik_floor_brick128b.jpg exoduss/text42.jpg cube/payne/SlimyTile02_128x128.jpg exoduss/text43.jpg cube/ik2k/ik_floor_tile128b.jpg exoduss/text44.jpg cube/schwenz/dt_tile_check.01.jpg exoduss/text5.jpg cube/dg/mur079.jpg cleaner/dg/mot067.jpg cube/dg/mot067.jpg cleaner/dg/mot190.jpg cube/dg/mot190.jpg cleaner/dg/mur013.jpg cube/dg/mur013.jpg cleaner/dg/muv204.jpg cube/dg/muv204.jpg cleaner/dust/256_iv_floor01.jpg cube/rorschach/256_iv_floor01.jpg cleaner/g-pack/g-floor01.jpg cube/g-pack/g-floor01.jpg cleaner/lunaran/hexflr1_d.jpg cube/lunaran/hexflr1_d.jpg exoduss/lol4.jpg cube/egyptsoc/032-01a.jpg exoduss/lol1.jpg cube/dg/sue011.jpg exoduss/lol2.jpg cube/dg/floor_pavement_stone5_2.jpg exoduss/lol3.jpg cube/egyptsoc/032-04a.jpg ice/brick.jpg cube/aftas/par10_a.jpg ice/brick2.jpg cube/aftas/par10_c.jpg ice/ceiling.jpg cube/evil_textures/e7bricks01.jpg ice/door.jpg cube/mitaman/mm-metalpanel-b.jpg ice/tile.jpg cube/payne/SlimyTile02_128x128.jpg ice/wall.jpg cube/evil_textures/e7walldesign01b.jpg ac_archives/bookshelves_1.jpg zero/ac_archives/bookshelves_1.jpg ac_archives/bookshelves_1_2.jpg zero/ac_archives/bookshelves_1_2.jpg ac_archives/bookshelves_2.jpg zero/ac_archives/bookshelves_2.jpg ac_archives/bookshelves_3.jpg zero/ac_archives/bookshelves_3.jpg ac_archives/bookshelves_4.jpg zero/ac_archives/bookshelves_4.jpg ac_archives/bookshelves_4_2.jpg zero/ac_archives/bookshelves_4_2.jpg ac_archives/bookshelves_5.jpg zero/ac_archives/bookshelves_5.jpg ac_archives/carpet2.jpg zero/ac_library/carpet.jpg ac_archives/floor_1.jpg zero/ac_archives/floor_1.jpg ac_archives/floor_2.jpg zero/ac_archives/floor_2.jpg ac_archives/flowerbed.jpg zero/ac_archives/flowerbed.jpg ac_archives/stone1.jpg zero/ac_archives/stone1.jpg ac_library/bookcase1.jpg zero/ac_library/bookcase1.jpg ac_library/bookcase2.jpg zero/ac_library/bookcase2.jpg ac_library/bookcase3.jpg zero/ac_library/bookcase3.jpg ac_library/bookcase4.jpg zero/ac_library/bookcase4.jpg ac_library/carpet1.jpg zero/ac_library/carpet.jpg ac_library/stairs1.jpg zero/ac_library/stairs1.jpg ac_library/stone1.jpg zero/ac_library/stone1.jpg ac_library/wood1.jpg zero/ac_library/wood1.jpg ac_library/wood2.jpg zero/ac_library/wood_h.jpg ac_library/wood3.jpg zero/ac_library/wood_v.jpg ac_roots/bricksmall0007_blue.jpg zero/ac_roots/bricksmall0007_blue.jpg ac_roots/doorsgarage0195_b.jpg zero/ac_roots/doorsgarage0195_b.jpg ac_roots/doorsgarage0195_blue.jpg zero/ac_roots/doorsgarage0195_blue.jpg ac_roots/metal026b.jpg zero/ac_roots/metal026b.jpg ac_roots/rooftiles.jpg zero/ac_roots/rooftiles.jpg ac_roots/rooftiles_trim.jpg zero/ac_roots/rooftiles_trim.jpg ac_roots/stonewall_4ivy.jpg zero/ac_roots/stonewall_4ivy.jpg ac_roots/stonewall_4ivy2.jpg zero/ac_roots/stonewall_4ivy2.jpg ac_roots/stonewall_4ivy3.jpg zero/ac_roots/stonewall_4ivy3.jpg ac_roots1.3/stonewall_4ivyred.jpg zero/ac_roots1.3/stonewall_4ivyred.jpg ac_roots1.3/stonewall_4ivyred2.jpg zero/ac_roots1.3/stonewall_4ivyred2.jpg ac_roots1.3/stonewall_4ivyred3.jpg zero/ac_roots1.3/stonewall_4ivyred3.jpg ac_roots1.3/stonewall_4ivyred4.jpg zero/ac_roots1.3/stonewall_4ivyred4.jpg ac_roots1.3/stonewall_4ivyred5.jpg zero/ac_roots1.3/stonewall_4ivyred5.jpg ac_roots1.3/stonewall_4ivyred6.jpg zero/ac_roots1.3/stonewall_4ivyred6.jpg ac_tanglewood/carpet1.jpg zero/ac_tanglewood/carpet1.jpg ac_tanglewood/carpet3.jpg zero/ac_tanglewood/carpet3.jpg ac_tanglewood/carpet3_step.jpg zero/ac_tanglewood/carpet3_step.jpg ac_tanglewood/carpet4.jpg zero/ac_tanglewood/carpet4.jpg ac_tanglewood/carpet4_step.jpg zero/ac_tanglewood/carpet4_step.jpg ac_tanglewood/muv158_ivy.jpg zero/ac_tanglewood/muv158_ivy.jpg ac_tanglewood/muv158_ivy2.jpg zero/ac_tanglewood/muv158_ivy2.jpg ac_tanglewood/muv158_ivy3.jpg zero/ac_tanglewood/muv158_ivy3.jpg ac_tanglewood/winerack.jpg zero/ac_tanglewood/winerack.jpg ac_tanglewood/winerack_2.jpg zero/ac_tanglewood/winerack_2.jpg ] [ns nr] [ looplist (textureslotbyname $ns) i [ edittextureslot $i "" $nr += cnt 1 ] ] if $cnt [echo replaced $cnt texture slot paths] result (pop cnt) ] const cmfixmapsoundpaths [ push cnt 0 looplist [ sounds/ambience/troglodytes.ogg troglodytes.ogg ] [ns nr] [ looplist (mapsoundslotbyname $ns) i [ editmapsoundslot $i $nr += cnt 1 ] ] if $cnt [echo replaced $cnt mapsound slot paths] result (pop cnt) ] const cmfixskymappaths [ push cnt 0 looplist [ sharp05/sharp05 sharp/sharp05 egypt1/egypt egypt/egypt "aftas sky/orbe" aftassky/orbe "Mighty Pete/bloody-marvelous512" MightyPete/bloody-marvelous512 ] [ns nr] [ if (strcmp $loadsky $ns) [ loadsky $nr += cnt 1 ] ] if $cnt [echo fixed skymap path] result (pop cnt) ] ]