diff options
-rw-r--r-- | npc/001-1/eventmaster.txt | 465 |
1 files changed, 115 insertions, 350 deletions
diff --git a/npc/001-1/eventmaster.txt b/npc/001-1/eventmaster.txt index f4d422ba6..1ef46a41d 100644 --- a/npc/001-1/eventmaster.txt +++ b/npc/001-1/eventmaster.txt @@ -97,10 +97,12 @@ L_Spawn: menu "Abort", L_Menu, "Presets", L_Preset, - "Normal", L_Norm, - "Slime", L_Sli, + "Normal (Lv <50)", L_Norm, + "Normal (Lv >50)", L_Norm2, "Plants", L_Plants, + "Looters", L_Sli, "Aggressive", L_Agr, + //"Assistants", L_Ass, "GM Event Only", L_EventOnly, "Boss", L_Boss; @@ -224,147 +226,31 @@ L_Preset: goto L_Preset; L_Norm: - select - "Abort", // 1 - "Alpha Mouboo", // 2 - "Bat", // 3 - "Bee", // 4 - "Blub", // 5 - "Candor Scorpion", // 6 - "Cave Snake", // 7 - "Crafty", // 8 - "Croc", // 9 - "Desert Loghead", // 10 - "Desert Maggot", // 11 - "Duck", // 12 - "Fire Goblin", // 13 - "Fluffy", // 14 - "Forest Mushroom", // 15 - "Little Blub", // 16 - "Giant Maggot", // 17 - "Golden Scorpion", // 18 - "Iced Fluffy", // 19 - "LogHead", // 20 - "Maggot", // 21 - "Magic Goblin", // 22 - "Mana Bug", // 23 - "Mana Ghost", // 24 - "Moggun", // 25 - "Mouboo", // 26 - "Ocean Croc", // 27 - "Pinkie", // 28 - "Piou", // 29 - "Piousse", // 30 - "Poison Spiky Mushroom", // 31 - "Ratto", // 32 - "Red Butterfly", // 33 - "Red Mushroom", // 34 - "Red Scorpion", // 35 - "Scorpion", // 36 - "Silk Worm", // 37 - "Squirrel", // 38 - "Tipiou", // 39 - "Toppy Blub", // 40 - "Centaur", // 41 - "Mana Piou", // 42 - "Tortuga";//default + // option preparatives + .@opt$="Abort"; + debugmes "Found %d entries", getarraysize(.ML_Lv50); + for (.@i=0;.@i < getarraysize(.ML_Lv50);.@i++) { + .@opt$+=":"+strmobinfo(1, .ML_Lv50[.@i]); + // .ML_Lv50[.@i]); + } + select .@opt$; + // Select handler if (@menu != 1) input .@c, 0, 100; if (.@c == 0 && @menu != 1) @menu=99; + if (@menu == 1) + goto L_Spawn; + if (@menu == 99) + goto L_Norm; - switch (@menu) { - case 1: - goto L_Spawn; - break; - case 2: - spawner(("AlphaMouboo"), AlphaMouboo, .@c); break; - case 3: - spawner(("Bat"), Bat, .@c); break; - case 4: - spawner(("Bee"), Bee, .@c); break; - case 5: - spawner(("Blub"), Blub, .@c); break; - case 6: - spawner(("CandorScorpion"), CandorScorpion, .@c); break; - case 7: - spawner(("CaveSnake"), CaveSnake, .@c); break; - case 8: - spawner(("Crafty"), Crafty, .@c); break; - case 9: - spawner(("Croc"), Croc, .@c); break; - case 10: - spawner(("DesertLoghead"), DesertLogHead, .@c); break; - case 11: - spawner(("DesertMaggot"), DesertMaggot, .@c); break; - case 12: - spawner(("Duck"), Duck, .@c); break; - case 13: - spawner(("FireGoblin"), FireGoblin, .@c); break; - case 14: - spawner(("Fluffy"), Fluffy, .@c); break; - case 15: - spawner(("ForestMushroom"), ForestMushroom, .@c); break; - case 16: - spawner(("LittleBlub"), LittleBlub, .@c); break; - case 17: - spawner(("GiantMaggot"), GiantMaggot, .@c); break; - case 18: - spawner(("GoldenScorpion"), GoldenScorpion, .@c); break; - case 19: - spawner(("IcedFluffy"), IcedFluffy, .@c); break; - case 20: - spawner(("LogHead"), LogHead, .@c); break; - case 21: - spawner(("Maggot"), Maggot, .@c); break; - case 22: - spawner(("MagicGoblin"), MagicGoblin, .@c); break; - case 23: - spawner(("ManaBug"), ManaBug, .@c); break; - case 24: - spawner(("ManaGhost"), ManaGhost, .@c); break; - case 25: - spawner(("Moggun"), Moggun, .@c); break; - case 26: - spawner(("Mouboo"), Mouboo, .@c); break; - case 27: - spawner(("OceanCroc"), OceanCroc, .@c); break; - case 28: - spawner(("Pinkie"), Pinkie, .@c); break; - case 29: - spawner(("Piou"), Piou, .@c); break; - case 30: - spawner(("Piousse"), Piousse, .@c); break; - case 31: - spawner(("PoisonSpikyMushroom"), PoisonSpikyMushroom, .@c); break; - case 32: - spawner(("Ratto"), Ratto, .@c); break; - case 33: - spawner(("RedButterfly"), RedButterfly, .@c); break; - case 34: - spawner(("RedMushroom"), RedMushroom, .@c); break; - case 35: - spawner(("RedScorpion"), RedScorpion, .@c); break; - case 36: - spawner(("Scorpion"), Scorpion, .@c); break; - case 37: - spawner(("SilkWorm"), SilkWorm, .@c); break; - case 38: - spawner(("Squirrel"), Squirrel, .@c); break; - case 39: - spawner(("Tipiou"), Tipiou, .@c); break; - case 40: - spawner(("ToppyBlub"), ToppyBlub, .@c); break; - case 41: - spawner(("Centaur"), Centaur, .@c); break; - case 42: - spawner(("ManaPiou"), ManaPiou, .@c); break; - default: - spawner(("Tortuga"), Tortuga, .@c); break; - } + // Spawn if needed + .@i=@menu-2; + spawner(("NORMAL 1 Monster"), .ML_Lv50[.@i], .@c); + // Log the spawn and resume @log_spawns=@log_spawns+.@c; mes ""; mes "Completed."; @@ -372,62 +258,65 @@ L_Norm: next; goto L_Norm; -L_Sli: - select - "Abort", // 1 - "Azul Slime", // 2 - "Blue Slime", // 3 - "Candied Slime", // 4 - "Copper Slime", // 5 - "Green Slime", // 6 - "Lava Slime", // 7 - "Rudolph Slime", // 8 - "Red Slime", // 9 - "Santa Slime", // 10 - "Sea Slime", // 11 - "Slime Blast", // 12 - "White Slime", // 13 - "Yellow Slime"; // 14 +L_Norm2: + // option preparatives + .@opt$="Abort"; + debugmes "Found %d entries", getarraysize(.ML_Lv99); + for (.@i=0;.@i < getarraysize(.ML_Lv99);.@i++) { + .@opt$+=":"+strmobinfo(1, .ML_Lv99[.@i]); + // .ML_Lv99[.@i]); + } + select .@opt$; + // Select handler if (@menu != 1) input .@c, 0, 100; if (.@c == 0 && @menu != 1) @menu=99; + if (@menu == 1) + goto L_Spawn; + if (@menu == 99) + goto L_Norm2; - switch (@menu) { - case 1: - goto L_Spawn; - break; - case 2: - spawner(("AzulSlime"), AzulSlime, .@c); break; - case 3: - spawner(("BlueSlime"), BlueSlime, .@c); break; - case 4: - spawner(("CandiedSlime"), CandiedSlime, .@c); break; - case 5: - spawner(("CopperSlime"), CopperSlime, .@c); break; - case 6: - spawner(("GreenSlime"), GreenSlime, .@c); break; - case 7: - spawner(("LavaSlime"), LavaSlime, .@c); break; - case 8: - spawner(("RudolphSlime"), RudolphSlime, .@c); break; - case 9: - spawner(("RedSlime"), RedSlime, .@c); break; - case 10: - spawner(("SantaSlime"), SantaSlime, .@c); break; - case 11: - spawner(("SeaSlime"), SeaSlime, .@c); break; - case 12: - spawner(("SlimeBlast"), SlimeBlast, .@c); break; - case 13: - spawner(("WhiteSlime"), WhiteSlime, .@c); break; - case 14: - spawner(("YellowSlime"), YellowSlime, .@c); break; + // Spawn if needed + .@i=@menu-2; + spawner(("NORMAL 2 Monster"), .ML_Lv99[.@i], .@c); - } + // Log the spawn and resume + @log_spawns=@log_spawns+.@c; + mes ""; + mes "Completed."; + mes "Total spawns: "+str(@log_spawns); + next; + goto L_Norm2; +L_Sli: + // option preparatives + .@opt$="Abort"; + debugmes "Found %d entries", getarraysize(.ML_Loot); + for (.@i=0;.@i < getarraysize(.ML_Loot);.@i++) { + .@opt$+=":"+strmobinfo(1, .ML_Loot[.@i]); + // .ML_Loot[.@i]); + } + select .@opt$; + + // Select handler + if (@menu != 1) + input .@c, 0, 100; + if (.@c == 0 && @menu != 1) + @menu=99; + + if (@menu == 1) + goto L_Spawn; + if (@menu == 99) + goto L_Sli; + + // Spawn if needed + .@i=@menu-2; + spawner(("LOOTER Monster"), .ML_Loot[.@i], .@c); + + // Log the spawn and resume @log_spawns=@log_spawns+.@c; mes ""; mes "Completed."; @@ -437,100 +326,31 @@ L_Sli: L_Plants: - select - "Abort", // 1 - "Chagashroom Field", // 2 - "Clover Patch", // 3 - "Cobalt Plant", // 4 - "Dummy", // 5 - "Gamboge Plant", // 6 - "Manana Tree", // 7 - "Mauve Plant", // 8 - "Plushroom Field", // 9 - "Small Ruby Bif", // 10 - "Small Topaz Bif", // 11 - "Small Emerald Bif", // 12 - "Small Diamond Bif", // 13 - "Small Amethyst Bif", // 14 - "Small Sapphire Bif", // 15 - "Ruby Bif", // 16 - "Topaz Bif", // 17 - "Emerald Bif", // 18 - "Diamond Bif", // 19 - "Amethyst Bif", // 20 - "Sapphire Bif", // 21 - "Big Ruby Bif", // 22 - "Big Topaz Bif", // 23 - "Big Emerald Bif", // 24 - "Big Diamond Bif", // 25 - "Big Amethyst Bif", // 26 - "Big Sapphire Bif"; // 27 + // option preparatives + .@opt$="Abort"; + debugmes "Found %d entries", getarraysize(.ML_Plants); + for (.@i=0;.@i < getarraysize(.ML_Plants);.@i++) { + .@opt$+=":"+strmobinfo(1, .ML_Plants[.@i]); + // .ML_Plants[.@i]); + } + select .@opt$; + // Select handler if (@menu != 1) input .@c, 0, 100; if (.@c == 0 && @menu != 1) @menu=99; + if (@menu == 1) + goto L_Spawn; + if (@menu == 99) + goto L_Plants; - switch (@menu) { - case 1: - goto L_Spawn; - break; - case 2: - spawner(("ChagashroomField"), ChagashroomField, .@c); break; - case 3: - spawner(("CloverPatch"), CloverPatch, .@c); break; - case 4: - spawner(("CobaltPlant"), CobaltPlant, .@c); break; - case 5: - spawner(("Dummy"), Dummy, .@c); break; - case 6: - spawner(("GambogePlant"), GambogePlant, .@c); break; - case 7: - spawner(("MananaTree"), MananaTree, .@c); break; - case 8: - spawner(("MauvePlant"), MauvePlant, .@c); break; - case 9: - spawner(("PlushroomField"), PlushroomField, .@c); break; - case 10: - spawner(("SmallRubyBif"), SmallRubyBif, .@c); break; - case 11: - spawner(("SmallTopazBif"), SmallTopazBif, .@c); break; - case 12: - spawner(("SmallEmeraldBif"), SmallEmeraldBif, .@c); break; - case 13: - spawner(("SmallDiamondBif"), SmallDiamondBif, .@c); break; - case 14: - spawner(("SmallAmethystBif"), SmallAmethystBif, .@c); break; - case 15: - spawner(("SmallSapphireBif"), SmallSapphireBif, .@c); break; - case 16: - spawner(("RubyBif"), RubyBif, .@c); break; - case 17: - spawner(("TopazBif"), TopazBif, .@c); break; - case 18: - spawner(("EmeraldBif"), EmeraldBif, .@c); break; - case 19: - spawner(("DiamondBif"), DiamondBif, .@c); break; - case 20: - spawner(("AmethystBif"), AmethystBif, .@c); break; - case 21: - spawner(("SapphireBif"), SapphireBif, .@c); break; - case 22: - spawner(("BigRubyBif"), BigRubyBif, .@c); break; - case 23: - spawner(("BigTopazBif"), BigTopazBif, .@c); break; - case 24: - spawner(("BigEmeraldBif"), BigEmeraldBif, .@c); break; - case 25: - spawner(("BigDiamondBif"), BigDiamondBif, .@c); break; - case 26: - spawner(("BigAmethystBif"), BigAmethystBif, .@c); break; - case 27: - spawner(("BigSapphireBif"), BigSapphireBif, .@c); break; - - } + // Spawn if needed + .@i=@menu-2; + spawner(("PLANT Monster"), .ML_Plants[.@i], .@c); + // Log the spawn and resume @log_spawns=@log_spawns+.@c; mes ""; mes "Completed."; @@ -540,92 +360,31 @@ L_Plants: L_Agr: - select - "Abort", // 1 - "Angry Red Scorpion", // 2 - "Angry Scorpion", // 3 - "Bandit", // 4 - "Black Scorpion", // 5 - "Cave Maggot", // 6 - "Robin Bandit", // 7 - "Dark Lizard", // 8 - "Desert Bandit", // 9 - "Frista Guard", // 10 - "Forain", // 11 - "Halin Guard", // 12 - "House Maggot", // 13 - "Magic Goblin", // 14 - "Mountain Snake", // 15 - "Ocean Pirate", // 16 - "Sarracenus", // 17 - "Skeleton", // 18 - "Snake", // 19 - "Tipiu", // 20 - "Vampire Bat", // 21 - "Wolvern", // 22 - "Terranite", // 23 - "Yeti"; // Default - + // option preparatives + .@opt$="Abort"; + debugmes "Found %d entries", getarraysize(.ML_Aggr); + for (.@i=0;.@i < getarraysize(.ML_Aggr);.@i++) { + .@opt$+=":"+strmobinfo(1, .ML_Aggr[.@i]); + // .ML_Aggr[.@i]); + } + select .@opt$; + // Select handler if (@menu != 1) input .@c, 0, 100; if (.@c == 0 && @menu != 1) @menu=99; + if (@menu == 1) + goto L_Spawn; + if (@menu == 99) + goto L_Agr; - switch (@menu) { - case 1: - goto L_Spawn; - break; - case 2: - spawner(("AngryRedScorpion"), AngryRedScorpion, .@c); break; - case 3: - spawner(("AngryScorpion"), AngryScorpion, .@c); break; - case 4: - spawner(("Bandit"), Bandit, .@c); break; - case 5: - spawner(("BlackScorpion"), BlackScorpion, .@c); break; - case 6: - spawner(("CaveMaggot"), CaveMaggot, .@c); break; - case 7: - spawner(("RobinBandit"), RobinBandit, .@c); break; - case 8: - spawner(("DarkLizard"), DarkLizard, .@c); break; - case 9: - spawner(("DesertBandit"), DesertBandit, .@c); break; - case 10: - spawner(("Frostia Guard"), FallenGuard1, .@c); break; - case 11: - spawner(("Forain"), Forain, .@c); break; - case 12: - spawner(("Halin Guard"), FallenGuard2, .@c); break; - case 13: - spawner(("HouseMaggot"), HouseMaggot, .@c); break; - case 14: - spawner(("MagicGoblin"), MagicGoblin, .@c); break; - case 15: - spawner(("MountainSnake"), MountainSnake, .@c); break; - case 16: - spawner(("OceanPirate"), OceanPirate, .@c); break; - case 17: - spawner(("Sarracenus"), Sarracenus, .@c); break; - case 18: - spawner(("Skeleton"), Skeleton, .@c); break; - case 19: - spawner(("Snake"), Snake, .@c); break; - case 20: - spawner(("Tipiu"), Tipiu, .@c); break; - case 21: - spawner(("VampireBat"), VampireBat, .@c); break; - case 22: - spawner(("Wolvern"), Wolvern, .@c); break; - case 23: - spawner(("Terranite"), Terranite, .@c); break; - default: - spawner(("Yeti"), Yeti, .@c); break; - - } + // Spawn if needed + .@i=@menu-2; + spawner(("AGGRESSIVE Monster"), .ML_Aggr[.@i], .@c); + // Log the spawn and resume @log_spawns=@log_spawns+.@c; mes ""; mes "Completed."; @@ -725,7 +484,7 @@ L_Boss: debugmes "Found %d entries", getarraysize(.ML_Boss); for (.@i=0;.@i < getarraysize(.ML_Boss);.@i++) { .@opt$+=":"+strmobinfo(1, .ML_Boss[.@i]); - debugmes "Found monster: "+strmobinfo(1, .ML_Boss[.@i]); + // .ML_Boss[.@i]); } select .@opt$; @@ -861,9 +620,15 @@ OnInit: $coinsrate=400; // Default value is 4% + mob str bonus // Monster lists - setarray .ML_Boss, - GiantMutatedBat, MurdererScorpion, NightScorpion, SaxsoGhost, BanditLord, - FafiDragon, PsiConscience, TerraniteKing, Yetifly, YetiKing; + // These arrays are filled automatically by redesign.py + // DO NOT EDIT MANUALLY + setarray .ML_Plants, 1021, 1058, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1134, 1135, 1136, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1156, 1157, 1170, 1188, 1189; + setarray .ML_Boss, 1015, 1036, 1040, 1044, 1076, 1077, 1079, 1080, 1087, 1129, 1154, 1179, 1200, 1205, 1209, 1211, 1213, 1221; + setarray .ML_Aggr, 1024, 1027, 1037, 1042, 1051, 1052, 1056, 1061, 1063, 1064, 1074, 1081, 1082, 1084, 1085, 1089, 1090, 1092, 1097, 1120, 1122, 1123, 1124, 1125, 1130, 1131, 1137, 1138, 1153, 1167, 1168, 1169, 1174, 1176, 1177, 1178, 1187, 1192, 1193, 1194, 1195, 1196, 1198, 1199, 1203, 1206, 1207, 1208, 1212, 1214, 1220; + setarray .ML_Asst, 1003, 1007, 1016, 1023, 1056, 1065, 1066, 1072, 1083, 1085, 1086, 1089, 1090, 1094, 1155, 1175, 1178, 1180, 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1190, 1191, 1192, 1195, 1201; + setarray .ML_Loot, 1005, 1007, 1008, 1009, 1018, 1029, 1032, 1033, 1039, 1053, 1054, 1055, 1085, 1086, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1124, 1125, 1126, 1138, 1167, 1175, 1178, 1180, 1181, 1187, 1190, 1191, 1192, 1193, 1194, 1195, 1198, 1212; + setarray .ML_Lv50, 1002, 1006, 1010, 1011, 1017, 1022, 1025, 1028, 1030, 1031, 1034, 1035, 1041, 1043, 1049, 1050, 1060, 1067, 1068, 1070, 1071, 1073, 1075, 1119, 1121, 1127, 1128, 1132, 1133, 1152, 1172, 1173, 1204, 1210, 1219; + setarray .ML_Lv99, 1004, 1069, 1078, 1139, 1151, 1171, 1197, 1215, 1216, 1217, 1218, 1500; end; } |