diff options
-rw-r--r-- | README.md | 8 | ||||
-rw-r--r-- | maps/pre-re/1@cata.mcache | bin | 2382 -> 2382 bytes | |||
-rw-r--r-- | maps/pre-re/1@eom.mcache | bin | 1136 -> 1136 bytes | |||
-rw-r--r-- | maps/pre-re/1@gef_in.mcache | bin | 1274 -> 1274 bytes | |||
-rw-r--r-- | maps/pre-re/1@jtb.mcache | bin | 5189 -> 5189 bytes | |||
-rw-r--r-- | maps/pre-re/1@ma_b.mcache | bin | 784 -> 784 bytes | |||
-rw-r--r-- | maps/pre-re/1@ma_c.mcache | bin | 747 -> 747 bytes | |||
-rw-r--r-- | maps/pre-re/1@sara.mcache | bin | 3928 -> 3928 bytes | |||
-rw-r--r-- | maps/pre-re/1@tnm3.mcache | bin | 699 -> 699 bytes | |||
-rw-r--r-- | maps/pre-re/5@tower.mcache | bin | 279 -> 279 bytes | |||
-rw-r--r-- | maps/pre-re/airplane.mcache | bin | 1424 -> 1424 bytes | |||
-rw-r--r-- | maps/pre-re/airplane_01.mcache | bin | 1424 -> 1424 bytes | |||
-rw-r--r-- | maps/pre-re/alb_ship.mcache | bin | 549 -> 549 bytes | |||
-rw-r--r-- | maps/pre-re/alde_alche.mcache | bin | 683 -> 683 bytes | |||
-rw-r--r-- | maps/pre-re/alde_gld.mcache | bin | 2763 -> 2763 bytes | |||
-rw-r--r-- | maps/pre-re/alde_tt02.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/pre-re/alde_tt03.mcache | bin | 3096 -> 3096 bytes | |||
-rw-r--r-- | maps/pre-re/aldeba_in.mcache | bin | 1489 -> 1489 bytes | |||
-rw-r--r-- | maps/pre-re/aldeg_cas04.mcache | bin | 1265 -> 1265 bytes | |||
-rw-r--r-- | maps/pre-re/aldeg_cas05.mcache | bin | 1288 -> 1288 bytes | |||
-rw-r--r-- | maps/pre-re/arug_cas01.mcache | bin | 3015 -> 3015 bytes | |||
-rw-r--r-- | maps/pre-re/arug_cas03.mcache | bin | 2740 -> 2740 bytes | |||
-rw-r--r-- | maps/pre-re/arug_cas04.mcache | bin | 2740 -> 2740 bytes | |||
-rw-r--r-- | maps/pre-re/arug_cas05.mcache | bin | 2740 -> 2740 bytes | |||
-rw-r--r-- | maps/pre-re/auction_01.mcache | bin | 336 -> 336 bytes | |||
-rw-r--r-- | maps/pre-re/auction_02.mcache | bin | 404 -> 404 bytes | |||
-rw-r--r-- | maps/pre-re/ayo_in01.mcache | bin | 889 -> 889 bytes | |||
-rw-r--r-- | maps/pre-re/bat_b01.mcache | bin | 1847 -> 1847 bytes | |||
-rw-r--r-- | maps/pre-re/bat_b02.mcache | bin | 1847 -> 1847 bytes | |||
-rw-r--r-- | maps/pre-re/bat_c01.mcache | bin | 234 -> 234 bytes | |||
-rw-r--r-- | maps/pre-re/bat_c02.mcache | bin | 234 -> 234 bytes | |||
-rw-r--r-- | maps/pre-re/bat_c03.mcache | bin | 234 -> 234 bytes | |||
-rw-r--r-- | maps/pre-re/bat_room.mcache | bin | 575 -> 575 bytes | |||
-rw-r--r-- | maps/pre-re/bif_fild01.mcache | bin | 4323 -> 4323 bytes | |||
-rw-r--r-- | maps/pre-re/bra_in01.mcache | bin | 1012 -> 1012 bytes | |||
-rw-r--r-- | maps/pre-re/c_tower1.mcache | bin | 5392 -> 5392 bytes | |||
-rw-r--r-- | maps/pre-re/c_tower2.mcache | bin | 2836 -> 2836 bytes | |||
-rw-r--r-- | maps/pre-re/c_tower2_.mcache | bin | 2836 -> 2836 bytes | |||
-rw-r--r-- | maps/pre-re/c_tower4.mcache | bin | 2466 -> 2466 bytes | |||
-rw-r--r-- | maps/pre-re/cmd_fild06.mcache | bin | 5540 -> 5540 bytes | |||
-rw-r--r-- | maps/pre-re/dic_dun01.mcache | bin | 1144 -> 1144 bytes | |||
-rw-r--r-- | maps/pre-re/dicastes01.mcache | bin | 4081 -> 4081 bytes | |||
-rw-r--r-- | maps/pre-re/dicastes02.mcache | bin | 1268 -> 1268 bytes | |||
-rw-r--r-- | maps/pre-re/ecl_hub01.mcache | bin | 370 -> 370 bytes | |||
-rw-r--r-- | maps/pre-re/ecl_tdun01.mcache | bin | 619 -> 619 bytes | |||
-rw-r--r-- | maps/pre-re/ecl_tdun02.mcache | bin | 455 -> 455 bytes | |||
-rw-r--r-- | maps/pre-re/ecl_tdun03.mcache | bin | 379 -> 379 bytes | |||
-rw-r--r-- | maps/pre-re/ecl_tdun04.mcache | bin | 146 -> 146 bytes | |||
-rw-r--r-- | maps/pre-re/ein_fild01.mcache | bin | 3849 -> 3849 bytes | |||
-rw-r--r-- | maps/pre-re/ein_fild03.mcache | bin | 3585 -> 3585 bytes | |||
-rw-r--r-- | maps/pre-re/ein_in01.mcache | bin | 2306 -> 2306 bytes | |||
-rw-r--r-- | maps/pre-re/evt_mobroom.mcache | bin | 793 -> 793 bytes | |||
-rw-r--r-- | maps/pre-re/g_room1-1.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/pre-re/g_room1-2.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/pre-re/g_room1-3.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/pre-re/g_room2.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/pre-re/gef_fild01.mcache | bin | 3432 -> 3432 bytes | |||
-rw-r--r-- | maps/pre-re/gefenia01.mcache | bin | 3033 -> 3033 bytes | |||
-rw-r--r-- | maps/pre-re/gefenia02.mcache | bin | 2640 -> 2640 bytes | |||
-rw-r--r-- | maps/pre-re/gefg_cas04.mcache | bin | 1298 -> 1298 bytes | |||
-rw-r--r-- | maps/pre-re/gl_in01.mcache | bin | 1607 -> 1607 bytes | |||
-rw-r--r-- | maps/pre-re/gld_dun03.mcache | bin | 2866 -> 2866 bytes | |||
-rw-r--r-- | maps/pre-re/gld_dun03_2.mcache | bin | 2866 -> 2866 bytes | |||
-rw-r--r-- | maps/pre-re/guild_room.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/pre-re/himinn.mcache | bin | 186 -> 186 bytes | |||
-rw-r--r-- | maps/pre-re/hu_fild06.mcache | bin | 3245 -> 3245 bytes | |||
-rw-r--r-- | maps/pre-re/hu_in01.mcache | bin | 2569 -> 2569 bytes | |||
-rw-r--r-- | maps/pre-re/ice_dun02.mcache | bin | 3627 -> 3627 bytes | |||
-rw-r--r-- | maps/pre-re/in_hunter.mcache | bin | 342 -> 342 bytes | |||
-rw-r--r-- | maps/pre-re/in_moc_16.mcache | bin | 1125 -> 1125 bytes | |||
-rw-r--r-- | maps/pre-re/itemmall.mcache | bin | 336 -> 336 bytes | |||
-rw-r--r-- | maps/pre-re/iz_ac01.mcache | bin | 941 -> 941 bytes | |||
-rw-r--r-- | maps/pre-re/iz_ac01_a.mcache | bin | 941 -> 941 bytes | |||
-rw-r--r-- | maps/pre-re/iz_ac01_b.mcache | bin | 941 -> 941 bytes | |||
-rw-r--r-- | maps/pre-re/iz_ac01_c.mcache | bin | 941 -> 941 bytes | |||
-rw-r--r-- | maps/pre-re/iz_ac01_d.mcache | bin | 941 -> 941 bytes | |||
-rw-r--r-- | maps/pre-re/iz_int.mcache | bin | 405 -> 405 bytes | |||
-rw-r--r-- | maps/pre-re/iz_int01.mcache | bin | 405 -> 405 bytes | |||
-rw-r--r-- | maps/pre-re/iz_int02.mcache | bin | 405 -> 405 bytes | |||
-rw-r--r-- | maps/pre-re/iz_int03.mcache | bin | 405 -> 405 bytes | |||
-rw-r--r-- | maps/pre-re/iz_int04.mcache | bin | 405 -> 405 bytes | |||
-rw-r--r-- | maps/pre-re/jawaii_in.mcache | bin | 707 -> 707 bytes | |||
-rw-r--r-- | maps/pre-re/job3_arch01.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/pre-re/job3_arch03.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/pre-re/job3_gen01.mcache | bin | 363 -> 363 bytes | |||
-rw-r--r-- | maps/pre-re/job3_guil01.mcache | bin | 409 -> 409 bytes | |||
-rw-r--r-- | maps/pre-re/job3_rang02.mcache | bin | 878 -> 878 bytes | |||
-rw-r--r-- | maps/pre-re/job3_sha01.mcache | bin | 300 -> 300 bytes | |||
-rw-r--r-- | maps/pre-re/job3_war01.mcache | bin | 141 -> 141 bytes | |||
-rw-r--r-- | maps/pre-re/job3_war02.mcache | bin | 141 -> 141 bytes | |||
-rw-r--r-- | maps/pre-re/job_ko.mcache | bin | 722 -> 722 bytes | |||
-rw-r--r-- | maps/pre-re/job_priest.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/job_soul.mcache | bin | 75 -> 75 bytes | |||
-rw-r--r-- | maps/pre-re/job_star.mcache | bin | 353 -> 353 bytes | |||
-rw-r--r-- | maps/pre-re/job_sword1.mcache | bin | 2409 -> 2409 bytes | |||
-rw-r--r-- | maps/pre-re/job_wizard.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/jupe_core.mcache | bin | 1911 -> 1911 bytes | |||
-rw-r--r-- | maps/pre-re/jupe_core2.mcache | bin | 1911 -> 1911 bytes | |||
-rw-r--r-- | maps/pre-re/jupe_ele_r.mcache | bin | 163 -> 163 bytes | |||
-rw-r--r-- | maps/pre-re/kh_dun02.mcache | bin | 1593 -> 1593 bytes | |||
-rw-r--r-- | maps/pre-re/lhz_fild02.mcache | bin | 2517 -> 2517 bytes | |||
-rw-r--r-- | maps/pre-re/lhz_in03.mcache | bin | 1391 -> 1391 bytes | |||
-rw-r--r-- | maps/pre-re/lighthalzen.mcache | bin | 5429 -> 5429 bytes | |||
-rw-r--r-- | maps/pre-re/lou_dun03.mcache | bin | 2521 -> 2521 bytes | |||
-rw-r--r-- | maps/pre-re/ma_scene01.mcache | bin | 592 -> 592 bytes | |||
-rw-r--r-- | maps/pre-re/ma_zif01.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/pre-re/ma_zif02.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/pre-re/ma_zif03.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/pre-re/ma_zif04.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/pre-re/ma_zif05.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/pre-re/ma_zif06.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/pre-re/ma_zif07.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/pre-re/ma_zif08.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/pre-re/ma_zif09.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/pre-re/mag_dun02.mcache | bin | 1738 -> 1738 bytes | |||
-rw-r--r-- | maps/pre-re/mal_in01.mcache | bin | 882 -> 882 bytes | |||
-rw-r--r-- | maps/pre-re/man_fild03.mcache | bin | 3147 -> 3147 bytes | |||
-rw-r--r-- | maps/pre-re/man_in01.mcache | bin | 1988 -> 1988 bytes | |||
-rw-r--r-- | maps/pre-re/mjolnir_12.mcache | bin | 4551 -> 4551 bytes | |||
-rw-r--r-- | maps/pre-re/moc_fild01.mcache | bin | 4428 -> 4428 bytes | |||
-rw-r--r-- | maps/pre-re/moc_fild07.mcache | bin | 5050 -> 5050 bytes | |||
-rw-r--r-- | maps/pre-re/moc_fild08.mcache | bin | 5411 -> 5411 bytes | |||
-rw-r--r-- | maps/pre-re/moc_pryd01.mcache | bin | 958 -> 958 bytes | |||
-rw-r--r-- | maps/pre-re/moc_pryd04.mcache | bin | 775 -> 775 bytes | |||
-rw-r--r-- | maps/pre-re/morocc_in.mcache | bin | 1209 -> 1209 bytes | |||
-rw-r--r-- | maps/pre-re/mosk_dun02.mcache | bin | 3593 -> 3593 bytes | |||
-rw-r--r-- | maps/pre-re/mosk_fild02.mcache | bin | 3761 -> 3761 bytes | |||
-rw-r--r-- | maps/pre-re/nameless_in.mcache | bin | 527 -> 527 bytes | |||
-rw-r--r-- | maps/pre-re/new_1-4.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/pre-re/new_2-4.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/pre-re/new_3-4.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/pre-re/new_4-4.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/pre-re/new_5-4.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/pre-re/new_zone04.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/pre-re/nguild_prt.mcache | bin | 1363 -> 1363 bytes | |||
-rw-r--r-- | maps/pre-re/nif_fild02.mcache | bin | 3744 -> 3744 bytes | |||
-rw-r--r-- | maps/pre-re/nyd_dun01.mcache | bin | 1621 -> 1621 bytes | |||
-rw-r--r-- | maps/pre-re/nyd_dun02.mcache | bin | 1569 -> 1569 bytes | |||
-rw-r--r-- | maps/pre-re/orcsdun01.mcache | bin | 1196 -> 1196 bytes | |||
-rw-r--r-- | maps/pre-re/orcsdun02.mcache | bin | 1297 -> 1297 bytes | |||
-rw-r--r-- | maps/pre-re/pay_fild10.mcache | bin | 6051 -> 6051 bytes | |||
-rw-r--r-- | maps/pre-re/payon_in01.mcache | bin | 900 -> 900 bytes | |||
-rw-r--r-- | maps/pre-re/priest_1-1.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/priest_2-1.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/priest_3-1.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/prontera.mcache | bin | 5013 -> 5013 bytes | |||
-rw-r--r-- | maps/pre-re/prt_are_in.mcache | bin | 626 -> 626 bytes | |||
-rw-r--r-- | maps/pre-re/prt_church.mcache | bin | 551 -> 551 bytes | |||
-rw-r--r-- | maps/pre-re/prt_fild10.mcache | bin | 4784 -> 4784 bytes | |||
-rw-r--r-- | maps/pre-re/prtg_cas01.mcache | bin | 1363 -> 1363 bytes | |||
-rw-r--r-- | maps/pre-re/prtg_cas03.mcache | bin | 1440 -> 1440 bytes | |||
-rw-r--r-- | maps/pre-re/prtg_cas04.mcache | bin | 1512 -> 1512 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_1-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_1-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_2-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_2-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_3-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_3-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_4-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_4-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_5-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_5-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_6-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_6-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_7-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_7-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_8-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_n_8-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_y_1-1.mcache | bin | 5013 -> 5013 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_y_2-1.mcache | bin | 5013 -> 5013 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_y_3-1.mcache | bin | 5013 -> 5013 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_y_4-1.mcache | bin | 5013 -> 5013 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_y_5-1.mcache | bin | 5013 -> 5013 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_y_6-1.mcache | bin | 5013 -> 5013 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_y_7-1.mcache | bin | 5013 -> 5013 bytes | |||
-rw-r--r-- | maps/pre-re/pvp_y_8-1.mcache | bin | 5013 -> 5013 bytes | |||
-rw-r--r-- | maps/pre-re/que_avan01.mcache | bin | 205 -> 205 bytes | |||
-rw-r--r-- | maps/pre-re/que_ba.mcache | bin | 1103 -> 1103 bytes | |||
-rw-r--r-- | maps/pre-re/que_dan01.mcache | bin | 272 -> 272 bytes | |||
-rw-r--r-- | maps/pre-re/que_moc_16.mcache | bin | 1125 -> 1125 bytes | |||
-rw-r--r-- | maps/pre-re/que_moon.mcache | bin | 353 -> 353 bytes | |||
-rw-r--r-- | maps/pre-re/que_sign02.mcache | bin | 3744 -> 3744 bytes | |||
-rw-r--r-- | maps/pre-re/que_thor.mcache | bin | 495 -> 495 bytes | |||
-rw-r--r-- | maps/pre-re/quiz_01.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/pre-re/ra_fild02.mcache | bin | 4240 -> 4240 bytes | |||
-rw-r--r-- | maps/pre-re/ra_fild09.mcache | bin | 2308 -> 2308 bytes | |||
-rw-r--r-- | maps/pre-re/ra_fild10.mcache | bin | 4094 -> 4094 bytes | |||
-rw-r--r-- | maps/pre-re/ra_san01.mcache | bin | 3060 -> 3060 bytes | |||
-rw-r--r-- | maps/pre-re/ra_temple.mcache | bin | 1295 -> 1295 bytes | |||
-rw-r--r-- | maps/pre-re/siege_test.mcache | bin | 1367 -> 1367 bytes | |||
-rw-r--r-- | maps/pre-re/spl_fild03.mcache | bin | 8302 -> 8302 bytes | |||
-rw-r--r-- | maps/pre-re/spl_in01.mcache | bin | 2361 -> 2361 bytes | |||
-rw-r--r-- | maps/pre-re/sword_1-1.mcache | bin | 2409 -> 2409 bytes | |||
-rw-r--r-- | maps/pre-re/sword_2-1.mcache | bin | 2409 -> 2409 bytes | |||
-rw-r--r-- | maps/pre-re/sword_3-1.mcache | bin | 2409 -> 2409 bytes | |||
-rw-r--r-- | maps/pre-re/te_alde_gld.mcache | bin | 2763 -> 2763 bytes | |||
-rw-r--r-- | maps/pre-re/te_aldecas4.mcache | bin | 1265 -> 1265 bytes | |||
-rw-r--r-- | maps/pre-re/te_aldecas5.mcache | bin | 1288 -> 1288 bytes | |||
-rw-r--r-- | maps/pre-re/te_prtcas01.mcache | bin | 1363 -> 1363 bytes | |||
-rw-r--r-- | maps/pre-re/te_prtcas03.mcache | bin | 1440 -> 1440 bytes | |||
-rw-r--r-- | maps/pre-re/te_prtcas04.mcache | bin | 1512 -> 1512 bytes | |||
-rw-r--r-- | maps/pre-re/teg_dun01.mcache | bin | 2866 -> 2866 bytes | |||
-rw-r--r-- | maps/pre-re/tha_t01.mcache | bin | 3145 -> 3145 bytes | |||
-rw-r--r-- | maps/pre-re/tur_dun01.mcache | bin | 2939 -> 2939 bytes | |||
-rw-r--r-- | maps/pre-re/tur_dun02.mcache | bin | 3976 -> 3976 bytes | |||
-rw-r--r-- | maps/pre-re/tur_dun03.mcache | bin | 2569 -> 2569 bytes | |||
-rw-r--r-- | maps/pre-re/tur_dun06.mcache | bin | 735 -> 735 bytes | |||
-rw-r--r-- | maps/pre-re/turbo_e_16.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/pre-re/turbo_e_4.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/pre-re/turbo_e_8.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/pre-re/turbo_n_1.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/pre-re/turbo_n_16.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/pre-re/turbo_n_4.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/pre-re/turbo_n_8.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/pre-re/turbo_room.mcache | bin | 657 -> 657 bytes | |||
-rw-r--r-- | maps/pre-re/um_fild02.mcache | bin | 5281 -> 5281 bytes | |||
-rw-r--r-- | maps/pre-re/valkyrie.mcache | bin | 186 -> 186 bytes | |||
-rw-r--r-- | maps/pre-re/ve_fild03.mcache | bin | 3347 -> 3347 bytes | |||
-rw-r--r-- | maps/pre-re/ve_fild07.mcache | bin | 4044 -> 4044 bytes | |||
-rw-r--r-- | maps/pre-re/wizard_1-1.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/wizard_2-1.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/wizard_3-1.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/pre-re/xmas_dun02.mcache | bin | 3329 -> 3329 bytes | |||
-rw-r--r-- | maps/pre-re/yuno_fild12.mcache | bin | 3057 -> 3057 bytes | |||
-rw-r--r-- | maps/pre-re/yuno_pre.mcache | bin | 471 -> 471 bytes | |||
-rw-r--r-- | maps/re/1@cata.mcache | bin | 2382 -> 2382 bytes | |||
-rw-r--r-- | maps/re/1@gef_in.mcache | bin | 1274 -> 1274 bytes | |||
-rw-r--r-- | maps/re/1@jtb.mcache | bin | 5189 -> 5189 bytes | |||
-rw-r--r-- | maps/re/1@ma_b.mcache | bin | 784 -> 784 bytes | |||
-rw-r--r-- | maps/re/1@ma_c.mcache | bin | 747 -> 747 bytes | |||
-rw-r--r-- | maps/re/1@sara.mcache | bin | 3928 -> 3928 bytes | |||
-rw-r--r-- | maps/re/1@tnm3.mcache | bin | 699 -> 699 bytes | |||
-rw-r--r-- | maps/re/5@tower.mcache | bin | 279 -> 279 bytes | |||
-rw-r--r-- | maps/re/airplane.mcache | bin | 1424 -> 1424 bytes | |||
-rw-r--r-- | maps/re/airplane_01.mcache | bin | 1424 -> 1424 bytes | |||
-rw-r--r-- | maps/re/alb_ship.mcache | bin | 549 -> 549 bytes | |||
-rw-r--r-- | maps/re/alde_alche.mcache | bin | 683 -> 683 bytes | |||
-rw-r--r-- | maps/re/alde_gld.mcache | bin | 2763 -> 2763 bytes | |||
-rw-r--r-- | maps/re/alde_tt02.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/re/alde_tt03.mcache | bin | 3096 -> 3096 bytes | |||
-rw-r--r-- | maps/re/aldeba_in.mcache | bin | 1489 -> 1489 bytes | |||
-rw-r--r-- | maps/re/aldeg_cas04.mcache | bin | 1265 -> 1265 bytes | |||
-rw-r--r-- | maps/re/aldeg_cas05.mcache | bin | 1288 -> 1288 bytes | |||
-rw-r--r-- | maps/re/arug_cas01.mcache | bin | 3015 -> 3015 bytes | |||
-rw-r--r-- | maps/re/arug_cas03.mcache | bin | 2740 -> 2740 bytes | |||
-rw-r--r-- | maps/re/arug_cas04.mcache | bin | 2740 -> 2740 bytes | |||
-rw-r--r-- | maps/re/arug_cas05.mcache | bin | 2740 -> 2740 bytes | |||
-rw-r--r-- | maps/re/auction_01.mcache | bin | 336 -> 336 bytes | |||
-rw-r--r-- | maps/re/auction_02.mcache | bin | 404 -> 404 bytes | |||
-rw-r--r-- | maps/re/ayo_in01.mcache | bin | 889 -> 889 bytes | |||
-rw-r--r-- | maps/re/bat_b01.mcache | bin | 1847 -> 1847 bytes | |||
-rw-r--r-- | maps/re/bat_b02.mcache | bin | 1847 -> 1847 bytes | |||
-rw-r--r-- | maps/re/bat_c01.mcache | bin | 234 -> 234 bytes | |||
-rw-r--r-- | maps/re/bat_c02.mcache | bin | 234 -> 234 bytes | |||
-rw-r--r-- | maps/re/bat_c03.mcache | bin | 234 -> 234 bytes | |||
-rw-r--r-- | maps/re/bat_room.mcache | bin | 575 -> 575 bytes | |||
-rw-r--r-- | maps/re/bif_fild01.mcache | bin | 4323 -> 4323 bytes | |||
-rw-r--r-- | maps/re/bra_in01.mcache | bin | 1012 -> 1012 bytes | |||
-rw-r--r-- | maps/re/c_tower1.mcache | bin | 5392 -> 5392 bytes | |||
-rw-r--r-- | maps/re/c_tower2.mcache | bin | 2836 -> 2836 bytes | |||
-rw-r--r-- | maps/re/c_tower2_.mcache | bin | 2836 -> 2836 bytes | |||
-rw-r--r-- | maps/re/c_tower4.mcache | bin | 2466 -> 2466 bytes | |||
-rw-r--r-- | maps/re/cmd_fild06.mcache | bin | 5540 -> 5540 bytes | |||
-rw-r--r-- | maps/re/dic_dun01.mcache | bin | 1144 -> 1144 bytes | |||
-rw-r--r-- | maps/re/dicastes01.mcache | bin | 4081 -> 4081 bytes | |||
-rw-r--r-- | maps/re/dicastes02.mcache | bin | 1268 -> 1268 bytes | |||
-rw-r--r-- | maps/re/ecl_hub01.mcache | bin | 370 -> 370 bytes | |||
-rw-r--r-- | maps/re/ecl_tdun01.mcache | bin | 619 -> 619 bytes | |||
-rw-r--r-- | maps/re/ecl_tdun02.mcache | bin | 455 -> 455 bytes | |||
-rw-r--r-- | maps/re/ecl_tdun03.mcache | bin | 379 -> 379 bytes | |||
-rw-r--r-- | maps/re/ecl_tdun04.mcache | bin | 146 -> 146 bytes | |||
-rw-r--r-- | maps/re/ein_fild01.mcache | bin | 3849 -> 3849 bytes | |||
-rw-r--r-- | maps/re/ein_fild03.mcache | bin | 3585 -> 3585 bytes | |||
-rw-r--r-- | maps/re/ein_in01.mcache | bin | 2306 -> 2306 bytes | |||
-rw-r--r-- | maps/re/evt_mobroom.mcache | bin | 793 -> 793 bytes | |||
-rw-r--r-- | maps/re/g_room1-1.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/re/g_room1-2.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/re/g_room1-3.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/re/g_room2.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/re/gef_fild01.mcache | bin | 3432 -> 3432 bytes | |||
-rw-r--r-- | maps/re/gefenia01.mcache | bin | 3033 -> 3033 bytes | |||
-rw-r--r-- | maps/re/gefenia02.mcache | bin | 2640 -> 2640 bytes | |||
-rw-r--r-- | maps/re/gefg_cas04.mcache | bin | 1298 -> 1298 bytes | |||
-rw-r--r-- | maps/re/gl_in01.mcache | bin | 1607 -> 1607 bytes | |||
-rw-r--r-- | maps/re/gld_dun03.mcache | bin | 2866 -> 2866 bytes | |||
-rw-r--r-- | maps/re/gld_dun03_2.mcache | bin | 2866 -> 2866 bytes | |||
-rw-r--r-- | maps/re/guild_room.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/re/himinn.mcache | bin | 186 -> 186 bytes | |||
-rw-r--r-- | maps/re/hu_fild06.mcache | bin | 3245 -> 3245 bytes | |||
-rw-r--r-- | maps/re/hu_in01.mcache | bin | 2569 -> 2569 bytes | |||
-rw-r--r-- | maps/re/ice_dun02.mcache | bin | 3627 -> 3627 bytes | |||
-rw-r--r-- | maps/re/in_hunter.mcache | bin | 342 -> 342 bytes | |||
-rw-r--r-- | maps/re/in_moc_16.mcache | bin | 1125 -> 1125 bytes | |||
-rw-r--r-- | maps/re/itemmall.mcache | bin | 336 -> 336 bytes | |||
-rw-r--r-- | maps/re/iz_ac01.mcache | bin | 941 -> 941 bytes | |||
-rw-r--r-- | maps/re/iz_ac01_a.mcache | bin | 941 -> 941 bytes | |||
-rw-r--r-- | maps/re/iz_ac01_b.mcache | bin | 941 -> 941 bytes | |||
-rw-r--r-- | maps/re/iz_ac01_c.mcache | bin | 941 -> 941 bytes | |||
-rw-r--r-- | maps/re/iz_ac01_d.mcache | bin | 941 -> 941 bytes | |||
-rw-r--r-- | maps/re/jawaii_in.mcache | bin | 707 -> 707 bytes | |||
-rw-r--r-- | maps/re/job3_arch01.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/re/job3_arch03.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/re/job3_gen01.mcache | bin | 363 -> 363 bytes | |||
-rw-r--r-- | maps/re/job3_guil01.mcache | bin | 409 -> 409 bytes | |||
-rw-r--r-- | maps/re/job3_rang02.mcache | bin | 878 -> 878 bytes | |||
-rw-r--r-- | maps/re/job3_sha01.mcache | bin | 300 -> 300 bytes | |||
-rw-r--r-- | maps/re/job3_war01.mcache | bin | 141 -> 141 bytes | |||
-rw-r--r-- | maps/re/job3_war02.mcache | bin | 141 -> 141 bytes | |||
-rw-r--r-- | maps/re/job_ko.mcache | bin | 722 -> 722 bytes | |||
-rw-r--r-- | maps/re/job_priest.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/job_soul.mcache | bin | 75 -> 75 bytes | |||
-rw-r--r-- | maps/re/job_star.mcache | bin | 353 -> 353 bytes | |||
-rw-r--r-- | maps/re/job_sword1.mcache | bin | 2409 -> 2409 bytes | |||
-rw-r--r-- | maps/re/job_wizard.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/jupe_core.mcache | bin | 1911 -> 1911 bytes | |||
-rw-r--r-- | maps/re/jupe_core2.mcache | bin | 1911 -> 1911 bytes | |||
-rw-r--r-- | maps/re/jupe_ele_r.mcache | bin | 163 -> 163 bytes | |||
-rw-r--r-- | maps/re/kh_dun02.mcache | bin | 1593 -> 1593 bytes | |||
-rw-r--r-- | maps/re/lhz_dun04.mcache | bin | 3942 -> 3942 bytes | |||
-rw-r--r-- | maps/re/lhz_fild02.mcache | bin | 2517 -> 2517 bytes | |||
-rw-r--r-- | maps/re/lhz_in03.mcache | bin | 1391 -> 1391 bytes | |||
-rw-r--r-- | maps/re/lighthalzen.mcache | bin | 5429 -> 5429 bytes | |||
-rw-r--r-- | maps/re/lou_dun03.mcache | bin | 2521 -> 2521 bytes | |||
-rw-r--r-- | maps/re/ma_scene01.mcache | bin | 592 -> 592 bytes | |||
-rw-r--r-- | maps/re/ma_zif01.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/re/ma_zif02.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/re/ma_zif03.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/re/ma_zif04.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/re/ma_zif05.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/re/ma_zif06.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/re/ma_zif07.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/re/ma_zif08.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/re/ma_zif09.mcache | bin | 74 -> 74 bytes | |||
-rw-r--r-- | maps/re/mag_dun02.mcache | bin | 1738 -> 1738 bytes | |||
-rw-r--r-- | maps/re/mal_in01.mcache | bin | 882 -> 882 bytes | |||
-rw-r--r-- | maps/re/man_fild03.mcache | bin | 3147 -> 3147 bytes | |||
-rw-r--r-- | maps/re/man_in01.mcache | bin | 1988 -> 1988 bytes | |||
-rw-r--r-- | maps/re/mjolnir_12.mcache | bin | 4551 -> 4551 bytes | |||
-rw-r--r-- | maps/re/moc_fild01.mcache | bin | 4428 -> 4428 bytes | |||
-rw-r--r-- | maps/re/moc_fild07.mcache | bin | 5050 -> 5050 bytes | |||
-rw-r--r-- | maps/re/moc_fild08.mcache | bin | 5411 -> 5411 bytes | |||
-rw-r--r-- | maps/re/moc_pryd01.mcache | bin | 958 -> 958 bytes | |||
-rw-r--r-- | maps/re/moc_pryd04.mcache | bin | 775 -> 775 bytes | |||
-rw-r--r-- | maps/re/morocc_in.mcache | bin | 1209 -> 1209 bytes | |||
-rw-r--r-- | maps/re/mosk_dun02.mcache | bin | 3593 -> 3593 bytes | |||
-rw-r--r-- | maps/re/mosk_fild02.mcache | bin | 3761 -> 3761 bytes | |||
-rw-r--r-- | maps/re/nameless_in.mcache | bin | 527 -> 527 bytes | |||
-rw-r--r-- | maps/re/new_1-1.mcache | bin | 934 -> 934 bytes | |||
-rw-r--r-- | maps/re/new_1-4.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/re/new_2-1.mcache | bin | 934 -> 934 bytes | |||
-rw-r--r-- | maps/re/new_2-4.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/re/new_3-1.mcache | bin | 934 -> 934 bytes | |||
-rw-r--r-- | maps/re/new_3-4.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/re/new_4-1.mcache | bin | 934 -> 934 bytes | |||
-rw-r--r-- | maps/re/new_4-4.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/re/new_5-1.mcache | bin | 934 -> 934 bytes | |||
-rw-r--r-- | maps/re/new_5-4.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/re/new_zone01.mcache | bin | 934 -> 934 bytes | |||
-rw-r--r-- | maps/re/new_zone04.mcache | bin | 630 -> 630 bytes | |||
-rw-r--r-- | maps/re/nguild_prt.mcache | bin | 1363 -> 1363 bytes | |||
-rw-r--r-- | maps/re/nif_fild02.mcache | bin | 3744 -> 3744 bytes | |||
-rw-r--r-- | maps/re/nyd_dun01.mcache | bin | 1621 -> 1621 bytes | |||
-rw-r--r-- | maps/re/nyd_dun02.mcache | bin | 1569 -> 1569 bytes | |||
-rw-r--r-- | maps/re/orcsdun01.mcache | bin | 1196 -> 1196 bytes | |||
-rw-r--r-- | maps/re/orcsdun02.mcache | bin | 1297 -> 1297 bytes | |||
-rw-r--r-- | maps/re/pay_fild10.mcache | bin | 6051 -> 6051 bytes | |||
-rw-r--r-- | maps/re/payon_in01.mcache | bin | 900 -> 900 bytes | |||
-rw-r--r-- | maps/re/priest_1-1.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/priest_2-1.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/priest_3-1.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/prt_are_in.mcache | bin | 626 -> 626 bytes | |||
-rw-r--r-- | maps/re/prt_church.mcache | bin | 583 -> 583 bytes | |||
-rw-r--r-- | maps/re/prt_fild05.mcache | bin | 7028 -> 7028 bytes | |||
-rw-r--r-- | maps/re/prt_fild10.mcache | bin | 4784 -> 4784 bytes | |||
-rw-r--r-- | maps/re/prtg_cas01.mcache | bin | 1363 -> 1363 bytes | |||
-rw-r--r-- | maps/re/prtg_cas03.mcache | bin | 1440 -> 1440 bytes | |||
-rw-r--r-- | maps/re/prtg_cas04.mcache | bin | 1512 -> 1512 bytes | |||
-rw-r--r-- | maps/re/pvp_n_1-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/pvp_n_1-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/pvp_n_2-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/pvp_n_2-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/pvp_n_3-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/pvp_n_3-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/pvp_n_4-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/pvp_n_4-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/pvp_n_5-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/pvp_n_5-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/pvp_n_6-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/pvp_n_6-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/pvp_n_7-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/pvp_n_7-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/pvp_n_8-3.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/pvp_n_8-4.mcache | bin | 995 -> 995 bytes | |||
-rw-r--r-- | maps/re/que_avan01.mcache | bin | 205 -> 205 bytes | |||
-rw-r--r-- | maps/re/que_ba.mcache | bin | 1103 -> 1103 bytes | |||
-rw-r--r-- | maps/re/que_dan01.mcache | bin | 272 -> 272 bytes | |||
-rw-r--r-- | maps/re/que_moc_16.mcache | bin | 1125 -> 1125 bytes | |||
-rw-r--r-- | maps/re/que_moon.mcache | bin | 353 -> 353 bytes | |||
-rw-r--r-- | maps/re/que_sign02.mcache | bin | 3744 -> 3744 bytes | |||
-rw-r--r-- | maps/re/que_thor.mcache | bin | 495 -> 495 bytes | |||
-rw-r--r-- | maps/re/quiz_01.mcache | bin | 1622 -> 1622 bytes | |||
-rw-r--r-- | maps/re/ra_fild02.mcache | bin | 4240 -> 4240 bytes | |||
-rw-r--r-- | maps/re/ra_fild09.mcache | bin | 2308 -> 2308 bytes | |||
-rw-r--r-- | maps/re/ra_fild10.mcache | bin | 4094 -> 4094 bytes | |||
-rw-r--r-- | maps/re/ra_san01.mcache | bin | 3060 -> 3060 bytes | |||
-rw-r--r-- | maps/re/ra_temple.mcache | bin | 1295 -> 1295 bytes | |||
-rw-r--r-- | maps/re/siege_test.mcache | bin | 1367 -> 1367 bytes | |||
-rw-r--r-- | maps/re/spl_fild03.mcache | bin | 8302 -> 8302 bytes | |||
-rw-r--r-- | maps/re/spl_in01.mcache | bin | 2361 -> 2361 bytes | |||
-rw-r--r-- | maps/re/sword_1-1.mcache | bin | 2409 -> 2409 bytes | |||
-rw-r--r-- | maps/re/sword_2-1.mcache | bin | 2409 -> 2409 bytes | |||
-rw-r--r-- | maps/re/sword_3-1.mcache | bin | 2409 -> 2409 bytes | |||
-rw-r--r-- | maps/re/te_alde_gld.mcache | bin | 2763 -> 2763 bytes | |||
-rw-r--r-- | maps/re/te_aldecas4.mcache | bin | 1265 -> 1265 bytes | |||
-rw-r--r-- | maps/re/te_aldecas5.mcache | bin | 1288 -> 1288 bytes | |||
-rw-r--r-- | maps/re/te_prtcas01.mcache | bin | 1363 -> 1363 bytes | |||
-rw-r--r-- | maps/re/te_prtcas03.mcache | bin | 1440 -> 1440 bytes | |||
-rw-r--r-- | maps/re/te_prtcas04.mcache | bin | 1512 -> 1512 bytes | |||
-rw-r--r-- | maps/re/teg_dun01.mcache | bin | 2866 -> 2866 bytes | |||
-rw-r--r-- | maps/re/tha_t01.mcache | bin | 3145 -> 3145 bytes | |||
-rw-r--r-- | maps/re/tur_dun01.mcache | bin | 2939 -> 2939 bytes | |||
-rw-r--r-- | maps/re/tur_dun02.mcache | bin | 3976 -> 3976 bytes | |||
-rw-r--r-- | maps/re/tur_dun03.mcache | bin | 2569 -> 2569 bytes | |||
-rw-r--r-- | maps/re/tur_dun06.mcache | bin | 735 -> 735 bytes | |||
-rw-r--r-- | maps/re/turbo_e_16.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/re/turbo_e_4.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/re/turbo_e_8.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/re/turbo_n_1.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/re/turbo_n_16.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/re/turbo_n_4.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/re/turbo_n_8.mcache | bin | 3302 -> 3302 bytes | |||
-rw-r--r-- | maps/re/turbo_room.mcache | bin | 657 -> 657 bytes | |||
-rw-r--r-- | maps/re/um_fild02.mcache | bin | 5281 -> 5281 bytes | |||
-rw-r--r-- | maps/re/valkyrie.mcache | bin | 186 -> 186 bytes | |||
-rw-r--r-- | maps/re/ve_fild03.mcache | bin | 3347 -> 3347 bytes | |||
-rw-r--r-- | maps/re/ve_fild07.mcache | bin | 4044 -> 4044 bytes | |||
-rw-r--r-- | maps/re/wizard_1-1.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/wizard_2-1.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/wizard_3-1.mcache | bin | 482 -> 482 bytes | |||
-rw-r--r-- | maps/re/xmas_dun02.mcache | bin | 3329 -> 3329 bytes | |||
-rw-r--r-- | maps/re/yuno_fild12.mcache | bin | 3057 -> 3057 bytes | |||
-rw-r--r-- | maps/re/yuno_pre.mcache | bin | 471 -> 471 bytes | |||
-rw-r--r-- | sql-files/main.sql | 4 | ||||
-rw-r--r-- | sql-files/upgrades/2018-02-26--15-57.sql | 6 | ||||
-rw-r--r-- | sql-files/upgrades/index.txt | 1 | ||||
-rw-r--r-- | src/char/char.c | 5 | ||||
-rw-r--r-- | src/char/int_rodex.c | 62 | ||||
-rw-r--r-- | src/char/inter.c | 3 | ||||
-rw-r--r-- | src/char/mapif.c | 2 | ||||
-rw-r--r-- | src/char/mapif.h | 2 | ||||
-rw-r--r-- | src/char/pincode.c | 17 | ||||
-rw-r--r-- | src/common/md5calc.c | 2 | ||||
-rw-r--r-- | src/common/mmo.h | 1 | ||||
-rw-r--r-- | src/login/login.c | 4 | ||||
-rw-r--r-- | src/map/atcommand.c | 5 | ||||
-rw-r--r-- | src/map/clan.c | 3 | ||||
-rw-r--r-- | src/map/clif.c | 271 | ||||
-rw-r--r-- | src/map/clif.h | 2 | ||||
-rw-r--r-- | src/map/intif.c | 14 | ||||
-rw-r--r-- | src/map/packets.h | 23 | ||||
-rw-r--r-- | src/map/packets_keys_main.h | 23 | ||||
-rw-r--r-- | src/map/packets_keys_zero.h | 17 | ||||
-rw-r--r-- | src/map/packets_shuffle_main.h | 107 | ||||
-rw-r--r-- | src/map/packets_shuffle_zero.h | 101 | ||||
-rw-r--r-- | src/map/rodex.c | 32 | ||||
-rw-r--r-- | src/map/unit.c | 16 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking.Defs.inc | 8 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_char.Hooks.inc | 12 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.Hooks.inc | 12 | ||||
-rw-r--r-- | src/plugins/mapcache.c | 106 | ||||
-rw-r--r-- | vcproj-11/map-server.vcxproj | 4 | ||||
-rw-r--r-- | vcproj-11/map-server.vcxproj.filters | 12 | ||||
-rw-r--r-- | vcproj-12/map-server.vcxproj | 4 | ||||
-rw-r--r-- | vcproj-12/map-server.vcxproj.filters | 12 | ||||
-rw-r--r-- | vcproj-14/map-server.vcxproj | 4 | ||||
-rw-r--r-- | vcproj-14/map-server.vcxproj.filters | 12 |
476 files changed, 763 insertions, 154 deletions
@@ -37,7 +37,7 @@ Table of Contents What is Hercules? ----------------- Hercules is a collaborative software development project revolving around the -creation of a robust massively multiplayer online role playing game (MMORPG) +creation of a robust Massively Multiplayer Online Role Playing Game (MMORPG) server package. Written in C, the program is very versatile and provides NPCs, warps and modifications. The project is jointly managed by a group of volunteers located around the world as well as a tremendous community providing @@ -45,9 +45,9 @@ QA and support. Hercules is a continuation of the original Athena project. Prerequisites ------------- -Before installing Hercules there are certain tools and applications you will -need. This differs between the varying operating systems available, so the -following is broken down into Windows and Unix (incl. Linux) prerequisites. +Before installing Hercules, you will need to install certain tools and applications. +This differs between the varying Operating Systems available, so the +following list is broken down into Windows and Unix (incl. Linux) prerequisites. For a list of supported platforms, please refer to the [Supported Platforms](https://github.com/HerculesWS/Hercules/wiki/Supported-Platforms) wiki page. diff --git a/maps/pre-re/1@cata.mcache b/maps/pre-re/1@cata.mcache Binary files differindex 309993e0d..2ad1d4f08 100644 --- a/maps/pre-re/1@cata.mcache +++ b/maps/pre-re/1@cata.mcache diff --git a/maps/pre-re/1@eom.mcache b/maps/pre-re/1@eom.mcache Binary files differindex f5b0de3b7..b648f56ea 100644 --- a/maps/pre-re/1@eom.mcache +++ b/maps/pre-re/1@eom.mcache diff --git a/maps/pre-re/1@gef_in.mcache b/maps/pre-re/1@gef_in.mcache Binary files differindex 7272c019c..349794fc8 100644 --- a/maps/pre-re/1@gef_in.mcache +++ b/maps/pre-re/1@gef_in.mcache diff --git a/maps/pre-re/1@jtb.mcache b/maps/pre-re/1@jtb.mcache Binary files differindex fa27cef9f..b1b3b5724 100644 --- a/maps/pre-re/1@jtb.mcache +++ b/maps/pre-re/1@jtb.mcache diff --git a/maps/pre-re/1@ma_b.mcache b/maps/pre-re/1@ma_b.mcache Binary files differindex f98fefa8e..5d552d807 100644 --- a/maps/pre-re/1@ma_b.mcache +++ b/maps/pre-re/1@ma_b.mcache diff --git a/maps/pre-re/1@ma_c.mcache b/maps/pre-re/1@ma_c.mcache Binary files differindex 8e8f2cc84..bd08e2297 100644 --- a/maps/pre-re/1@ma_c.mcache +++ b/maps/pre-re/1@ma_c.mcache diff --git a/maps/pre-re/1@sara.mcache b/maps/pre-re/1@sara.mcache Binary files differindex 29ae23f83..1e0b29606 100644 --- a/maps/pre-re/1@sara.mcache +++ b/maps/pre-re/1@sara.mcache diff --git a/maps/pre-re/1@tnm3.mcache b/maps/pre-re/1@tnm3.mcache Binary files differindex 7d20226bb..42d8c59f2 100644 --- a/maps/pre-re/1@tnm3.mcache +++ b/maps/pre-re/1@tnm3.mcache diff --git a/maps/pre-re/5@tower.mcache b/maps/pre-re/5@tower.mcache Binary files differindex dd08a66f6..08f66c2f1 100644 --- a/maps/pre-re/5@tower.mcache +++ b/maps/pre-re/5@tower.mcache diff --git a/maps/pre-re/airplane.mcache b/maps/pre-re/airplane.mcache Binary files differindex 11f92f27c..9c0c2edce 100644 --- a/maps/pre-re/airplane.mcache +++ b/maps/pre-re/airplane.mcache diff --git a/maps/pre-re/airplane_01.mcache b/maps/pre-re/airplane_01.mcache Binary files differindex 11f92f27c..9c0c2edce 100644 --- a/maps/pre-re/airplane_01.mcache +++ b/maps/pre-re/airplane_01.mcache diff --git a/maps/pre-re/alb_ship.mcache b/maps/pre-re/alb_ship.mcache Binary files differindex a91641d83..1e2626d07 100644 --- a/maps/pre-re/alb_ship.mcache +++ b/maps/pre-re/alb_ship.mcache diff --git a/maps/pre-re/alde_alche.mcache b/maps/pre-re/alde_alche.mcache Binary files differindex 75e4cfc5a..9460e8f93 100644 --- a/maps/pre-re/alde_alche.mcache +++ b/maps/pre-re/alde_alche.mcache diff --git a/maps/pre-re/alde_gld.mcache b/maps/pre-re/alde_gld.mcache Binary files differindex 5a920975f..0b4cd694f 100644 --- a/maps/pre-re/alde_gld.mcache +++ b/maps/pre-re/alde_gld.mcache diff --git a/maps/pre-re/alde_tt02.mcache b/maps/pre-re/alde_tt02.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/pre-re/alde_tt02.mcache +++ b/maps/pre-re/alde_tt02.mcache diff --git a/maps/pre-re/alde_tt03.mcache b/maps/pre-re/alde_tt03.mcache Binary files differindex 03ae0ca56..6921d05bd 100644 --- a/maps/pre-re/alde_tt03.mcache +++ b/maps/pre-re/alde_tt03.mcache diff --git a/maps/pre-re/aldeba_in.mcache b/maps/pre-re/aldeba_in.mcache Binary files differindex b33eefa2d..dd96c3b76 100644 --- a/maps/pre-re/aldeba_in.mcache +++ b/maps/pre-re/aldeba_in.mcache diff --git a/maps/pre-re/aldeg_cas04.mcache b/maps/pre-re/aldeg_cas04.mcache Binary files differindex 9aa8600c5..324040d79 100644 --- a/maps/pre-re/aldeg_cas04.mcache +++ b/maps/pre-re/aldeg_cas04.mcache diff --git a/maps/pre-re/aldeg_cas05.mcache b/maps/pre-re/aldeg_cas05.mcache Binary files differindex cde5d2811..8094ea0d1 100644 --- a/maps/pre-re/aldeg_cas05.mcache +++ b/maps/pre-re/aldeg_cas05.mcache diff --git a/maps/pre-re/arug_cas01.mcache b/maps/pre-re/arug_cas01.mcache Binary files differindex 241172f1d..fff355c8c 100644 --- a/maps/pre-re/arug_cas01.mcache +++ b/maps/pre-re/arug_cas01.mcache diff --git a/maps/pre-re/arug_cas03.mcache b/maps/pre-re/arug_cas03.mcache Binary files differindex ab08aa804..c15ce7baa 100644 --- a/maps/pre-re/arug_cas03.mcache +++ b/maps/pre-re/arug_cas03.mcache diff --git a/maps/pre-re/arug_cas04.mcache b/maps/pre-re/arug_cas04.mcache Binary files differindex ab08aa804..c15ce7baa 100644 --- a/maps/pre-re/arug_cas04.mcache +++ b/maps/pre-re/arug_cas04.mcache diff --git a/maps/pre-re/arug_cas05.mcache b/maps/pre-re/arug_cas05.mcache Binary files differindex ab08aa804..c15ce7baa 100644 --- a/maps/pre-re/arug_cas05.mcache +++ b/maps/pre-re/arug_cas05.mcache diff --git a/maps/pre-re/auction_01.mcache b/maps/pre-re/auction_01.mcache Binary files differindex 9d405d859..93879880f 100644 --- a/maps/pre-re/auction_01.mcache +++ b/maps/pre-re/auction_01.mcache diff --git a/maps/pre-re/auction_02.mcache b/maps/pre-re/auction_02.mcache Binary files differindex c211f1212..82823e9ce 100644 --- a/maps/pre-re/auction_02.mcache +++ b/maps/pre-re/auction_02.mcache diff --git a/maps/pre-re/ayo_in01.mcache b/maps/pre-re/ayo_in01.mcache Binary files differindex e7dbb22d5..e5f9aaccb 100644 --- a/maps/pre-re/ayo_in01.mcache +++ b/maps/pre-re/ayo_in01.mcache diff --git a/maps/pre-re/bat_b01.mcache b/maps/pre-re/bat_b01.mcache Binary files differindex 529afaf34..7025d2d99 100644 --- a/maps/pre-re/bat_b01.mcache +++ b/maps/pre-re/bat_b01.mcache diff --git a/maps/pre-re/bat_b02.mcache b/maps/pre-re/bat_b02.mcache Binary files differindex 529afaf34..7025d2d99 100644 --- a/maps/pre-re/bat_b02.mcache +++ b/maps/pre-re/bat_b02.mcache diff --git a/maps/pre-re/bat_c01.mcache b/maps/pre-re/bat_c01.mcache Binary files differindex 8da7eb4d2..5b3b9c44c 100644 --- a/maps/pre-re/bat_c01.mcache +++ b/maps/pre-re/bat_c01.mcache diff --git a/maps/pre-re/bat_c02.mcache b/maps/pre-re/bat_c02.mcache Binary files differindex 8da7eb4d2..5b3b9c44c 100644 --- a/maps/pre-re/bat_c02.mcache +++ b/maps/pre-re/bat_c02.mcache diff --git a/maps/pre-re/bat_c03.mcache b/maps/pre-re/bat_c03.mcache Binary files differindex 8da7eb4d2..5b3b9c44c 100644 --- a/maps/pre-re/bat_c03.mcache +++ b/maps/pre-re/bat_c03.mcache diff --git a/maps/pre-re/bat_room.mcache b/maps/pre-re/bat_room.mcache Binary files differindex 58d0fd452..03511b9ee 100644 --- a/maps/pre-re/bat_room.mcache +++ b/maps/pre-re/bat_room.mcache diff --git a/maps/pre-re/bif_fild01.mcache b/maps/pre-re/bif_fild01.mcache Binary files differindex 0d83800db..1c4521922 100644 --- a/maps/pre-re/bif_fild01.mcache +++ b/maps/pre-re/bif_fild01.mcache diff --git a/maps/pre-re/bra_in01.mcache b/maps/pre-re/bra_in01.mcache Binary files differindex 2f15b76db..453447803 100644 --- a/maps/pre-re/bra_in01.mcache +++ b/maps/pre-re/bra_in01.mcache diff --git a/maps/pre-re/c_tower1.mcache b/maps/pre-re/c_tower1.mcache Binary files differindex 60ba07715..369f27205 100644 --- a/maps/pre-re/c_tower1.mcache +++ b/maps/pre-re/c_tower1.mcache diff --git a/maps/pre-re/c_tower2.mcache b/maps/pre-re/c_tower2.mcache Binary files differindex e610d4907..123709fe0 100644 --- a/maps/pre-re/c_tower2.mcache +++ b/maps/pre-re/c_tower2.mcache diff --git a/maps/pre-re/c_tower2_.mcache b/maps/pre-re/c_tower2_.mcache Binary files differindex e610d4907..123709fe0 100644 --- a/maps/pre-re/c_tower2_.mcache +++ b/maps/pre-re/c_tower2_.mcache diff --git a/maps/pre-re/c_tower4.mcache b/maps/pre-re/c_tower4.mcache Binary files differindex e238b1497..f9d79d599 100644 --- a/maps/pre-re/c_tower4.mcache +++ b/maps/pre-re/c_tower4.mcache diff --git a/maps/pre-re/cmd_fild06.mcache b/maps/pre-re/cmd_fild06.mcache Binary files differindex e79d825a4..9dc5b931f 100644 --- a/maps/pre-re/cmd_fild06.mcache +++ b/maps/pre-re/cmd_fild06.mcache diff --git a/maps/pre-re/dic_dun01.mcache b/maps/pre-re/dic_dun01.mcache Binary files differindex e6983f2e7..1ae77a718 100644 --- a/maps/pre-re/dic_dun01.mcache +++ b/maps/pre-re/dic_dun01.mcache diff --git a/maps/pre-re/dicastes01.mcache b/maps/pre-re/dicastes01.mcache Binary files differindex 3c56864cb..da84af440 100644 --- a/maps/pre-re/dicastes01.mcache +++ b/maps/pre-re/dicastes01.mcache diff --git a/maps/pre-re/dicastes02.mcache b/maps/pre-re/dicastes02.mcache Binary files differindex f2d3565c5..fcfec592d 100644 --- a/maps/pre-re/dicastes02.mcache +++ b/maps/pre-re/dicastes02.mcache diff --git a/maps/pre-re/ecl_hub01.mcache b/maps/pre-re/ecl_hub01.mcache Binary files differindex 2a0fdbd64..f484f889d 100644 --- a/maps/pre-re/ecl_hub01.mcache +++ b/maps/pre-re/ecl_hub01.mcache diff --git a/maps/pre-re/ecl_tdun01.mcache b/maps/pre-re/ecl_tdun01.mcache Binary files differindex 9d1fa99e9..814786557 100644 --- a/maps/pre-re/ecl_tdun01.mcache +++ b/maps/pre-re/ecl_tdun01.mcache diff --git a/maps/pre-re/ecl_tdun02.mcache b/maps/pre-re/ecl_tdun02.mcache Binary files differindex c392661d9..bf1e078bc 100644 --- a/maps/pre-re/ecl_tdun02.mcache +++ b/maps/pre-re/ecl_tdun02.mcache diff --git a/maps/pre-re/ecl_tdun03.mcache b/maps/pre-re/ecl_tdun03.mcache Binary files differindex d07d6dd5c..d41be2bdc 100644 --- a/maps/pre-re/ecl_tdun03.mcache +++ b/maps/pre-re/ecl_tdun03.mcache diff --git a/maps/pre-re/ecl_tdun04.mcache b/maps/pre-re/ecl_tdun04.mcache Binary files differindex 806aad503..763331f2a 100644 --- a/maps/pre-re/ecl_tdun04.mcache +++ b/maps/pre-re/ecl_tdun04.mcache diff --git a/maps/pre-re/ein_fild01.mcache b/maps/pre-re/ein_fild01.mcache Binary files differindex abd5a0bd2..997794512 100644 --- a/maps/pre-re/ein_fild01.mcache +++ b/maps/pre-re/ein_fild01.mcache diff --git a/maps/pre-re/ein_fild03.mcache b/maps/pre-re/ein_fild03.mcache Binary files differindex d40e7d2c5..d73adb11e 100644 --- a/maps/pre-re/ein_fild03.mcache +++ b/maps/pre-re/ein_fild03.mcache diff --git a/maps/pre-re/ein_in01.mcache b/maps/pre-re/ein_in01.mcache Binary files differindex 9b563106d..d5218dc9c 100644 --- a/maps/pre-re/ein_in01.mcache +++ b/maps/pre-re/ein_in01.mcache diff --git a/maps/pre-re/evt_mobroom.mcache b/maps/pre-re/evt_mobroom.mcache Binary files differindex c63019965..7d3c46952 100644 --- a/maps/pre-re/evt_mobroom.mcache +++ b/maps/pre-re/evt_mobroom.mcache diff --git a/maps/pre-re/g_room1-1.mcache b/maps/pre-re/g_room1-1.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/pre-re/g_room1-1.mcache +++ b/maps/pre-re/g_room1-1.mcache diff --git a/maps/pre-re/g_room1-2.mcache b/maps/pre-re/g_room1-2.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/pre-re/g_room1-2.mcache +++ b/maps/pre-re/g_room1-2.mcache diff --git a/maps/pre-re/g_room1-3.mcache b/maps/pre-re/g_room1-3.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/pre-re/g_room1-3.mcache +++ b/maps/pre-re/g_room1-3.mcache diff --git a/maps/pre-re/g_room2.mcache b/maps/pre-re/g_room2.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/pre-re/g_room2.mcache +++ b/maps/pre-re/g_room2.mcache diff --git a/maps/pre-re/gef_fild01.mcache b/maps/pre-re/gef_fild01.mcache Binary files differindex 5cfd31c53..52042dbcc 100644 --- a/maps/pre-re/gef_fild01.mcache +++ b/maps/pre-re/gef_fild01.mcache diff --git a/maps/pre-re/gefenia01.mcache b/maps/pre-re/gefenia01.mcache Binary files differindex 29163077b..347332bab 100644 --- a/maps/pre-re/gefenia01.mcache +++ b/maps/pre-re/gefenia01.mcache diff --git a/maps/pre-re/gefenia02.mcache b/maps/pre-re/gefenia02.mcache Binary files differindex 6c4b23779..3ac05d055 100644 --- a/maps/pre-re/gefenia02.mcache +++ b/maps/pre-re/gefenia02.mcache diff --git a/maps/pre-re/gefg_cas04.mcache b/maps/pre-re/gefg_cas04.mcache Binary files differindex a70fdb9d4..644ae4732 100644 --- a/maps/pre-re/gefg_cas04.mcache +++ b/maps/pre-re/gefg_cas04.mcache diff --git a/maps/pre-re/gl_in01.mcache b/maps/pre-re/gl_in01.mcache Binary files differindex 886b975f9..a49f299d3 100644 --- a/maps/pre-re/gl_in01.mcache +++ b/maps/pre-re/gl_in01.mcache diff --git a/maps/pre-re/gld_dun03.mcache b/maps/pre-re/gld_dun03.mcache Binary files differindex ee76ceb3f..44c528bc2 100644 --- a/maps/pre-re/gld_dun03.mcache +++ b/maps/pre-re/gld_dun03.mcache diff --git a/maps/pre-re/gld_dun03_2.mcache b/maps/pre-re/gld_dun03_2.mcache Binary files differindex ee76ceb3f..44c528bc2 100644 --- a/maps/pre-re/gld_dun03_2.mcache +++ b/maps/pre-re/gld_dun03_2.mcache diff --git a/maps/pre-re/guild_room.mcache b/maps/pre-re/guild_room.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/pre-re/guild_room.mcache +++ b/maps/pre-re/guild_room.mcache diff --git a/maps/pre-re/himinn.mcache b/maps/pre-re/himinn.mcache Binary files differindex f13c3627e..208d13ed9 100644 --- a/maps/pre-re/himinn.mcache +++ b/maps/pre-re/himinn.mcache diff --git a/maps/pre-re/hu_fild06.mcache b/maps/pre-re/hu_fild06.mcache Binary files differindex e570bc068..420460fdd 100644 --- a/maps/pre-re/hu_fild06.mcache +++ b/maps/pre-re/hu_fild06.mcache diff --git a/maps/pre-re/hu_in01.mcache b/maps/pre-re/hu_in01.mcache Binary files differindex 59ad3afc3..e56450467 100644 --- a/maps/pre-re/hu_in01.mcache +++ b/maps/pre-re/hu_in01.mcache diff --git a/maps/pre-re/ice_dun02.mcache b/maps/pre-re/ice_dun02.mcache Binary files differindex 8f464f5a2..5d3f7205a 100644 --- a/maps/pre-re/ice_dun02.mcache +++ b/maps/pre-re/ice_dun02.mcache diff --git a/maps/pre-re/in_hunter.mcache b/maps/pre-re/in_hunter.mcache Binary files differindex 06251d2f9..797d74456 100644 --- a/maps/pre-re/in_hunter.mcache +++ b/maps/pre-re/in_hunter.mcache diff --git a/maps/pre-re/in_moc_16.mcache b/maps/pre-re/in_moc_16.mcache Binary files differindex 74e516042..70290570b 100644 --- a/maps/pre-re/in_moc_16.mcache +++ b/maps/pre-re/in_moc_16.mcache diff --git a/maps/pre-re/itemmall.mcache b/maps/pre-re/itemmall.mcache Binary files differindex 9d405d859..93879880f 100644 --- a/maps/pre-re/itemmall.mcache +++ b/maps/pre-re/itemmall.mcache diff --git a/maps/pre-re/iz_ac01.mcache b/maps/pre-re/iz_ac01.mcache Binary files differindex a34847c5c..3cca8d8e0 100644 --- a/maps/pre-re/iz_ac01.mcache +++ b/maps/pre-re/iz_ac01.mcache diff --git a/maps/pre-re/iz_ac01_a.mcache b/maps/pre-re/iz_ac01_a.mcache Binary files differindex a34847c5c..3cca8d8e0 100644 --- a/maps/pre-re/iz_ac01_a.mcache +++ b/maps/pre-re/iz_ac01_a.mcache diff --git a/maps/pre-re/iz_ac01_b.mcache b/maps/pre-re/iz_ac01_b.mcache Binary files differindex a34847c5c..3cca8d8e0 100644 --- a/maps/pre-re/iz_ac01_b.mcache +++ b/maps/pre-re/iz_ac01_b.mcache diff --git a/maps/pre-re/iz_ac01_c.mcache b/maps/pre-re/iz_ac01_c.mcache Binary files differindex a34847c5c..3cca8d8e0 100644 --- a/maps/pre-re/iz_ac01_c.mcache +++ b/maps/pre-re/iz_ac01_c.mcache diff --git a/maps/pre-re/iz_ac01_d.mcache b/maps/pre-re/iz_ac01_d.mcache Binary files differindex a34847c5c..3cca8d8e0 100644 --- a/maps/pre-re/iz_ac01_d.mcache +++ b/maps/pre-re/iz_ac01_d.mcache diff --git a/maps/pre-re/iz_int.mcache b/maps/pre-re/iz_int.mcache Binary files differindex d6eef11fb..ccf01c2ec 100644 --- a/maps/pre-re/iz_int.mcache +++ b/maps/pre-re/iz_int.mcache diff --git a/maps/pre-re/iz_int01.mcache b/maps/pre-re/iz_int01.mcache Binary files differindex d6eef11fb..ccf01c2ec 100644 --- a/maps/pre-re/iz_int01.mcache +++ b/maps/pre-re/iz_int01.mcache diff --git a/maps/pre-re/iz_int02.mcache b/maps/pre-re/iz_int02.mcache Binary files differindex d6eef11fb..ccf01c2ec 100644 --- a/maps/pre-re/iz_int02.mcache +++ b/maps/pre-re/iz_int02.mcache diff --git a/maps/pre-re/iz_int03.mcache b/maps/pre-re/iz_int03.mcache Binary files differindex d6eef11fb..ccf01c2ec 100644 --- a/maps/pre-re/iz_int03.mcache +++ b/maps/pre-re/iz_int03.mcache diff --git a/maps/pre-re/iz_int04.mcache b/maps/pre-re/iz_int04.mcache Binary files differindex d6eef11fb..ccf01c2ec 100644 --- a/maps/pre-re/iz_int04.mcache +++ b/maps/pre-re/iz_int04.mcache diff --git a/maps/pre-re/jawaii_in.mcache b/maps/pre-re/jawaii_in.mcache Binary files differindex e17766bf3..1062ddabb 100644 --- a/maps/pre-re/jawaii_in.mcache +++ b/maps/pre-re/jawaii_in.mcache diff --git a/maps/pre-re/job3_arch01.mcache b/maps/pre-re/job3_arch01.mcache Binary files differindex 6dab866ad..ba9b44e08 100644 --- a/maps/pre-re/job3_arch01.mcache +++ b/maps/pre-re/job3_arch01.mcache diff --git a/maps/pre-re/job3_arch03.mcache b/maps/pre-re/job3_arch03.mcache Binary files differindex 6dab866ad..ba9b44e08 100644 --- a/maps/pre-re/job3_arch03.mcache +++ b/maps/pre-re/job3_arch03.mcache diff --git a/maps/pre-re/job3_gen01.mcache b/maps/pre-re/job3_gen01.mcache Binary files differindex 1a9b48b9d..63f2b8624 100644 --- a/maps/pre-re/job3_gen01.mcache +++ b/maps/pre-re/job3_gen01.mcache diff --git a/maps/pre-re/job3_guil01.mcache b/maps/pre-re/job3_guil01.mcache Binary files differindex df174ec0f..b54f4d168 100644 --- a/maps/pre-re/job3_guil01.mcache +++ b/maps/pre-re/job3_guil01.mcache diff --git a/maps/pre-re/job3_rang02.mcache b/maps/pre-re/job3_rang02.mcache Binary files differindex 1b4b807bb..613668187 100644 --- a/maps/pre-re/job3_rang02.mcache +++ b/maps/pre-re/job3_rang02.mcache diff --git a/maps/pre-re/job3_sha01.mcache b/maps/pre-re/job3_sha01.mcache Binary files differindex a11c9a554..d9e2da13b 100644 --- a/maps/pre-re/job3_sha01.mcache +++ b/maps/pre-re/job3_sha01.mcache diff --git a/maps/pre-re/job3_war01.mcache b/maps/pre-re/job3_war01.mcache Binary files differindex e5699fe49..2b8277e4a 100644 --- a/maps/pre-re/job3_war01.mcache +++ b/maps/pre-re/job3_war01.mcache diff --git a/maps/pre-re/job3_war02.mcache b/maps/pre-re/job3_war02.mcache Binary files differindex e5699fe49..2b8277e4a 100644 --- a/maps/pre-re/job3_war02.mcache +++ b/maps/pre-re/job3_war02.mcache diff --git a/maps/pre-re/job_ko.mcache b/maps/pre-re/job_ko.mcache Binary files differindex 5f088321e..24ada6df1 100644 --- a/maps/pre-re/job_ko.mcache +++ b/maps/pre-re/job_ko.mcache diff --git a/maps/pre-re/job_priest.mcache b/maps/pre-re/job_priest.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/job_priest.mcache +++ b/maps/pre-re/job_priest.mcache diff --git a/maps/pre-re/job_soul.mcache b/maps/pre-re/job_soul.mcache Binary files differindex eee75a253..d48f37a50 100644 --- a/maps/pre-re/job_soul.mcache +++ b/maps/pre-re/job_soul.mcache diff --git a/maps/pre-re/job_star.mcache b/maps/pre-re/job_star.mcache Binary files differindex 981a29eb8..92057f58f 100644 --- a/maps/pre-re/job_star.mcache +++ b/maps/pre-re/job_star.mcache diff --git a/maps/pre-re/job_sword1.mcache b/maps/pre-re/job_sword1.mcache Binary files differindex d2ae19b3a..695bece61 100644 --- a/maps/pre-re/job_sword1.mcache +++ b/maps/pre-re/job_sword1.mcache diff --git a/maps/pre-re/job_wizard.mcache b/maps/pre-re/job_wizard.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/job_wizard.mcache +++ b/maps/pre-re/job_wizard.mcache diff --git a/maps/pre-re/jupe_core.mcache b/maps/pre-re/jupe_core.mcache Binary files differindex 08daa6272..2d9cc99e4 100644 --- a/maps/pre-re/jupe_core.mcache +++ b/maps/pre-re/jupe_core.mcache diff --git a/maps/pre-re/jupe_core2.mcache b/maps/pre-re/jupe_core2.mcache Binary files differindex 08daa6272..2d9cc99e4 100644 --- a/maps/pre-re/jupe_core2.mcache +++ b/maps/pre-re/jupe_core2.mcache diff --git a/maps/pre-re/jupe_ele_r.mcache b/maps/pre-re/jupe_ele_r.mcache Binary files differindex 749dcdd0a..614aa48a0 100644 --- a/maps/pre-re/jupe_ele_r.mcache +++ b/maps/pre-re/jupe_ele_r.mcache diff --git a/maps/pre-re/kh_dun02.mcache b/maps/pre-re/kh_dun02.mcache Binary files differindex eeb2596db..033ff067e 100644 --- a/maps/pre-re/kh_dun02.mcache +++ b/maps/pre-re/kh_dun02.mcache diff --git a/maps/pre-re/lhz_fild02.mcache b/maps/pre-re/lhz_fild02.mcache Binary files differindex 4d31ae904..e2b2a173e 100644 --- a/maps/pre-re/lhz_fild02.mcache +++ b/maps/pre-re/lhz_fild02.mcache diff --git a/maps/pre-re/lhz_in03.mcache b/maps/pre-re/lhz_in03.mcache Binary files differindex be53196fc..212d47dd9 100644 --- a/maps/pre-re/lhz_in03.mcache +++ b/maps/pre-re/lhz_in03.mcache diff --git a/maps/pre-re/lighthalzen.mcache b/maps/pre-re/lighthalzen.mcache Binary files differindex 3d17a74ae..9fa7e2d55 100644 --- a/maps/pre-re/lighthalzen.mcache +++ b/maps/pre-re/lighthalzen.mcache diff --git a/maps/pre-re/lou_dun03.mcache b/maps/pre-re/lou_dun03.mcache Binary files differindex 63c47a1cf..dffe3027c 100644 --- a/maps/pre-re/lou_dun03.mcache +++ b/maps/pre-re/lou_dun03.mcache diff --git a/maps/pre-re/ma_scene01.mcache b/maps/pre-re/ma_scene01.mcache Binary files differindex b1e6e5779..5a72418c2 100644 --- a/maps/pre-re/ma_scene01.mcache +++ b/maps/pre-re/ma_scene01.mcache diff --git a/maps/pre-re/ma_zif01.mcache b/maps/pre-re/ma_zif01.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/pre-re/ma_zif01.mcache +++ b/maps/pre-re/ma_zif01.mcache diff --git a/maps/pre-re/ma_zif02.mcache b/maps/pre-re/ma_zif02.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/pre-re/ma_zif02.mcache +++ b/maps/pre-re/ma_zif02.mcache diff --git a/maps/pre-re/ma_zif03.mcache b/maps/pre-re/ma_zif03.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/pre-re/ma_zif03.mcache +++ b/maps/pre-re/ma_zif03.mcache diff --git a/maps/pre-re/ma_zif04.mcache b/maps/pre-re/ma_zif04.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/pre-re/ma_zif04.mcache +++ b/maps/pre-re/ma_zif04.mcache diff --git a/maps/pre-re/ma_zif05.mcache b/maps/pre-re/ma_zif05.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/pre-re/ma_zif05.mcache +++ b/maps/pre-re/ma_zif05.mcache diff --git a/maps/pre-re/ma_zif06.mcache b/maps/pre-re/ma_zif06.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/pre-re/ma_zif06.mcache +++ b/maps/pre-re/ma_zif06.mcache diff --git a/maps/pre-re/ma_zif07.mcache b/maps/pre-re/ma_zif07.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/pre-re/ma_zif07.mcache +++ b/maps/pre-re/ma_zif07.mcache diff --git a/maps/pre-re/ma_zif08.mcache b/maps/pre-re/ma_zif08.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/pre-re/ma_zif08.mcache +++ b/maps/pre-re/ma_zif08.mcache diff --git a/maps/pre-re/ma_zif09.mcache b/maps/pre-re/ma_zif09.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/pre-re/ma_zif09.mcache +++ b/maps/pre-re/ma_zif09.mcache diff --git a/maps/pre-re/mag_dun02.mcache b/maps/pre-re/mag_dun02.mcache Binary files differindex e17fdb16f..f431b1be4 100644 --- a/maps/pre-re/mag_dun02.mcache +++ b/maps/pre-re/mag_dun02.mcache diff --git a/maps/pre-re/mal_in01.mcache b/maps/pre-re/mal_in01.mcache Binary files differindex 6e8ecd830..ad09b6b31 100644 --- a/maps/pre-re/mal_in01.mcache +++ b/maps/pre-re/mal_in01.mcache diff --git a/maps/pre-re/man_fild03.mcache b/maps/pre-re/man_fild03.mcache Binary files differindex cf994ed47..59450915a 100644 --- a/maps/pre-re/man_fild03.mcache +++ b/maps/pre-re/man_fild03.mcache diff --git a/maps/pre-re/man_in01.mcache b/maps/pre-re/man_in01.mcache Binary files differindex 16301b0b2..0263fd518 100644 --- a/maps/pre-re/man_in01.mcache +++ b/maps/pre-re/man_in01.mcache diff --git a/maps/pre-re/mjolnir_12.mcache b/maps/pre-re/mjolnir_12.mcache Binary files differindex da1037044..263826474 100644 --- a/maps/pre-re/mjolnir_12.mcache +++ b/maps/pre-re/mjolnir_12.mcache diff --git a/maps/pre-re/moc_fild01.mcache b/maps/pre-re/moc_fild01.mcache Binary files differindex 5150d12d8..9d5248ede 100644 --- a/maps/pre-re/moc_fild01.mcache +++ b/maps/pre-re/moc_fild01.mcache diff --git a/maps/pre-re/moc_fild07.mcache b/maps/pre-re/moc_fild07.mcache Binary files differindex 22f98bb5e..c5b871572 100644 --- a/maps/pre-re/moc_fild07.mcache +++ b/maps/pre-re/moc_fild07.mcache diff --git a/maps/pre-re/moc_fild08.mcache b/maps/pre-re/moc_fild08.mcache Binary files differindex d46ea4ce9..90be6a00a 100644 --- a/maps/pre-re/moc_fild08.mcache +++ b/maps/pre-re/moc_fild08.mcache diff --git a/maps/pre-re/moc_pryd01.mcache b/maps/pre-re/moc_pryd01.mcache Binary files differindex b45126dd1..9f63b5199 100644 --- a/maps/pre-re/moc_pryd01.mcache +++ b/maps/pre-re/moc_pryd01.mcache diff --git a/maps/pre-re/moc_pryd04.mcache b/maps/pre-re/moc_pryd04.mcache Binary files differindex 63c5a34ff..df0b9e8b8 100644 --- a/maps/pre-re/moc_pryd04.mcache +++ b/maps/pre-re/moc_pryd04.mcache diff --git a/maps/pre-re/morocc_in.mcache b/maps/pre-re/morocc_in.mcache Binary files differindex b609a8e11..048478ec6 100644 --- a/maps/pre-re/morocc_in.mcache +++ b/maps/pre-re/morocc_in.mcache diff --git a/maps/pre-re/mosk_dun02.mcache b/maps/pre-re/mosk_dun02.mcache Binary files differindex 1aef0aa49..e506eb7f4 100644 --- a/maps/pre-re/mosk_dun02.mcache +++ b/maps/pre-re/mosk_dun02.mcache diff --git a/maps/pre-re/mosk_fild02.mcache b/maps/pre-re/mosk_fild02.mcache Binary files differindex 6afeb3567..5f41071fe 100644 --- a/maps/pre-re/mosk_fild02.mcache +++ b/maps/pre-re/mosk_fild02.mcache diff --git a/maps/pre-re/nameless_in.mcache b/maps/pre-re/nameless_in.mcache Binary files differindex 0a8e2e686..c7e3e7ade 100644 --- a/maps/pre-re/nameless_in.mcache +++ b/maps/pre-re/nameless_in.mcache diff --git a/maps/pre-re/new_1-4.mcache b/maps/pre-re/new_1-4.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/pre-re/new_1-4.mcache +++ b/maps/pre-re/new_1-4.mcache diff --git a/maps/pre-re/new_2-4.mcache b/maps/pre-re/new_2-4.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/pre-re/new_2-4.mcache +++ b/maps/pre-re/new_2-4.mcache diff --git a/maps/pre-re/new_3-4.mcache b/maps/pre-re/new_3-4.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/pre-re/new_3-4.mcache +++ b/maps/pre-re/new_3-4.mcache diff --git a/maps/pre-re/new_4-4.mcache b/maps/pre-re/new_4-4.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/pre-re/new_4-4.mcache +++ b/maps/pre-re/new_4-4.mcache diff --git a/maps/pre-re/new_5-4.mcache b/maps/pre-re/new_5-4.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/pre-re/new_5-4.mcache +++ b/maps/pre-re/new_5-4.mcache diff --git a/maps/pre-re/new_zone04.mcache b/maps/pre-re/new_zone04.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/pre-re/new_zone04.mcache +++ b/maps/pre-re/new_zone04.mcache diff --git a/maps/pre-re/nguild_prt.mcache b/maps/pre-re/nguild_prt.mcache Binary files differindex 3368e40dc..1e01f48a7 100644 --- a/maps/pre-re/nguild_prt.mcache +++ b/maps/pre-re/nguild_prt.mcache diff --git a/maps/pre-re/nif_fild02.mcache b/maps/pre-re/nif_fild02.mcache Binary files differindex d15c26ccd..7aa820023 100644 --- a/maps/pre-re/nif_fild02.mcache +++ b/maps/pre-re/nif_fild02.mcache diff --git a/maps/pre-re/nyd_dun01.mcache b/maps/pre-re/nyd_dun01.mcache Binary files differindex 9a1db44a5..c29cebe1a 100644 --- a/maps/pre-re/nyd_dun01.mcache +++ b/maps/pre-re/nyd_dun01.mcache diff --git a/maps/pre-re/nyd_dun02.mcache b/maps/pre-re/nyd_dun02.mcache Binary files differindex 0e2a19c81..a8ef4a685 100644 --- a/maps/pre-re/nyd_dun02.mcache +++ b/maps/pre-re/nyd_dun02.mcache diff --git a/maps/pre-re/orcsdun01.mcache b/maps/pre-re/orcsdun01.mcache Binary files differindex 1b021f341..3b3951498 100644 --- a/maps/pre-re/orcsdun01.mcache +++ b/maps/pre-re/orcsdun01.mcache diff --git a/maps/pre-re/orcsdun02.mcache b/maps/pre-re/orcsdun02.mcache Binary files differindex c5e85558d..004256991 100644 --- a/maps/pre-re/orcsdun02.mcache +++ b/maps/pre-re/orcsdun02.mcache diff --git a/maps/pre-re/pay_fild10.mcache b/maps/pre-re/pay_fild10.mcache Binary files differindex 0528aa68a..22e021de3 100644 --- a/maps/pre-re/pay_fild10.mcache +++ b/maps/pre-re/pay_fild10.mcache diff --git a/maps/pre-re/payon_in01.mcache b/maps/pre-re/payon_in01.mcache Binary files differindex 1feff4dc0..7615d0ba8 100644 --- a/maps/pre-re/payon_in01.mcache +++ b/maps/pre-re/payon_in01.mcache diff --git a/maps/pre-re/priest_1-1.mcache b/maps/pre-re/priest_1-1.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/priest_1-1.mcache +++ b/maps/pre-re/priest_1-1.mcache diff --git a/maps/pre-re/priest_2-1.mcache b/maps/pre-re/priest_2-1.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/priest_2-1.mcache +++ b/maps/pre-re/priest_2-1.mcache diff --git a/maps/pre-re/priest_3-1.mcache b/maps/pre-re/priest_3-1.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/priest_3-1.mcache +++ b/maps/pre-re/priest_3-1.mcache diff --git a/maps/pre-re/prontera.mcache b/maps/pre-re/prontera.mcache Binary files differindex d2ba088f3..c0da924b4 100644 --- a/maps/pre-re/prontera.mcache +++ b/maps/pre-re/prontera.mcache diff --git a/maps/pre-re/prt_are_in.mcache b/maps/pre-re/prt_are_in.mcache Binary files differindex d5fc112d7..03216ff8b 100644 --- a/maps/pre-re/prt_are_in.mcache +++ b/maps/pre-re/prt_are_in.mcache diff --git a/maps/pre-re/prt_church.mcache b/maps/pre-re/prt_church.mcache Binary files differindex 994a7adf4..d3f67cfd2 100644 --- a/maps/pre-re/prt_church.mcache +++ b/maps/pre-re/prt_church.mcache diff --git a/maps/pre-re/prt_fild10.mcache b/maps/pre-re/prt_fild10.mcache Binary files differindex 42ec737fd..4a75d4436 100644 --- a/maps/pre-re/prt_fild10.mcache +++ b/maps/pre-re/prt_fild10.mcache diff --git a/maps/pre-re/prtg_cas01.mcache b/maps/pre-re/prtg_cas01.mcache Binary files differindex 3368e40dc..1e01f48a7 100644 --- a/maps/pre-re/prtg_cas01.mcache +++ b/maps/pre-re/prtg_cas01.mcache diff --git a/maps/pre-re/prtg_cas03.mcache b/maps/pre-re/prtg_cas03.mcache Binary files differindex 40e1e679c..25f9fd86a 100644 --- a/maps/pre-re/prtg_cas03.mcache +++ b/maps/pre-re/prtg_cas03.mcache diff --git a/maps/pre-re/prtg_cas04.mcache b/maps/pre-re/prtg_cas04.mcache Binary files differindex 6683f5567..66f12ad53 100644 --- a/maps/pre-re/prtg_cas04.mcache +++ b/maps/pre-re/prtg_cas04.mcache diff --git a/maps/pre-re/pvp_n_1-3.mcache b/maps/pre-re/pvp_n_1-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/pvp_n_1-3.mcache +++ b/maps/pre-re/pvp_n_1-3.mcache diff --git a/maps/pre-re/pvp_n_1-4.mcache b/maps/pre-re/pvp_n_1-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/pvp_n_1-4.mcache +++ b/maps/pre-re/pvp_n_1-4.mcache diff --git a/maps/pre-re/pvp_n_2-3.mcache b/maps/pre-re/pvp_n_2-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/pvp_n_2-3.mcache +++ b/maps/pre-re/pvp_n_2-3.mcache diff --git a/maps/pre-re/pvp_n_2-4.mcache b/maps/pre-re/pvp_n_2-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/pvp_n_2-4.mcache +++ b/maps/pre-re/pvp_n_2-4.mcache diff --git a/maps/pre-re/pvp_n_3-3.mcache b/maps/pre-re/pvp_n_3-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/pvp_n_3-3.mcache +++ b/maps/pre-re/pvp_n_3-3.mcache diff --git a/maps/pre-re/pvp_n_3-4.mcache b/maps/pre-re/pvp_n_3-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/pvp_n_3-4.mcache +++ b/maps/pre-re/pvp_n_3-4.mcache diff --git a/maps/pre-re/pvp_n_4-3.mcache b/maps/pre-re/pvp_n_4-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/pvp_n_4-3.mcache +++ b/maps/pre-re/pvp_n_4-3.mcache diff --git a/maps/pre-re/pvp_n_4-4.mcache b/maps/pre-re/pvp_n_4-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/pvp_n_4-4.mcache +++ b/maps/pre-re/pvp_n_4-4.mcache diff --git a/maps/pre-re/pvp_n_5-3.mcache b/maps/pre-re/pvp_n_5-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/pvp_n_5-3.mcache +++ b/maps/pre-re/pvp_n_5-3.mcache diff --git a/maps/pre-re/pvp_n_5-4.mcache b/maps/pre-re/pvp_n_5-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/pvp_n_5-4.mcache +++ b/maps/pre-re/pvp_n_5-4.mcache diff --git a/maps/pre-re/pvp_n_6-3.mcache b/maps/pre-re/pvp_n_6-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/pvp_n_6-3.mcache +++ b/maps/pre-re/pvp_n_6-3.mcache diff --git a/maps/pre-re/pvp_n_6-4.mcache b/maps/pre-re/pvp_n_6-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/pvp_n_6-4.mcache +++ b/maps/pre-re/pvp_n_6-4.mcache diff --git a/maps/pre-re/pvp_n_7-3.mcache b/maps/pre-re/pvp_n_7-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/pvp_n_7-3.mcache +++ b/maps/pre-re/pvp_n_7-3.mcache diff --git a/maps/pre-re/pvp_n_7-4.mcache b/maps/pre-re/pvp_n_7-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/pvp_n_7-4.mcache +++ b/maps/pre-re/pvp_n_7-4.mcache diff --git a/maps/pre-re/pvp_n_8-3.mcache b/maps/pre-re/pvp_n_8-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/pvp_n_8-3.mcache +++ b/maps/pre-re/pvp_n_8-3.mcache diff --git a/maps/pre-re/pvp_n_8-4.mcache b/maps/pre-re/pvp_n_8-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/pre-re/pvp_n_8-4.mcache +++ b/maps/pre-re/pvp_n_8-4.mcache diff --git a/maps/pre-re/pvp_y_1-1.mcache b/maps/pre-re/pvp_y_1-1.mcache Binary files differindex d2ba088f3..c0da924b4 100644 --- a/maps/pre-re/pvp_y_1-1.mcache +++ b/maps/pre-re/pvp_y_1-1.mcache diff --git a/maps/pre-re/pvp_y_2-1.mcache b/maps/pre-re/pvp_y_2-1.mcache Binary files differindex d2ba088f3..c0da924b4 100644 --- a/maps/pre-re/pvp_y_2-1.mcache +++ b/maps/pre-re/pvp_y_2-1.mcache diff --git a/maps/pre-re/pvp_y_3-1.mcache b/maps/pre-re/pvp_y_3-1.mcache Binary files differindex d2ba088f3..c0da924b4 100644 --- a/maps/pre-re/pvp_y_3-1.mcache +++ b/maps/pre-re/pvp_y_3-1.mcache diff --git a/maps/pre-re/pvp_y_4-1.mcache b/maps/pre-re/pvp_y_4-1.mcache Binary files differindex d2ba088f3..c0da924b4 100644 --- a/maps/pre-re/pvp_y_4-1.mcache +++ b/maps/pre-re/pvp_y_4-1.mcache diff --git a/maps/pre-re/pvp_y_5-1.mcache b/maps/pre-re/pvp_y_5-1.mcache Binary files differindex d2ba088f3..c0da924b4 100644 --- a/maps/pre-re/pvp_y_5-1.mcache +++ b/maps/pre-re/pvp_y_5-1.mcache diff --git a/maps/pre-re/pvp_y_6-1.mcache b/maps/pre-re/pvp_y_6-1.mcache Binary files differindex d2ba088f3..c0da924b4 100644 --- a/maps/pre-re/pvp_y_6-1.mcache +++ b/maps/pre-re/pvp_y_6-1.mcache diff --git a/maps/pre-re/pvp_y_7-1.mcache b/maps/pre-re/pvp_y_7-1.mcache Binary files differindex d2ba088f3..c0da924b4 100644 --- a/maps/pre-re/pvp_y_7-1.mcache +++ b/maps/pre-re/pvp_y_7-1.mcache diff --git a/maps/pre-re/pvp_y_8-1.mcache b/maps/pre-re/pvp_y_8-1.mcache Binary files differindex d2ba088f3..c0da924b4 100644 --- a/maps/pre-re/pvp_y_8-1.mcache +++ b/maps/pre-re/pvp_y_8-1.mcache diff --git a/maps/pre-re/que_avan01.mcache b/maps/pre-re/que_avan01.mcache Binary files differindex 126fc2720..51cef085a 100644 --- a/maps/pre-re/que_avan01.mcache +++ b/maps/pre-re/que_avan01.mcache diff --git a/maps/pre-re/que_ba.mcache b/maps/pre-re/que_ba.mcache Binary files differindex a008c5b56..837b899e8 100644 --- a/maps/pre-re/que_ba.mcache +++ b/maps/pre-re/que_ba.mcache diff --git a/maps/pre-re/que_dan01.mcache b/maps/pre-re/que_dan01.mcache Binary files differindex e7e504d0f..b65d1e480 100644 --- a/maps/pre-re/que_dan01.mcache +++ b/maps/pre-re/que_dan01.mcache diff --git a/maps/pre-re/que_moc_16.mcache b/maps/pre-re/que_moc_16.mcache Binary files differindex 74e516042..70290570b 100644 --- a/maps/pre-re/que_moc_16.mcache +++ b/maps/pre-re/que_moc_16.mcache diff --git a/maps/pre-re/que_moon.mcache b/maps/pre-re/que_moon.mcache Binary files differindex 981a29eb8..92057f58f 100644 --- a/maps/pre-re/que_moon.mcache +++ b/maps/pre-re/que_moon.mcache diff --git a/maps/pre-re/que_sign02.mcache b/maps/pre-re/que_sign02.mcache Binary files differindex d15c26ccd..7aa820023 100644 --- a/maps/pre-re/que_sign02.mcache +++ b/maps/pre-re/que_sign02.mcache diff --git a/maps/pre-re/que_thor.mcache b/maps/pre-re/que_thor.mcache Binary files differindex b7cc76558..27d5fe8f9 100644 --- a/maps/pre-re/que_thor.mcache +++ b/maps/pre-re/que_thor.mcache diff --git a/maps/pre-re/quiz_01.mcache b/maps/pre-re/quiz_01.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/pre-re/quiz_01.mcache +++ b/maps/pre-re/quiz_01.mcache diff --git a/maps/pre-re/ra_fild02.mcache b/maps/pre-re/ra_fild02.mcache Binary files differindex ed9833b48..372aca88b 100644 --- a/maps/pre-re/ra_fild02.mcache +++ b/maps/pre-re/ra_fild02.mcache diff --git a/maps/pre-re/ra_fild09.mcache b/maps/pre-re/ra_fild09.mcache Binary files differindex 7ffc09cd5..bb5c8babd 100644 --- a/maps/pre-re/ra_fild09.mcache +++ b/maps/pre-re/ra_fild09.mcache diff --git a/maps/pre-re/ra_fild10.mcache b/maps/pre-re/ra_fild10.mcache Binary files differindex 32f64e2d5..9b1342ba2 100644 --- a/maps/pre-re/ra_fild10.mcache +++ b/maps/pre-re/ra_fild10.mcache diff --git a/maps/pre-re/ra_san01.mcache b/maps/pre-re/ra_san01.mcache Binary files differindex 8cfaaefc1..de911bae5 100644 --- a/maps/pre-re/ra_san01.mcache +++ b/maps/pre-re/ra_san01.mcache diff --git a/maps/pre-re/ra_temple.mcache b/maps/pre-re/ra_temple.mcache Binary files differindex f27210d73..1463713b3 100644 --- a/maps/pre-re/ra_temple.mcache +++ b/maps/pre-re/ra_temple.mcache diff --git a/maps/pre-re/siege_test.mcache b/maps/pre-re/siege_test.mcache Binary files differindex 53811a305..8ddd58b6b 100644 --- a/maps/pre-re/siege_test.mcache +++ b/maps/pre-re/siege_test.mcache diff --git a/maps/pre-re/spl_fild03.mcache b/maps/pre-re/spl_fild03.mcache Binary files differindex b00084c52..84bd4b4cb 100644 --- a/maps/pre-re/spl_fild03.mcache +++ b/maps/pre-re/spl_fild03.mcache diff --git a/maps/pre-re/spl_in01.mcache b/maps/pre-re/spl_in01.mcache Binary files differindex f0ab26172..5bbfcf515 100644 --- a/maps/pre-re/spl_in01.mcache +++ b/maps/pre-re/spl_in01.mcache diff --git a/maps/pre-re/sword_1-1.mcache b/maps/pre-re/sword_1-1.mcache Binary files differindex d2ae19b3a..695bece61 100644 --- a/maps/pre-re/sword_1-1.mcache +++ b/maps/pre-re/sword_1-1.mcache diff --git a/maps/pre-re/sword_2-1.mcache b/maps/pre-re/sword_2-1.mcache Binary files differindex d2ae19b3a..695bece61 100644 --- a/maps/pre-re/sword_2-1.mcache +++ b/maps/pre-re/sword_2-1.mcache diff --git a/maps/pre-re/sword_3-1.mcache b/maps/pre-re/sword_3-1.mcache Binary files differindex d2ae19b3a..695bece61 100644 --- a/maps/pre-re/sword_3-1.mcache +++ b/maps/pre-re/sword_3-1.mcache diff --git a/maps/pre-re/te_alde_gld.mcache b/maps/pre-re/te_alde_gld.mcache Binary files differindex 5a920975f..0b4cd694f 100644 --- a/maps/pre-re/te_alde_gld.mcache +++ b/maps/pre-re/te_alde_gld.mcache diff --git a/maps/pre-re/te_aldecas4.mcache b/maps/pre-re/te_aldecas4.mcache Binary files differindex 9aa8600c5..324040d79 100644 --- a/maps/pre-re/te_aldecas4.mcache +++ b/maps/pre-re/te_aldecas4.mcache diff --git a/maps/pre-re/te_aldecas5.mcache b/maps/pre-re/te_aldecas5.mcache Binary files differindex cde5d2811..8094ea0d1 100644 --- a/maps/pre-re/te_aldecas5.mcache +++ b/maps/pre-re/te_aldecas5.mcache diff --git a/maps/pre-re/te_prtcas01.mcache b/maps/pre-re/te_prtcas01.mcache Binary files differindex 3368e40dc..1e01f48a7 100644 --- a/maps/pre-re/te_prtcas01.mcache +++ b/maps/pre-re/te_prtcas01.mcache diff --git a/maps/pre-re/te_prtcas03.mcache b/maps/pre-re/te_prtcas03.mcache Binary files differindex 40e1e679c..25f9fd86a 100644 --- a/maps/pre-re/te_prtcas03.mcache +++ b/maps/pre-re/te_prtcas03.mcache diff --git a/maps/pre-re/te_prtcas04.mcache b/maps/pre-re/te_prtcas04.mcache Binary files differindex 6683f5567..66f12ad53 100644 --- a/maps/pre-re/te_prtcas04.mcache +++ b/maps/pre-re/te_prtcas04.mcache diff --git a/maps/pre-re/teg_dun01.mcache b/maps/pre-re/teg_dun01.mcache Binary files differindex ee76ceb3f..44c528bc2 100644 --- a/maps/pre-re/teg_dun01.mcache +++ b/maps/pre-re/teg_dun01.mcache diff --git a/maps/pre-re/tha_t01.mcache b/maps/pre-re/tha_t01.mcache Binary files differindex eefa487d6..386d9cb5d 100644 --- a/maps/pre-re/tha_t01.mcache +++ b/maps/pre-re/tha_t01.mcache diff --git a/maps/pre-re/tur_dun01.mcache b/maps/pre-re/tur_dun01.mcache Binary files differindex e6c615f99..ede11d905 100644 --- a/maps/pre-re/tur_dun01.mcache +++ b/maps/pre-re/tur_dun01.mcache diff --git a/maps/pre-re/tur_dun02.mcache b/maps/pre-re/tur_dun02.mcache Binary files differindex b48ca6fc6..3e951e3ed 100644 --- a/maps/pre-re/tur_dun02.mcache +++ b/maps/pre-re/tur_dun02.mcache diff --git a/maps/pre-re/tur_dun03.mcache b/maps/pre-re/tur_dun03.mcache Binary files differindex 7d2d7779a..0f0c190cc 100644 --- a/maps/pre-re/tur_dun03.mcache +++ b/maps/pre-re/tur_dun03.mcache diff --git a/maps/pre-re/tur_dun06.mcache b/maps/pre-re/tur_dun06.mcache Binary files differindex b484b44b9..32ea2aa7f 100644 --- a/maps/pre-re/tur_dun06.mcache +++ b/maps/pre-re/tur_dun06.mcache diff --git a/maps/pre-re/turbo_e_16.mcache b/maps/pre-re/turbo_e_16.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/pre-re/turbo_e_16.mcache +++ b/maps/pre-re/turbo_e_16.mcache diff --git a/maps/pre-re/turbo_e_4.mcache b/maps/pre-re/turbo_e_4.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/pre-re/turbo_e_4.mcache +++ b/maps/pre-re/turbo_e_4.mcache diff --git a/maps/pre-re/turbo_e_8.mcache b/maps/pre-re/turbo_e_8.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/pre-re/turbo_e_8.mcache +++ b/maps/pre-re/turbo_e_8.mcache diff --git a/maps/pre-re/turbo_n_1.mcache b/maps/pre-re/turbo_n_1.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/pre-re/turbo_n_1.mcache +++ b/maps/pre-re/turbo_n_1.mcache diff --git a/maps/pre-re/turbo_n_16.mcache b/maps/pre-re/turbo_n_16.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/pre-re/turbo_n_16.mcache +++ b/maps/pre-re/turbo_n_16.mcache diff --git a/maps/pre-re/turbo_n_4.mcache b/maps/pre-re/turbo_n_4.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/pre-re/turbo_n_4.mcache +++ b/maps/pre-re/turbo_n_4.mcache diff --git a/maps/pre-re/turbo_n_8.mcache b/maps/pre-re/turbo_n_8.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/pre-re/turbo_n_8.mcache +++ b/maps/pre-re/turbo_n_8.mcache diff --git a/maps/pre-re/turbo_room.mcache b/maps/pre-re/turbo_room.mcache Binary files differindex b251343ee..6fdd21346 100644 --- a/maps/pre-re/turbo_room.mcache +++ b/maps/pre-re/turbo_room.mcache diff --git a/maps/pre-re/um_fild02.mcache b/maps/pre-re/um_fild02.mcache Binary files differindex 6d4c33e56..59632d91f 100644 --- a/maps/pre-re/um_fild02.mcache +++ b/maps/pre-re/um_fild02.mcache diff --git a/maps/pre-re/valkyrie.mcache b/maps/pre-re/valkyrie.mcache Binary files differindex f13c3627e..208d13ed9 100644 --- a/maps/pre-re/valkyrie.mcache +++ b/maps/pre-re/valkyrie.mcache diff --git a/maps/pre-re/ve_fild03.mcache b/maps/pre-re/ve_fild03.mcache Binary files differindex 0c1c00748..52f022ff2 100644 --- a/maps/pre-re/ve_fild03.mcache +++ b/maps/pre-re/ve_fild03.mcache diff --git a/maps/pre-re/ve_fild07.mcache b/maps/pre-re/ve_fild07.mcache Binary files differindex 172a794e2..14a98e34a 100644 --- a/maps/pre-re/ve_fild07.mcache +++ b/maps/pre-re/ve_fild07.mcache diff --git a/maps/pre-re/wizard_1-1.mcache b/maps/pre-re/wizard_1-1.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/wizard_1-1.mcache +++ b/maps/pre-re/wizard_1-1.mcache diff --git a/maps/pre-re/wizard_2-1.mcache b/maps/pre-re/wizard_2-1.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/wizard_2-1.mcache +++ b/maps/pre-re/wizard_2-1.mcache diff --git a/maps/pre-re/wizard_3-1.mcache b/maps/pre-re/wizard_3-1.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/pre-re/wizard_3-1.mcache +++ b/maps/pre-re/wizard_3-1.mcache diff --git a/maps/pre-re/xmas_dun02.mcache b/maps/pre-re/xmas_dun02.mcache Binary files differindex d527bc8ad..021f52832 100644 --- a/maps/pre-re/xmas_dun02.mcache +++ b/maps/pre-re/xmas_dun02.mcache diff --git a/maps/pre-re/yuno_fild12.mcache b/maps/pre-re/yuno_fild12.mcache Binary files differindex 586199b2b..dfa05d7a3 100644 --- a/maps/pre-re/yuno_fild12.mcache +++ b/maps/pre-re/yuno_fild12.mcache diff --git a/maps/pre-re/yuno_pre.mcache b/maps/pre-re/yuno_pre.mcache Binary files differindex 17017c2e1..2f381aa24 100644 --- a/maps/pre-re/yuno_pre.mcache +++ b/maps/pre-re/yuno_pre.mcache diff --git a/maps/re/1@cata.mcache b/maps/re/1@cata.mcache Binary files differindex 309993e0d..2ad1d4f08 100644 --- a/maps/re/1@cata.mcache +++ b/maps/re/1@cata.mcache diff --git a/maps/re/1@gef_in.mcache b/maps/re/1@gef_in.mcache Binary files differindex 7272c019c..349794fc8 100644 --- a/maps/re/1@gef_in.mcache +++ b/maps/re/1@gef_in.mcache diff --git a/maps/re/1@jtb.mcache b/maps/re/1@jtb.mcache Binary files differindex fa27cef9f..b1b3b5724 100644 --- a/maps/re/1@jtb.mcache +++ b/maps/re/1@jtb.mcache diff --git a/maps/re/1@ma_b.mcache b/maps/re/1@ma_b.mcache Binary files differindex f98fefa8e..5d552d807 100644 --- a/maps/re/1@ma_b.mcache +++ b/maps/re/1@ma_b.mcache diff --git a/maps/re/1@ma_c.mcache b/maps/re/1@ma_c.mcache Binary files differindex 8e8f2cc84..bd08e2297 100644 --- a/maps/re/1@ma_c.mcache +++ b/maps/re/1@ma_c.mcache diff --git a/maps/re/1@sara.mcache b/maps/re/1@sara.mcache Binary files differindex 29ae23f83..1e0b29606 100644 --- a/maps/re/1@sara.mcache +++ b/maps/re/1@sara.mcache diff --git a/maps/re/1@tnm3.mcache b/maps/re/1@tnm3.mcache Binary files differindex 7d20226bb..42d8c59f2 100644 --- a/maps/re/1@tnm3.mcache +++ b/maps/re/1@tnm3.mcache diff --git a/maps/re/5@tower.mcache b/maps/re/5@tower.mcache Binary files differindex dd08a66f6..08f66c2f1 100644 --- a/maps/re/5@tower.mcache +++ b/maps/re/5@tower.mcache diff --git a/maps/re/airplane.mcache b/maps/re/airplane.mcache Binary files differindex 11f92f27c..9c0c2edce 100644 --- a/maps/re/airplane.mcache +++ b/maps/re/airplane.mcache diff --git a/maps/re/airplane_01.mcache b/maps/re/airplane_01.mcache Binary files differindex 11f92f27c..9c0c2edce 100644 --- a/maps/re/airplane_01.mcache +++ b/maps/re/airplane_01.mcache diff --git a/maps/re/alb_ship.mcache b/maps/re/alb_ship.mcache Binary files differindex a91641d83..1e2626d07 100644 --- a/maps/re/alb_ship.mcache +++ b/maps/re/alb_ship.mcache diff --git a/maps/re/alde_alche.mcache b/maps/re/alde_alche.mcache Binary files differindex 75e4cfc5a..9460e8f93 100644 --- a/maps/re/alde_alche.mcache +++ b/maps/re/alde_alche.mcache diff --git a/maps/re/alde_gld.mcache b/maps/re/alde_gld.mcache Binary files differindex 5a920975f..0b4cd694f 100644 --- a/maps/re/alde_gld.mcache +++ b/maps/re/alde_gld.mcache diff --git a/maps/re/alde_tt02.mcache b/maps/re/alde_tt02.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/re/alde_tt02.mcache +++ b/maps/re/alde_tt02.mcache diff --git a/maps/re/alde_tt03.mcache b/maps/re/alde_tt03.mcache Binary files differindex 03ae0ca56..6921d05bd 100644 --- a/maps/re/alde_tt03.mcache +++ b/maps/re/alde_tt03.mcache diff --git a/maps/re/aldeba_in.mcache b/maps/re/aldeba_in.mcache Binary files differindex b33eefa2d..dd96c3b76 100644 --- a/maps/re/aldeba_in.mcache +++ b/maps/re/aldeba_in.mcache diff --git a/maps/re/aldeg_cas04.mcache b/maps/re/aldeg_cas04.mcache Binary files differindex 9aa8600c5..324040d79 100644 --- a/maps/re/aldeg_cas04.mcache +++ b/maps/re/aldeg_cas04.mcache diff --git a/maps/re/aldeg_cas05.mcache b/maps/re/aldeg_cas05.mcache Binary files differindex cde5d2811..8094ea0d1 100644 --- a/maps/re/aldeg_cas05.mcache +++ b/maps/re/aldeg_cas05.mcache diff --git a/maps/re/arug_cas01.mcache b/maps/re/arug_cas01.mcache Binary files differindex 241172f1d..fff355c8c 100644 --- a/maps/re/arug_cas01.mcache +++ b/maps/re/arug_cas01.mcache diff --git a/maps/re/arug_cas03.mcache b/maps/re/arug_cas03.mcache Binary files differindex ab08aa804..c15ce7baa 100644 --- a/maps/re/arug_cas03.mcache +++ b/maps/re/arug_cas03.mcache diff --git a/maps/re/arug_cas04.mcache b/maps/re/arug_cas04.mcache Binary files differindex ab08aa804..c15ce7baa 100644 --- a/maps/re/arug_cas04.mcache +++ b/maps/re/arug_cas04.mcache diff --git a/maps/re/arug_cas05.mcache b/maps/re/arug_cas05.mcache Binary files differindex ab08aa804..c15ce7baa 100644 --- a/maps/re/arug_cas05.mcache +++ b/maps/re/arug_cas05.mcache diff --git a/maps/re/auction_01.mcache b/maps/re/auction_01.mcache Binary files differindex 9d405d859..93879880f 100644 --- a/maps/re/auction_01.mcache +++ b/maps/re/auction_01.mcache diff --git a/maps/re/auction_02.mcache b/maps/re/auction_02.mcache Binary files differindex c211f1212..82823e9ce 100644 --- a/maps/re/auction_02.mcache +++ b/maps/re/auction_02.mcache diff --git a/maps/re/ayo_in01.mcache b/maps/re/ayo_in01.mcache Binary files differindex e7dbb22d5..e5f9aaccb 100644 --- a/maps/re/ayo_in01.mcache +++ b/maps/re/ayo_in01.mcache diff --git a/maps/re/bat_b01.mcache b/maps/re/bat_b01.mcache Binary files differindex 529afaf34..7025d2d99 100644 --- a/maps/re/bat_b01.mcache +++ b/maps/re/bat_b01.mcache diff --git a/maps/re/bat_b02.mcache b/maps/re/bat_b02.mcache Binary files differindex 529afaf34..7025d2d99 100644 --- a/maps/re/bat_b02.mcache +++ b/maps/re/bat_b02.mcache diff --git a/maps/re/bat_c01.mcache b/maps/re/bat_c01.mcache Binary files differindex 8da7eb4d2..5b3b9c44c 100644 --- a/maps/re/bat_c01.mcache +++ b/maps/re/bat_c01.mcache diff --git a/maps/re/bat_c02.mcache b/maps/re/bat_c02.mcache Binary files differindex 8da7eb4d2..5b3b9c44c 100644 --- a/maps/re/bat_c02.mcache +++ b/maps/re/bat_c02.mcache diff --git a/maps/re/bat_c03.mcache b/maps/re/bat_c03.mcache Binary files differindex 8da7eb4d2..5b3b9c44c 100644 --- a/maps/re/bat_c03.mcache +++ b/maps/re/bat_c03.mcache diff --git a/maps/re/bat_room.mcache b/maps/re/bat_room.mcache Binary files differindex 58d0fd452..03511b9ee 100644 --- a/maps/re/bat_room.mcache +++ b/maps/re/bat_room.mcache diff --git a/maps/re/bif_fild01.mcache b/maps/re/bif_fild01.mcache Binary files differindex 0d83800db..1c4521922 100644 --- a/maps/re/bif_fild01.mcache +++ b/maps/re/bif_fild01.mcache diff --git a/maps/re/bra_in01.mcache b/maps/re/bra_in01.mcache Binary files differindex 2f15b76db..453447803 100644 --- a/maps/re/bra_in01.mcache +++ b/maps/re/bra_in01.mcache diff --git a/maps/re/c_tower1.mcache b/maps/re/c_tower1.mcache Binary files differindex 60ba07715..369f27205 100644 --- a/maps/re/c_tower1.mcache +++ b/maps/re/c_tower1.mcache diff --git a/maps/re/c_tower2.mcache b/maps/re/c_tower2.mcache Binary files differindex e610d4907..123709fe0 100644 --- a/maps/re/c_tower2.mcache +++ b/maps/re/c_tower2.mcache diff --git a/maps/re/c_tower2_.mcache b/maps/re/c_tower2_.mcache Binary files differindex e610d4907..123709fe0 100644 --- a/maps/re/c_tower2_.mcache +++ b/maps/re/c_tower2_.mcache diff --git a/maps/re/c_tower4.mcache b/maps/re/c_tower4.mcache Binary files differindex e238b1497..f9d79d599 100644 --- a/maps/re/c_tower4.mcache +++ b/maps/re/c_tower4.mcache diff --git a/maps/re/cmd_fild06.mcache b/maps/re/cmd_fild06.mcache Binary files differindex e79d825a4..9dc5b931f 100644 --- a/maps/re/cmd_fild06.mcache +++ b/maps/re/cmd_fild06.mcache diff --git a/maps/re/dic_dun01.mcache b/maps/re/dic_dun01.mcache Binary files differindex e6983f2e7..1ae77a718 100644 --- a/maps/re/dic_dun01.mcache +++ b/maps/re/dic_dun01.mcache diff --git a/maps/re/dicastes01.mcache b/maps/re/dicastes01.mcache Binary files differindex 3c56864cb..da84af440 100644 --- a/maps/re/dicastes01.mcache +++ b/maps/re/dicastes01.mcache diff --git a/maps/re/dicastes02.mcache b/maps/re/dicastes02.mcache Binary files differindex f2d3565c5..fcfec592d 100644 --- a/maps/re/dicastes02.mcache +++ b/maps/re/dicastes02.mcache diff --git a/maps/re/ecl_hub01.mcache b/maps/re/ecl_hub01.mcache Binary files differindex 2a0fdbd64..f484f889d 100644 --- a/maps/re/ecl_hub01.mcache +++ b/maps/re/ecl_hub01.mcache diff --git a/maps/re/ecl_tdun01.mcache b/maps/re/ecl_tdun01.mcache Binary files differindex 9d1fa99e9..814786557 100644 --- a/maps/re/ecl_tdun01.mcache +++ b/maps/re/ecl_tdun01.mcache diff --git a/maps/re/ecl_tdun02.mcache b/maps/re/ecl_tdun02.mcache Binary files differindex c392661d9..bf1e078bc 100644 --- a/maps/re/ecl_tdun02.mcache +++ b/maps/re/ecl_tdun02.mcache diff --git a/maps/re/ecl_tdun03.mcache b/maps/re/ecl_tdun03.mcache Binary files differindex d07d6dd5c..d41be2bdc 100644 --- a/maps/re/ecl_tdun03.mcache +++ b/maps/re/ecl_tdun03.mcache diff --git a/maps/re/ecl_tdun04.mcache b/maps/re/ecl_tdun04.mcache Binary files differindex 806aad503..763331f2a 100644 --- a/maps/re/ecl_tdun04.mcache +++ b/maps/re/ecl_tdun04.mcache diff --git a/maps/re/ein_fild01.mcache b/maps/re/ein_fild01.mcache Binary files differindex abd5a0bd2..997794512 100644 --- a/maps/re/ein_fild01.mcache +++ b/maps/re/ein_fild01.mcache diff --git a/maps/re/ein_fild03.mcache b/maps/re/ein_fild03.mcache Binary files differindex d40e7d2c5..d73adb11e 100644 --- a/maps/re/ein_fild03.mcache +++ b/maps/re/ein_fild03.mcache diff --git a/maps/re/ein_in01.mcache b/maps/re/ein_in01.mcache Binary files differindex 9b563106d..d5218dc9c 100644 --- a/maps/re/ein_in01.mcache +++ b/maps/re/ein_in01.mcache diff --git a/maps/re/evt_mobroom.mcache b/maps/re/evt_mobroom.mcache Binary files differindex c63019965..7d3c46952 100644 --- a/maps/re/evt_mobroom.mcache +++ b/maps/re/evt_mobroom.mcache diff --git a/maps/re/g_room1-1.mcache b/maps/re/g_room1-1.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/re/g_room1-1.mcache +++ b/maps/re/g_room1-1.mcache diff --git a/maps/re/g_room1-2.mcache b/maps/re/g_room1-2.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/re/g_room1-2.mcache +++ b/maps/re/g_room1-2.mcache diff --git a/maps/re/g_room1-3.mcache b/maps/re/g_room1-3.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/re/g_room1-3.mcache +++ b/maps/re/g_room1-3.mcache diff --git a/maps/re/g_room2.mcache b/maps/re/g_room2.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/re/g_room2.mcache +++ b/maps/re/g_room2.mcache diff --git a/maps/re/gef_fild01.mcache b/maps/re/gef_fild01.mcache Binary files differindex 5cfd31c53..52042dbcc 100644 --- a/maps/re/gef_fild01.mcache +++ b/maps/re/gef_fild01.mcache diff --git a/maps/re/gefenia01.mcache b/maps/re/gefenia01.mcache Binary files differindex 29163077b..347332bab 100644 --- a/maps/re/gefenia01.mcache +++ b/maps/re/gefenia01.mcache diff --git a/maps/re/gefenia02.mcache b/maps/re/gefenia02.mcache Binary files differindex 6c4b23779..3ac05d055 100644 --- a/maps/re/gefenia02.mcache +++ b/maps/re/gefenia02.mcache diff --git a/maps/re/gefg_cas04.mcache b/maps/re/gefg_cas04.mcache Binary files differindex a70fdb9d4..644ae4732 100644 --- a/maps/re/gefg_cas04.mcache +++ b/maps/re/gefg_cas04.mcache diff --git a/maps/re/gl_in01.mcache b/maps/re/gl_in01.mcache Binary files differindex 886b975f9..a49f299d3 100644 --- a/maps/re/gl_in01.mcache +++ b/maps/re/gl_in01.mcache diff --git a/maps/re/gld_dun03.mcache b/maps/re/gld_dun03.mcache Binary files differindex ee76ceb3f..44c528bc2 100644 --- a/maps/re/gld_dun03.mcache +++ b/maps/re/gld_dun03.mcache diff --git a/maps/re/gld_dun03_2.mcache b/maps/re/gld_dun03_2.mcache Binary files differindex ee76ceb3f..44c528bc2 100644 --- a/maps/re/gld_dun03_2.mcache +++ b/maps/re/gld_dun03_2.mcache diff --git a/maps/re/guild_room.mcache b/maps/re/guild_room.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/re/guild_room.mcache +++ b/maps/re/guild_room.mcache diff --git a/maps/re/himinn.mcache b/maps/re/himinn.mcache Binary files differindex f13c3627e..208d13ed9 100644 --- a/maps/re/himinn.mcache +++ b/maps/re/himinn.mcache diff --git a/maps/re/hu_fild06.mcache b/maps/re/hu_fild06.mcache Binary files differindex e570bc068..420460fdd 100644 --- a/maps/re/hu_fild06.mcache +++ b/maps/re/hu_fild06.mcache diff --git a/maps/re/hu_in01.mcache b/maps/re/hu_in01.mcache Binary files differindex 59ad3afc3..e56450467 100644 --- a/maps/re/hu_in01.mcache +++ b/maps/re/hu_in01.mcache diff --git a/maps/re/ice_dun02.mcache b/maps/re/ice_dun02.mcache Binary files differindex 8f464f5a2..5d3f7205a 100644 --- a/maps/re/ice_dun02.mcache +++ b/maps/re/ice_dun02.mcache diff --git a/maps/re/in_hunter.mcache b/maps/re/in_hunter.mcache Binary files differindex 06251d2f9..797d74456 100644 --- a/maps/re/in_hunter.mcache +++ b/maps/re/in_hunter.mcache diff --git a/maps/re/in_moc_16.mcache b/maps/re/in_moc_16.mcache Binary files differindex 74e516042..70290570b 100644 --- a/maps/re/in_moc_16.mcache +++ b/maps/re/in_moc_16.mcache diff --git a/maps/re/itemmall.mcache b/maps/re/itemmall.mcache Binary files differindex 9d405d859..93879880f 100644 --- a/maps/re/itemmall.mcache +++ b/maps/re/itemmall.mcache diff --git a/maps/re/iz_ac01.mcache b/maps/re/iz_ac01.mcache Binary files differindex a34847c5c..3cca8d8e0 100644 --- a/maps/re/iz_ac01.mcache +++ b/maps/re/iz_ac01.mcache diff --git a/maps/re/iz_ac01_a.mcache b/maps/re/iz_ac01_a.mcache Binary files differindex a34847c5c..3cca8d8e0 100644 --- a/maps/re/iz_ac01_a.mcache +++ b/maps/re/iz_ac01_a.mcache diff --git a/maps/re/iz_ac01_b.mcache b/maps/re/iz_ac01_b.mcache Binary files differindex a34847c5c..3cca8d8e0 100644 --- a/maps/re/iz_ac01_b.mcache +++ b/maps/re/iz_ac01_b.mcache diff --git a/maps/re/iz_ac01_c.mcache b/maps/re/iz_ac01_c.mcache Binary files differindex a34847c5c..3cca8d8e0 100644 --- a/maps/re/iz_ac01_c.mcache +++ b/maps/re/iz_ac01_c.mcache diff --git a/maps/re/iz_ac01_d.mcache b/maps/re/iz_ac01_d.mcache Binary files differindex a34847c5c..3cca8d8e0 100644 --- a/maps/re/iz_ac01_d.mcache +++ b/maps/re/iz_ac01_d.mcache diff --git a/maps/re/jawaii_in.mcache b/maps/re/jawaii_in.mcache Binary files differindex e17766bf3..1062ddabb 100644 --- a/maps/re/jawaii_in.mcache +++ b/maps/re/jawaii_in.mcache diff --git a/maps/re/job3_arch01.mcache b/maps/re/job3_arch01.mcache Binary files differindex 6dab866ad..ba9b44e08 100644 --- a/maps/re/job3_arch01.mcache +++ b/maps/re/job3_arch01.mcache diff --git a/maps/re/job3_arch03.mcache b/maps/re/job3_arch03.mcache Binary files differindex 6dab866ad..ba9b44e08 100644 --- a/maps/re/job3_arch03.mcache +++ b/maps/re/job3_arch03.mcache diff --git a/maps/re/job3_gen01.mcache b/maps/re/job3_gen01.mcache Binary files differindex 1a9b48b9d..63f2b8624 100644 --- a/maps/re/job3_gen01.mcache +++ b/maps/re/job3_gen01.mcache diff --git a/maps/re/job3_guil01.mcache b/maps/re/job3_guil01.mcache Binary files differindex df174ec0f..b54f4d168 100644 --- a/maps/re/job3_guil01.mcache +++ b/maps/re/job3_guil01.mcache diff --git a/maps/re/job3_rang02.mcache b/maps/re/job3_rang02.mcache Binary files differindex 1b4b807bb..613668187 100644 --- a/maps/re/job3_rang02.mcache +++ b/maps/re/job3_rang02.mcache diff --git a/maps/re/job3_sha01.mcache b/maps/re/job3_sha01.mcache Binary files differindex a11c9a554..d9e2da13b 100644 --- a/maps/re/job3_sha01.mcache +++ b/maps/re/job3_sha01.mcache diff --git a/maps/re/job3_war01.mcache b/maps/re/job3_war01.mcache Binary files differindex e5699fe49..2b8277e4a 100644 --- a/maps/re/job3_war01.mcache +++ b/maps/re/job3_war01.mcache diff --git a/maps/re/job3_war02.mcache b/maps/re/job3_war02.mcache Binary files differindex e5699fe49..2b8277e4a 100644 --- a/maps/re/job3_war02.mcache +++ b/maps/re/job3_war02.mcache diff --git a/maps/re/job_ko.mcache b/maps/re/job_ko.mcache Binary files differindex 5f088321e..24ada6df1 100644 --- a/maps/re/job_ko.mcache +++ b/maps/re/job_ko.mcache diff --git a/maps/re/job_priest.mcache b/maps/re/job_priest.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/job_priest.mcache +++ b/maps/re/job_priest.mcache diff --git a/maps/re/job_soul.mcache b/maps/re/job_soul.mcache Binary files differindex eee75a253..d48f37a50 100644 --- a/maps/re/job_soul.mcache +++ b/maps/re/job_soul.mcache diff --git a/maps/re/job_star.mcache b/maps/re/job_star.mcache Binary files differindex 981a29eb8..92057f58f 100644 --- a/maps/re/job_star.mcache +++ b/maps/re/job_star.mcache diff --git a/maps/re/job_sword1.mcache b/maps/re/job_sword1.mcache Binary files differindex d2ae19b3a..695bece61 100644 --- a/maps/re/job_sword1.mcache +++ b/maps/re/job_sword1.mcache diff --git a/maps/re/job_wizard.mcache b/maps/re/job_wizard.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/job_wizard.mcache +++ b/maps/re/job_wizard.mcache diff --git a/maps/re/jupe_core.mcache b/maps/re/jupe_core.mcache Binary files differindex 08daa6272..2d9cc99e4 100644 --- a/maps/re/jupe_core.mcache +++ b/maps/re/jupe_core.mcache diff --git a/maps/re/jupe_core2.mcache b/maps/re/jupe_core2.mcache Binary files differindex 08daa6272..2d9cc99e4 100644 --- a/maps/re/jupe_core2.mcache +++ b/maps/re/jupe_core2.mcache diff --git a/maps/re/jupe_ele_r.mcache b/maps/re/jupe_ele_r.mcache Binary files differindex 749dcdd0a..614aa48a0 100644 --- a/maps/re/jupe_ele_r.mcache +++ b/maps/re/jupe_ele_r.mcache diff --git a/maps/re/kh_dun02.mcache b/maps/re/kh_dun02.mcache Binary files differindex eeb2596db..033ff067e 100644 --- a/maps/re/kh_dun02.mcache +++ b/maps/re/kh_dun02.mcache diff --git a/maps/re/lhz_dun04.mcache b/maps/re/lhz_dun04.mcache Binary files differindex 02a370503..390f1cfdc 100644 --- a/maps/re/lhz_dun04.mcache +++ b/maps/re/lhz_dun04.mcache diff --git a/maps/re/lhz_fild02.mcache b/maps/re/lhz_fild02.mcache Binary files differindex 4d31ae904..e2b2a173e 100644 --- a/maps/re/lhz_fild02.mcache +++ b/maps/re/lhz_fild02.mcache diff --git a/maps/re/lhz_in03.mcache b/maps/re/lhz_in03.mcache Binary files differindex be53196fc..212d47dd9 100644 --- a/maps/re/lhz_in03.mcache +++ b/maps/re/lhz_in03.mcache diff --git a/maps/re/lighthalzen.mcache b/maps/re/lighthalzen.mcache Binary files differindex 3d17a74ae..9fa7e2d55 100644 --- a/maps/re/lighthalzen.mcache +++ b/maps/re/lighthalzen.mcache diff --git a/maps/re/lou_dun03.mcache b/maps/re/lou_dun03.mcache Binary files differindex 63c47a1cf..dffe3027c 100644 --- a/maps/re/lou_dun03.mcache +++ b/maps/re/lou_dun03.mcache diff --git a/maps/re/ma_scene01.mcache b/maps/re/ma_scene01.mcache Binary files differindex b1e6e5779..5a72418c2 100644 --- a/maps/re/ma_scene01.mcache +++ b/maps/re/ma_scene01.mcache diff --git a/maps/re/ma_zif01.mcache b/maps/re/ma_zif01.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/re/ma_zif01.mcache +++ b/maps/re/ma_zif01.mcache diff --git a/maps/re/ma_zif02.mcache b/maps/re/ma_zif02.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/re/ma_zif02.mcache +++ b/maps/re/ma_zif02.mcache diff --git a/maps/re/ma_zif03.mcache b/maps/re/ma_zif03.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/re/ma_zif03.mcache +++ b/maps/re/ma_zif03.mcache diff --git a/maps/re/ma_zif04.mcache b/maps/re/ma_zif04.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/re/ma_zif04.mcache +++ b/maps/re/ma_zif04.mcache diff --git a/maps/re/ma_zif05.mcache b/maps/re/ma_zif05.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/re/ma_zif05.mcache +++ b/maps/re/ma_zif05.mcache diff --git a/maps/re/ma_zif06.mcache b/maps/re/ma_zif06.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/re/ma_zif06.mcache +++ b/maps/re/ma_zif06.mcache diff --git a/maps/re/ma_zif07.mcache b/maps/re/ma_zif07.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/re/ma_zif07.mcache +++ b/maps/re/ma_zif07.mcache diff --git a/maps/re/ma_zif08.mcache b/maps/re/ma_zif08.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/re/ma_zif08.mcache +++ b/maps/re/ma_zif08.mcache diff --git a/maps/re/ma_zif09.mcache b/maps/re/ma_zif09.mcache Binary files differindex ed6ce34ce..f92a833d1 100644 --- a/maps/re/ma_zif09.mcache +++ b/maps/re/ma_zif09.mcache diff --git a/maps/re/mag_dun02.mcache b/maps/re/mag_dun02.mcache Binary files differindex e17fdb16f..f431b1be4 100644 --- a/maps/re/mag_dun02.mcache +++ b/maps/re/mag_dun02.mcache diff --git a/maps/re/mal_in01.mcache b/maps/re/mal_in01.mcache Binary files differindex 6e8ecd830..ad09b6b31 100644 --- a/maps/re/mal_in01.mcache +++ b/maps/re/mal_in01.mcache diff --git a/maps/re/man_fild03.mcache b/maps/re/man_fild03.mcache Binary files differindex cf994ed47..59450915a 100644 --- a/maps/re/man_fild03.mcache +++ b/maps/re/man_fild03.mcache diff --git a/maps/re/man_in01.mcache b/maps/re/man_in01.mcache Binary files differindex 16301b0b2..0263fd518 100644 --- a/maps/re/man_in01.mcache +++ b/maps/re/man_in01.mcache diff --git a/maps/re/mjolnir_12.mcache b/maps/re/mjolnir_12.mcache Binary files differindex da1037044..263826474 100644 --- a/maps/re/mjolnir_12.mcache +++ b/maps/re/mjolnir_12.mcache diff --git a/maps/re/moc_fild01.mcache b/maps/re/moc_fild01.mcache Binary files differindex 5150d12d8..9d5248ede 100644 --- a/maps/re/moc_fild01.mcache +++ b/maps/re/moc_fild01.mcache diff --git a/maps/re/moc_fild07.mcache b/maps/re/moc_fild07.mcache Binary files differindex 22f98bb5e..c5b871572 100644 --- a/maps/re/moc_fild07.mcache +++ b/maps/re/moc_fild07.mcache diff --git a/maps/re/moc_fild08.mcache b/maps/re/moc_fild08.mcache Binary files differindex d46ea4ce9..90be6a00a 100644 --- a/maps/re/moc_fild08.mcache +++ b/maps/re/moc_fild08.mcache diff --git a/maps/re/moc_pryd01.mcache b/maps/re/moc_pryd01.mcache Binary files differindex b45126dd1..9f63b5199 100644 --- a/maps/re/moc_pryd01.mcache +++ b/maps/re/moc_pryd01.mcache diff --git a/maps/re/moc_pryd04.mcache b/maps/re/moc_pryd04.mcache Binary files differindex 63c5a34ff..df0b9e8b8 100644 --- a/maps/re/moc_pryd04.mcache +++ b/maps/re/moc_pryd04.mcache diff --git a/maps/re/morocc_in.mcache b/maps/re/morocc_in.mcache Binary files differindex b609a8e11..048478ec6 100644 --- a/maps/re/morocc_in.mcache +++ b/maps/re/morocc_in.mcache diff --git a/maps/re/mosk_dun02.mcache b/maps/re/mosk_dun02.mcache Binary files differindex 1aef0aa49..e506eb7f4 100644 --- a/maps/re/mosk_dun02.mcache +++ b/maps/re/mosk_dun02.mcache diff --git a/maps/re/mosk_fild02.mcache b/maps/re/mosk_fild02.mcache Binary files differindex 6afeb3567..5f41071fe 100644 --- a/maps/re/mosk_fild02.mcache +++ b/maps/re/mosk_fild02.mcache diff --git a/maps/re/nameless_in.mcache b/maps/re/nameless_in.mcache Binary files differindex 0a8e2e686..c7e3e7ade 100644 --- a/maps/re/nameless_in.mcache +++ b/maps/re/nameless_in.mcache diff --git a/maps/re/new_1-1.mcache b/maps/re/new_1-1.mcache Binary files differindex 1f53eb2b0..342ae6117 100644 --- a/maps/re/new_1-1.mcache +++ b/maps/re/new_1-1.mcache diff --git a/maps/re/new_1-4.mcache b/maps/re/new_1-4.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/re/new_1-4.mcache +++ b/maps/re/new_1-4.mcache diff --git a/maps/re/new_2-1.mcache b/maps/re/new_2-1.mcache Binary files differindex 1f53eb2b0..342ae6117 100644 --- a/maps/re/new_2-1.mcache +++ b/maps/re/new_2-1.mcache diff --git a/maps/re/new_2-4.mcache b/maps/re/new_2-4.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/re/new_2-4.mcache +++ b/maps/re/new_2-4.mcache diff --git a/maps/re/new_3-1.mcache b/maps/re/new_3-1.mcache Binary files differindex 1f53eb2b0..342ae6117 100644 --- a/maps/re/new_3-1.mcache +++ b/maps/re/new_3-1.mcache diff --git a/maps/re/new_3-4.mcache b/maps/re/new_3-4.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/re/new_3-4.mcache +++ b/maps/re/new_3-4.mcache diff --git a/maps/re/new_4-1.mcache b/maps/re/new_4-1.mcache Binary files differindex 1f53eb2b0..342ae6117 100644 --- a/maps/re/new_4-1.mcache +++ b/maps/re/new_4-1.mcache diff --git a/maps/re/new_4-4.mcache b/maps/re/new_4-4.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/re/new_4-4.mcache +++ b/maps/re/new_4-4.mcache diff --git a/maps/re/new_5-1.mcache b/maps/re/new_5-1.mcache Binary files differindex 1f53eb2b0..342ae6117 100644 --- a/maps/re/new_5-1.mcache +++ b/maps/re/new_5-1.mcache diff --git a/maps/re/new_5-4.mcache b/maps/re/new_5-4.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/re/new_5-4.mcache +++ b/maps/re/new_5-4.mcache diff --git a/maps/re/new_zone01.mcache b/maps/re/new_zone01.mcache Binary files differindex 1f53eb2b0..342ae6117 100644 --- a/maps/re/new_zone01.mcache +++ b/maps/re/new_zone01.mcache diff --git a/maps/re/new_zone04.mcache b/maps/re/new_zone04.mcache Binary files differindex 97fee0bb1..3cfc66817 100644 --- a/maps/re/new_zone04.mcache +++ b/maps/re/new_zone04.mcache diff --git a/maps/re/nguild_prt.mcache b/maps/re/nguild_prt.mcache Binary files differindex 3368e40dc..1e01f48a7 100644 --- a/maps/re/nguild_prt.mcache +++ b/maps/re/nguild_prt.mcache diff --git a/maps/re/nif_fild02.mcache b/maps/re/nif_fild02.mcache Binary files differindex d15c26ccd..7aa820023 100644 --- a/maps/re/nif_fild02.mcache +++ b/maps/re/nif_fild02.mcache diff --git a/maps/re/nyd_dun01.mcache b/maps/re/nyd_dun01.mcache Binary files differindex 9a1db44a5..c29cebe1a 100644 --- a/maps/re/nyd_dun01.mcache +++ b/maps/re/nyd_dun01.mcache diff --git a/maps/re/nyd_dun02.mcache b/maps/re/nyd_dun02.mcache Binary files differindex 0e2a19c81..a8ef4a685 100644 --- a/maps/re/nyd_dun02.mcache +++ b/maps/re/nyd_dun02.mcache diff --git a/maps/re/orcsdun01.mcache b/maps/re/orcsdun01.mcache Binary files differindex 1b021f341..3b3951498 100644 --- a/maps/re/orcsdun01.mcache +++ b/maps/re/orcsdun01.mcache diff --git a/maps/re/orcsdun02.mcache b/maps/re/orcsdun02.mcache Binary files differindex c5e85558d..004256991 100644 --- a/maps/re/orcsdun02.mcache +++ b/maps/re/orcsdun02.mcache diff --git a/maps/re/pay_fild10.mcache b/maps/re/pay_fild10.mcache Binary files differindex 0528aa68a..22e021de3 100644 --- a/maps/re/pay_fild10.mcache +++ b/maps/re/pay_fild10.mcache diff --git a/maps/re/payon_in01.mcache b/maps/re/payon_in01.mcache Binary files differindex 1feff4dc0..7615d0ba8 100644 --- a/maps/re/payon_in01.mcache +++ b/maps/re/payon_in01.mcache diff --git a/maps/re/priest_1-1.mcache b/maps/re/priest_1-1.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/priest_1-1.mcache +++ b/maps/re/priest_1-1.mcache diff --git a/maps/re/priest_2-1.mcache b/maps/re/priest_2-1.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/priest_2-1.mcache +++ b/maps/re/priest_2-1.mcache diff --git a/maps/re/priest_3-1.mcache b/maps/re/priest_3-1.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/priest_3-1.mcache +++ b/maps/re/priest_3-1.mcache diff --git a/maps/re/prt_are_in.mcache b/maps/re/prt_are_in.mcache Binary files differindex d5fc112d7..03216ff8b 100644 --- a/maps/re/prt_are_in.mcache +++ b/maps/re/prt_are_in.mcache diff --git a/maps/re/prt_church.mcache b/maps/re/prt_church.mcache Binary files differindex 62e7e40ac..4b4d45b73 100644 --- a/maps/re/prt_church.mcache +++ b/maps/re/prt_church.mcache diff --git a/maps/re/prt_fild05.mcache b/maps/re/prt_fild05.mcache Binary files differindex 64a4136e6..28b96509c 100644 --- a/maps/re/prt_fild05.mcache +++ b/maps/re/prt_fild05.mcache diff --git a/maps/re/prt_fild10.mcache b/maps/re/prt_fild10.mcache Binary files differindex 42ec737fd..4a75d4436 100644 --- a/maps/re/prt_fild10.mcache +++ b/maps/re/prt_fild10.mcache diff --git a/maps/re/prtg_cas01.mcache b/maps/re/prtg_cas01.mcache Binary files differindex 3368e40dc..1e01f48a7 100644 --- a/maps/re/prtg_cas01.mcache +++ b/maps/re/prtg_cas01.mcache diff --git a/maps/re/prtg_cas03.mcache b/maps/re/prtg_cas03.mcache Binary files differindex 40e1e679c..25f9fd86a 100644 --- a/maps/re/prtg_cas03.mcache +++ b/maps/re/prtg_cas03.mcache diff --git a/maps/re/prtg_cas04.mcache b/maps/re/prtg_cas04.mcache Binary files differindex 6683f5567..66f12ad53 100644 --- a/maps/re/prtg_cas04.mcache +++ b/maps/re/prtg_cas04.mcache diff --git a/maps/re/pvp_n_1-3.mcache b/maps/re/pvp_n_1-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/pvp_n_1-3.mcache +++ b/maps/re/pvp_n_1-3.mcache diff --git a/maps/re/pvp_n_1-4.mcache b/maps/re/pvp_n_1-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/pvp_n_1-4.mcache +++ b/maps/re/pvp_n_1-4.mcache diff --git a/maps/re/pvp_n_2-3.mcache b/maps/re/pvp_n_2-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/pvp_n_2-3.mcache +++ b/maps/re/pvp_n_2-3.mcache diff --git a/maps/re/pvp_n_2-4.mcache b/maps/re/pvp_n_2-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/pvp_n_2-4.mcache +++ b/maps/re/pvp_n_2-4.mcache diff --git a/maps/re/pvp_n_3-3.mcache b/maps/re/pvp_n_3-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/pvp_n_3-3.mcache +++ b/maps/re/pvp_n_3-3.mcache diff --git a/maps/re/pvp_n_3-4.mcache b/maps/re/pvp_n_3-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/pvp_n_3-4.mcache +++ b/maps/re/pvp_n_3-4.mcache diff --git a/maps/re/pvp_n_4-3.mcache b/maps/re/pvp_n_4-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/pvp_n_4-3.mcache +++ b/maps/re/pvp_n_4-3.mcache diff --git a/maps/re/pvp_n_4-4.mcache b/maps/re/pvp_n_4-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/pvp_n_4-4.mcache +++ b/maps/re/pvp_n_4-4.mcache diff --git a/maps/re/pvp_n_5-3.mcache b/maps/re/pvp_n_5-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/pvp_n_5-3.mcache +++ b/maps/re/pvp_n_5-3.mcache diff --git a/maps/re/pvp_n_5-4.mcache b/maps/re/pvp_n_5-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/pvp_n_5-4.mcache +++ b/maps/re/pvp_n_5-4.mcache diff --git a/maps/re/pvp_n_6-3.mcache b/maps/re/pvp_n_6-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/pvp_n_6-3.mcache +++ b/maps/re/pvp_n_6-3.mcache diff --git a/maps/re/pvp_n_6-4.mcache b/maps/re/pvp_n_6-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/pvp_n_6-4.mcache +++ b/maps/re/pvp_n_6-4.mcache diff --git a/maps/re/pvp_n_7-3.mcache b/maps/re/pvp_n_7-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/pvp_n_7-3.mcache +++ b/maps/re/pvp_n_7-3.mcache diff --git a/maps/re/pvp_n_7-4.mcache b/maps/re/pvp_n_7-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/pvp_n_7-4.mcache +++ b/maps/re/pvp_n_7-4.mcache diff --git a/maps/re/pvp_n_8-3.mcache b/maps/re/pvp_n_8-3.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/pvp_n_8-3.mcache +++ b/maps/re/pvp_n_8-3.mcache diff --git a/maps/re/pvp_n_8-4.mcache b/maps/re/pvp_n_8-4.mcache Binary files differindex ff1d96247..739890497 100644 --- a/maps/re/pvp_n_8-4.mcache +++ b/maps/re/pvp_n_8-4.mcache diff --git a/maps/re/que_avan01.mcache b/maps/re/que_avan01.mcache Binary files differindex 126fc2720..51cef085a 100644 --- a/maps/re/que_avan01.mcache +++ b/maps/re/que_avan01.mcache diff --git a/maps/re/que_ba.mcache b/maps/re/que_ba.mcache Binary files differindex a008c5b56..837b899e8 100644 --- a/maps/re/que_ba.mcache +++ b/maps/re/que_ba.mcache diff --git a/maps/re/que_dan01.mcache b/maps/re/que_dan01.mcache Binary files differindex e7e504d0f..b65d1e480 100644 --- a/maps/re/que_dan01.mcache +++ b/maps/re/que_dan01.mcache diff --git a/maps/re/que_moc_16.mcache b/maps/re/que_moc_16.mcache Binary files differindex 74e516042..70290570b 100644 --- a/maps/re/que_moc_16.mcache +++ b/maps/re/que_moc_16.mcache diff --git a/maps/re/que_moon.mcache b/maps/re/que_moon.mcache Binary files differindex 981a29eb8..92057f58f 100644 --- a/maps/re/que_moon.mcache +++ b/maps/re/que_moon.mcache diff --git a/maps/re/que_sign02.mcache b/maps/re/que_sign02.mcache Binary files differindex d15c26ccd..7aa820023 100644 --- a/maps/re/que_sign02.mcache +++ b/maps/re/que_sign02.mcache diff --git a/maps/re/que_thor.mcache b/maps/re/que_thor.mcache Binary files differindex b7cc76558..27d5fe8f9 100644 --- a/maps/re/que_thor.mcache +++ b/maps/re/que_thor.mcache diff --git a/maps/re/quiz_01.mcache b/maps/re/quiz_01.mcache Binary files differindex 4a4e2bae4..205f0efd6 100644 --- a/maps/re/quiz_01.mcache +++ b/maps/re/quiz_01.mcache diff --git a/maps/re/ra_fild02.mcache b/maps/re/ra_fild02.mcache Binary files differindex ed9833b48..372aca88b 100644 --- a/maps/re/ra_fild02.mcache +++ b/maps/re/ra_fild02.mcache diff --git a/maps/re/ra_fild09.mcache b/maps/re/ra_fild09.mcache Binary files differindex 7ffc09cd5..bb5c8babd 100644 --- a/maps/re/ra_fild09.mcache +++ b/maps/re/ra_fild09.mcache diff --git a/maps/re/ra_fild10.mcache b/maps/re/ra_fild10.mcache Binary files differindex 32f64e2d5..9b1342ba2 100644 --- a/maps/re/ra_fild10.mcache +++ b/maps/re/ra_fild10.mcache diff --git a/maps/re/ra_san01.mcache b/maps/re/ra_san01.mcache Binary files differindex 8cfaaefc1..de911bae5 100644 --- a/maps/re/ra_san01.mcache +++ b/maps/re/ra_san01.mcache diff --git a/maps/re/ra_temple.mcache b/maps/re/ra_temple.mcache Binary files differindex f27210d73..1463713b3 100644 --- a/maps/re/ra_temple.mcache +++ b/maps/re/ra_temple.mcache diff --git a/maps/re/siege_test.mcache b/maps/re/siege_test.mcache Binary files differindex 53811a305..8ddd58b6b 100644 --- a/maps/re/siege_test.mcache +++ b/maps/re/siege_test.mcache diff --git a/maps/re/spl_fild03.mcache b/maps/re/spl_fild03.mcache Binary files differindex b00084c52..84bd4b4cb 100644 --- a/maps/re/spl_fild03.mcache +++ b/maps/re/spl_fild03.mcache diff --git a/maps/re/spl_in01.mcache b/maps/re/spl_in01.mcache Binary files differindex f0ab26172..5bbfcf515 100644 --- a/maps/re/spl_in01.mcache +++ b/maps/re/spl_in01.mcache diff --git a/maps/re/sword_1-1.mcache b/maps/re/sword_1-1.mcache Binary files differindex d2ae19b3a..695bece61 100644 --- a/maps/re/sword_1-1.mcache +++ b/maps/re/sword_1-1.mcache diff --git a/maps/re/sword_2-1.mcache b/maps/re/sword_2-1.mcache Binary files differindex d2ae19b3a..695bece61 100644 --- a/maps/re/sword_2-1.mcache +++ b/maps/re/sword_2-1.mcache diff --git a/maps/re/sword_3-1.mcache b/maps/re/sword_3-1.mcache Binary files differindex d2ae19b3a..695bece61 100644 --- a/maps/re/sword_3-1.mcache +++ b/maps/re/sword_3-1.mcache diff --git a/maps/re/te_alde_gld.mcache b/maps/re/te_alde_gld.mcache Binary files differindex 5a920975f..0b4cd694f 100644 --- a/maps/re/te_alde_gld.mcache +++ b/maps/re/te_alde_gld.mcache diff --git a/maps/re/te_aldecas4.mcache b/maps/re/te_aldecas4.mcache Binary files differindex 9aa8600c5..324040d79 100644 --- a/maps/re/te_aldecas4.mcache +++ b/maps/re/te_aldecas4.mcache diff --git a/maps/re/te_aldecas5.mcache b/maps/re/te_aldecas5.mcache Binary files differindex cde5d2811..8094ea0d1 100644 --- a/maps/re/te_aldecas5.mcache +++ b/maps/re/te_aldecas5.mcache diff --git a/maps/re/te_prtcas01.mcache b/maps/re/te_prtcas01.mcache Binary files differindex 3368e40dc..1e01f48a7 100644 --- a/maps/re/te_prtcas01.mcache +++ b/maps/re/te_prtcas01.mcache diff --git a/maps/re/te_prtcas03.mcache b/maps/re/te_prtcas03.mcache Binary files differindex 40e1e679c..25f9fd86a 100644 --- a/maps/re/te_prtcas03.mcache +++ b/maps/re/te_prtcas03.mcache diff --git a/maps/re/te_prtcas04.mcache b/maps/re/te_prtcas04.mcache Binary files differindex 6683f5567..66f12ad53 100644 --- a/maps/re/te_prtcas04.mcache +++ b/maps/re/te_prtcas04.mcache diff --git a/maps/re/teg_dun01.mcache b/maps/re/teg_dun01.mcache Binary files differindex ee76ceb3f..44c528bc2 100644 --- a/maps/re/teg_dun01.mcache +++ b/maps/re/teg_dun01.mcache diff --git a/maps/re/tha_t01.mcache b/maps/re/tha_t01.mcache Binary files differindex eefa487d6..386d9cb5d 100644 --- a/maps/re/tha_t01.mcache +++ b/maps/re/tha_t01.mcache diff --git a/maps/re/tur_dun01.mcache b/maps/re/tur_dun01.mcache Binary files differindex e6c615f99..ede11d905 100644 --- a/maps/re/tur_dun01.mcache +++ b/maps/re/tur_dun01.mcache diff --git a/maps/re/tur_dun02.mcache b/maps/re/tur_dun02.mcache Binary files differindex b48ca6fc6..3e951e3ed 100644 --- a/maps/re/tur_dun02.mcache +++ b/maps/re/tur_dun02.mcache diff --git a/maps/re/tur_dun03.mcache b/maps/re/tur_dun03.mcache Binary files differindex 7d2d7779a..0f0c190cc 100644 --- a/maps/re/tur_dun03.mcache +++ b/maps/re/tur_dun03.mcache diff --git a/maps/re/tur_dun06.mcache b/maps/re/tur_dun06.mcache Binary files differindex b484b44b9..32ea2aa7f 100644 --- a/maps/re/tur_dun06.mcache +++ b/maps/re/tur_dun06.mcache diff --git a/maps/re/turbo_e_16.mcache b/maps/re/turbo_e_16.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/re/turbo_e_16.mcache +++ b/maps/re/turbo_e_16.mcache diff --git a/maps/re/turbo_e_4.mcache b/maps/re/turbo_e_4.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/re/turbo_e_4.mcache +++ b/maps/re/turbo_e_4.mcache diff --git a/maps/re/turbo_e_8.mcache b/maps/re/turbo_e_8.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/re/turbo_e_8.mcache +++ b/maps/re/turbo_e_8.mcache diff --git a/maps/re/turbo_n_1.mcache b/maps/re/turbo_n_1.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/re/turbo_n_1.mcache +++ b/maps/re/turbo_n_1.mcache diff --git a/maps/re/turbo_n_16.mcache b/maps/re/turbo_n_16.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/re/turbo_n_16.mcache +++ b/maps/re/turbo_n_16.mcache diff --git a/maps/re/turbo_n_4.mcache b/maps/re/turbo_n_4.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/re/turbo_n_4.mcache +++ b/maps/re/turbo_n_4.mcache diff --git a/maps/re/turbo_n_8.mcache b/maps/re/turbo_n_8.mcache Binary files differindex 633f9df49..2dd27fb49 100644 --- a/maps/re/turbo_n_8.mcache +++ b/maps/re/turbo_n_8.mcache diff --git a/maps/re/turbo_room.mcache b/maps/re/turbo_room.mcache Binary files differindex b251343ee..6fdd21346 100644 --- a/maps/re/turbo_room.mcache +++ b/maps/re/turbo_room.mcache diff --git a/maps/re/um_fild02.mcache b/maps/re/um_fild02.mcache Binary files differindex 6d4c33e56..59632d91f 100644 --- a/maps/re/um_fild02.mcache +++ b/maps/re/um_fild02.mcache diff --git a/maps/re/valkyrie.mcache b/maps/re/valkyrie.mcache Binary files differindex f13c3627e..208d13ed9 100644 --- a/maps/re/valkyrie.mcache +++ b/maps/re/valkyrie.mcache diff --git a/maps/re/ve_fild03.mcache b/maps/re/ve_fild03.mcache Binary files differindex 0c1c00748..52f022ff2 100644 --- a/maps/re/ve_fild03.mcache +++ b/maps/re/ve_fild03.mcache diff --git a/maps/re/ve_fild07.mcache b/maps/re/ve_fild07.mcache Binary files differindex 172a794e2..14a98e34a 100644 --- a/maps/re/ve_fild07.mcache +++ b/maps/re/ve_fild07.mcache diff --git a/maps/re/wizard_1-1.mcache b/maps/re/wizard_1-1.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/wizard_1-1.mcache +++ b/maps/re/wizard_1-1.mcache diff --git a/maps/re/wizard_2-1.mcache b/maps/re/wizard_2-1.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/wizard_2-1.mcache +++ b/maps/re/wizard_2-1.mcache diff --git a/maps/re/wizard_3-1.mcache b/maps/re/wizard_3-1.mcache Binary files differindex c1c64abb5..820e98d3e 100644 --- a/maps/re/wizard_3-1.mcache +++ b/maps/re/wizard_3-1.mcache diff --git a/maps/re/xmas_dun02.mcache b/maps/re/xmas_dun02.mcache Binary files differindex d527bc8ad..021f52832 100644 --- a/maps/re/xmas_dun02.mcache +++ b/maps/re/xmas_dun02.mcache diff --git a/maps/re/yuno_fild12.mcache b/maps/re/yuno_fild12.mcache Binary files differindex 586199b2b..dfa05d7a3 100644 --- a/maps/re/yuno_fild12.mcache +++ b/maps/re/yuno_fild12.mcache diff --git a/maps/re/yuno_pre.mcache b/maps/re/yuno_pre.mcache Binary files differindex 17017c2e1..2f381aa24 100644 --- a/maps/re/yuno_pre.mcache +++ b/maps/re/yuno_pre.mcache diff --git a/sql-files/main.sql b/sql-files/main.sql index 12607531b..5546c0271 100644 --- a/sql-files/main.sql +++ b/sql-files/main.sql @@ -889,6 +889,7 @@ INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1489588190); -- 2017-03-1 INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1496588640); -- 2017-06-04--15-04.sql INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1496588700); -- 2017-06-04--15-05.sql INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1509835214); -- 2017-11-04--10-39.sql +INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1519671456); -- 2018-02-26--15-57.sql -- -- Table structure for table `storage` -- @@ -959,12 +960,13 @@ CREATE TABLE IF NOT EXISTS `rodex_mail` ( `sender_id` INT(11) NOT NULL, `receiver_name` VARCHAR(30) NOT NULL, `receiver_id` INT(11) NOT NULL, - `receiver_accountid` INT(11) NOT NULL, + `receiver_accountid` INT(11) NOT NULL, `title` VARCHAR(50) NOT NULL, `body` VARCHAR(510) NOT NULL, `zeny` BIGINT(20) NOT NULL, `type` TINYINT(8) UNSIGNED NOT NULL, `is_read` TINYINT(8) NOT NULL, + `sender_read` TINYINT(2) NOT NULL, `send_date` INT(11) NOT NULL, `expire_date` INT(11) NOT NULL, `weight` INT(11) NOT NULL, diff --git a/sql-files/upgrades/2018-02-26--15-57.sql b/sql-files/upgrades/2018-02-26--15-57.sql new file mode 100644 index 000000000..a2090bb3c --- /dev/null +++ b/sql-files/upgrades/2018-02-26--15-57.sql @@ -0,0 +1,6 @@ +#1519671456 + +ALTER TABLE `rodex_mail` + ADD COLUMN `sender_read` TINYINT(2) NOT NULL DEFAULT '0' AFTER `is_read`; + +INSERT INTO `sql_updates` (`timestamp`, `ignored`) VALUES (1519671456 , 'No'); diff --git a/sql-files/upgrades/index.txt b/sql-files/upgrades/index.txt index 2b1409aba..a2d0c5171 100644 --- a/sql-files/upgrades/index.txt +++ b/sql-files/upgrades/index.txt @@ -43,3 +43,4 @@ 2017-06-04--15-04.sql 2017-06-04--15-05.sql 2017-11-04--10-39.sql +2018-02-26--15-57.sql diff --git a/src/char/char.c b/src/char/char.c index aef35f216..0069e7f1d 100644 --- a/src/char/char.c +++ b/src/char/char.c @@ -3328,7 +3328,12 @@ void char_char_name_ack(int fd, int char_id) WFIFOHEAD(fd,30); WFIFOW(fd,0) = 0x2b09; WFIFOL(fd,2) = char_id; +#if !defined(PACKETVER_ZERO) && (PACKETVER >= 20180307 || (defined(PACKETVER_RE) && PACKETVER >= 20180221)) + if (chr->loadName(char_id, WFIFOP(fd,6)) == 0) + WFIFOL(fd, 6) = 0; +#else chr->loadName(char_id, WFIFOP(fd,6)); +#endif WFIFOSET(fd,30); } diff --git a/src/char/int_rodex.c b/src/char/int_rodex.c index b7314e726..2001ddc43 100644 --- a/src/char/int_rodex.c +++ b/src/char/int_rodex.c @@ -55,7 +55,7 @@ static int inter_rodex_fromsql(int char_id, int account_id, int8 opentype, int64 case RODEX_OPENTYPE_MAIL: if (SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT `mail_id`, `sender_name`, `sender_id`, `receiver_name`, `receiver_id`, `receiver_accountid`," - "`title`, `body`, `zeny`, `type`, `is_read`, `send_date`, `expire_date`, `weight`" + "`title`, `body`, `zeny`, `type`, `is_read`, `sender_read`, `send_date`, `expire_date`, `weight`" "FROM `%s` WHERE `expire_date` > '%d' AND `receiver_id` = '%d' AND `mail_id` > '%"PRId64"'" "ORDER BY `mail_id` ASC", rodex_db, (int)time(NULL), char_id, mail_id) ) { @@ -68,7 +68,7 @@ static int inter_rodex_fromsql(int char_id, int account_id, int8 opentype, int64 case RODEX_OPENTYPE_ACCOUNT: if (SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT `mail_id`, `sender_name`, `sender_id`, `receiver_name`, `receiver_id`, `receiver_accountid`," - "`title`, `body`, `zeny`, `type`, `is_read`, `send_date`, `expire_date`, `weight`" + "`title`, `body`, `zeny`, `type`, `is_read`, `sender_read`, `send_date`, `expire_date`, `weight`" "FROM `%s` WHERE " "`expire_date` > '%d' AND `receiver_accountid` = '%d' AND `mail_id` > '%"PRId64"'" "ORDER BY `mail_id` ASC", rodex_db, (int)time(NULL), account_id, mail_id) @@ -82,8 +82,8 @@ static int inter_rodex_fromsql(int char_id, int account_id, int8 opentype, int64 case RODEX_OPENTYPE_RETURN: if (SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT `mail_id`, `sender_name`, `sender_id`, `receiver_name`, `receiver_id`, `receiver_accountid`," - "`title`, `body`, `zeny`, `type`, `is_read`, `send_date`, `expire_date`, `weight`" - "FROM `%s` WHERE (`sender_id` = '%d' AND `expire_date` <= '%d' AND `send_date` + '%d' > '%d' AND `mail_id` > '%"PRId64"')" + "`title`, `body`, `zeny`, `type`, `is_read`, `sender_read`, `send_date`, `expire_date`, `weight`" + "FROM `%s` WHERE (`is_read` = 0 AND `sender_id` = '%d' AND `expire_date` <= '%d' AND `send_date` + '%d' > '%d' AND `mail_id` > '%"PRId64"')" "ORDER BY `mail_id` ASC", rodex_db, char_id, (int)time(NULL), 2 * RODEX_EXPIRE, (int)time(NULL), mail_id) ) { SqlStmt_ShowDebug(stmt); @@ -95,9 +95,11 @@ static int inter_rodex_fromsql(int char_id, int account_id, int8 opentype, int64 case RODEX_OPENTYPE_UNSET: if (SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT `mail_id`, `sender_name`, `sender_id`, `receiver_name`, `receiver_id`, `receiver_accountid`," - "`title`, `body`, `zeny`, `type`, `is_read`, `send_date`, `expire_date`, `weight`" - "FROM `%s` WHERE `expire_date` > '%d' AND (`receiver_id` = '%d' or `receiver_accountid` = '%d') AND `mail_id` > '%"PRId64"'" - "ORDER BY `mail_id` ASC", rodex_db, (int)time(NULL), char_id, account_id, mail_id) + "`title`, `body`, `zeny`, `type`, `is_read`, `sender_read`, `send_date`, `expire_date`, `weight`" + "FROM `%s` WHERE " + "((`expire_date` > '%d' AND (`receiver_id` = '%d' OR `receiver_accountid` = '%d'))" + "OR (`is_read` = 0 AND `sender_id` = '%d' AND `expire_date` <= '%d' AND `send_date` + '%d' > '%d'))" + "ORDER BY `mail_id` ASC", rodex_db, (int)time(NULL), char_id, account_id, char_id, (int)time(NULL), 2 * RODEX_EXPIRE, (int)time(NULL)) ) { SqlStmt_ShowDebug(stmt); SQL->StmtFree(stmt); @@ -118,9 +120,10 @@ static int inter_rodex_fromsql(int char_id, int account_id, int8 opentype, int64 || SQL_ERROR == SQL->StmtBindColumn(stmt, 8, SQLDT_INT64, &msg.zeny, sizeof msg.zeny, NULL, NULL) || SQL_ERROR == SQL->StmtBindColumn(stmt, 9, SQLDT_UINT8, &msg.type, sizeof msg.type, NULL, NULL) || SQL_ERROR == SQL->StmtBindColumn(stmt, 10, SQLDT_BOOL, &msg.is_read, sizeof msg.is_read, NULL, NULL) - || SQL_ERROR == SQL->StmtBindColumn(stmt, 11, SQLDT_INT, &msg.send_date, sizeof msg.send_date, NULL, NULL) - || SQL_ERROR == SQL->StmtBindColumn(stmt, 12, SQLDT_INT, &msg.expire_date, sizeof msg.expire_date, NULL, NULL) - || SQL_ERROR == SQL->StmtBindColumn(stmt, 13, SQLDT_INT, &msg.weight, sizeof msg.weight, NULL, NULL) + || SQL_ERROR == SQL->StmtBindColumn(stmt, 11, SQLDT_BOOL, &msg.sender_read, sizeof msg.sender_read, NULL, NULL) + || SQL_ERROR == SQL->StmtBindColumn(stmt, 12, SQLDT_INT, &msg.send_date, sizeof msg.send_date, NULL, NULL) + || SQL_ERROR == SQL->StmtBindColumn(stmt, 13, SQLDT_INT, &msg.expire_date, sizeof msg.expire_date, NULL, NULL) + || SQL_ERROR == SQL->StmtBindColumn(stmt, 14, SQLDT_INT, &msg.weight, sizeof msg.weight, NULL, NULL) ) { SqlStmt_ShowDebug(stmt); SQL->StmtFree(stmt); @@ -201,10 +204,12 @@ static int inter_rodex_fromsql(int char_id, int account_id, int8 opentype, int64 #if PACKETVER >= 20170419 if (opentype == RODEX_OPENTYPE_UNSET) { - if (msg.receiver_id != 0) - msg.opentype = RODEX_OPENTYPE_MAIL; - else + if (msg.receiver_id == 0) msg.opentype = RODEX_OPENTYPE_ACCOUNT; + else if (msg.expire_date < time(NULL)) + msg.opentype = RODEX_OPENTYPE_RETURN; + else + msg.opentype = RODEX_OPENTYPE_MAIL; } else { msg.opentype = opentype; } @@ -243,8 +248,8 @@ static bool inter_rodex_hasnew(int char_id, int account_id) if (SQL_ERROR == SQL->Query(inter->sql_handle, "SELECT count(*) FROM `%s` WHERE (" "(`expire_date` > '%d' AND (`receiver_id` = '%d' OR `receiver_accountid` = '%d')) OR" - "(`sender_id` = '%d' AND `expire_date` <= '%d' AND `send_date` + '%d' > '%d')" - ") AND (`is_read` = 0 OR (`type` > 0 AND `type` != 8))", + "(`sender_id` = '%d' AND `expire_date` <= '%d' AND `send_date` + '%d' > '%d' AND `is_read` = 0)" // is_read is required in this line because of the OR in next condition + ") AND ((`is_read` = 0 AND `sender_read` = 0) OR (`type` > 0 AND `type` != 8))", rodex_db, (int)time(NULL), char_id, account_id, char_id, (int)time(NULL), 2 * RODEX_EXPIRE, (int)time(NULL)) ) { @@ -309,10 +314,10 @@ int64 inter_rodex_savemessage(struct rodex_message* msg) SQL->EscapeStringLen(inter->sql_handle, title, msg->title, strnlen(msg->title, RODEX_TITLE_LENGTH)); if (SQL_ERROR == SQL->Query(inter->sql_handle, "INSERT INTO `%s` (`sender_name`, `sender_id`, `receiver_name`, `receiver_id`, `receiver_accountid`, `title`, `body`," - "`zeny`, `type`, `is_read`, `send_date`, `expire_date`, `weight`) VALUES " - "('%s', '%d', '%s', '%d', '%d', '%s', '%s', '%"PRId64"', '%d', '%d', '%d', '%d', '%d')", + "`zeny`, `type`, `is_read`, `sender_read`, `send_date`, `expire_date`, `weight`) VALUES " + "('%s', '%d', '%s', '%d', '%d', '%s', '%s', '%"PRId64"', '%d', '%d', '%d', '%d', '%d', '%d')", rodex_db, sender_name, msg->sender_id, receiver_name, msg->receiver_id, msg->receiver_accountid, - title, body, msg->zeny, msg->type, msg->is_read == true ? 1 : 0, msg->send_date, msg->expire_date, msg->weight)) { + title, body, msg->zeny, msg->type, msg->is_read == true ? 1 : 0, msg->sender_read == true ? 1 : 0, msg->send_date, msg->expire_date, msg->weight)) { Sql_ShowDebug(inter->sql_handle); return 0; } @@ -344,22 +349,23 @@ int64 inter_rodex_savemessage(struct rodex_message* msg) /*========================================== * Inbox Request *------------------------------------------*/ -void mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int count, struct rodex_maillist *mails) +void mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int count, int64 mail_id, struct rodex_maillist *mails) { - int per_packet = (UINT16_MAX - 16) / sizeof(struct rodex_message); + int per_packet = (UINT16_MAX - 24) / sizeof(struct rodex_message); int sent = 0; bool is_first = true; nullpo_retv(mails); Assert_retv(char_id > 0); Assert_retv(count >= 0); + Assert_retv(mail_id >= 0); do { - int i = 16, j, size, limit; + int i = 24, j, size, limit; int to_send = count - sent; bool is_last = true; if (to_send <= per_packet) { - size = to_send * sizeof(struct rodex_message) + 16; + size = to_send * sizeof(struct rodex_message) + 24; limit = to_send; is_last = true; } else { @@ -367,7 +373,7 @@ void mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int co if (limit != to_send) { is_last = false; } - size = limit * sizeof(struct rodex_message) + 16; + size = limit * sizeof(struct rodex_message) + 24; } WFIFOHEAD(fd, size); @@ -379,6 +385,7 @@ void mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int co WFIFOB(fd, 10) = is_last; WFIFOB(fd, 11) = is_first; WFIFOL(fd, 12) = limit; + WFIFOQ(fd, 16) = mail_id; for (j = 0; j < limit; ++j, ++sent, i += sizeof(struct rodex_message)) { memcpy(WFIFOP(fd, i), &VECTOR_INDEX(*mails, sent), sizeof(struct rodex_message)); } @@ -403,7 +410,7 @@ void mapif_parse_rodex_requestinbox(int fd) count = inter_rodex->fromsql(char_id, account_id, opentype, 0, &mails); else count = inter_rodex->fromsql(char_id, account_id, opentype, mail_id, &mails); - mapif->rodex_sendinbox(fd, char_id, opentype, flag, count, &mails); + mapif->rodex_sendinbox(fd, char_id, opentype, flag, count, mail_id, &mails); VECTOR_CLEAR(mails); } @@ -443,7 +450,7 @@ void mapif_parse_rodex_updatemail(int fd) int8 flag = RFIFOB(fd, 10); Assert_retv(mail_id > 0); - Assert_retv(flag >= 0 && flag <= 3); + Assert_retv(flag >= 0 && flag <= 4); switch (flag) { case 0: // Read @@ -469,6 +476,11 @@ void mapif_parse_rodex_updatemail(int fd) if (SQL_ERROR == SQL->Query(inter->sql_handle, "DELETE FROM `%s` WHERE `mail_id` = '%"PRId64"'", rodex_item_db, mail_id)) Sql_ShowDebug(inter->sql_handle); break; + + case 4: // Sender Read + if (SQL_ERROR == SQL->Query(inter->sql_handle, "UPDATE `%s` SET `sender_read` = 1 WHERE `mail_id` = '%"PRId64"'", rodex_db, mail_id)) + Sql_ShowDebug(inter->sql_handle); + break; } } diff --git a/src/char/inter.c b/src/char/inter.c index baa000d82..b095a046d 100644 --- a/src/char/inter.c +++ b/src/char/inter.c @@ -527,12 +527,15 @@ void mapif_parse_accinfo2(bool success, int map_fd, int u_fd, int u_aid, int acc inter->msg_to_fd(map_fd, u_fd, u_aid, "-- Account %d --", account_id); inter->msg_to_fd(map_fd, u_fd, u_aid, "User: %s | GM Group: %d | State: %d", userid, group_id, state); +// enable this if you really know what you doing. +#if 0 if (*user_pass != '\0') { /* password is only received if your gm level is greater than the one you're searching for */ if (pin_code && *pin_code != '\0') inter->msg_to_fd(map_fd, u_fd, u_aid, "Password: %s (PIN:%s)", user_pass, pin_code); else inter->msg_to_fd(map_fd, u_fd, u_aid, "Password: %s", user_pass ); } +#endif inter->msg_to_fd(map_fd, u_fd, u_aid, "Account e-mail: %s | Birthdate: %s", email, birthdate); inter->msg_to_fd(map_fd, u_fd, u_aid, "Last IP: %s (%s)", last_ip, geoip->getcountry(sockt->str2ip(last_ip))); diff --git a/src/char/mapif.c b/src/char/mapif.c index 241edc925..f80e38fe7 100644 --- a/src/char/mapif.c +++ b/src/char/mapif.c @@ -185,7 +185,7 @@ void mapif_send_quests(int fd, int char_id, struct quest *tmp_questlog, int num_ int mapif_parse_quest_load(int fd); /* RoDEX */ int mapif_parse_rodex_requestinbox(int fd); -void mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int count, struct rodex_maillist *mails); +void mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int count, int64 mail_id, struct rodex_maillist *mails); int mapif_parse_rodex_checkhasnew(int fd); void mapif_rodex_sendhasnew(int fd, int char_id, bool has_new); int mapif_parse_rodex_updatemail(int fd); diff --git a/src/char/mapif.h b/src/char/mapif.h index f03f1ad9a..7fc79f661 100644 --- a/src/char/mapif.h +++ b/src/char/mapif.h @@ -177,7 +177,7 @@ struct mapif_interface { void (*send_quests) (int fd, int char_id, struct quest *tmp_questlog, int num_quests); int (*parse_quest_load) (int fd); int(*parse_rodex_requestinbox) (int fd); - void(*rodex_sendinbox) (int fd, int char_id, int8 opentype, int8 flag, int count, struct rodex_maillist *mails); + void(*rodex_sendinbox) (int fd, int char_id, int8 opentype, int8 flag, int count, int64 mail_id, struct rodex_maillist *mails); int(*parse_rodex_checkhasnew) (int fd); void(*rodex_sendhasnew) (int fd, int char_id, bool has_new); int(*parse_rodex_updatemail) (int fd); diff --git a/src/char/pincode.c b/src/char/pincode.c index fc1a4c037..bca1b4394 100644 --- a/src/char/pincode.c +++ b/src/char/pincode.c @@ -68,6 +68,8 @@ void pincode_check(int fd, struct char_session_data* sd) { char pin[5] = "\0\0\0\0"; nullpo_retv(sd); + if (strlen(sd->pincode) != 4) + return; safestrncpy(pin, RFIFOP(fd, 6), sizeof(pin)); pincode->decrypt(sd->pincode_seed, pin); if( pincode->compare( fd, sd, pin ) ){ @@ -87,7 +89,9 @@ int pincode_compare(int fd, struct char_session_data* sd, char* pin) { } else { pincode->sendstate( fd, sd, PINCODE_WRONG ); if( pincode->maxtry && ++sd->pincode_try >= pincode->maxtry ){ - pincode->error( sd->account_id ); + pincode->error(sd->account_id); + chr->authfail_fd(fd, 0); + chr->disconnect_player(sd->account_id); } return 0; } @@ -97,6 +101,8 @@ void pincode_change(int fd, struct char_session_data* sd) { char oldpin[5] = "\0\0\0\0", newpin[5] = "\0\0\0\0"; nullpo_retv(sd); + if (strlen(sd->pincode) != 4) + return; safestrncpy(oldpin, RFIFOP(fd,6), sizeof(oldpin)); pincode->decrypt(sd->pincode_seed,oldpin); if( !pincode->compare( fd, sd, oldpin ) ) @@ -113,6 +119,8 @@ void pincode_setnew(int fd, struct char_session_data* sd) { char newpin[5] = "\0\0\0\0"; nullpo_retv(sd); + if (strlen(sd->pincode) == 4) + return; safestrncpy(newpin, RFIFOP(fd,6), sizeof(newpin)); pincode->decrypt(sd->pincode_seed,newpin); pincode->update( sd->account_id, newpin ); @@ -172,8 +180,11 @@ void pincode_decrypt(unsigned int userSeed, char* pin) { } } - for( i = 0; i < 4; i++ ){ - pin[i] = tab[pin[i] - '0']; + for (i = 0; i < 4; i++ ) { + if (pin[i] < '0' || pin[i] > '9') + pin[i] = '0'; + else + pin[i] = tab[pin[i] - '0']; } sprintf(pin, "%d%d%d%d", pin[0], pin[1], pin[2], pin[3]); diff --git a/src/common/md5calc.c b/src/common/md5calc.c index d2fc32371..d5ce8b5a8 100644 --- a/src/common/md5calc.c +++ b/src/common/md5calc.c @@ -202,7 +202,7 @@ static void md5_buf2binary(const uint8 *buf, const int buf_size, uint8 *output) //1-3 copy_len = buf_size % 64; //The number of bytes which remained is computed. - strncpy((char *)padding_message, (const char *)pbuf, copy_len); // A message is copied to an extended bit sequence. + memcpy((char *)padding_message, (const char *)pbuf, copy_len); // A message is copied to an extended bit sequence. memset(padding_message+copy_len, 0, 64 - copy_len); //It buries by 0 until it becomes extended bit length. padding_message[copy_len] |= 0x80; //The next of a message is 1. diff --git a/src/common/mmo.h b/src/common/mmo.h index 04daedca0..f9cbc57de 100644 --- a/src/common/mmo.h +++ b/src/common/mmo.h @@ -904,6 +904,7 @@ struct rodex_message { uint8 type; int8 opentype; bool is_read; + bool sender_read; bool is_deleted; int send_date; int expire_date; diff --git a/src/login/login.c b/src/login/login.c index 5b281c22d..9fe9de0d3 100644 --- a/src/login/login.c +++ b/src/login/login.c @@ -1985,7 +1985,8 @@ int do_final(void) login->dbs->account_engine->db->destroy(login->dbs->account_engine->db); login->dbs->account_engine->db = NULL; } - accounts = NULL; // destroyed in account_engine + login->accounts = NULL; // destroyed in account_engine + accounts = NULL; login->online_db->destroy(login->online_db, NULL); login->auth_db->destroy(login->auth_db, NULL); @@ -2101,6 +2102,7 @@ int do_init(int argc, char** argv) login->dbs->account_engine->constructor = account->db_sql; login->dbs->account_engine->db = login->dbs->account_engine->constructor(); accounts = login->dbs->account_engine->db; + login->accounts = accounts; if( accounts == NULL ) { ShowFatalError("do_init: account engine 'sql' not found.\n"); exit(EXIT_FAILURE); diff --git a/src/map/atcommand.c b/src/map/atcommand.c index e529f8839..9deed0098 100644 --- a/src/map/atcommand.c +++ b/src/map/atcommand.c @@ -10055,6 +10055,7 @@ bool atcommand_exec(const int fd, struct map_session_data *sd, const char *messa { char params[100], command[100]; char output[CHAT_SIZE_MAX]; + bool logCommand; // Reconstructed message char atcmd_msg[CHAT_SIZE_MAX]; @@ -10198,6 +10199,7 @@ bool atcommand_exec(const int fd, struct map_session_data *sd, const char *messa } } + logCommand = info->log; //Attempt to use the command if ((info->func(fd, ssd, command, params,info) != true)) { #ifdef AUTOTRADE_PERSISTENCY @@ -10209,7 +10211,8 @@ bool atcommand_exec(const int fd, struct map_session_data *sd, const char *messa return true; } - if (info->log) /* log only if this command should be logged [Ind/Hercules] */ + // info->log cant be used here, because info can be freed [4144] + if (logCommand) /* log only if this command should be logged [Ind/Hercules] */ logs->atcommand(sd, is_atcommand ? atcmd_msg : message); return true; diff --git a/src/map/clan.c b/src/map/clan.c index 865f5a4cd..7aa9be5d4 100644 --- a/src/map/clan.c +++ b/src/map/clan.c @@ -997,10 +997,11 @@ void clan_reload(void) */ void do_init_clan(bool minimal) { + clan->db = idb_alloc(DB_OPT_RELEASE_DATA); + if (minimal) { return; } - clan->db = idb_alloc(DB_OPT_RELEASE_DATA); clan->config_read(false); timer->add_func_list(clan->inactivity_kick, "clan_inactivity_kick"); } diff --git a/src/map/clif.c b/src/map/clif.c index 64e44dfff..cf5edd0e0 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -6088,14 +6088,29 @@ void clif_wis_end(int fd, int flag) { /// Returns character name requested by char_id (ZC_ACK_REQNAME_BYGID). /// 0194 <char id>.L <name>.24B +/// 0af7 <flag>.W <char id>.L <name>.24B void clif_solved_charname(int fd, int charid, const char* name) { nullpo_retv(name); - WFIFOHEAD(fd,packet_len(0x194)); - WFIFOW(fd,0)=0x194; - WFIFOL(fd,2)=charid; - safestrncpy(WFIFOP(fd,6), name, NAME_LENGTH); - WFIFOSET(fd,packet_len(0x194)); +#if !defined(PACKETVER_ZERO) && (PACKETVER >= 20180307 || (defined(PACKETVER_RE) && PACKETVER >= 20180221)) + WFIFOHEAD(fd, packet_len(0x0af7)); + WFIFOW(fd, 0) = 0xaf7; + if (*name == 0) { + WFIFOW(fd, 2) = 2; + memset(WFIFOP(fd, 8), 0, NAME_LENGTH); + } else { + WFIFOW(fd, 2) = 3; + safestrncpy(WFIFOP(fd, 8), name, NAME_LENGTH); + } + WFIFOL(fd, 4) = charid; + WFIFOSET(fd, packet_len(0x0af7)); +#else + WFIFOHEAD(fd, packet_len(0x194)); + WFIFOW(fd, 0) = 0x194; + WFIFOL(fd, 2) = charid; + safestrncpy(WFIFOP(fd, 6), name, NAME_LENGTH); + WFIFOSET(fd, packet_len(0x194)); +#endif } /// Presents a list of items that can be carded/composed (ZC_ITEMCOMPOSITION_LIST). @@ -10999,13 +11014,21 @@ void clif_parse_CreateChatRoom(int fd, struct map_session_data* sd) __attribute_ void clif_parse_CreateChatRoom(int fd, struct map_session_data* sd) { int len = RFIFOW(fd,2)-15; - int limit = RFIFOW(fd,4); - bool pub = (RFIFOB(fd,6) != 0); - const char *password = RFIFOP(fd,7); //not zero-terminated - const char *title = RFIFOP(fd,15); // not zero-terminated + int limit; + bool pub; + const char *password; //not zero-terminated + const char *title; // not zero-terminated char s_password[CHATROOM_PASS_SIZE]; char s_title[CHATROOM_TITLE_SIZE]; + if (len < 1) + return; + + limit = RFIFOW(fd, 4); + pub = (RFIFOB(fd, 6) != 0); + password = RFIFOP(fd, 7); //not zero-terminated + title = RFIFOP(fd, 15); // not zero-terminated + if (pc_ismuted(&sd->sc, MANNER_NOROOM)) return; if(battle_config.basic_skill_check && !pc->check_basicskill(sd, 4)) { @@ -11021,9 +11044,6 @@ void clif_parse_CreateChatRoom(int fd, struct map_session_data* sd) return; } - if( len <= 0 ) - return; // invalid input - safestrncpy(s_password, password, CHATROOM_PASS_SIZE); safestrncpy(s_title, title, min(len+1,CHATROOM_TITLE_SIZE)); //NOTE: assumes that safestrncpy will not access the len+1'th byte @@ -11050,15 +11070,20 @@ void clif_parse_ChatRoomStatusChange(int fd, struct map_session_data* sd) __attr void clif_parse_ChatRoomStatusChange(int fd, struct map_session_data* sd) { int len = RFIFOW(fd,2)-15; - int limit = RFIFOW(fd,4); - bool pub = (RFIFOB(fd,6) != 0); - const char *password = RFIFOP(fd,7); // not zero-terminated - const char *title = RFIFOP(fd,15); // not zero-terminated + int limit; + bool pub; + const char *password; // not zero-terminated + const char *title; // not zero-terminated char s_password[CHATROOM_PASS_SIZE]; char s_title[CHATROOM_TITLE_SIZE]; - if( len <= 0 ) - return; // invalid input + if (len < 1) + return; + + limit = RFIFOW(fd, 4); + pub = (RFIFOB(fd, 6) != 0); + password = RFIFOP(fd, 7); // not zero-terminated + title = RFIFOP(fd, 15); // not zero-terminated safestrncpy(s_password, password, CHATROOM_PASS_SIZE); safestrncpy(s_title, title, min(len+1,CHATROOM_TITLE_SIZE)); //NOTE: assumes that safestrncpy will not access the len+1'th byte @@ -11074,7 +11099,7 @@ void clif_parse_ChangeChatOwner(int fd, struct map_session_data* sd) __attribute /// 1 = normal void clif_parse_ChangeChatOwner(int fd, struct map_session_data* sd) { - chat->change_owner(sd, RFIFOP(fd,6)); + chat->change_owner(sd, RFIFOP(fd,6)); // non null terminated } void clif_parse_KickFromChat(int fd,struct map_session_data *sd) __attribute__((nonnull (2))); @@ -11082,7 +11107,7 @@ void clif_parse_KickFromChat(int fd,struct map_session_data *sd) __attribute__(( /// 00e2 <name>.24B void clif_parse_KickFromChat(int fd,struct map_session_data *sd) { - chat->kick(sd, RFIFOP(fd,2)); + chat->kick(sd, RFIFOP(fd,2)); // non null terminated } void clif_parse_ChatLeave(int fd, struct map_session_data* sd) __attribute__((nonnull (2))); @@ -11841,17 +11866,21 @@ void clif_parse_NpcStringInput(int fd, struct map_session_data* sd) __attribute_ /// 01d5 <packet len>.W <npc id>.L <string>.?B void clif_parse_NpcStringInput(int fd, struct map_session_data* sd) { + int len = RFIFOW(fd, 2); // [4144] can't confirm exact client version. At least >= correct for 20150513 #if PACKETVER >= 20151029 - int message_len = RFIFOW(fd, 2) - 7; + int message_len = len - 7; #else - int message_len = RFIFOW(fd, 2) - 8; + int message_len = len - 8; #endif - int npcid = RFIFOL(fd,4); - const char *message = RFIFOP(fd,8); + int npcid; + const char *message; - if( message_len <= 0 ) - return; // invalid input + if (len < 9) + return; + + npcid = RFIFOL(fd, 4); + message = RFIFOP(fd, 8); safestrncpy(sd->npc_str, message, min(message_len,CHATBOX_SIZE)); npc->scriptcont(sd, npcid, false); @@ -13005,9 +13034,15 @@ void clif_parse_PurchaseReq(int fd, struct map_session_data* sd) __attribute__(( /// 0134 <packet len>.W <account id>.L { <amount>.W <index>.W }* void clif_parse_PurchaseReq(int fd, struct map_session_data* sd) { - int len = (int)RFIFOW(fd,2) - 8; - int id = RFIFOL(fd,4); - const uint8 *data = RFIFOP(fd,8); + int len = (int)RFIFOW(fd, 2) - 8; + int id; + const uint8 *data; + + if (len < 1) + return; + + id = RFIFOL(fd, 4); + data = RFIFOP(fd, 8); vending->purchase(sd, id, sd->vended_id, data, len/4); @@ -13020,10 +13055,16 @@ void clif_parse_PurchaseReq2(int fd, struct map_session_data* sd) __attribute__( /// 0801 <packet len>.W <account id>.L <unique id>.L { <amount>.W <index>.W }* void clif_parse_PurchaseReq2(int fd, struct map_session_data* sd) { - int len = (int)RFIFOW(fd,2) - 12; - int aid = RFIFOL(fd,4); - int uid = RFIFOL(fd,8); - const uint8 *data = RFIFOP(fd,12); + int len = (int)RFIFOW(fd, 2) - 12; + int aid; + int uid; + const uint8 *data; + + if (len < 1) + return; + aid = RFIFOL(fd, 4); + uid = RFIFOL(fd, 8); + data = RFIFOP(fd, 12); vending->purchase(sd, aid, uid, data, len/4); @@ -13040,9 +13081,16 @@ void clif_parse_OpenVending(int fd, struct map_session_data* sd) __attribute__(( /// 1 = open void clif_parse_OpenVending(int fd, struct map_session_data* sd) { short len = (short)RFIFOW(fd,2) - 85; - const char *message = RFIFOP(fd,4); - bool flag = (RFIFOB(fd,84) != 0) ? true : false; - const uint8 *data = RFIFOP(fd,85); + const char *message; + bool flag; + const uint8 *data; + + if (len < 1) + return; + + message = RFIFOP(fd,4); + flag = (RFIFOB(fd,84) != 0) ? true : false; + data = RFIFOP(fd,85); if( !flag ) sd->state.prevend = sd->state.workinprogress = 0; @@ -13135,12 +13183,14 @@ void clif_parse_GuildChangePositionInfo(int fd, struct map_session_data *sd) __a void clif_parse_GuildChangePositionInfo(int fd, struct map_session_data *sd) { int i; + int count = (RFIFOW(fd, 2) - 4) / 40; - if(!sd->state.gmaster_flag) + if (!sd->state.gmaster_flag) return; - for(i = 4; i < RFIFOW(fd,2); i += 40 ){ - guild->change_position(sd->status.guild_id, RFIFOL(fd,i), RFIFOL(fd,i+4), RFIFOL(fd,i+12), RFIFOP(fd,i+16)); + for (i = 0; i < count; i ++ ) { + int idx = i * 40 + 4; + guild->change_position(sd->status.guild_id, RFIFOL(fd, idx), RFIFOL(fd, idx + 4), RFIFOL(fd, idx + 12), RFIFOP(fd, idx + 16)); } } @@ -13151,6 +13201,7 @@ void clif_parse_GuildChangeMemberPosition(int fd, struct map_session_data *sd) { int i; int len = RFIFOW(fd, 2); + int count = (len - 4) / 12; if(!sd->state.gmaster_flag) return; @@ -13161,10 +13212,11 @@ void clif_parse_GuildChangeMemberPosition(int fd, struct map_session_data *sd) return; } - for(i=4;i<RFIFOW(fd,2);i+=12){ - int position = RFIFOL(fd, i + 8); - if (position > 0) { - guild->change_memberposition(sd->status.guild_id, RFIFOL(fd, i), RFIFOL(fd, i + 4), position); + for (i = 0; i < count; i++) { + int idx = i * 12 + 4; + int position = RFIFOL(fd, idx + 8); + if (position > 0 && position < MAX_GUILDPOSITION) { + guild->change_memberposition(sd->status.guild_id, RFIFOL(fd, idx), RFIFOL(fd, idx + 4), position); } } } @@ -13548,12 +13600,15 @@ void clif_parse_GuildBreak(int fd, struct map_session_data *sd) __attribute__((n /// key: /// now guild name; might have been (intended) email, since the /// field name and size is same as the one in CH_DELETE_CHAR. -void clif_parse_GuildBreak(int fd, struct map_session_data *sd) { +void clif_parse_GuildBreak(int fd, struct map_session_data *sd) +{ + char key[40]; if( map->list[sd->bl.m].flag.guildlock ) { clif->message(fd, msg_fd(fd,228)); // Guild modification is disabled in this map. return; } - guild->dobreak(sd, RFIFOP(fd,2)); + safestrncpy(key, RFIFOP(fd, 2), 40); + guild->dobreak(sd, key); } /// Pet @@ -14142,6 +14197,7 @@ void clif_parse_NoviceExplosionSpirits(int fd, struct map_session_data *sd) /// Toggles a single friend online/offline [Skotlex] (ZC_FRIENDS_STATE). /// 0206 <account id>.L <char id>.L <state>.B +/// 0206 <account id>.L <char id>.L <state>.B <name>.24B /// state: /// 0 = online /// 1 = offline @@ -14161,7 +14217,13 @@ void clif_friendslist_toggle(struct map_session_data *sd,int account_id, int cha WFIFOW(fd, 0) = 0x206; WFIFOL(fd, 2) = sd->status.friends[i].account_id; WFIFOL(fd, 6) = sd->status.friends[i].char_id; - WFIFOB(fd,10) = !online; //Yeah, a 1 here means "logged off", go figure... + WFIFOB(fd, 10) = !online; //Yeah, a 1 here means "logged off", go figure... +#ifndef PACKETVER_ZERO +#if PACKETVER >= 20180307 || (defined(PACKETVER_RE) && PACKETVER >= 20180221) + memcpy(WFIFOP(fd, 11), sd->status.friends[i].name, NAME_LENGTH); +#endif +#endif // PACKETVER_ZERO + WFIFOSET(fd, packet_len(0x206)); } @@ -14178,22 +14240,30 @@ int clif_friendslist_toggle_sub(struct map_session_data *sd,va_list ap) /// Sends the whole friends list (ZC_FRIENDS_LIST). /// 0201 <packet len>.W { <account id>.L <char id>.L <name>.24B }* +/// 0201 <packet len>.W { <account id>.L <char id>.L }* void clif_friendslist_send(struct map_session_data *sd) { int i = 0, n, fd = sd->fd; +#if !defined(PACKETVER_ZERO) && (PACKETVER >= 20180307 || (defined(PACKETVER_RE) && PACKETVER >= 20180221)) + const int offset = 8; +#else + const int offset = 32; +#endif nullpo_retv(sd); // Send friends list - WFIFOHEAD(fd, MAX_FRIENDS * 32 + 4); + WFIFOHEAD(fd, MAX_FRIENDS * offset + 4); WFIFOW(fd, 0) = 0x201; for(i = 0; i < MAX_FRIENDS && sd->status.friends[i].char_id; i++) { - WFIFOL(fd, 4 + 32 * i + 0) = sd->status.friends[i].account_id; - WFIFOL(fd, 4 + 32 * i + 4) = sd->status.friends[i].char_id; - memcpy(WFIFOP(fd, 4 + 32 * i + 8), &sd->status.friends[i].name, NAME_LENGTH); + WFIFOL(fd, 4 + offset * i + 0) = sd->status.friends[i].account_id; + WFIFOL(fd, 4 + offset * i + 4) = sd->status.friends[i].char_id; +#if !(!defined(PACKETVER_ZERO) && (PACKETVER >= 20180307 || (defined(PACKETVER_RE) && PACKETVER >= 20180221))) + memcpy(WFIFOP(fd, 4 + offset * i + 8), &sd->status.friends[i].name, NAME_LENGTH); +#endif } if (i) { - WFIFOW(fd,2) = 4 + 32 * i; + WFIFOW(fd,2) = 4 + offset * i; WFIFOSET(fd, WFIFOW(fd,2)); } @@ -15302,17 +15372,19 @@ void clif_parse_Mail_winopen(int fd, struct map_session_data *sd) void clif_parse_Mail_send(int fd, struct map_session_data *sd) __attribute__((nonnull (2))); /// Request to send mail (CZ_MAIL_SEND). /// 0248 <packet len>.W <recipient>.24B <title>.40B <body len>.B <body>.?B + void clif_parse_Mail_send(int fd, struct map_session_data *sd) { struct mail_message msg; int body_len; + int len = RFIFOW(fd, 2); if( !chrif->isconnected() ) return; if( sd->state.trading ) return; - if( RFIFOW(fd,2) < 69 ) { + if (len < 69) { ShowWarning("Invalid Msg Len from account %d.\n", sd->status.account_id); return; } @@ -15328,6 +15400,11 @@ void clif_parse_Mail_send(int fd, struct map_session_data *sd) if (body_len > MAIL_BODY_LENGTH) body_len = MAIL_BODY_LENGTH; + if (body_len + 69 > len) { + ShowWarning("Invalid Msg Len from account %d.\n", sd->status.account_id); + return; + } + memset(&msg, 0, sizeof(msg)); if (!mail->setattachment(sd, &msg)) { // Invalid Append condition clif->mail_send(sd->fd, true); // fail @@ -15833,15 +15910,24 @@ void clif_parse_cashshop_buy(int fd, struct map_session_data *sd) fail = npc->cashshop_buy(sd, nameid, amount, points); #else int len = RFIFOW(fd,2); - int points = RFIFOL(fd,4); - int count = RFIFOW(fd,8); + int points; + int count; struct itemlist item_list = { 0 }; int i; - if( len < 10 || len != 10 + count * 4) { + if (len < 10) { + ShowWarning("Player %d sent incorrect cash shop buy packet (len %d)!\n", sd->status.char_id, len); + return; + } + + points = RFIFOL(fd, 4); + count = RFIFOW(fd, 8); + + if (len != 10 + count * 4) { ShowWarning("Player %d sent incorrect cash shop buy packet (len %d:%d)!\n", sd->status.char_id, len, 10 + count * 4); return; } + VECTOR_INIT(item_list); VECTOR_ENSURE(item_list, count, 1); for (i = 0; i < count; i++) { @@ -16879,7 +16965,7 @@ void clif_parse_ItemListWindowSelected(int fd, struct map_session_data *sd) __at /// S 07e4 <length>.w <option>.l <val>.l {<index>.w <amount>.w).4b* void clif_parse_ItemListWindowSelected(int fd, struct map_session_data *sd) { - int n = ((int)RFIFOW(fd,2) - 12) / 4; + int n = ((int)RFIFOW(fd, 2) - 12) / 4; int type = RFIFOL(fd,4); int flag = RFIFOL(fd,8); // Button clicked: 0 = Cancel, 1 = OK struct itemlist item_list = { 0 }; @@ -17010,7 +17096,7 @@ void clif_parse_ReqOpenBuyingStore(int fd, struct map_session_data* sd) { char storename[MESSAGE_SIZE]; unsigned char result; int zenylimit; - unsigned int count, packet_len; + int count, packet_len; struct s_packet_db* info = &packet_db[RFIFOW(fd,0)]; packet_len = RFIFOW(fd,info->pos[0]); @@ -17018,7 +17104,7 @@ void clif_parse_ReqOpenBuyingStore(int fd, struct map_session_data* sd) { // TODO: Make this check global for all variable length packets. if( packet_len < 89 ) {// minimum packet length - ShowError("clif_parse_ReqOpenBuyingStore: Malformed packet (expected length=%u, length=%u, account_id=%d).\n", 89U, packet_len, sd->bl.id); + ShowError("clif_parse_ReqOpenBuyingStore: Malformed packet (expected length=%u, length=%d, account_id=%d).\n", 89U, packet_len, sd->bl.id); return; } @@ -17030,9 +17116,12 @@ void clif_parse_ReqOpenBuyingStore(int fd, struct map_session_data* sd) { // so that buyingstore_create knows, how many elements it has access to packet_len-= info->pos[4]; + if (packet_len < 0) + return; + if( packet_len%blocksize ) { - ShowError("clif_parse_ReqOpenBuyingStore: Unexpected item list size %u (account_id=%d, block size=%u)\n", packet_len, sd->bl.id, blocksize); + ShowError("clif_parse_ReqOpenBuyingStore: Unexpected item list size %d (account_id=%d, block size=%u)\n", packet_len, sd->bl.id, blocksize); return; } count = packet_len/blocksize; @@ -17201,14 +17290,15 @@ void clif_parse_ReqTradeBuyingStore(int fd, struct map_session_data* sd) { const unsigned int blocksize = 6; const uint8 *itemlist; int account_id; - unsigned int count, packet_len, buyer_id; + unsigned int buyer_id; + int count, packet_len; struct s_packet_db* info = &packet_db[RFIFOW(fd,0)]; packet_len = RFIFOW(fd,info->pos[0]); if( packet_len < 12 ) {// minimum packet length - ShowError("clif_parse_ReqTradeBuyingStore: Malformed packet (expected length=%u, length=%u, account_id=%d).\n", 12U, packet_len, sd->bl.id); + ShowError("clif_parse_ReqTradeBuyingStore: Malformed packet (expected length=%u, length=%d, account_id=%d).\n", 12U, packet_len, sd->bl.id); return; } @@ -17218,10 +17308,12 @@ void clif_parse_ReqTradeBuyingStore(int fd, struct map_session_data* sd) { // so that buyingstore_trade knows, how many elements it has access to packet_len-= info->pos[3]; + if (packet_len < 0) + return; if( packet_len%blocksize ) { - ShowError("clif_parse_ReqTradeBuyingStore: Unexpected item list size %u (account_id=%d, buyer_id=%d, block size=%u)\n", packet_len, sd->bl.id, account_id, blocksize); + ShowError("clif_parse_ReqTradeBuyingStore: Unexpected item list size %d (account_id=%d, buyer_id=%d, block size=%u)\n", packet_len, sd->bl.id, account_id, blocksize); return; } count = packet_len/blocksize; @@ -17340,14 +17432,15 @@ void clif_parse_SearchStoreInfo(int fd, struct map_session_data* sd) { const uint8* itemlist; const uint8* cardlist; unsigned char type; - unsigned int min_price, max_price, packet_len, count, item_count, card_count; + unsigned int min_price, max_price; + int packet_len, count, item_count, card_count; struct s_packet_db* info = &packet_db[RFIFOW(fd,0)]; packet_len = RFIFOW(fd,info->pos[0]); if( packet_len < 15 ) {// minimum packet length - ShowError("clif_parse_SearchStoreInfo: Malformed packet (expected length=%u, length=%u, account_id=%d).\n", 15U, packet_len, sd->bl.id); + ShowError("clif_parse_SearchStoreInfo: Malformed packet (expected length=%u, length=%d, account_id=%d).\n", 15U, packet_len, sd->bl.id); return; } @@ -17357,24 +17450,28 @@ void clif_parse_SearchStoreInfo(int fd, struct map_session_data* sd) { item_count = RFIFOB(fd,info->pos[4]); card_count = RFIFOB(fd,info->pos[5]); itemlist = RFIFOP(fd,info->pos[6]); - cardlist = RFIFOP(fd,info->pos[6]+blocksize*item_count); // check, if there is enough data for the claimed count of items packet_len-= info->pos[6]; + if (packet_len < 0) + return; + if( packet_len%blocksize ) { - ShowError("clif_parse_SearchStoreInfo: Unexpected item list size %u (account_id=%d, block size=%u)\n", packet_len, sd->bl.id, blocksize); + ShowError("clif_parse_SearchStoreInfo: Unexpected item list size %d (account_id=%d, block size=%u)\n", packet_len, sd->bl.id, blocksize); return; } count = packet_len/blocksize; if( count < item_count+card_count ) { - ShowError("clif_parse_SearchStoreInfo: Malformed packet (expected count=%u, count=%u, account_id=%d).\n", item_count+card_count, count, sd->bl.id); + ShowError("clif_parse_SearchStoreInfo: Malformed packet (expected count=%d, count=%d, account_id=%d).\n", item_count+card_count, count, sd->bl.id); return; } + cardlist = RFIFOP(fd, info->pos[6] + blocksize * item_count); + searchstore->query(sd, type, min_price, max_price, (const unsigned short*)itemlist, item_count, (const unsigned short*)cardlist, card_count); } @@ -17994,16 +18091,30 @@ void clif_parse_CashShopSchedule(int fd, struct map_session_data *sd) #endif } +/// R 0848 <len>.W <limit>.W <kafra pay>.L (<item id>.L <amount>.L <tab>.W)* void clif_parse_CashShopBuy(int fd, struct map_session_data *sd) __attribute__((nonnull (2))); void clif_parse_CashShopBuy(int fd, struct map_session_data *sd) { - unsigned short limit = RFIFOW(fd, 4), i, j; - unsigned int kafra_pay = RFIFOL(fd, 6);// [Ryuuzaki] - These are free cash points (strangely #CASH = main cash currently for us, confusing) + int len = RFIFOW(fd, 2); + unsigned short limit, i, j; + unsigned int kafra_pay; + int count; if (map->list[sd->bl.m].flag.nocashshop) { clif->messagecolor_self(fd, COLOR_RED, msg_fd(fd,1489)); //Cash Shop is disabled in this map return; } + if (len < 10) + return; + + limit = RFIFOW(fd, 4); + kafra_pay = RFIFOL(fd, 6); // [Ryuuzaki] - These are free cash points (strangely #CASH = main cash currently for us, confusing) + count = (len - 10) / 10; + if (count != limit) { + ShowError("Wrong cash shop limit: %d\n", limit); + return; + } + for(i = 0; i < limit; i++) { int qty = RFIFOL(fd, 14 + ( i * 10 )); int id = RFIFOL(fd, 10 + ( i * 10 )); @@ -19516,7 +19627,7 @@ void clif_parse_rodex_open_write_mail(int fd, struct map_session_data *sd) __att void clif_parse_rodex_open_write_mail(int fd, struct map_session_data *sd) { const struct PACKET_CZ_REQ_OPEN_WRITE_MAIL *rPacket = RFIFOP(fd, 0); - int8 result = (rodex->isenabled() == true) ? 1 : 0; + int8 result = (rodex->isenabled() == true && sd->npc_id == 0) ? 1 : 0; clif->rodex_open_write_mail(fd, rPacket->receiveName, result); } @@ -19726,7 +19837,7 @@ void clif_rodex_send_maillist(int fd, struct map_session_data *sd, int8 open_typ continue; inner->MailID = msg->id; - inner->Isread = msg->is_read == true ? 1 : 0; + inner->Isread = (msg->is_read == true || msg->sender_read == true) ? 1 : 0; inner->type = msg->type; #if PACKETVER >= 20170419 inner->openType = msg->opentype; @@ -19758,7 +19869,7 @@ void clif_rodex_send_maillist(int fd, struct map_session_data *sd, int8 open_typ #endif } -void clif_rodex_send_mails_all(int fd, struct map_session_data *sd) +void clif_rodex_send_mails_all(int fd, struct map_session_data *sd, int64 mail_id) { #if PACKETVER >= 20170419 struct PACKET_ZC_MAIL_LIST *packet; @@ -19766,18 +19877,24 @@ void clif_rodex_send_mails_all(int fd, struct map_session_data *sd) int16 size = sizeof(*packet); int packetMailCount = 0; int mailListCount = 0; - int mailsSize = VECTOR_LENGTH(sd->rodex.messages); - int i; + int mailsSize, i; + int j = -1; nullpo_retv(sd); + mailsSize = VECTOR_LENGTH(sd->rodex.messages); + + if (mail_id > 0) + ARR_FIND(0, VECTOR_LENGTH(sd->rodex.messages), j, (VECTOR_INDEX(sd->rodex.messages, j)).id == mail_id); + WFIFOHEAD(fd, sizeof(*packet) + (sizeof(*inner) + RODEX_TITLE_LENGTH) * RODEX_MAIL_PER_PAGE); packet = WFIFOP(fd, 0); packet->PacketType = rodexmailList; inner = WFIFOP(fd, size); i = mailsSize - 1; - while (i >= 0) { + mailsSize -= (j + 1); + while (i > j) { struct rodex_message *msg = &VECTOR_INDEX(sd->rodex.messages, i); --i; @@ -19785,7 +19902,7 @@ void clif_rodex_send_mails_all(int fd, struct map_session_data *sd) continue; inner->MailID = msg->id; - inner->Isread = msg->is_read == true ? 1 : 0; + inner->Isread = (msg->is_read == true || msg->sender_read == true) ? 1 : 0; inner->type = msg->type; inner->openType = msg->opentype; inner->expireDateTime = msg->expire_date - (int)time(NULL); @@ -19852,7 +19969,7 @@ void clif_rodex_send_refresh(int fd, struct map_session_data *sd, int8 open_type continue; inner->MailID = msg->id; - inner->Isread = msg->is_read == true ? 1 : 0; + inner->Isread = (msg->is_read == true || msg->sender_read == true) ? 1 : 0; inner->type = msg->type; #if PACKETVER >= 20170419 inner->openType = msg->opentype; diff --git a/src/map/clif.h b/src/map/clif.h index 0711546df..acf79c373 100644 --- a/src/map/clif.h +++ b/src/map/clif.h @@ -1389,7 +1389,7 @@ struct clif_interface { void (*rodex_send_mail_result) (int fd, struct map_session_data *sd, int8 result); void (*rodex_send_maillist) (int fd, struct map_session_data *sd, int8 open_type, int64 page_start); void (*rodex_send_refresh) (int fd, struct map_session_data *sd, int8 open_type, int count); - void (*rodex_send_mails_all) (int fd, struct map_session_data *sd); + void (*rodex_send_mails_all) (int fd, struct map_session_data *sd, int64 mail_id); void (*pRodexReadMail) (int fd, struct map_session_data *sd); void (*rodex_read_mail) (struct map_session_data *sd, int8 opentype, struct rodex_message *msg); void (*pRodexNextMaillist) (int fd, struct map_session_data *sd); diff --git a/src/map/intif.c b/src/map/intif.c index 0e5cd3db2..f656a0df9 100644 --- a/src/map/intif.c +++ b/src/map/intif.c @@ -2516,6 +2516,9 @@ void intif_parse_RequestRodexOpenInbox(int fd) int8 is_end = RFIFOB(fd, 10); int is_first = RFIFOB(fd, 11); int count = RFIFOL(fd, 12); +#if PACKETVER >= 20170419 + int64 mail_id = RFIFOQ(fd, 16); +#endif int i, j; sd = map->charid2sd(RFIFOL(fd, 4)); @@ -2533,15 +2536,15 @@ void intif_parse_RequestRodexOpenInbox(int fd) else sd->rodex.total += count; - if (RFIFOW(fd, 2) - 16 != count * sizeof(struct rodex_message)) { - ShowError("intif_parse_RodexInboxOpenReceived: data size mismatch %d != %"PRIuS"\n", RFIFOW(fd, 2) - 16, count * sizeof(struct rodex_message)); + if (RFIFOW(fd, 2) - 24 != count * sizeof(struct rodex_message)) { + ShowError("intif_parse_RodexInboxOpenReceived: data size mismatch %d != %"PRIuS"\n", RFIFOW(fd, 2) - 24, count * sizeof(struct rodex_message)); return; } if (flag == 0 && is_first) VECTOR_CLEAR(sd->rodex.messages); - for (i = 0, j = 16; i < count; ++i, j += sizeof(struct rodex_message)) { + for (i = 0, j = 24; i < count; ++i, j += sizeof(struct rodex_message)) { struct rodex_message msg = { 0 }; VECTOR_ENSURE(sd->rodex.messages, 1, 1); memcpy(&msg, RFIFOP(fd, j), sizeof(struct rodex_message)); @@ -2550,7 +2553,7 @@ void intif_parse_RequestRodexOpenInbox(int fd) if (is_end == true) { #if PACKETVER >= 20170419 - clif->rodex_send_mails_all(sd->fd, sd); + clif->rodex_send_mails_all(sd->fd, sd, mail_id); #else if (flag == 0) clif->rodex_send_maillist(sd->fd, sd, opentype, VECTOR_LENGTH(sd->rodex.messages) - 1); @@ -2599,10 +2602,11 @@ void intif_parse_RodexNotifications(int fd) /// Updates a mail /// flag: -/// 0 - user Read +/// 0 - receiver Read /// 1 - user got Zeny /// 2 - user got Items /// 3 - delete +/// 4 - sender Read (returned mail) int intif_rodex_updatemail(int64 mail_id, int8 flag) { if (intif->CheckForCharServer()) diff --git a/src/map/packets.h b/src/map/packets.h index 4c41a7e8f..462efd31b 100644 --- a/src/map/packets.h +++ b/src/map/packets.h @@ -3995,11 +3995,15 @@ packet(0x96e,-1,clif->ackmergeitems); packet(0x0af3,-1,clif->pDull/*,XXX*/); packet(0x0af4,11,clif->pDull/*,XXX*/); // changed packet sizes - packet(0x0821,102); // AC_OTP_USER packet(0x0ae6,10,clif->pDull/*,XXX*/); #endif #endif // PACKETVER_ZERO +#if PACKETVER >= 20180131 +// changed packet sizes + packet(0x0821,102); // AC_OTP_USER +#endif + #ifdef PACKETVER_ZERO // 2018-02-07bRagexe_zero #if PACKETVER >= 20180207 @@ -4022,5 +4026,22 @@ packet(0x96e,-1,clif->ackmergeitems); #endif #endif // PACKETVER_ZERO +#ifdef PACKETVER_RE +// 2018-02-21aRagexeRE +#if PACKETVER >= 20180221 +// new packets +// changed packet sizes + packet(0x0206,35); // ZC_FRIENDS_STATE +#endif +#endif // PACKETVER_RE + +#ifndef PACKETVER_ZERO +// 2018-03-07bRagexe +#if PACKETVER >= 20180307 +// new packets +// changed packet sizes + packet(0x0206,35); // ZC_FRIENDS_STATE +#endif +#endif // PACKETVER_ZERO #endif /* MAP_PACKETS_H */ diff --git a/src/map/packets_keys_main.h b/src/map/packets_keys_main.h index 9aa39fad5..066e7d2c3 100644 --- a/src/map/packets_keys_main.h +++ b/src/map/packets_keys_main.h @@ -1949,15 +1949,32 @@ packetKeys(0x21F477F4,0x37F437F4,0x37F437F4); #endif -// 2018-01-24bRagexe, 2018-01-24bRagexeRE -#if PACKETVER == 20180124 +// 2018-01-24bRagexe, 2018-01-24bRagexeRE, 2018-01-31Ragexe +#if PACKETVER == 20180124 || \ + PACKETVER == 20180131 packetKeys(0x7EAA1CE0,0x415D1CFD,0x4C8F19FA); #endif -// 2018-02-07bRagexe, 2018-02-07bRagexeRE +// 2018-02-07bRagexe, 2018-02-07bRagexeRE, 2018-02-07cRagexe #if PACKETVER == 20180207 packetKeys(0x45AA1B44,0x20E716B7,0x5388105C); #endif +// 2018-02-13aRagexe, 2018-02-13aRagexeRE, 2018-02-13bRagexe +#if PACKETVER == 20180213 + packetKeys(0x189D69B2,0x43B85EAD,0x2B7A687E); +#endif + +// 2018-02-21aRagexeRE, 2018-02-21bRagexe, 2018-02-21bRagexeRE +#if PACKETVER == 20180221 + packetKeys(0x6E2F6233,0x193B0A66,0x0D1D2CA5); +#endif + +// 2018-03-07bRagexe, 2018-03-07bRagexeRE, 2018-03-09aRagexe +#if PACKETVER == 20180307 || \ + PACKETVER == 20180309 + packetKeys(0x47DA10EB,0x4B922CCF,0x765C5055); +#endif + #endif /* MAP_PACKETS_MAIN_KEYS_H */ diff --git a/src/map/packets_keys_zero.h b/src/map/packets_keys_zero.h index 101d0b973..75196e6b4 100644 --- a/src/map/packets_keys_zero.h +++ b/src/map/packets_keys_zero.h @@ -124,5 +124,22 @@ packetKeys(0x07CB29CB,0x69CB69CB,0x69CB69CB); #endif +// 2018-02-13aRagexe_zero +#if PACKETVER == 20180213 + packetKeys(0x0513075E,0x347075AF,0x67C56C6F); +#endif + +// 2018-02-21aRagexe_zero +#if PACKETVER == 20180221 + packetKeys(0x28ED7635,0x76591F21,0x59383498); +#endif + +// 2018-02-28bRagexe_zero, 2018-03-07aRagexe_zero, 2018-03-09aRagexe_zero +#if PACKETVER == 20180228 || \ + PACKETVER == 20180307 || \ + PACKETVER == 20180309 + packetKeys(0x56C82ABE,0x61AE2B2E,0x472E272E); +#endif + #endif /* MAP_PACKETS_ZERO_KEYS_H */ diff --git a/src/map/packets_shuffle_main.h b/src/map/packets_shuffle_main.h index 13861dd46..aabf9c3f3 100644 --- a/src/map/packets_shuffle_main.h +++ b/src/map/packets_shuffle_main.h @@ -9500,8 +9500,9 @@ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME #endif -// 2018-01-24bRagexe, 2018-01-24bRagexeRE -#if PACKETVER == 20180124 +// 2018-01-24bRagexe, 2018-01-24bRagexeRE, 2018-01-31Ragexe +#if PACKETVER == 20180124 || \ + PACKETVER == 20180131 packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX @@ -9533,7 +9534,7 @@ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME #endif -// 2018-02-07bRagexe, 2018-02-07bRagexeRE +// 2018-02-07bRagexe, 2018-02-07bRagexeRE, 2018-02-07cRagexe #if PACKETVER == 20180207 packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES packet(0x035f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE @@ -9566,5 +9567,105 @@ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME #endif +// 2018-02-13aRagexe, 2018-02-13aRagexeRE, 2018-02-13bRagexe +#if PACKETVER == 20180213 + packet(0x0369,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD + packet(0x0802,6,clif->pDropItem,2,4); // CZ_ITEM_THROW + packet(0x0817,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX + packet(0x085a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK + packet(0x086f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ + packet(0x0874,6,clif->pTickSend,2); // CZ_REQUEST_TIME + packet(0x0875,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY + packet(0x0878,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION + packet(0x087b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE + packet(0x0882,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL + packet(0x088c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO + packet(0x0892,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP + packet(0x0898,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE + packet(0x089c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK + packet(0x08a3,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER + packet(0x08a5,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE + packet(0x08a9,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE + packet(0x08ad,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID + packet(0x0917,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS + packet(0x0922,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE + packet(0x0924,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND + packet(0x0926,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD + packet(0x0933,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT + packet(0x0936,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE + packet(0x093c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME + packet(0x0943,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER + packet(0x0955,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE + packet(0x095a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES + packet(0x0962,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER +#endif + +// 2018-02-21aRagexeRE, 2018-02-21bRagexe, 2018-02-21bRagexeRE +#if PACKETVER == 20180221 + packet(0x0202,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX + packet(0x0366,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD + packet(0x0436,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS + packet(0x0838,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION + packet(0x0867,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO + packet(0x086c,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE + packet(0x086f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE + packet(0x0871,6,clif->pDropItem,2,4); // CZ_ITEM_THROW + packet(0x0876,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER + packet(0x0879,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE + packet(0x087d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE + packet(0x0880,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES + packet(0x0881,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER + packet(0x0883,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE + packet(0x088f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID + packet(0x0891,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK + packet(0x0897,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER + packet(0x0899,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE + packet(0x089d,6,clif->pTickSend,2); // CZ_REQUEST_TIME + packet(0x0917,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD + packet(0x091e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY + packet(0x0929,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE + packet(0x093d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ + packet(0x094b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL + packet(0x094d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND + packet(0x094e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP + packet(0x0957,6,clif->pGetCharNameRequest,2); // CZ_REQNAME + packet(0x0964,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK + packet(0x096a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT +#endif + +// 2018-03-07bRagexe, 2018-03-07bRagexeRE, 2018-03-09aRagexe +#if PACKETVER == 20180307 || \ + PACKETVER == 20180309 + packet(0x0281,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK + packet(0x035f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE + packet(0x0437,6,clif->pDropItem,2,4); // CZ_ITEM_THROW + packet(0x07e4,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER + packet(0x0861,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX + packet(0x0862,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE + packet(0x0864,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO + packet(0x086c,6,clif->pTickSend,2); // CZ_REQUEST_TIME + packet(0x0870,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES + packet(0x0872,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER + packet(0x0877,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE + packet(0x088d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY + packet(0x0893,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL + packet(0x089b,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK + packet(0x08a6,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE + packet(0x08aa,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS + packet(0x08ab,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION + packet(0x0917,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND + packet(0x0920,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE + packet(0x0937,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE + packet(0x0939,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD + packet(0x093d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE + packet(0x0941,6,clif->pGetCharNameRequest,2); // CZ_REQNAME + packet(0x0944,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER + packet(0x0948,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ + packet(0x0951,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD + packet(0x0954,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP + packet(0x0957,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID + packet(0x0969,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT +#endif + #endif /* MAP_PACKETS_SHUFFLE_MAIN_H */ diff --git a/src/map/packets_shuffle_zero.h b/src/map/packets_shuffle_zero.h index 38c34b18e..463ab1679 100644 --- a/src/map/packets_shuffle_zero.h +++ b/src/map/packets_shuffle_zero.h @@ -551,5 +551,106 @@ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME #endif +// 2018-02-13aRagexe_zero +#if PACKETVER == 20180213 + packet(0x022d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION + packet(0x02c4,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE + packet(0x035f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW + packet(0x0361,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX + packet(0x0802,6,clif->pTickSend,2); // CZ_REQUEST_TIME + packet(0x0815,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL + packet(0x0838,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE + packet(0x085a,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO + packet(0x085d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER + packet(0x0868,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER + packet(0x087b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME + packet(0x0882,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK + packet(0x0887,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES + packet(0x0888,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID + packet(0x088a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK + packet(0x088e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE + packet(0x0899,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS + packet(0x0917,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT + packet(0x091d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE + packet(0x0922,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE + packet(0x0930,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD + packet(0x0941,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER + packet(0x0942,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY + packet(0x0947,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP + packet(0x094d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND + packet(0x0958,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ + packet(0x095b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE + packet(0x095c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE + packet(0x0967,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD +#endif + +// 2018-02-21aRagexe_zero +#if PACKETVER == 20180221 + packet(0x02c4,6,clif->pTickSend,2); // CZ_REQUEST_TIME + packet(0x0362,6,clif->pGetCharNameRequest,2); // CZ_REQNAME + packet(0x0364,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION + packet(0x0438,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES + packet(0x0817,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO + packet(0x085b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND + packet(0x086a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD + packet(0x0878,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE + packet(0x0880,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER + packet(0x0884,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE + packet(0x088d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID + packet(0x0892,6,clif->pDropItem,2,4); // CZ_ITEM_THROW + packet(0x0895,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE + packet(0x08a1,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE + packet(0x08a3,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL + packet(0x091b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX + packet(0x0921,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE + packet(0x0923,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER + packet(0x092d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS + packet(0x0932,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE + packet(0x093b,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK + packet(0x093d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ + packet(0x093e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY + packet(0x0942,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD + packet(0x0951,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER + packet(0x0952,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK + packet(0x0958,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT + packet(0x0959,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE + packet(0x095d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP +#endif + +// 2018-02-28bRagexe_zero, 2018-03-07aRagexe_zero, 2018-03-09aRagexe_zero +#if PACKETVER == 20180228 || \ + PACKETVER == 20180307 || \ + PACKETVER == 20180309 + packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION + packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER + packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS + packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES + packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME + packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE + packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER + packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW + packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD + packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY + packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER + packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX + packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID + packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT + packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK + packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE + packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND + packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP + packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE + packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ + packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE + packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE + packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE + packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO + packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE + packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK + packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL + packet(0x0930,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD + packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME +#endif + #endif /* MAP_PACKETS_SHUFFLE_ZERO_H */ diff --git a/src/map/rodex.c b/src/map/rodex.c index d5a6064cf..0e9e4ee2a 100644 --- a/src/map/rodex.c +++ b/src/map/rodex.c @@ -231,6 +231,11 @@ int rodex_send_mail(struct map_session_data *sd, const char *receiver_name, cons nullpo_retr(RODEX_SEND_MAIL_FATAL_ERROR, body); nullpo_retr(RODEX_SEND_MAIL_FATAL_ERROR, title); + if (!rodex->isenabled() || sd->npc_id > 0) { + rodex->clean(sd, 1); + return RODEX_SEND_MAIL_FATAL_ERROR; + } + if (zeny < 0) { rodex->clean(sd, 1); return RODEX_SEND_MAIL_FATAL_ERROR; @@ -364,15 +369,24 @@ struct rodex_message *rodex_get_mail(struct map_session_data *sd, int64 mail_id) { int i; struct rodex_message *msg; + int char_id; nullpo_retr(NULL, sd); - ARR_FIND(0, VECTOR_LENGTH(sd->rodex.messages), i, VECTOR_INDEX(sd->rodex.messages, i).id == mail_id && VECTOR_INDEX(sd->rodex.messages, i).is_deleted != true); + ARR_FIND(0, VECTOR_LENGTH(sd->rodex.messages), i, VECTOR_INDEX(sd->rodex.messages, i).id == mail_id); if (i == VECTOR_LENGTH(sd->rodex.messages)) return NULL; msg = &VECTOR_INDEX(sd->rodex.messages, i); + char_id = sd->status.char_id; + + if ((msg->is_deleted == true) + || (msg->expire_date < time(NULL) && ((msg->receiver_accountid > 0) || (msg->receiver_id == char_id && msg->sender_id != char_id))) + || ((msg->send_date + 2 * RODEX_EXPIRE) < time(NULL)) + ) + return NULL; + return msg; } @@ -388,9 +402,16 @@ void rodex_read_mail(struct map_session_data *sd, int64 mail_id) msg = rodex->get_mail(sd, mail_id); nullpo_retv(msg); - if (msg->is_read == false) { - intif->rodex_updatemail(msg->id, 0); - msg->is_read = true; + if (msg->opentype == RODEX_OPENTYPE_RETURN) { + if (msg->sender_read == false) { + intif->rodex_updatemail(msg->id, 4); + msg->sender_read = true; + } + } else { + if (msg->is_read == false) { + intif->rodex_updatemail(msg->id, 0); + msg->is_read = true; + } } clif->rodex_read_mail(sd, msg->opentype, msg); @@ -440,6 +461,7 @@ void rodex_get_zeny(struct map_session_data *sd, int8 opentype, int64 mail_id) return; } + msg->type &= ~MAIL_TYPE_ZENY; msg->zeny = 0; intif->rodex_updatemail(mail_id, 1); @@ -523,6 +545,8 @@ void rodex_get_items(struct map_session_data *sd, int8 opentype, int64 mail_id) } } + msg->type &= ~MAIL_TYPE_ITEM; + msg->items_count = 0; intif->rodex_updatemail(mail_id, 2); clif->rodex_request_items(sd, opentype, mail_id, RODEX_GET_ITEMS_SUCCESS); diff --git a/src/map/unit.c b/src/map/unit.c index 938b587f3..c40aa7000 100644 --- a/src/map/unit.c +++ b/src/map/unit.c @@ -2210,6 +2210,7 @@ int unit_attack_timer_sub(struct block_list* src, int tid, int64 tick) //Non-players use the sync packet on the walk timer. [Skotlex] if (tid == INVALID_TIMER && sd) clif->fixpos(src); + map->freeblock_lock(); if( DIFF_TICK(ud->attackabletime,tick) <= 0 ) { if (battle_config.attack_direction_change && (src->type&battle_config.attack_direction_change)) { ud->dir = map->calc_dir(src, target->x,target->y ); @@ -2219,8 +2220,10 @@ int unit_attack_timer_sub(struct block_list* src, int tid, int64 tick) if(md) { //First attack is always a normal attack if(md->state.skillstate == MSS_ANGRY || md->state.skillstate == MSS_BERSERK) { - if (mob->skill_use(md,tick,-1)) + if (mob->skill_use(md,tick,-1)) { + map->freeblock_unlock(); return 1; + } } else { // Set mob's ANGRY/BERSERK states. md->state.skillstate = md->state.aggressive?MSS_ANGRY:MSS_BERSERK; @@ -2232,21 +2235,23 @@ int unit_attack_timer_sub(struct block_list* src, int tid, int64 tick) map->foreachinrange(mob->linksearch, src, md->db->range2, BL_MOB, md->class_, target, tick); } } - if (src->type == BL_PET && pet->attackskill(BL_UCAST(BL_PET, src), target->id)) + if (src->type == BL_PET && pet->attackskill(BL_UCAST(BL_PET, src), target->id)) { + map->freeblock_unlock(); return 1; + } - map->freeblock_lock(); ud->attacktarget_lv = battle->weapon_attack(src,target,tick,0); if(sd && sd->status.pet_id > 0 && sd->pd && battle_config.pet_attack_support) pet->target_check(sd,target,0); - map->freeblock_unlock(); /** * Applied when you're unable to attack (e.g. out of ammo) * We should stop here otherwise timer keeps on and this happens endlessly **/ - if( ud->attacktarget_lv == ATK_NONE ) + if (ud->attacktarget_lv == ATK_NONE) { + map->freeblock_unlock(); return 1; + } ud->attackabletime = tick + sstatus->adelay; // You can't move if you can't attack neither. @@ -2260,6 +2265,7 @@ int unit_attack_timer_sub(struct block_list* src, int tid, int64 tick) pc->update_idle_time(sd, BCIDLE_ATTACK); ud->attacktimer = timer->add(ud->attackabletime,unit->attack_timer,src->id,0); } + map->freeblock_unlock(); if (sd != NULL && battle_config.prevent_logout_trigger & PLT_ATTACK) sd->canlog_tick = timer->gettick(); diff --git a/src/plugins/HPMHooking/HPMHooking.Defs.inc b/src/plugins/HPMHooking/HPMHooking.Defs.inc index 822faa0cd..bd17dc7fe 100644 --- a/src/plugins/HPMHooking/HPMHooking.Defs.inc +++ b/src/plugins/HPMHooking/HPMHooking.Defs.inc @@ -2358,8 +2358,8 @@ typedef void (*HPMHOOK_pre_clif_rodex_send_maillist) (int *fd, struct map_sessio typedef void (*HPMHOOK_post_clif_rodex_send_maillist) (int fd, struct map_session_data *sd, int8 open_type, int64 page_start); typedef void (*HPMHOOK_pre_clif_rodex_send_refresh) (int *fd, struct map_session_data **sd, int8 *open_type, int *count); typedef void (*HPMHOOK_post_clif_rodex_send_refresh) (int fd, struct map_session_data *sd, int8 open_type, int count); -typedef void (*HPMHOOK_pre_clif_rodex_send_mails_all) (int *fd, struct map_session_data **sd); -typedef void (*HPMHOOK_post_clif_rodex_send_mails_all) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_rodex_send_mails_all) (int *fd, struct map_session_data **sd, int64 *mail_id); +typedef void (*HPMHOOK_post_clif_rodex_send_mails_all) (int fd, struct map_session_data *sd, int64 mail_id); typedef void (*HPMHOOK_pre_clif_pRodexReadMail) (int *fd, struct map_session_data **sd); typedef void (*HPMHOOK_post_clif_pRodexReadMail) (int fd, struct map_session_data *sd); typedef void (*HPMHOOK_pre_clif_rodex_read_mail) (struct map_session_data **sd, int8 *opentype, struct rodex_message **msg); @@ -4662,8 +4662,8 @@ typedef int (*HPMHOOK_pre_mapif_parse_quest_load) (int *fd); typedef int (*HPMHOOK_post_mapif_parse_quest_load) (int retVal___, int fd); typedef int (*HPMHOOK_pre_mapif_parse_rodex_requestinbox) (int *fd); typedef int (*HPMHOOK_post_mapif_parse_rodex_requestinbox) (int retVal___, int fd); -typedef void (*HPMHOOK_pre_mapif_rodex_sendinbox) (int *fd, int *char_id, int8 *opentype, int8 *flag, int *count, struct rodex_maillist **mails); -typedef void (*HPMHOOK_post_mapif_rodex_sendinbox) (int fd, int char_id, int8 opentype, int8 flag, int count, struct rodex_maillist *mails); +typedef void (*HPMHOOK_pre_mapif_rodex_sendinbox) (int *fd, int *char_id, int8 *opentype, int8 *flag, int *count, int64 *mail_id, struct rodex_maillist **mails); +typedef void (*HPMHOOK_post_mapif_rodex_sendinbox) (int fd, int char_id, int8 opentype, int8 flag, int count, int64 mail_id, struct rodex_maillist *mails); typedef int (*HPMHOOK_pre_mapif_parse_rodex_checkhasnew) (int *fd); typedef int (*HPMHOOK_post_mapif_parse_rodex_checkhasnew) (int retVal___, int fd); typedef void (*HPMHOOK_pre_mapif_rodex_sendhasnew) (int *fd, int *char_id, bool *has_new); diff --git a/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc index cfd6caee1..6ea10f78f 100644 --- a/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc +++ b/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc @@ -14647,14 +14647,14 @@ int HP_mapif_parse_rodex_requestinbox(int fd) { } return retVal___; } -void HP_mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int count, struct rodex_maillist *mails) { +void HP_mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int count, int64 mail_id, struct rodex_maillist *mails) { int hIndex = 0; if (HPMHooks.count.HP_mapif_rodex_sendinbox_pre > 0) { - void (*preHookFunc) (int *fd, int *char_id, int8 *opentype, int8 *flag, int *count, struct rodex_maillist **mails); + void (*preHookFunc) (int *fd, int *char_id, int8 *opentype, int8 *flag, int *count, int64 *mail_id, struct rodex_maillist **mails); *HPMforce_return = false; for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_rodex_sendinbox_pre; hIndex++) { preHookFunc = HPMHooks.list.HP_mapif_rodex_sendinbox_pre[hIndex].func; - preHookFunc(&fd, &char_id, &opentype, &flag, &count, &mails); + preHookFunc(&fd, &char_id, &opentype, &flag, &count, &mail_id, &mails); } if (*HPMforce_return) { *HPMforce_return = false; @@ -14662,13 +14662,13 @@ void HP_mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int } } { - HPMHooks.source.mapif.rodex_sendinbox(fd, char_id, opentype, flag, count, mails); + HPMHooks.source.mapif.rodex_sendinbox(fd, char_id, opentype, flag, count, mail_id, mails); } if (HPMHooks.count.HP_mapif_rodex_sendinbox_post > 0) { - void (*postHookFunc) (int fd, int char_id, int8 opentype, int8 flag, int count, struct rodex_maillist *mails); + void (*postHookFunc) (int fd, int char_id, int8 opentype, int8 flag, int count, int64 mail_id, struct rodex_maillist *mails); for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_rodex_sendinbox_post; hIndex++) { postHookFunc = HPMHooks.list.HP_mapif_rodex_sendinbox_post[hIndex].func; - postHookFunc(fd, char_id, opentype, flag, count, mails); + postHookFunc(fd, char_id, opentype, flag, count, mail_id, mails); } } return; diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc index f42f8fc1c..2e20ab157 100644 --- a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc +++ b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc @@ -25420,14 +25420,14 @@ void HP_clif_rodex_send_refresh(int fd, struct map_session_data *sd, int8 open_t } return; } -void HP_clif_rodex_send_mails_all(int fd, struct map_session_data *sd) { +void HP_clif_rodex_send_mails_all(int fd, struct map_session_data *sd, int64 mail_id) { int hIndex = 0; if (HPMHooks.count.HP_clif_rodex_send_mails_all_pre > 0) { - void (*preHookFunc) (int *fd, struct map_session_data **sd); + void (*preHookFunc) (int *fd, struct map_session_data **sd, int64 *mail_id); *HPMforce_return = false; for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_send_mails_all_pre; hIndex++) { preHookFunc = HPMHooks.list.HP_clif_rodex_send_mails_all_pre[hIndex].func; - preHookFunc(&fd, &sd); + preHookFunc(&fd, &sd, &mail_id); } if (*HPMforce_return) { *HPMforce_return = false; @@ -25435,13 +25435,13 @@ void HP_clif_rodex_send_mails_all(int fd, struct map_session_data *sd) { } } { - HPMHooks.source.clif.rodex_send_mails_all(fd, sd); + HPMHooks.source.clif.rodex_send_mails_all(fd, sd, mail_id); } if (HPMHooks.count.HP_clif_rodex_send_mails_all_post > 0) { - void (*postHookFunc) (int fd, struct map_session_data *sd); + void (*postHookFunc) (int fd, struct map_session_data *sd, int64 mail_id); for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_send_mails_all_post; hIndex++) { postHookFunc = HPMHooks.list.HP_clif_rodex_send_mails_all_post[hIndex].func; - postHookFunc(fd, sd); + postHookFunc(fd, sd, mail_id); } } return; diff --git a/src/plugins/mapcache.c b/src/plugins/mapcache.c index f1dab97c1..5e44492f6 100644 --- a/src/plugins/mapcache.c +++ b/src/plugins/mapcache.c @@ -341,6 +341,100 @@ bool mapcache_rebuild(void) return true; } +bool fix_md5_truncation_sub(FILE *fp, const char *map_name) +{ + unsigned int file_size; + struct map_cache_header mheader = { 0 }; + uint8 *buf = NULL; + + nullpo_retr(false, fp); + nullpo_retr(false, map_name); + + fseek(fp, 0, SEEK_END); + file_size = (unsigned int)ftell(fp); + fseek(fp, 0, SEEK_SET); // Rewind file pointer before passing it to the read function. + + if (file_size <= sizeof(mheader) || fread(&mheader, sizeof(mheader), 1, fp) < 1) { + ShowError("fix_md5_truncation: Failed to read cache header for map '%s'.\n", map_name); + return false; + } + + if (mheader.len <= 0) { + ShowError("fix_md5_truncation: A file with negative or zero compressed length passed '%d'.\n", mheader.len); + return false; + } + + if (file_size < sizeof(mheader) + mheader.len) { + ShowError("fix_md5_truncation: An incomplete file passed for map '%s'.\n", map_name); + return false; + } + + CREATE(buf, uint8, mheader.len); + if (fread(buf, mheader.len, 1, fp) < 1) { + ShowError("fix_md5_truncation: Could not load the compressed cell data for map '%s'.\n", map_name); + aFree(buf); + return false; + } + + md5->binary(buf, mheader.len, mheader.md5_checksum); + aFree(buf); + + fseek(fp, 0, SEEK_SET); + fwrite(&mheader, sizeof(mheader), 1, fp); + fclose(fp); + + return true; +} + +bool fix_md5_truncation(void) +{ + int i; + bool retval = true; + + if (mapcache_read_maplist("db/map_index.txt") == false) { + ShowError("mapcache_rebuild: Could not read maplist, aborting\n"); + return false; + } + + for (i = 0; i < VECTOR_LENGTH(maplist); ++i) { + const char *map_name = VECTOR_INDEX(maplist, i); + char file_path[255]; + FILE *fp = NULL; + int16 version; + + snprintf(file_path, sizeof(file_path), "%s%s%s.%s", "maps/", DBPATH, map_name, "mcache"); + + fp = fopen(file_path, "r+b"); + + if (fp == NULL) { + ShowWarning("fix_md5_truncation: Could not open the mapcache file for map '%s' at path '%s'.\n", map_name, file_path); + retval = false; + continue; + } + + if (fread(&version, sizeof(version), 1, fp) < 1) { + ShowError("fix_md5_truncation: Could not read file version for map '%s'.\n", map_name); + fclose(fp); + retval = false; + continue; + } + + if (version != 1) { + ShowError("fix_md5_truncation: Mapcache for map '%s' has version %d. The update is only applied to version 1.\n", map_name, version); + fclose(fp); + continue; + } + + ShowStatus("Updating mapcache: %s'\n", map_name); + if (!fix_md5_truncation_sub(fp, map_name)) + retval = false; + + fclose(fp); + } + + return retval; +} + CMDLINEARG(convertmapcache) { map->minimal = true; @@ -363,6 +457,12 @@ CMDLINEARG(cachemap) return mapcache_cache_map(params); } +CMDLINEARG(fixmd5) +{ + map->minimal = true; + return fix_md5_truncation(); +} + HPExport void server_preinit(void) { addArg("--convert-old-mapcache", false, convertmapcache, @@ -371,6 +471,8 @@ HPExport void server_preinit(void) "Rebuilds the entire mapcache folder (maps/"DBPATH"), using db/map_index.txt as index."); addArg("--map", true, cachemap, "Rebuilds an individual map's cache into maps/"DBPATH" (usage: --map <map_name_without_extension>)."); + addArg("--fix-md5", false, fixmd5, + "Updates the checksum for the files in maps/"DBPATH", using db/map_index.txt as index (see PR #1981)."); needs_grfio = false; VECTOR_INIT(maplist); @@ -378,6 +480,10 @@ HPExport void server_preinit(void) HPExport void plugin_final(void) { + while (VECTOR_LENGTH(maplist) > 0) { + char *name = VECTOR_POP(maplist); + aFree(name); + } VECTOR_CLEAR(maplist); if (needs_grfio) grfio->final(); diff --git a/vcproj-11/map-server.vcxproj b/vcproj-11/map-server.vcxproj index 21cae3626..9909b31d8 100644 --- a/vcproj-11/map-server.vcxproj +++ b/vcproj-11/map-server.vcxproj @@ -196,6 +196,10 @@ <ClInclude Include="..\src\map\mob.h" /> <ClInclude Include="..\src\map\npc.h" /> <ClInclude Include="..\src\map\packets.h" /> + <ClInclude Include="..\src\map\packets_keys_main.h" /> + <ClInclude Include="..\src\map\packets_keys_zero.h" /> + <ClInclude Include="..\src\map\packets_shuffle_main.h" /> + <ClInclude Include="..\src\map\packets_shuffle_zero.h" /> <ClInclude Include="..\src\map\packets_struct.h" /> <ClInclude Include="..\src\map\party.h" /> <ClInclude Include="..\src\map\path.h" /> diff --git a/vcproj-11/map-server.vcxproj.filters b/vcproj-11/map-server.vcxproj.filters index 68117eebb..c8aaffc5d 100644 --- a/vcproj-11/map-server.vcxproj.filters +++ b/vcproj-11/map-server.vcxproj.filters @@ -291,6 +291,18 @@ <ClInclude Include="..\src\map\packets.h"> <Filter>map</Filter> </ClInclude> + <ClInclude Include="..\src\map\packets_keys_main.h"> + <Filter>map</Filter> + </ClInclude> + <ClInclude Include="..\src\map\packets_keys_zero.h"> + <Filter>map</Filter> + </ClInclude> + <ClInclude Include="..\src\map\packets_shuffle_main.h"> + <Filter>map</Filter> + </ClInclude> + <ClInclude Include="..\src\map\packets_shuffle_zero.h"> + <Filter>map</Filter> + </ClInclude> <ClInclude Include="..\src\map\packets_struct.h"> <Filter>map</Filter> </ClInclude> diff --git a/vcproj-12/map-server.vcxproj b/vcproj-12/map-server.vcxproj index 64219657f..e9196c5df 100644 --- a/vcproj-12/map-server.vcxproj +++ b/vcproj-12/map-server.vcxproj @@ -196,6 +196,10 @@ <ClInclude Include="..\src\map\mob.h" /> <ClInclude Include="..\src\map\npc.h" /> <ClInclude Include="..\src\map\packets.h" /> + <ClInclude Include="..\src\map\packets_keys_main.h" /> + <ClInclude Include="..\src\map\packets_keys_zero.h" /> + <ClInclude Include="..\src\map\packets_shuffle_main.h" /> + <ClInclude Include="..\src\map\packets_shuffle_zero.h" /> <ClInclude Include="..\src\map\packets_struct.h" /> <ClInclude Include="..\src\map\party.h" /> <ClInclude Include="..\src\map\path.h" /> diff --git a/vcproj-12/map-server.vcxproj.filters b/vcproj-12/map-server.vcxproj.filters index 68117eebb..c8aaffc5d 100644 --- a/vcproj-12/map-server.vcxproj.filters +++ b/vcproj-12/map-server.vcxproj.filters @@ -291,6 +291,18 @@ <ClInclude Include="..\src\map\packets.h"> <Filter>map</Filter> </ClInclude> + <ClInclude Include="..\src\map\packets_keys_main.h"> + <Filter>map</Filter> + </ClInclude> + <ClInclude Include="..\src\map\packets_keys_zero.h"> + <Filter>map</Filter> + </ClInclude> + <ClInclude Include="..\src\map\packets_shuffle_main.h"> + <Filter>map</Filter> + </ClInclude> + <ClInclude Include="..\src\map\packets_shuffle_zero.h"> + <Filter>map</Filter> + </ClInclude> <ClInclude Include="..\src\map\packets_struct.h"> <Filter>map</Filter> </ClInclude> diff --git a/vcproj-14/map-server.vcxproj b/vcproj-14/map-server.vcxproj index 1c34a82fe..ccc80d15d 100644 --- a/vcproj-14/map-server.vcxproj +++ b/vcproj-14/map-server.vcxproj @@ -194,6 +194,10 @@ <ClInclude Include="..\src\map\mob.h" /> <ClInclude Include="..\src\map\npc.h" /> <ClInclude Include="..\src\map\packets.h" /> + <ClInclude Include="..\src\map\packets_keys_main.h" /> + <ClInclude Include="..\src\map\packets_keys_zero.h" /> + <ClInclude Include="..\src\map\packets_shuffle_main.h" /> + <ClInclude Include="..\src\map\packets_shuffle_zero.h" /> <ClInclude Include="..\src\map\packets_struct.h" /> <ClInclude Include="..\src\map\party.h" /> <ClInclude Include="..\src\map\path.h" /> diff --git a/vcproj-14/map-server.vcxproj.filters b/vcproj-14/map-server.vcxproj.filters index a920fc48b..bf3004a77 100644 --- a/vcproj-14/map-server.vcxproj.filters +++ b/vcproj-14/map-server.vcxproj.filters @@ -288,6 +288,18 @@ <ClInclude Include="..\src\map\packets.h"> <Filter>map</Filter> </ClInclude> + <ClInclude Include="..\src\map\packets_keys_main.h"> + <Filter>map</Filter> + </ClInclude> + <ClInclude Include="..\src\map\packets_keys_zero.h"> + <Filter>map</Filter> + </ClInclude> + <ClInclude Include="..\src\map\packets_shuffle_main.h"> + <Filter>map</Filter> + </ClInclude> + <ClInclude Include="..\src\map\packets_shuffle_zero.h"> + <Filter>map</Filter> + </ClInclude> <ClInclude Include="..\src\map\packets_struct.h"> <Filter>map</Filter> </ClInclude> |