1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
|
//===== eAthena Script =======================================
//= Sage Job Quest
//===== By: ==================================================
//= jAthena (0.9) - I guess
//= Unknown Translator (1.0)
//= Darkchild (1.2)
//===== Current Version: =====================================
//= 2.3
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
//= [Aegis Conversion]
//= Job quest for Sage classes
//===== Additional Comments: =================================
//= 2.1 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= No longer uses function "F_BlockHigh"
//= 2.2 Small bug fix (== -> !=) thanks to Saithis. [L0ne_W0lf]
//= 2.2b ANotehr smaLL bugfix, pointed out by Cara. [L0ne_W0lf]
//= 2.3 Corrected NPC names to fall within proper restrictions. [L0ne_W0lf]
//= 2.4 Fixes bug with first room monsters not being reset. [L0ne_W0lf]
//============================================================
yuno_in02,38,61,5 script Dean of the Academy#sa 743,{
cutin "job_sage_kayron",2;
mes "[Kayron Grik]";
if (Upper == 1) {
mes "Haha, I have seen many people";
mes "but it seems you possess special power and abilities.";
next;
mes "[Kayron Grik]";
mes "You'd better leave and increase your reputation.";
mes "Never forget that once you also used to be a novice.";
close2;
cutin "job_sage_kayron",255;
end;
}
if (BaseJob != Job_Mage) {
if (BaseJob == Job_Sage) {
mes "What brings you here? Is there anything bothering you recently?";
mes "Although you're already a Sage, that doesn't mean you can stop studying.";
next;
mes "[Kayron Grik]";
mes "Our knowledge is the mainspring of activity which helps the kingdom to be developed faster.";
mes "Please keep this in mind: you must study and record everything you've discovered so that all in the kingdom may benefit.";
}
else if (BaseJob == Job_Novice) {
mes "Hahah, so my little Novice, what brings you this way? ...I guess you're on a sightseeing trip?";
mes "You must have had a really hard time to reach this place. I must say, you seem interested in the Sage class.";
next;
mes "[Kayron Grik]";
mes "If you aspire to become a Sage, you must first live life as a Mage. Only then shall you have a chance.";
mes "I am looking forward seeing you again.";
}
else {
mes "*Chuckle* Although we've been studying this world for a long time, I know that studying in itself will fulfill all the needs of the people.";
mes "Other classes are just as important to the welfare of Rune-Midgarts...";
next;
mes "[Kayron Grik]";
mes "However, if you happen to meet a Sage down the road, I hope you will lend him your assistance.";
mes "And if you do, he shall repay you in kind...";
}
close;
}
if (SAGE_Q == 0) {
cutin "job_sage_kayron",2;
mes "[Kayron Grik]";
mes "Welcome, young one. I can see that you're intrigued by the wonders of magic.";
mes "So what kind of business brings you to me?";
next;
switch(select("I would like to be a Sage.:Let me know about the Sage job change.:Nothing.")) {
case 1:
mes "[Kayron Grik]";
mes "Hm? Do you wish to become a Sage?";
mes "Well then, I would like to suggest a few things that are required of a Sage.";
next;
mes "[Kayron Grik]";
mes "Sages are those who promote the development of this continent through the endless studying and recording of all knowledge related to this world.";
mes "Becoming a Sage is more than just a costume change: It's an important job where you must be always aware of your duty and responsibility to the people.";
next;
mes "[Kayron Grik]";
mes "You may want to enter an enrollment application to the Schweicherbil Magic Academy.";
mes "I believe they can explain in detail what you need to become a Sage.";
break;
case 2:
mes "[Kayron Grik]";
mes "Sage job change...hmm...an interesting turn of phrase, I must say.";
mes "Although that is what we say, it is very inappropriate to think of becoming a Sage as merely changing a job.";
next;
mes "[Kayron Grik]";
mes "In order to be a Sage, you must enter an application to the Schweicherbil Magic Academy.";
mes "You will then take the entrance examination.";
next;
mes "[Kayron Grik]";
mes "After the examination, you will be assigned to study a specific subject...";
mes "and finally, you will submit your dissertation to the university.";
next;
mes "[Kayron Grik]";
mes "I am the one who evaluates your dissertation.";
mes "When you pass all the courses, you will become a Sage.";
next;
mes "[Kayron Grik]";
mes "Please visit the Schweicherbil Magic Academy.";
mes "A young Sage named Metheus Sylphe will accept your application.";
break;
case 3:
mes "[Kayron Grik]";
mes "I see...Well, seeing as you have leisure time to spare, I encourage you to peruse as many books as you can.";
mes "You can find and research every worldly matter within their pages.";
next;
mes "[Kayron Grik]";
mes "Ah yes, you can not become the most intelligent person merely by reading all the books around you...";
mes "However, for a Sage such as myself, the knowledge found in books is most important.";
}
close2;
cutin "job_sage_kayron",255;
end;
}
else if (SAGE_Q == 15) {
if (countitem(1550) > 0) {
if (JobLevel < 40) {
set SAGE_Q,0;
mes "You don't seem to be qualified yet.";
mes "Remember, you must reach at least job level 40 to become a Sage.";
close2;
cutin "job_sage_kayron",255;
end;
}
if (SkillPoint) {
mes "You possess remaining skill points...";
mes "Before you submit your dissertation, please take care this matter first.";
close2;
cutin "job_sage_kayron",255;
end;
}
mes "Ho~ So? Did you finally complete your dissertation? Well done.";
mes "Let me see.";
next;
mes "[Kayron Grik]";
mes "Hmm...";
next;
mes "[Kayron Grik]";
mes "Huh...";
next;
mes "[Kayron Grik]";
mes "Interesting...";
next;
mes "[Kayron Grik]";
mes "Although it's roughly written, it's well done for a beginner.";
mes "Ah yes...you seem to be proficient in studying.";
next;
callfunc "Job_Change",Job_Sage;
callfunc "F_ClearJobVar";
mes "[Kayron Grik]";
mes "Congratulations! You have now become a Sage.";
mes "Always remember to keep a studious and analytical mindset.";
next;
mes "[Kayron Grik]";
mes "Also, keep this dissertation and treat it with care, since it is one and only book you have written.";
mes "You may have need of it one of these days. And it shall forever remind of this grandiose moment.";
next;
mes "[Kayron Grik]";
mes "Well then...May God fill your path with knowledge.";
mes "Study with diligence!!";
}
else {
mes "Hmm? What has happened to you? Where did you leave your dissertation?";
mes "Please bring it to me so that you may pass the test.";
next;
mes "[Kayron Grik]";
mes "Wait...you didn't lose it, did you?";
mes "Well...that's your business. It is regrettable that you won't be able to get a chance to write a book anymore.";
}
}
else {
mes "*Chuckle* Becoming a Sage isn't as simple as you may have assumed.";
mes "You cannot become a Sage because your magic skills are inadequate...";
next;
mes "[Kayron Grik]";
mes "Study diligently, and return when you finish your dissertation.";
mes "Until then, farewell!";
}
close2;
cutin "",255;
end;
}
yuno_in03,154,35,4 script Staff of the Academy#a 742,{
mes "[Metheus Sylphe]";
if (Upper == 1) {
mes "Welcome to the";
mes "Schweicherbil Magic";
mes "Academy. W-wait a second...";
mes "Do I know you from somewhere?";
next;
mes "[Metheus Sylphe]";
mes "We've met before, haven't";
mes "we? Oh gosh, I must sound";
mes "pretty crazy. I'm sorry, I guess it's because I haven't been";
mes "sleeping too well? Oh well,";
mes "have a good day, adventurer~";
close;
}
if (BaseJob != Job_Mage) {
if (BaseJob != Job_Sage) {
mes "Oh nice to meet you again, long time no see.";
mes "So how's it going with the studying?";
next;
mes "[Metheus Sylphe]";
mes "It's okay to study books and magic scrolls all day, ";
mes "but you must go outside and fight with monsters as much as you can in order to be a well experienced Sage.";
next;
mes "[Metheus Sylphe]";
mes "If you know any Sage candidates, please give them some advice...";
mes "Also, please give my regards to your colleagues as well.";
}
else if (BaseJob == Job_Novice) {
mes "Welcome to the Schweicherbil Magic Academy.";
next;
mes "[Metheus Sylphe]";
mes "This place is specialized in Sage class training. Mostly, what we do is study about monsters and magic spells.";
mes "We always welcome new students.";
next;
mes "[Metheus Sylphe]";
mes "People who are at job jevel 40 as Mage class are qualified to apply for enrollment.";
mes "By passing selected courses, we will then approve them as Sages.";
next;
mes "[Metheus Sylphe]";
mes "If you're interested in the Sage class, please come again.";
mes "And have a good day.";
}
else {
mes "Welcome to the Schweicherbil Magic Academy.";
next;
mes "[Metheus Sylphe]";
mes "This place is specialized in Sage class training. What we do is study about monsters and magic spells.";
mes "People who are at job jevel 40 as Mage class are qualified to apply for enrollment.";
next;
mes "[Metheus Sylphe]";
mes "If you have any Mage friends, please let them know about this academy.";
mes "Have a good day.";
}
close;
}
if (SAGE_Q == 0) {
mes "Welcome to the Schweicherbil Magic Academy.";
mes "Oh, You're a Mage. How may I assist you?";
next;
switch(select("Let me know about the Sage job change.:I want to enroll in the school.:Nothing.")) {
case 1:
mes "[Metheus Sylphe]";
mes "I see. Do you wish to become a Sage?";
mes "Unfortunately, we are not in charge of changing your job to the Sage class.";
next;
mes "[Metheus Sylphe]";
mes "After you enter this academy and pass certain courses...";
mes "you will receive official approval to conduct studies as a Sage.";
next;
mes "[Metheus Sylphe]";
mes "For this reason, we do not speak of this proccess as a job change, but as graduation.";
mes "Anyway, if you enter your application for this academy, I will inform you about the registration fee and will let you take the test.";
next;
mes "[Metheus Sylphe]";
mes "For your information, if you bring ^3355FFOld Magicbook^000000 and ^3355FFNecklace of Wisdom^000000, ";
mes "you don't have to pay for the Registration Fee to enroll in the school.";
next;
mes "[Metheus Sylphe]";
mes "After you register, you will be able to take the entrance test.";
mes "If you pass the test, you will write a thesis for a given subject.";
next;
mes "[Metheus Sylphe]";
mes "The Dean of the academy will decide whether or not you are qualified.";
mes "If you're granted admission, you will be able to join in study and research activities as a Sage.";
next;
mes "[Metheus Sylphe]";
mes "You're always welcome to join us.";
mes "Have a good day.";
close;
case 2:
mes "[Metheus Sylphe]";
mes "I see, you want to join the academy. Once again, welcome to the Schweicherbil Magic Academy.";
next;
mes "[Metheus Sylphe]";
mes "People who have already met the basic requirement by reaching at Mage job level 40 are qualified for enrollment.";
mes "A small registration fee will also be required.";
next;
mes "[Metheus Sylphe]";
mes "The registration fee is 70,000 zeny.";
mes "However, if you bring ^3355FFOld Magicbook^000000 and ^3355FFNecklace of Wisdom^000000, you will be exempt from this fee.";
next;
mes "[Metheus Sylphe]";
mes "So, do you wish to apply immediately?";
next;
switch(select("Yes, I do.:The fee is much too expensive.:I will come back later.")) {
case 1:
if (JobLevel < 40) {
mes "[Metheus Sylphe]";
mes "I'm sorry, but you haven't met the basic requirements yet.";
mes "Please go study more and reach Mage job level 40 first.";
close;
}
if (SkillPoint) {
mes "[Metheus Sylphe]";
mes "You have unused skill points left. Please go learn all those skills you've been planning to learn.";
mes "We do not accept any ambiguous candidates.";
close;
}
mes "[Metheus Sylphe]";
mes "Very well. Let's complete your application form.";
mes "Please put your signature here.";
next;
select(strcharinfo(0));
mes "[Metheus Sylphe]";
mes "Your name is ... " + strcharinfo(0) + ". It's a very nice name.";
next;
if (JobLevel == 50) {
mes "[Metheus Sylphe]";
mes "Oh, you've mastered the Mage job! You're great!! *Clap Clap Clap*";
mes "In reward for your great effort, you will be exempt from the registration fee!";
next;
mes "[Metheus Sylphe]";
mes "Yes, everything's ready.";
mes "Next, you will take an entrance test.";
set SAGE_Q,4;
next;
mes "[Metheus Sylphe]";
mes "Please visit Professor Claytos.";
mes "He's in the left room.";
close;
}
mes "[Metheus Sylphe]";
mes "Will you pay the registration fee with 70,000 zeny?";
mes "Or will you give me ^3355FFOld Magicbook^000000 and ^3355FFNecklace of Wisdom^000000?";
next;
if (select("Pay 70,000 zeny.:Give him Old Magicbook and Necklace of Wisdom.") == 1) {
if (Zeny > 69999) {
set zeny,zeny-70000;
mes "[Metheus Sylphe]";
mes "Thank you, your application has been accepted.";
mes "Next, you will take an entrance test.";
set SAGE_Q,4;
next;
mes "[Metheus Sylphe]";
mes "Please visit Professor Claytos.";
mes "He's in the left room.";
close;
}
mes "[Metheus Sylphe]";
mes "What a shame! It seems you didn't bring enough money for tuition.";
mes "Please make sure you have at least 70,000 zeny to enroll in classes.";
close;
}
if (countitem(1006) > 0 && countitem(1007) > 0) {
delitem 1006,1; //Old_Magic_Book
delitem 1007,1; //Penetration
mes "[Metheus Sylphe]";
mes "Thank you, your application has been accepted.";
mes "Next, you will take the entrance test.";
set SAGE_Q,4;
next;
mes "[Metheus Sylphe]";
mes "Please visit Professor Claytos.";
mes "He's in the left room.";
close;
}
mes "[Metheus Sylphe]";
mes "Umm...It seems you didn't bring any of those?";
mes "I suppose you left them somewhere behind. Please go get them, and then come back.";
close;
case 2:
if (JobLevel < 40) {
mes "[Metheus Sylphe]";
mes "Before we talk about the registration fee, it seems you haven't met the basic requirement yet, Mage job level 40.";
mes "Please go study more, and then come back to enroll.";
close;
}
if (JobLevel == 50) {
mes "[Metheus Sylphe]";
mes "Well, I can't help you with that issue. If you don't have the fee, you are not allowed to enter the academy.";
mes "Even if you might think it's absurdly expensive, it's a justifiable price to pay in order to become a Sage.";
next;
mes "[Metheus Sylphe]";
mes "Anyway... oh! You mastered the Mage job! You're truly exemplary!! *Clap Clap Clap*.";
mes "As a reward for your great effort, you will be exempt from the registration fee!";
next;
mes "[Metheus Sylphe]";
mes "Okay, let's complete the application form.";
mes "Please put your signature here.";
next;
select(strcharinfo(0));
mes "[Metheus Sylphe]";
mes "Your name is ... " + strcharinfo(0) + ". It's a very nice name.";
next;
mes "[Metheus Sylphe]";
mes "Yes, everything's ready.";
mes "Next, you will take the entrance test.";
set SAGE_Q,4;
next;
mes "[Metheus Sylphe]";
mes "Please visit professor Claytos.";
mes "He's in the left room.";
close;
}
if (Zeny > 43210) {
mes "[Metheus Sylphe]";
mes "Well, I can't help you with that issue. If you don't have the fee, you are not allowed to enter the academy.";
mes "Even if you may think it's absurdly expensive, it's a justifiable price to pay in order to become a Sage.";
next;
mes "[Metheus Sylphe]";
mes "Alternatively, you could try to find ^3355FFOld Magicbook^000000 and ^3355FFNecklace of Wisdom^000000.";
mes "If you don't wish to do that, you must save some money for the registration fee.";
next;
mes "[Metheus Sylphe]";
mes "Goodbye, and have a good day.";
close;
}
else {
mes "[Metheus Sylphe]";
mes "Oh, I guess you don't have enough money?";
mes "Under the existing provisions, you must pay 70,000 zeny for the application...";
next;
if (select("Please...is there any way?:Ok, I will come back later.") == 1) {
mes "[Metheus Sylphe]";
mes "Hmmm...then I shall offer a special option!";
mes "You will pay 30,000 zeny and bring some items as compensation for the tuition discount.";
next;
switch(rand(1,3)) {
case 1:
set SAGE_Q,1;
mes "[Metheus Sylphe]";
mes "Please gather the following items.";
mes "50 ^3355FFFeather of Birds^000000";
mes "50 ^3355FFFluff^000000";
mes "25 ^3355FFIron Ore^000000";
next;
mes "[Metheus Sylphe]";
mes "If you bring those items, your tuition will be 30,000 zeny, in lieu of the original 70,000 zeny fee.";
break;
case 2:
set SAGE_Q,2;
mes "[Metheus Sylphe]";
mes "Please gather the following items.";
mes "50 ^3355FFClover^000000";
mes "50 ^3355FFFeather^000000";
mes "25 ^3355FFSquid Ink^000000";
next;
mes "[Metheus Sylphe]";
mes "If you bring the aforementioned items, the tuition fee will be 30,000 zeny, rather than the original 70,000 zeny fee.";
break;
case 3:
set SAGE_Q,3;
mes "[Metheus Sylphe]";
mes "Please gather the following items.";
mes "50 ^3355FFFeather of Birds^000000";
mes "50 ^3355FFFluff^000000";
mes "50 ^3355FFClover^000000";
mes "50 ^3355FFFeather^000000";
next;
mes "[Metheus Sylphe]";
mes "If you bring those items, your tuition will only be 30,000 zeny, instead of the original 70,000 zeny fee.";
}
mes "I am sure it's a very reasonable option for you.";
next;
mes "[Metheus Sylphe]";
mes "Ah yes, before gathering all of those items, if you happen to have 70,000 zeny, I will be more than happy to receive the full payment.";
mes "That is, after all, our original policy.";
next;
mes "[Metheus Sylphe]";
mes "Alternatively, you can bring me ^3355FFOld Magicbook^000000 and ^3355FFNecklace of Wisdom^000000.";
mes "Goodbye, and have a good day.";
close;
}
mes "[Metheus Sylphe]";
mes "Ah yes, take your time...";
mes "Goodbye, and have a good day.";
close;
}
case 3:
mes "[Metheus Sylphe]";
mes "Ah yes, take your time...";
mes "Goodbye, and have a good day.";
close;
}
case 3:
mes "[Metheus Sylphe]";
mes "I see, take your time. You can also take a look around.";
mes "Goodbye, and have a good day.";
close;
}
}
else if (SAGE_Q >= 1 && SAGE_Q <= 3) {
mes "Welcome, once again.";
next;
if (countitem(1006) > 0 && countitem(1007) > 0) {
delitem 1006,1; //Old_Magic_Book
delitem 1007,1; //Penetration
mes "[Metheus Sylphe]";
mes "Well done. Let me proceed with your application request.";
set SAGE_Q,4;
next;
}
else if (Zeny > 69999) {
set zeny,zeny-70000;
mes "[Metheus Sylphe]";
mes "Well done. Let me proceed with your application request.";
set SAGE_Q,4;
next;
}
else {
switch (SAGE_Q) {
case 1:
//Feather_Of_Bird, Fluff, Iron_Ore
setarray .@item[0], 916,914,1002;
setarray .@count[0], 50,50,25;
break;
case 2:
//Clover, Feather, Chinese_Ink
setarray .@item[0], 705,949,1024;
setarray .@count[0], 50,50,25;
break;
case 3:
//Feather_Of_Bird, Fluff, Clover, Feather
setarray .@item[0], 916,914,705,949;
setarray .@count[0], 50,50,50,50;
break;
}
set .@size, (getarraysize(.@item)-1);
for( set .@i,0 ; .@i < .@size && countitem(.@item[.@i]) >= .@count[.@i] ; set .@i,.@i+1 );
if(.@i == .@size) {
if (Zeny > 29999) {
for (set .@i, 0; .@i < .@size ; set .@i, .@i+1)
delitem .@item[.@i], .@count[.@i];
set zeny,zeny-30000;
mes "[Metheus Sylphe]";
mes "Well done. Let me proceed with your application request.";
set .@SAGE_Q_T,SAGE_Q;
set SAGE_Q,4;
next;
}
mes "[Metheus Sylphe]";
mes "I am sorry to say that you are not ready yet.";
mes "Although you brought all of the items, the money you have now is less than 30,000 zeny.";
next;
mes "[Metheus Sylphe]";
mes "As I told you before, you must bring all of those items, as well as the 30,000 zeny together.";
mes "Please make sure that you have the required items and money.";
close;
}
else {
mes "[Metheus Sylphe]";
mes "I am sorry to say that it seems you didn't bring all of the required items.";
mes "I shall remind you what to bring, in case you have forgotten.";
next;
mes "[Metheus Sylphe]";
mes "Please bring the following items to me.";
mes .@count[0]+" ^3355FF"+.@item[0]+"^000000";
mes .@count[1]+" ^3355FF"+.@item[1]+"^000000";
mes .@count[2]+" ^3355FF"+.@item[2]+"^000000";
if (SAGE_Q == 3) mes .@count[3]+" ^3355FF"+.@item[3]+"^000000";
next;
mes "[Metheus Sylphe]";
mes "If you bring all of these items, your tuition fee will be reduced from 70,000 zeny to 30,000 zeny.";
mes "Good luck.";
close;
}
}
mes "[Metheus Sylphe]";
mes "Let's complete the application form.";
mes "Please put your signature here.";
next;
select(strcharinfo(0));
mes "[Metheus Sylphe]";
switch (.@SAGE_Q_T) {
case 1: mes "Your name is ... " + strcharinfo(0) + ". It's a very nice name."; break;
case 2: mes "Your name is ... " + strcharinfo(0) + ". It sounds very sagacious."; break;
case 3: mes "Your name is ... " + strcharinfo(0) + ". Interesting name."; break;
}
next;
mes "[Metheus Sylphe]";
mes "Ah yes, everything is in readiness.";
mes "Next, you will take an entrance test.";
set SAGE_Q,4;
next;
mes "[Metheus Sylphe]";
mes "Please visit Professor Claytos.";
mes "He's in the left room.";
close;
}
else if (SAGE_Q == 4) {
mes "Huh? What are you doing here? You're supposed to be taking the entrance test by now.";
mes "Please visit Professor Claytos in the left room.";
close;
}
else if (SAGE_Q == 15) {
mes "Oh, are you done with the dissertation?";
mes "Sure, you can submit it to Dean Kayron.";
next;
mes "[Metheus Sylphe]";
mes "So long as you make the effort, you should achieve good results.";
mes "Good luck.";
close;
}
else {
mes "Oh sorry, this is a rather inconvenient time to converse.";
mes "Please come back later. I apologize for troubling you.";
close;
}
}
yuno_in03,105,177,5 script Written Test Professor#s 754,{
mes "[Claytos Verdo]";
if (BaseJob != Job_Mage) {
if (BaseJob == Job_Sage) {
mes "Eh? What? Why are you back here?";
mes "Do you want to enter the school again?";
next;
mes "[Claytos Verdo]";
mes "Now, I understand how you feel. Since you graduated, you have become a Sage. A Sage...until the end of your days.";
mes "So, be strong and independent. Try to explore some places where nobody else has ventured to go.";
next;
mes "[Claytos Verdo]";
mes "Don't forget to record everything you've experienced.";
mes "You must share your knowledge with others by taking excellent notes.";
}
else if (BaseJob == Job_Novice) {
mes "What are you doing here, kid?";
mes "This is a Magic Academy, not a day care center.";
next;
mes "[Claytos Verdo]";
mes "Go outside and play with the Porings. That's your job.";
mes "Go out, chop chop!!";
}
else if (Class == Job_Wizard) {
mes "Well...look who came crawling back. Magic addict.";
mes "Yeah yeah, so it's not so bad to be devoted to magic.";
next;
mes "[Claytos Verdo]";
mes "But I hope you remember, no one can live alone.";
mes "Although you're strong enough for solo play, you must cooperate and help other people. That's what a Wizard shoud stand for.";
}
else {
mes "Hmm... I understand that you want to enter our prestigious academy, but since you chose to live as a different class,";
mes "I don't think you can become a Sage.";
next;
mes "[Claytos Verdo]";
mes "So, don't go around regretting why you chose a job other than Sage. You'd better go out and hunt, leveling up your current job.";
}
close;
}
if (SAGE_Q == 0) {
mes "What, do you want to be a sage?";
mes "I can tell by your eyes, hungering for wisdom.";
next;
mes "[Claytos Verdo]";
mes "Of course, if you want to be a Sage, you must first enter the academy.";
mes "Apply for enrollment, and then come again.";
close;
}
else if (SAGE_Q == 1 || SAGE_Q == 2 || SAGE_Q == 3) {
mes "Hah! You didn't even finish the application process!?";
mes "I see...did Metheus tell you something?";
next;
mes "[Claytos Verdo]";
mes "Do your best. It'll be a good experience for you.";
mes "Come again when you finish the application.";
close;
}
else if (SAGE_Q == 4) {
mes "Welcome to the Schweicherbil Magic Academy.";
mes "You applied for this test already, didn't you?";
next;
mes "[Claytos Verdo]";
mes "Let's see, your name is " + strcharinfo(0) + "...";
mes "Okay, let's get started!";
next;
mes "[Claytos Verdo]";
mes "The test that I am going to give you will test your knowledge on all of the academic subjects in the world.";
mes "I will give you 20 questions, with each question being worth 5 points. When you earn a grade of 80 points, you will pass the test.";
next;
mes "[Claytos Verdo]";
mes "Okay, there's no need to wait. Let's start right away";
mes "Oh, and if you don't answer immediately, the test will be cancelled.";
L_AskQuestions:
next;
switch(rand(1,3)) {
case 1:
mes "1. Choose an item that the Gift merchant in Prontera does not sell.";
next;
if (select("China:Red Frame:Bouquet:Glass Bead") == 3)
set .@sage_t,.@sage_t+5;
mes "2. Choose a city where you cannot purchase a Stiletto.";
next;
if (select("Prontera:Morroc:Geffen:Lutie") == 1)
set .@sage_t,.@sage_t+5;
mes "3. Choose the closest city to Turtle Island.";
next;
if (select("Al De Baran:Alberta:Comodo:Izlude") == 2)
set .@sage_t,.@sage_t+5;
mes "4. Choose the monster that is a different type than the others.";
next;
if (select("Raggler:Pest:Frilldora:Aster") == 4)
set .@sage_t,.@sage_t+5;
mes "5. Choose the monster that has a different attribute than the others.";
next;
if (select("Mantis:Metaller:Rocker:Horn") == 2)
set .@sage_t,.@sage_t+5;
mes "6. Choose the monster that is different sized than the others.";
next;
if (select("Raydric:Raydric Archer:Wanderer:Dark Frame") == 1)
set .@sage_t,.@sage_t+5;
mes "7. Choose the monster which doesn't drop 'Alcohol'.";
next;
if (select("Horong:Plankton:Poison Spore:Toad") == 3)
set .@sage_t,.@sage_t+5;
mes "8. Choose the NPC that is irrelevant to the Knight job change quest.";
next;
if (select("Sir Siracuse:Thomas Servantes:Sir Windsor:Lady Amy") == 2)
set .@sage_t,.@sage_t+5;
mes "9. Choose the NPC that is not a citizen of Prontera.";
next;
if (select("Tono:Pina:YuPi:Hollgrehenn") == 2)
set .@sage_t,.@sage_t+5;
mes "10. Choose the right name for the Kafra lady who wears glasses.";
next;
if (select("Pavianne:Roxie:Leilah:Curly Sue") == 3)
set .@sage_t,.@sage_t+5;
mes "11. How much SP is spent to use lvl 7 Thunderstorm?";
next;
if (select("49:59:69:74") == 2)
set .@sage_t,.@sage_t+5;
mes "12. Choose the right amount of damage reduction and SP consumption of the Energy Coat skill when the caster's remaining SP is 50%.";
next;
if (select("Damage -24% SP1.5%:Damage -24% SP2%:Damage -18% SP1.5%:Damage -18% SP2%") == 4)
set .@sage_t,.@sage_t+5;
mes "13. Choose the property that is irrelevant to 'Bolt' type skills for the Mage class.";
next;
if (select("Water:Earth:Fire:Wind") == 2)
set .@sage_t,.@sage_t+5;
mes "14. Choose the right chance and attack strength for lvl 7 Double Attack, the Thief skill.";
next;
if (select("35% / 120%:35% / 140%:40% / 120%:40% / 140%") == 2)
set .@sage_t,.@sage_t+5;
mes "15. Choose the skill that is irrelevant to learning Magnus Exorcismus, the Priest skill.";
next;
if (select("Divine Protection:Heal:Ruwach:Aqua Benedicta") == 1)
set .@sage_t,.@sage_t+5;
mes "16. Choose the correct defense and ability of the Bunny Band.";
next;
if (select("1 / LUK +2:1 / LUK +5:2 / LUK +2:2 / LUK +5") == 3)
set .@sage_t,.@sage_t+5;
mes "17. Choose the class that cannot equip Padded Armor.";
next;
if (select("Swordman:Merchant:Thief:Archer") == 4)
set .@sage_t,.@sage_t+5;
mes "18. Choose the item that cures all abnormal status and restores full HP and SP at the same time.";
next;
if (select("Royal Jelly:Yggdrasil Seed:Yggdrasilberry:Mastella Fruit") == 3)
set .@sage_t,.@sage_t+5;
mes "19. Who rules the Rune-Midgarts kingdom right now?";
next;
if (select("Tristun the 3rd:Tristram the 3rd:Tristar the 3rd:Trast the 3rd") == 2)
set .@sage_t,.@sage_t+5;
mes "20. Choose the god of Crusaders.";
next;
if (select("Odin:Loki:Thor:Venadin") == 1)
set .@sage_t,.@sage_t+5;
break;
case 2:
mes "1. Choose the jewel that the Morroc Jewel Merchant does not sell.";
next;
if (select("Topaz:Garnet:Diamond:Sapphire") == 2)
set .@sage_t,.@sage_t+5;
mes "2. Choose the city where users cannot purchase Monster's Feed from an NPC.";
next;
if (select("Prontera:Morroc:Al De Baran:Alberta") == 3)
set .@sage_t,.@sage_t+5;
mes "3. Choose the closest city to the Maze.";
next;
if (select("Prontera:Morroc:Geffen:Payon") == 1)
set .@sage_t,.@sage_t+5;
mes "4. Choose the monster that is a different type than the others.";
next;
if (select("Muka:Drops:Plankton:Penomena") == 4)
set .@sage_t,.@sage_t+5;
mes "5. Choose the monster with the different attribute.";
next;
if (select("Dokebi:Isis:Giearth:Deviruchi") == 3)
set .@sage_t,.@sage_t+5;
mes "6. Choose the monster that is different in size.";
next;
if (select("Thiefbug (Aggressive):Horn:Metaller:Argos") == 4)
set .@sage_t,.@sage_t+5;
mes "7. Choose the monster which does not drop 'Yggdrasil Leaf'.";
next;
if (select("Marduk:Baphomet Jr.:Angeling:Wanderer") == 1)
set .@sage_t,.@sage_t+5;
mes "8. Choose the NPC that is irrelevant to the Priest job change quest.";
next;
if (select("Paul:Sir Windsor:Peter S. Alberto:Cecilia") == 2)
set .@sage_t,.@sage_t+5;
mes "9. Choose the NPC that is not a citizen of Morroc.";
next;
if (select("Syvia:Akira:Antonio:Dmitrii") == 3)
set .@sage_t,.@sage_t+5;
mes "10. Choose the Kafra lady who has gorgeous blue hair.";
next;
if (select("Pavianne:Roxie:Leilah:Curly Sue") == 1)
set .@sage_t,.@sage_t+5;
mes "11. Choose the skill that is irrelevant to learning Fire Wall, the Mage skill.";
next;
if (select("lvl 4 Fire Bolt:lvl 4 Napalm Beat:lvl 5 Fire Ball:lvl 1 Sight") == 2)
set .@sage_t,.@sage_t+5;
mes "12. How much SP can be restored when learning SP recovery at lvl 6 (without being affected by INT)?";
next;
if (select("14:16:18:21") == 3)
set .@sage_t,.@sage_t+5;
mes "13. How many INT points does a Mage receive as a bonus at job lvl 33?";
next;
if (select("7:6:5:4") == 4)
set .@sage_t,.@sage_t+5;
mes "14. Choose the correct SP consumption and the skill duration for Improve Concentration lvl 5 (Archer skill).";
next;
if (select("45 / 80 sec:50 / 80 sec:45 / 90 sec:50 / 90 sec") == 1)
set .@sage_t,.@sage_t+5;
mes "15. Choose the skill that is irrelevant to learning Maximize Power, the Blacksmith skill.";
next;
if (select("Hilt Binding:Skin Tempering:Hammer Fall:Weapon Perfection") == 2)
set .@sage_t,.@sage_t+5;
mes "16. What is the correct defense rate and ability of Cute Ribbon?";
next;
if (select("0 / SP +20:0 / SP +30:1 / SP +20:1 / SP +30") == 3)
set .@sage_t,.@sage_t+5;
mes "17. Choose the class that cannot equip Saint Robe.";
next;
if (select("Swordman:Merchant:Thief:Acolyte") == 3)
set .@sage_t,.@sage_t+5;
mes "18. Choose the abnormal status that cannot be cured by Green Potion.";
next;
if (select("Silence:Chaos:Blind:Curse") == 4)
set .@sage_t,.@sage_t+5;
mes "19. Choose the correct name for the ancient kingdom that disappeared somewhere in Geffen.";
next;
if (select("Geffayon:Geffenia:Gefenn:Jaffen") == 2)
set .@sage_t,.@sage_t+5;
mes "20. Choose the correct name for the tree that has become the root of this world.";
next;
if (select("Yggdrasil:Iggdrassil:Mastella:Dead Branch") == 1)
set .@sage_t,.@sage_t+5;
break;
case 3:
mes "1. Choose the item that the Magical Tool merchant in Geffen does not sell.";
next;
if (select("Mantle:Wand:Circlet:Silver Robe") == 1)
set .@sage_t,.@sage_t+5;
mes "2. Choose the city where users cannot purchase Blade from an NPC.";
next;
if (select("Prontera:Izlude:Al De Baran:Payon") == 3)
set .@sage_t,.@sage_t+5;
mes "3. Choose the closest city to Glast Heim.";
next;
if (select("Prontera:Geffen:Morroc:Payon") == 2)
set .@sage_t,.@sage_t+5;
mes "4. Choose the monster that is a different type than the others.";
next;
if (select("Aster:Marc:Marse:Marin") == 4)
set .@sage_t,.@sage_t+5;
mes "5. Choose the monster that has a different attribute.";
next;
if (select("Baby Desert Wolf:Smokie:Picky:Choco") == 2)
set .@sage_t,.@sage_t+5;
mes "6. Choose the monster that is different sized.";
next;
if (select("Drake:Wraith:Evil Druid:Khalitzburg") == 1)
set .@sage_t,.@sage_t+5;
mes "7. Choose the monster that does not drop 'Phracon'.";
next;
if (select("Pupa:Peco Peco Egg:Savage Bebe:Baby Desert Wolf") == 2)
set .@sage_t,.@sage_t+5;
mes "8. Choose the NPC that is irrelevant to the Blacksmith job change quest.";
next;
if (select("Altiregen:Geschupenschte:Barcadi:Baisulist") == 3)
set .@sage_t,.@sage_t+5;
mes "9. Choose the NPC that is not a citizen of Al De Baran.";
next;
if (select("RS125:GOD-POING:Stromme:Chemirre") == 2)
set .@sage_t,.@sage_t+5;
mes "10. Choose the Kafra lady who is the youngest among the staff.";
next;
if (select("Pavianne:Roxie:Leilah:Curly Sue") == 4)
set .@sage_t,.@sage_t+5;
mes "11. Choose the correct SP consumption and the number of evasions when using Safety Wall lvl 6.";
next;
if (select("SP 40, 6 times:SP 35, 6 times:SP 40, 7 times:SP 35, 7 times") == 3)
set .@sage_t,.@sage_t+5;
mes "12. Choose the correct amount of magic attack for Napalm Beat lvl 6.";
next;
if (select("MATK * 1.2:MATK * 1.3:MATK * 1.4:MATK * 1.5") == 2)
set .@sage_t,.@sage_t+5;
mes "13. Choose the catalyst stone for Mage Solution no. 4 that is used for the Mage job change quest.";
next;
if (select("Blue Gemstone:Red Gemstone:Yellow Gemstone:1 carat Diamond") == 4)
set .@sage_t,.@sage_t+5;
mes "14. Choose the correct attack strength and SP consumption for Bash lvl 6, the Swordman skill.";
next;
if (select("250% / 8:280% / 8:280% / 15:310% / 15") == 3)
set .@sage_t,.@sage_t+5;
mes "15. Choose the skill that is irrelevant to learning Claymore Trap, the Hunter skill.";
next;
if (select("Remove Trap:Land Mine:Ankle Snare:Flasher") == 1)
set .@sage_t,.@sage_t+5;
mes "16. Choose the correct defense and ability of Wedding Veil.";
next;
if (select("0 / MDEF +3:0 / MDEF +5:1 / MDEF +3:1 / MDEF +5") == 2)
set .@sage_t,.@sage_t+5;
mes "17. Choose the class that cannot equip Coat.";
next;
if (select("Swordman:Merchant:Thief:Novice") == 4)
set .@sage_t,.@sage_t+5;
mes "18. Choose the item that is not an ingredient for Blue Dyestuffs.";
next;
if (select("Alcohol:Detrimindexta:Karvodailnirol:Blue Herb") == 3)
set .@sage_t,.@sage_t+5;
mes "19. When the world was created by the god Odin, what did he use for the material?";
next;
if (select("The heart of Ymir:The nail of Ymir:The tooth of Ymir:The memento of Ymir") == 1)
set .@sage_t,.@sage_t+5;
mes "20. Choose the metal that has rumored to bring fortune and fame to a person with the destiny.";
next;
if (select("Empelium Gold:Emperium:Emperor:Phracon") == 2)
set .@sage_t,.@sage_t+5;
}
mes "[Claytos Verdo]";
if (SAGE_Q == 4) {
mes "Well, you answered all 20 of the questions.";
mes "Okay, let me check your answers and add up your score.";
}
else {
mes "Well, we finished all 20 questions.";
mes "Now, let's check how many points you got.";
}
next;
mes "[Claytos Verdo]";
mes "Let's see...";
mes "Hmm... hmm...";
next;
mes "[Claytos Verdo]";
mes "You got " + .@sage_t + " points.";
if (.@sage_t == 100) {
if (SAGE_Q == 4)
mes "Excellent! You seem fully qualified to become a Sage!";
else
mes "Excellent! You must have studed really hard for this test!";
set SAGE_Q,6;
next;
mes "[Claytos Verdo]";
mes "You have passed the written test.";
mes "Go visit Professor Hermes for the practical examination.";
}
else if (.@sage_t >= 80) {
set SAGE_Q,6;
mes "Yeah, not bad. I assume that you will at least understand what you're going to learn in class.";
next;
mes "[Claytos Verdo]";
mes "You passed the written test.";
mes "Go visit Professor Hermes for the practical examination.";
}
else {
if (SAGE_Q == 4) {
set SAGE_Q,5;
mes "Oh well...what a shame: You failed.";
next;
mes "[Claytos Verdo]";
mes "But I'll give you another chance to take the written test,";
mes "Go study harder and come back later.";
}
else {
mes "Oh what a shame: You failed.";
next;
mes "[Claytos Verdo]";
mes "But I'll give you another chance,";
mes "Go study even harder and come back.";
}
}
close;
}
else if (SAGE_Q == 5) {
mes "Welcome back.";
mes "So, did you study harder this time?";
next;
mes "[Claytos Verdo]";
mes "You will take the written test under the same conditions as the test you took before. I'll give you 20 questions.";
mes "Each correct answer will give you 5 points. When your score reaches 80 points, you pass the test.";
next;
set sage_m2,rand(1,3);
set sage_t,0;
mes "[Claytos Verdo]";
mes "Okay, there's no need to wait.";
mes "Answer immediately, or I'll fail you again.";
set SAGE_Q,5;
goto L_AskQuestions;
end;
}
else if (SAGE_Q == 6) {
mes "What else do you want?! Do you want to take this test again?";
mes "You've already passed!";
next;
mes "[Claytos Verdo]";
mes "Go visit Professor Hermes for the practical examination.";
mes "Move!";
close;
}
else if (SAGE_Q == 15) {
mes "Heh heh, It seems you're done with your dissertation.";
mes "But I'm not the person handling that part of the test.";
next;
mes "[Claytos Verdo]";
mes "submit your thesis to Dean Kayron.";
mes "He will decide whether you are qualified to graduate or not.";
close;
}
else {
mes "I'm too busy to take care of written tests.";
mes "Come back later, and I'll spare some time to talk.";
close;
}
}
//Practical Examination Professer
yuno_in03,169,180,3 script Practical Examination P 755,{
mes "[Hermes Tris]";
if (BaseJob != Job_Mage) {
if (BaseJob == Job_Sage) {
mes "Welcome. How have you been?";
mes "I guess you've been through a lot of hard times...I can tell by your appearance.";
next;
mes "[Hermes Tris]";
mes "I know how hard it is to explore all those perilous areas, but it will help you to gain more knowledge.";
mes "Book smarts never can beat street smarts.";
next;
mes "[Hermes Tris]";
mes "However, it's a very dangerous idea to go deep inside a dungeon alone. ";
mes "You'd better look for trustworthy comrades.";
}
else if (BaseJob == Job_Novice) {
mes "Heh heh, now ain't that a cute little Novice?";
next;
mes "[Hermes Tris]";
mes "In this continent of Rune-Midgarts, there are a lot of unknown places and objects that haven't been fully discovered.";
mes "The monsters, mysterious objects and heroes of myths...";
next;
mes "[Hermes Tris]";
mes "Why don't you consider being a Sage in the future?";
mes "You will love studying the world.";
next;
mes "[Hermes Tris]";
mes "If by chance you do decide to do that, we'll meet again.";
mes "Take care, kiddy.";
}
else {
mes "Welcome to the Schweicherbil Magic Academy.";
next;
mes "[Hermes Tris]";
mes "We Sages are more like scholars than Mages.";
mes "We are very helpful and powerful as members of a party.";
next;
mes "[Hermes Tris]";
mes "Try to make a party with a Sage next time.";
mes "The wisdom a Sage will bring will be more than helpful for your party...";
}
close;
}
if (SAGE_Q >= 0 && SAGE_Q <= 3) {
mes "I am Professor Hermes, in charge of practical examinations.";
mes "Are you a candidate for the Sage class?";
next;
mes "[Hermes Tris]";
mes "Register your application and take the written test first.";
close;
}
else if (SAGE_Q == 4 || SAGE_Q == 5) {
mes "I am professor Hermes, in charge of practical examinations.";
mes "Are you a candidate for the Sage class?";
next;
mes "[Hermes Tris]";
mes "Go pass the written test with Professor Claytos first.";
mes "Then I will take care of you.";
close;
}
else if (SAGE_Q == 6) {
mes "Welcome, you just passed the written test, didn't you?";
mes "Now it's time for the practical examination.";
next;
mes "[Hermes Tris]";
mes "There is nothing difficult or special about this test.";
mes "All you have to do is kill all the monsters within the time limit.";
next;
mes "[Hermes Tris]";
mes "It's better to experience this for yourself, rather than be told about this test 100 times.";
mes "How about it? Are you ready to take this test?";
next;
if (select("Yes, I am.:Sorry, give me some time.") == 1) {
set SAGE_Q,7;
mes "[Hermes Tris]";
mes "Good, let's start immediately.";
mes "Do your best and come back safely!";
close2;
warp "job_sage",50,154;
end;
}
set SAGE_Q,7;
mes "[Hermes Tris]";
mes "Yes, you don't need to hurry... take your time and come back.";
close;
}
else if (SAGE_Q == 7) {
mes "Welcome again! So, did you fully prepare yourself this time?";
mes "Oh well, it's not that hard. Give it your all, okay?";
next;
mes "[Hermes Tris]";
mes "Are you ready?";
next;
if (select("Yes, I am.:Sorry, give me some time.") == 1) {
mes "[Hermes Tris]";
mes "Good, let's start immediately.";
mes "Do your best and come back safely!";
close2;
warp "job_sage",50,154;
end;
}
mes "[Hermes Tris]";
mes "Yes, you don't need to hurry... take your time and come back.";
close;
}
else if (SAGE_Q == 8) {
mes "Good job~ Since you passed the practical examination as well...";
mes "I'll accept your admission.";
next;
mes "[Hermes Tris]";
mes "Now I need to decide what subject you will learn and study...";
mes "Let's see... let me check your written test grade and the time spent on the practical examination.";
next;
mes "[Hermes Tris]";
mes "Hmm, hmm... I see.";
mes "Well... I think you're okay.";
next;
switch(rand(1,3)) {
case 1:
set SAGE_Q,9;
mes "[Hermes Tris]";
mes "Now, you will study Yggdrasil.";
mes "Yggdrasil is the tree that was rumored to be the source of life for this world.";
next;
mes "[Hermes Tris]";
mes "That is a good subject which helps us to recognize changes in the world, as well as the direction of its improvement.";
mes "Go ask for help from Professor Saphien. He's in the Lecture Room.";
next;
mes "[Hermes Tris]";
mes "I wish you luck.";
close;
case 2:
set SAGE_Q,11;
mes "[Hermes Tris]";
mes "Now, you will study monsters.";
mes "The purpose of this study is to learn and understand more about creatures existing all over the continent.";
next;
mes "[Hermes Tris]";
mes "This is a good subject which will help you lead your life as a well-experienced Sage.";
mes "Go ask for help from Professor Lucius. He's in the Monster Museum.";
next;
mes "[Hermes Tris]";
mes "I wish you luck.";
close;
case 3:
set SAGE_Q,13;
mes "[Hermes Tris]";
mes "Now, you will study magic skills that have certain properties.";
mes "The purpose of this study is to better understand basic magic skills that we use in everyday life.";
next;
mes "[Hermes Tris]";
mes "That is a good subject which helps you to deeply understand of the truth of magic.";
mes "Go ask Professor Aebecee for help...He's in the Somatology Laboratory.";
next;
mes "[Hermes Tris]";
mes "I wish you luck.";
close;
}
}
else if (SAGE_Q == 9) {
mes "Huh? Didn't you understand what I said?";
mes "I told you to study Yggdrasil.";
next;
mes "[Hermes Tris]";
mes "Go ask for help from Professor Saphien. He's in the Lecture Room.";
close;
}
else if (SAGE_Q == 11) {
mes "Huh? Didn't you understand what I said?";
mes "I told you to study monsters.";
next;
mes "[Hermes Tris]";
mes "Go ask for help from Professor Lucius. He's in the Monster Museum.";
close;
}
else if (SAGE_Q == 13) {
mes "Huh? Didn't you understand what I said?";
mes "I told you to study magic spells that possess certain properties.";
next;
mes "[Hermes Tris]";
mes "Go ask a help from Professor Aebecee. He's in the Somatology Laboratory.";
close;
}
else if (SAGE_Q == 15) {
mes "What are you doing here? Aren't you supposed to be with Dean Kayron?";
mes "Oh well, there's no harm in showing me your dissertation though...";
next;
mes "[Hermes Tris]";
mes "But then again, maybe there is. Go see Dean Kayron.";
close;
}
else {
mes "Oh sorry, I'm quite busy at the moment...";
mes "If you have any questions, go visit the professor I've assigned to you.";
close;
}
}
yuno_in03,62,176,2 script History Professor#sa 109,{
mes "[Saphien Layless]";
if (BaseJob != Job_Mage) {
if (BaseJob == Job_Sage) {
mes "Do I know you? Were you one of my students?";
mes "Oh, it doesn't matter anyway. You wouldn't be a Sage without graduating from this academy...";
next;
mes "[Saphien Layless]";
mes "In any case, you must study the past in order to better understand the present and to predict...the future.";
mes "This sentence contains all the truth of the world.";
next;
mes "[Saphien Layless]";
mes "I guess you're treading the right path...";
mes "One of these days you'll look back to this moment and realize it changed your life.";
}
else if (BaseJob == Job_Novice) {
mes "A Novice? Why is a novice here?";
next;
mes "[Saphien Layless]";
mes "One whose life has many possibilities... ";
mes "How do you wish to lead your life?";
next;
mes "[Saphien Layless]";
mes "No matter what you decide to be, everything depends on your choice.";
mes "May God bless you so that you can choose the path best for you...";
}
else {
mes "Welcome, I am in charge of historical studies here in the academy.";
next;
mes "[Saphien Layless]";
mes "The world as we know it is a result of events that described in the records of the ages. It is historical events that have shaped the world as it is today.";
mes "Therefore, knowing the past means you will better understand the present and...the future.";
next;
mes "[Saphien Layless]";
mes "Reflect upon your past.";
mes "You will see your path in the future...";
}
close;
}
if (SAGE_Q == 9) {
if (SAGE_Q2 == 0) {
mes "Welcome, " + strcharinfo(0) + ". I am glad to meet you.";
mes "My name is Saphien Layless, I will be in charge of your class for a while.";
next;
mes "[Saphien Layless]";
mes "The subject you're studying is Yggdrasil.";
mes "So...do you even know what Yggdrasil is?";
next;
switch(select("Yes, I know very well.:No, I don't.")) {
case 1:
mes "[Saphien Layless]";
mes "Okay then, what is Yggdrasil?";
mes "Please answer me.";
next;
switch(select("It's a name of a health item.:It's the source of life in the world.:Suckah, I lied.")) {
case 1:
mes "[Saphien Layless]";
mes "Wrong. " + strcharinfo(0) + ", you got - 10 points.";
mes "That's just one of the gifts from Yggdrasil.";
next;
mes "[Saphien Layless]";
mes "Yggdrasil is the name of the tree that is the source of life in this world.";
break;
case 2:
mes "[Saphien Layless]";
mes "That's right. Yggdrasil, the so-called 'World Tree', ";
mes "is the name of the tree that has been the source of life in this world.";
break;
case 3:
mes "[Saphien Layless]";
mes "Great Schott...If you don't know, just say so.";
mes "By the way, " + strcharinfo(0) + ", you just got - 10 points for lying and for being wrong.";
break;
}
next;
break;
case 2:
mes "[Saphien Layless]";
mes "Ah well, I expected you would know at least a little bit about Yggdrasil...";
mes "Yggdrasil is the name of the tree that is the source of life in this world.";
next;
break;
}
mes "[Saphien Layless]";
mes "Before we start the class, I'll need some reserve items.";
mes "It's for better understanding of Yggdrasil.";
next;
mes "[Saphien Layless]";
mes "Anything is fine as long as it's related to the Yggdrasil tree.";
mes "Seeds or fruits of the tree would be good. I know it's difficult to find, but please try.";
next;
set SAGE_Q2,1;
mes "[Saphien Layless]";
mes "When we have the reserve items, we will start the class.";
mes "Please come back.";
close;
}
else {
if (countitem(607) > 0) {
mes "[Saphien Layless]";
mes "Oh, did you bring them with you? Excellent!";
mes "You brought Yggdrasilberry!";
next;
mes "[Saphien Layless]";
mes "Okay, now I am starting the class.";
mes "Listen carefully, I will not accept dozing off in the middle of class.";
next;
}
else if (countitem(608) > 0) {
mes "[Saphien Layless]";
mes "Hmm, did you prepare for class? Let's see...";
mes "Oh! So you brought me the Yggdrasil Seed?";
next;
mes "[Saphien Layless]";
mes "Very well. Now I am starting the class..";
mes "Listen carefully, I will not accept dozing off in the middle of class.";
next;
}
else if (countitem(610) > 0) {
mes "[Saphien Layless]";
mes "Hmm, did you prepare for class? Let's see...";
mes "Yggdrasil Leaf...";
next;
mes "[Saphien Layless]";
mes "You can purchase this item from the town of Al De Baran! You didn't show any effort.";
mes "So, I must give you - 10 points, " + strcharinfo(0) + ".";
next;
mes "[Saphien Layless]";
mes "Okay, now I am starting the class.";
mes "Listen carefully, I will not accept you dozing off in the middle of class, or any more slacking.";
next;
}
else {
mes "[Saphien Layless]";
mes "Huh? You're not ready to this class yet!";
mes "I told you to bring me any items related Yggdrasil.";
next;
mes "[Saphien Layless]";
mes "Tell me when you're ready.";
mes "Don't worry about being late, we professors are paid to wait around.";
close;
}
mes "[Saphien Layless]";
mes "The root of this world, Yggdrasil, is a gigantic tree.";
mes "It takes root all over the continent of Rune-Midgarts and its leaves reach the sky.";
next;
mes "[Saphien Layless]";
mes "Outside of this continent, there is a ocean where a giant snake named Yormungandr is coiled up.";
mes "The world as we know it consists of 3 places: Asgard, Midgard and Utgard.";
next;
mes "[Saphien Layless]";
mes "Utgard is where all the titans live.";
next;
mes "[Saphien Layless]";
mes "Midgard is where all human beings live.";
next;
mes "[Saphien Layless]";
mes "And Asgard is where the gods reside...";
mes "An ash tree taking root in the middle of the Rune-Midgarts continent, that is Yggdrasil.";
next;
mes "[Saphien Layless]";
mes "This continent was born from the heart of Ymir, and Yggdrasil holds the continent together by grasping it with its 3 roots.";
mes "These roots stretch into 3 different places.";
next;
mes "[Saphien Layless]";
mes "The first root reaches Asgard where the gods live and ";
mes "where we, mere humans, haven't yet explored or experienced.";
next;
mes "[Saphien Layless]";
mes "The second root reaches Jotunnheim where all the giants live.";
mes "We've been told this name many times through myths and legends.";
next;
mes "[Saphien Layless]";
mes "The third one reaches Niflheim.";
mes "That place is rumored to be covered with a thick, black fog.";
next;
mes "[Saphien Layless]";
mes "Items, such as Seed of Yggdrasil, Yggdrasilbrry and Leaf of Yggdrasil are";
mes "considered a part of Yggdrasil tree.";
next;
mes "[Saphien Layless]";
mes "Yggdrasilberry has a fascinating scent that is rumored to";
mes "restore full HP and SP at once.";
next;
mes "[Saphien Layless]";
mes "The seed of Yggdrasil which has the fragrance of a blooming flower and the flavor of nut is rumored to";
mes "restore half of HP and SP at once.";
next;
mes "[Saphien Layless]";
mes "The leaf of Yggdrasil which is filled with vital force is rumored to";
mes "revive the dead, bringing them back to this world.";
next;
mes "[Saphien Layless]";
mes "Lastly... if by some chance you discover a way into Asgard in the future, ";
mes "I hope you will find the Yggdrasil tree.";
next;
mes "[Saphien Layless]";
mes "Even though the story of the Yggdrasil tree only exists in myths and legends, ";
mes "we Sages are obligated to discover the truth of the Yggdrasil tree.";
next;
mes "[Saphien Layless]";
mes "That is the end of today's class.";
mes "Please record the articles you've learned today, and try to remember as much as you can.";
next;
mes "[Saphien Layless]";
mes "In the next class, you will write a thesis about Yggdrasil...";
mes "Please bring the following items to prepare for class.";
next;
mes "[Saphien Layless]";
mes "^3355FF1 Feather of Birds^000000 which will be used as a pen,";
mes "^3355FF1 Animal Skin^000000 which will be used as paper,";
mes "^3355FF1 Trunk^000000 which will be used to bind a book,";
mes "^3355FF1 Squid Ink^000000 which will be used as ink,";
mes "^3355FF1 Empty Bottle^000000 which will be used for holding the squid ink.";
next;
set SAGE_Q2,0;
set SAGE_Q,10;
mes "[Saphien Layless]";
mes "I will help you to write your thesis when you're ready with all those items.";
mes "I am looking forward to the next class with you.";
close;
}
}
else if (SAGE_Q == 10) {
if (countitem(916) > 0 && countitem(919) > 0 && countitem(1019) > 0 && countitem(1024) > 0 && countitem(713) > 0) {
delitem 916,1; //Feather_Of_Birds
delitem 919,1; //Animal's_Skin
delitem 1019,1; //Wooden_Block
delitem 1024,1; //Chinese_Ink
delitem 713,1; //Empty_Bottle
mes "Now, you're writing your thesis.";
mes "I will assist you with your writing.";
next;
mes "..........";
next;
mes "....................";
next;
mes ".................................";
next;
mes ".....There is a ocean around the continent,";
mes "The ocean is coiled up by";
switch(select("A giant ash tree.:A giant snake Yormungandr.:A giant turtle and elephants.:A giant dragon.")) {
case 1:
set .@w_point,.@w_point+1;
mes "A giant ash tree.";
break;
case 2:
mes "A giant snake Yormungandr.";
break;
case 3:
set .@w_point,.@w_point+1;
mes "A giant turtle and elephants.";
break;
case 4:
set .@w_point,.@w_point+1;
mes "A giant dragon.";
break;
}
mes "The continent consists of three places such as,";
switch(select("Mt.Mjolnir, where spiders live,:Uranos, where titans live,:Utgard, where titans live,:Lutie, the winter land,")) {
case 1:
set .@w_point,.@w_point+1;
mes "Mt.Mjolnir where spiders live,";
break;
case 2:
set .@w_point,.@w_point+1;
mes "Uranos where titans live,";
break;
case 3:
mes "Utgard where titans live,";
break;
case 4:
set .@w_point,.@w_point+1;
mes "Lutie, the winter land,";
break;
}
switch(select("Midgard, where humans live,:Rune-Midgarts where humans live,:Tritonia, where mermaids live,:Morroc, the desert city,")) {
case 1:
mes "Midgard, where humans live in,";
break;
case 2:
set .@w_point,.@w_point+1;
mes "Rune-Midgarts, where humans live,";
break;
case 3:
set .@w_point,.@w_point+1;
mes "Tritonia, where mermaids live,";
break;
case 4:
set .@w_point,.@w_point+1;
mes "Morroc, the desert city,";
break;
}
switch(select("Abguard, where gods live.:Asgard, where gods live.:Schwarzwald, where citizens live.:Prontera, the capital of Rune-Midgarts.")) {
case 1:
set .@w_point,.@w_point+1;
mes "Abguard where gods live.";
break;
case 2:
mes "Asgard, where gods live.";
break;
case 3:
set .@w_point,.@w_point+1;
mes "Schwarzwald, where citizens live.";
break;
case 4:
set .@w_point,.@w_point+1;
mes "Prontera, the capital of Rune-Midgarts.";
break;
}
mes "The continent consists of the three places stated above.";
next;
if (.@w_point > 0) {
mes "[Saphien Layless]";
mes "..." + strcharinfo(0) + ", have you lost your mind?";
mes "Your work is too poor to be considered as a thesis!";
next;
mes "[Saphien Layless]";
mes "I don't think you can submit your work to the dean.";
mes "Go study harder and try again!";
close;
}
mes ".....as we studied from the last class,";
mes "Yggdrasil is...";
switch(select("A giant ash tree.:A fabulous Mastella tree.:A giant willow.:A giant dead branch.")) {
case 1:
mes "A giant ash tree.";
break;
case 2:
set .@w_point,.@w_point+1;
mes "A fabulous Mastella tree.";
break;
case 3:
set .@w_point,.@w_point+1;
mes "A giant willow.";
break;
case 4:
set .@w_point,.@w_point+1;
mes "A giant dead branch.";
break;
}
mes "The root of Yggdrasil is divided into 3 parts. Those parts reach to 3 places...";
switch(select("Schwarzwald, Jotunnheim, Niflheim.:Midgard, Jotunnheim, Naffleheim.:Asgard, Jotunnheim, Naffleheim.:Asgard, Jotunnheim, Niflheim.")) {
case 1:
set .@w_point,.@w_point+1;
mes "Schwarzwald, Jotunnheim, Niflheim.";
break;
case 2:
set .@w_point,.@w_point+1;
mes "Midgard, Jotunnheim, Naffleheim.";
break;
case 3:
set .@w_point,.@w_point+1;
mes "Asgard, Jotunnheim, Naffleheim.";
break;
case 4:
mes "Asgard, Jotunnheim, Niflheim.";
break;
}
mes "One who has a Seed of Yggdrasil,";
switch(select("can be cured from all the abnormal statuses.:can restore full HP and SP at once.:can restore half of total HP and SP.:can be cured from Silence, Curse and Chaos.")) {
case 1:
set .@w_point,.@w_point+1;
mes "can be cured from all the abnormal statuses.";
break;
case 2:
set .@w_point,.@w_point+1;
mes "can restore full HP and SP at once.";
break;
case 3:
mes "can restore half of total HP and SP.";
break;
case 4:
set .@w_point,.@w_point+1;
mes "can be cured from Silence, Curse and Chaos.";
break;
}
next;
if (.@w_point > 0) {
mes "[Saphien Layless]";
mes "..." + strcharinfo(0) + ", have you lost your mind?";
mes "Your work is too poor to be considered as a thesis!";
next;
mes "[Saphien Layless]";
mes "I don't think you can submit your work to the dean.";
mes "Go study harder and try again!";
close;
}
mes "..........";
next;
mes "....................";
next;
mes ".................................";
next;
set SAGE_Q,15;
mes "[Saphien Layless]";
mes "Oh, did you finish already? Well done.";
mes "Please handle this with care, because you won't be able to do this ever again.";
getitem 1550,1; //Book
next;
mes "[Saphien Layless]";
mes "I assume you're ready to submit your work to the dean.";
mes "Whether you will pass the test or not is his decision.";
close;
}
else {
mes "I am not sure that you're ready to write a thesis.";
mes "I am afraid to say I already informed you of what you need.";
next;
mes "[Saphien Layless]";
mes "^3355FF1 Feather of Birds^000000 which will be used as a pen,";
mes "^3355FF1 Animal Skin^000000 which will be used as paper,";
mes "^3355FF1 Trunk^000000 which will be used to bind a book,";
mes "^3355FF1 Squid Ink^000000 which will be used as ink,";
mes "^3355FF1 Empty Bottle^000000 which will be used for holding squid ink.";
next;
mes "[Saphien Layless]";
mes "I will assist you in writing your thesis.";
mes "Please bring all those items with you.";
close;
}
}
else if (SAGE_Q == 15) {
mes "Huh? Aren't you supposed to head over to the dean?";
mes "If you've finished writing your thesis, please bring it to the dean.";
next;
mes "[Saphien Layless]";
mes "You can have only one chance to write your thesis before you become a Sage.";
mes "So please move on.";
close;
}
else {
mes "I am not sure if you have business with me, but please come back later.";
mes "I have some issues to think about..";
close;
}
}
yuno_in03,32,102,1 script Biology Professor#sa 755,{
mes "[Lucius Celsus]";
if (BaseJob != Job_Mage) {
if (BaseJob == Job_Sage) {
mes "What is your business with me?";
mes "You must make a reservation a week in advance if you have any questions.";
next;
mes "[Lucius Celsus]";
mes "You don't know how busy person I am...don't you?";
mes "If you're a Sage, you're supposed to know about me by now.";
next;
mes "[Lucius Celsus]";
mes "You have too much time on your hands. Go explore some dungeons.";
mes "I think it will be more helpful than wasting your time on me.";
}
else if (BaseJob == Job_Novice) {
mes "What brings you to me, kid?";
next;
mes "[Lucius Celsus]";
mes "You'd better go out and play with your pals. ";
mes "This is not a place where you can fool around.";
}
else {
mes "Hmm? What brings you to me? Are you interested in watching monsters?";
next;
mes "[Lucius Celsus]";
mes "You're allowed to watch. However, do not disturb them by making any fuss.";
mes "And keep your hands off, some of these guys are way too dangerous to touch.";
next;
mes "[Lucius Celsus]";
mes "By the way, if you catch any rare monsters in future, let me know.";
mes "I am willing to purchase those at any cost.";
}
close;
}
if (SAGE_Q == 11) {
if (SAGE_Q2 == 0) {
mes "Welcome to my class, did you earn good results in the practical exam?";
mes "My name is Lucius Celsus, the expert of Biology.";
next;
mes "[Lucius Celsus]";
mes "Huh...how rude of you! You're expected to introduce yourself to me as soon as I greet you!";
mes "What is your name, young one?";
next;
select(strcharinfo(0));
mes "[Lucius Celsus]";
mes "A fine name. It's nice to meet you.";
mes "So, are you aware of the subject you're studying?";
next;
mes "[Lucius Celsus]";
mes "As you know, your topic of study is monsters.";
mes "How many times have you fought with monsters?";
next;
if (select("Well, I can't even count.:A few times, I guess...") == 1) {
mes "[Lucius Celsus]";
mes "Oh shut up, you brat. Don't be so sure about yourself.";
mes "Even if you have much experience with monsters, you will have a hard time comprehending my lecture.";
}
mes "[Lucius Celsus]";
mes "Yes, that's what I guessed about you. You're just book smart.";
mes "However, I am sure you will encounter most of the monsters mentioned in my lecture.";
next;
set sage_m4,rand(1,3);
mes "[Lucius Celsus]";
mes "Let's get started.";
mes "Make sure you're ready for the practical examination during my lecture.";
next;
if (sage_m4 == 1) {
set SAGE_Q2,1;
mes "[Lucius Celsus]";
mes "Go bring the following items to me.";
mes "5 ^3355FFTentacle^000000,";
mes "5 ^3355FFSingle Cell^000000,";
mes "5 ^3355FFFish Tail^000000.";
}
else if (sage_m4 == 2) {
set SAGE_Q2,2;
mes "[Lucius Celsus]";
mes "Go bring the following items to me.";
mes "5 ^3355FFNipper^000000,";
mes "5 ^3355FFClam Flesh^000000,";
mes "5 ^3355FFHeart of Mermaid^000000.";
}
else {
set SAGE_Q2,3;
mes "[Lucius Celsus]";
mes "Go bring following items to me.";
mes "5 ^3355FFTendon^000000,";
mes "5 ^3355FFNipper^000000,";
mes "5 ^3355FFSharp Scale^000000.";
}
next;
mes "[Lucius Celsus]";
mes "I will proceed with the class when you bring those to me.";
mes "Have fun.";
close;
}
else if (SAGE_Q2 >= 1 && SAGE_Q2 <=3) {
switch(SAGE_Q2) {
case 1: setarray .@items[0],962,1052,1023; break;
//Nipper, Clam Flesh, Heart of Mermaid
case 2: setarray .@items[0],960,966,950; break;
//Tendon, Nipper, Sharp Scale
case 3: setarray .@items[0],1050,960,963; break;
}
if (countitem(.@items[0]) > 4 && countitem(.@items[1]) > 4 && countitem(.@items[2]) > 4) {
mes "You showed great effort to gather all of those.";
mes "Well, I am not sure if you gathered them by yourself or bought them from shops...";
next;
mes "[Lucius Celsus]";
mes "Somehow the monsters that drop those items have something in common.";
mes "Can you tell me what that similarity is?";
next;
switch(select("They possess water property.:They are fishes.:They are aggressive.:Um...they monsters.")) {
case 1:
mes "[Lucius Celsus]";
mes "Yes, they possess water property and at the same time they are fishes.";
mes "Most fish class monsters live underwater, so they are attributed with the water property.";
break;
case 2:
mes "[Lucius Celsus]";
mes "Yes, they possess water property and at the same time they are fishes.";
mes "Most fish class monsters live underwater, so they are attributed with the water property.";
break;
case 3:
set sage_m4,4;
mes "[Lucius Celsus]";
mes "...I didn't know Phens were aggressive nowadays?";
mes "Or do Marina and Plankton team up to start a fight with you?";
next;
mes "[Lucius Celsus]";
mes "All the monsters from which you obtained these items are not agressive... get a grip.";
mes "They are all fishes and possess water property.";
break;
case 4:
set sage_m4,4;
mes "[Lucius Celsus]";
mes "What...! What are you here for!? You are here to study about specific monsters, microcephalic moron!";
mes "Sigh...they are all fishes and possess water property.";
break;
}
next;
mes "[Lucius Celsus]";
mes "Not all fish class monsters possess water property, but most of them do.";
mes "So which kind of magic would work best on most fish class monsters?";
next;
switch(select("Lightening Bolt.:Fire Bolt.:Thunder Storm.:Frost Diver.")) {
case 1:
mes "[Lucius Celsus]";
mes "That's right, Lightening Bolt, which possesses the wind property, works best on water property monsters.";
mes "Although you might want to be careful of monsters that recognize magic casting.";
break;
case 2:
set sage_m4,4;
mes "[Lucius Celsus]";
mes "What? Fire Bolt! Fire cannot beat water, you imbecile!";
mes "Most fishes are attributed with the water property. Therefore, they are weak to wind property magic spells. Don't you get it?";
break;
case 3:
mes "[Lucius Celsus]";
mes "Yeah, Thunder Storm spell is fine... it's a wind property spell.";
mes "However, you will be in trouble if you use the spell in a poorly chosen spot.";
break;
case 4:
set sage_m4,4;
mes "[Lucius Celsus]";
mes "I can't fathom such stupidity! This question asks you to choose a property that counters water! Don't you get it?";
mes "Logically, any magic spell possessing the water property cannot overcome the water atrribute monsters!";
break;
}
next;
mes "[Lucius Celsus]";
mes "By the way, although some monsters such as Penomena or Aster are considered to be fish class monsters, ";
mes "they have a different property than the others. You'd better be careful with them.";
next;
mes "[Lucius Celsus]";
mes "Okay, let me teach you about insect monsters.";
mes "Let's see... hmm... hmm...";
next;
switch(rand(1,4)) {
case 1:
set SAGE_Q2,4;
mes "5 ^3355FFCobweb^000000,";
mes "5 ^3355FFShell^000000,";
mes "5 ^3355FFInsect Feeler^000000.";
break;
case 2:
set SAGE_Q2,5;
mes "5 ^3355FFHorn^000000,";
mes "5 ^3355FFSnail's Shell^000000,";
mes "5 ^3355FFMoth Dust^000000.";
break;
case 3:
set SAGE_Q2,6;
mes "5 ^3355FFMantis Scythe^000000,";
mes "5 ^3355FFWorm Peeling^000000,";
mes "5 ^3355FFRainbow Shell^000000.";
break;
case 4:
set SAGE_Q2,7;
mes "5 ^3355FFCobweb^000000,";
mes "5 ^3355FFMantis Scythe^000000,";
mes "5 ^3355FFSolid Shell^000000.";
}
next;
mes "[Lucius Celsus]";
mes "I will proceed with the class when you bring those to me.";
mes "Have fun.";
close;
}
mes "What, you already forgot what I told you just a minute before?";
mes "What a nusance... listen carefully this time.";
next;
mes "[Lucius Celsus]";
mes "5 ^3355FF"+getitemname(.@items[0])+"^000000,";
mes "5 ^3355FF"+getitemname(.@items[1])+"^000000,";
mes "5 ^3355FF"+getitemname(.@items[2])+"^000000,";
close;
}
else if (SAGE_Q2 >= 4 && SAGE_Q2 <= 7) {
switch(SAGE_Q2) {
case 4: setarray .@items[0],1025,935,928; break;
//Horn, Snail's Shell, Moth Dust
case 5: setarray .@items[0],947,946,1057; break;
//Mantis Scythe, Worm Peeling, Rainbow Shell
case 6: setarray .@items[0],1031,955,1013; break;
//Cobweb, Mantis Scythe, Solid Shell
case 7: setarray .@items[0],1025,1031,943; break;
}
if (countitem(.@items[0]) > 4 && countitem(.@items[1]) > 4 && countitem(.@items[2]) > 4) {
mes "Well done. So, did you watch insects while gathering those items?";
mes "Oh well, I believe you did a good job with the task.";
next;
mes "[Lucius Celsus]";
mes "Insect class monsters do not share the same property most of the time, ";
mes "You must think twice before you cast a magic spell on an insect.";
next;
mes "[Lucius Celsus]";
mes "It's remarkable that insects can detect hidden objects.";
mes "Therefore, any hiding skill such as the Hiding skill or Cloaking skill will not work on insect monsters.";
next;
mes "[Lucius Celsus]";
mes "Some insects form a group and live together.";
mes "They are controlled by the head of the group...";
next;
mes "[Lucius Celsus]";
mes "For instance, Maya the queen ant...";
mes "Mistress, the queen of hornets,";
mes "or Golden Thiefbug, the king of thiefbugs...";
next;
mes "[Lucius Celsus]";
mes "You cannot beat those boss monsters alone, ";
mes "you'd better form a party if you want to fight with them.";
next;
mes "[Lucius Celsus]";
mes "That's the end of my class...it's time for you to write a thesis.";
mes "Bring me following items for writing the thesis.";
next;
mes "[Lucius Celsus]";
mes "^3355FF1 Feather of Birds^000000 which will be used as a pen,";
mes "^3355FF1 Animal Skin^000000 which will be used as paper,";
mes "^3355FF1 Trunk^000000 which will be used to bind a book,";
mes "^3355FF1 Squid Ink^000000 which will be used as ink,";
mes "^3355FF1 Empty Bottle^000000 which will be used for holding squid ink.";
next;
set SAGE_Q2,0;
set SAGE_Q,12;
mes "[Lucius Celsus]";
mes "I will help you in writing the thesis when you bring all of those items.";
mes "You're almost there. Isn't learning easy?";
close;
}
mes "What, you already forgot what I told you?";
mes "What a nuisance...listen carefully this time.";
next;
mes "[Lucius Celsus]";
mes "5 ^3355FF"+getitemname(.@items[0])+"^000000,";
mes "5 ^3355FF"+getitemname(.@items[1])+"^000000,";
mes "5 ^3355FF"+getitemname(.@items[2])+"^000000,";
close;
}
mes "Zzz...Zzz...";
close;
}
else if (SAGE_Q == 12) {
if (countitem(916) > 0 && countitem(919) > 0 && countitem(1019) > 0 && countitem(1024) > 0 && countitem(713) > 0) {
delitem 916,1; //Feather_Of_Birds
delitem 919,1; //Animal's_Skin
delitem 1019,1; //Wooden_Block
delitem 1024,1; //Chinese_Ink
delitem 713,1; //Empty_Bottle
mes "Hmph. Lucky brat brought all of the items.";
mes "Well, I don't expect you to write an outrageously great thesis though...";
next;
mes "[Lucius Celsus]";
mes "Well, if you really want to write it by yourself, I can let you handle it but...";
mes "I will give you a work of staggering genius. Just make a copy of it under your name.";
next;
mes "[Lucius Celsus]";
mes "You got a problem with that? Tough, that's my style.";
mes "Just do what I say.";
next;
mes "..........";
next;
mes "....................";
next;
mes ".................................";
next;
select(".....Monsters vary by physical appearance,");
mes ".....Monsters vary by physical appearance,";
select("...and possess various elemental properties.");
mes "...and possess various elemental properties.";
select("You must be aware of each monster's properties,");
mes "You must be aware of each monster's properties,";
select("...and be aware that certain spells work differently on different monsters.");
mes "...and be aware that certain spells work differently on different monsters.";
select("You must be especially careful of holy property and shadow property monsters.");
mes "You must be especially careful of holy property and shadow property monsters.";
select("These monsters are most dangerous, though occasionally cute.");
mes "These monsters are most dangerous.";
next;
mes "..........";
next;
mes "....................";
next;
mes ".................................";
next;
set SAGE_Q,15;
mes "[Lucius Celsus]";
mes "Are you done? Okay, then it's over.";
mes "You won't be able to write another thesis again, handle this with care.";
getitem 1550,1; //Book
next;
mes "[Lucius Celsus]";
mes "Show this masterpiece to the dean.";
mes "Then, he will let you graduate from the academy. See you.";
close;
}
else {
mes "What, are you sure that you're ready? No, I don't think so.";
mes "Oh well... listen carefully this time.";
next;
mes "[Lucius Celsus]";
mes "^3355FF1 Feather of Birds^000000 which will be used as a pen,";
mes "^3355FF1 Animal Skin^000000 which will be used as paper,";
mes "^3355FF1 Trunk^000000 which will be used to bind a book,";
mes "^3355FF1 Squid Ink^000000 which will be used as ink,";
mes "^3355FF1 Empty Bottle^000000 which will be used for holding squid ink.";
next;
mes "[Lucius Celsus]";
mes "You have been doing fine, I guess you can do this without a problem.";
mes "Go get them. Hurry up.";
close;
}
}
else if (SAGE_Q == 15) {
mes "What are you doing here, Go show your thesis to the dean!";
mes "Don't wasn't any more time here.";
next;
mes "[Lucius Celsus]";
mes "It seems you have too much time on your hands. Okay, I will assign you some tasks.";
mes "Hahaha, did you say no? Alright then, fine. Scram.";
close;
}
else {
mes "Wah~! My brain is gonna blow up soon! Why must I have to prepare all of these things?!";
mes "Who are you?! Don't disturb me, I'm busy!!";
next;
mes "[Lucius Celsus]";
mes "If you just want to watch monsters here, fine with me...";
mes "Just don't ask me any questions.";
close;
}
}
yuno_in03,244,31,3 script Physics Professor#sa 120,{
mes "[Aebecee George]";
if (BaseJob != Job_Mage) {
if (BaseJob == Job_Sage) {
mes "Tee hee, hello there! What brings you here again, sweetie?";
mes "Oh, I see... you're just excited because you finally became a Sage? Tee hee~";
next;
mes "[Aebecee George]";
mes "Oh well, although you have become a Sage, you're just doing the same thing, tee hee...we're mages down to the core!";
mes "We're way better than any other class because we're pretty good with our heads, you know?";
next;
mes "[Aebecee George]";
mes "Okay, is there anything you want to talk about?";
mes "Oh dearie, don't be nervous...where's your sense of adventure?";
}
else if (BaseJob == Job_Novice) {
mes "Well, aren't you the cutest little Novice~";
next;
mes "[Aebecee George]";
mes "What are you doing here, sweetcakes? Do you just come over to see what's in here?";
mes "Do you want some candy? Candy, my precious? Tee hee.";
next;
mes "[Aebecee George]";
mes "Oh gosh...Sorry, I thought I had some...";
mes "But I've got other treats, you catch my drift?";
}
else {
mes "Hey there, tee hee, how's it going sailor?";
next;
mes "[Aebecee George]";
mes "Did you come here to look around? Huh...?";
mes "Well, if you're not here for business, you must be here...";
next;
mes "[Aebecee George]";
mes "...for PLEASURE.";
mes "Hey wait! Come back~!";
}
close;
}
if (SAGE_Q == 13) {
if (SAGE_Q2 == 0) {
mes "Hello~? Nice to meet you, tee hee.";
mes "Did you come to see me? Oh, you're a student!";
next;
mes "[Aebecee George]";
mes "Tee hee, I am the Professor in charge of you, Abecee George.";
mes "So...aren't you happy to be with me, dearie? Aren't you gay? Tee hee~";
next;
mes "[Aebecee George]";
mes "However, before we get start class, I need you to do me...a favor.";
mes "Don't be scared, its just an eensy weensy favor. Tee hee~";
next;
mes "[Aebecee George]";
mes "Please bring me ^3355FF30 Stone^000000, that's all.";
mes "It's not so hard, isn't it?";
next;
set SAGE_Q2,1;
mes "[Aebecee George]";
mes "Why don't you ask a thief pal for help?";
mes "We'll start the class when you bring me those stones~ Tee hee~";
close;
}
else if (SAGE_Q2 == 1) {
if (countitem(7049) > 29) {
mes "Oh~ how sweet! You brought them all~ thank you~";
mes "Oh, can you wait a little bit? I need to do something before we start. Tee hee~";
next;
mes "[Aebecee George]";
mes "Hocus-focus!!";
next;
mes "[Aebecee George]";
mes "Hocus~focus!!";
next;
mes "[Aebecee George]";
mes "Ho~cus~fo~cus!!";
next;
delitem 7049,30; //Stone
mes "[Aebecee George]";
mes "Tee hee, you naughty stone~";
mes "Only 3 of them worked for me. Tee hee~";
next;
mes "[Aebecee George]";
mes "Here's my other favor to ask of you. Oh, are those tears of...joy?";
mes "Oh, I'm sooo excited too! Tee hee~";
next;
getitem 991,1; //Crystal_Blue
getitem 993,1; //Yellow_Live
getitem 992,1; //Wind_Of_Verdure
mes "[Aebecee George]";
mes "I will give you these elemental ores...but...they are not for free.";
mes "Whoa there cowboy! Don't pull out so soon~ Listen, tee hee~";
set SAGE_Q2,2;
next;
mes "[Aebecee George]";
mes "Please make arrows using these items and bring them to me, pretty please~";
mes "50 ^3355FFCrystal Arrow^000000,";
mes "50 ^3355FFStone Arrow^000000,";
mes "50 ^3355FFWind Arrow^000000.";
next;
mes "[Aebecee George]";
mes "Ask any of your Archer friends if you know any.";
mes "I am looking forward to seeing you again, tee hee~";
close;
}
else {
mes "You don't have all the items? And here I was, getting all hot and bothered.";
mes "Go on, sweetheart, and hurry baaack~";
next;
mes "[Aebecee George]";
mes "I asked you to bring ^3355FF30 Stone^000000.";
mes "There are many out there, so you won't have too hard a time getting them~ tee hee.";
close;
}
}
else if (SAGE_Q2 == 2) {
if (countitem(1754) > 49 && countitem(1756) > 49 && countitem(1755) > 49) {
mes "Oh~ how sweet! You brought them all~ Oh thank you~";
mes "Well now, let's get down to business. Tee hee~";
next;
mes "[Aebecee George]";
mes "I'll say something, and you just write everything down.";
mes "Don't forget to underline the important sentences~";
next;
mes "[Aebecee George]";
mes "Water property magic is sooo strong against the fire property.";
mes "Just remember those burly, sexay fire fighters, shall we say, putting out that fire with water. Ooh, wet!";
next;
mes "[Aebecee George]";
mes "Wind property magic totally dominates the water property! Oh, yes~";
mes "Think of a hot flash, and by that I mean ligntening, striking a lake. Oh, I'm bad!";
next;
mes "[Aebecee George]";
mes "In terms of strength, magic with earth property goes on top of wind property magic! Ho~~";
mes "Just think of how the wind passionately beats against the cliffside near the Lookout Point or Lover's Lane. Tee hee~";
next;
mes "[Aebecee George]";
mes "Magic with fire property is strong against earth property! Tee hee~";
mes "Just think of burning wood, sprung from the earth, in a cozy fireplace. On the bearskin, in the dark~";
next;
mes "[Aebecee George]";
mes "...Oh my gosh! Time flies sooo fast!";
mes "Let's call it a day, dear, tee hee~";
next;
delitem 1754,50; //Crystal_Arrow
delitem 1756,50; //Stone_Arrow
delitem 1755,50; //Arrow_Of_Wind
mes "[Aebecee George]";
mes "When you come to the next class, bring ^3355FF1 Holy Water^000000~";
mes "I hope you have at least one Priest friend. Oh, you don't? Well, it couldn't hurt to get friendly with one.";
set SAGE_Q2,3;
close;
}
else {
mes "What are you doing here, precious...are you trying to fool me? Tee hee~";
mes "I hope you didn't sell the elemental ores I gave you? Naughty naughty~ Don't you know diamonds are a girl's best friend? Tee hee~";
next;
mes "[Aebecee George]";
mes "50 ^3355FFCrystal Arrow^000000,";
mes "50 ^3355FFStone Arrow^000000,";
mes "50 ^3355FFWind Arrow^000000.";
mes "Ask your Archer friend if you have one~ tee hee.";
close;
}
}
else if (SAGE_Q2 == 3) {
if (countitem(523) > 0) {
mes "Oh~ how sweet! You brought some Holy Water~ thanks honey~";
mes "Oh righty, we should start class. Tee hee~";
next;
mes "[Aebecee George]";
mes "Just Like last time, I will speak and you just write down everything I say.";
mes "Even if you don't understand, just pretend and go with the flow, alright? Tee hee~";
next;
mes "[Aebecee George]";
mes "Water Magic is weak against wind property! Yes, that's right~";
mes "Just remember why you don't keep the electric fan around when you're taking a hot bubble bath. Ooh! So electric!";
next;
mes "[Aebecee George]";
mes "Magic with the wind property is weak against earth property!";
mes "Think of how the wind can't, shall we say, penetrate a mud facial mask~";
next;
mes "[Aebecee George]";
mes "Magic with earth property is weak against fire property! Tee hee~";
mes "Just think of burning wood, sprung from the earth, in a cozy fireplace. On the be--oh? I said that already? Oh poopy.";
next;
mes "[Aebecee George]";
mes "Magic with fire property is weak against water property! Yes~";
mes "When things get flaming hot, it's best to splash things in cold water. Don't you agree~?";
next;
mes "[Aebecee George]";
mes "Oh, it's the end of the class~ tee hee.";
mes "So? Do you think you've learned a lot? You can thank me, honey!";
next;
delitem 523,1; //Holy_Water
mes "[Aebecee George]";
mes "Well, that's it. You can write your thesis with what I've taught you!";
mes "Tee hee~ yes! Yes! I am the best teacher in the world! Oh, I am on fire! Tee hee~";
set SAGE_Q2,0;
set SAGE_Q,14;
next;
mes "[Aebecee George]";
mes "Okay, please gather these items so you can write the thesis, dear~ Tee hee~";
mes "^3355FF1 Feather of Birds^000000 which will be used as a pen,";
mes "^3355FF1 Animal Skin^000000 which will be used as paper,";
mes "^3355FF1 Trunk^000000 which will be used to bind a book,";
mes "^3355FF1 Squid Ink^000000 which will be used as ink,";
mes "^3355FF1 Empty Bottle^000000 to keep that Squid Ink from splashing.";
next;
mes "[Aebecee George]";
mes "So get on out there cowboy and hurry back~ Tee hee~";
close;
}
else {
mes "What are you doing here, precious...are you playing games? Tee hee.";
mes "Oh, poor dear. Did you already forget what I told you? Do you want me to remind you? Tee hee~";
next;
mes "[Aebecee George]";
mes "^3355FF1 Holy Water^000000,";
mes "It couldn't hurt to get friendly with an Aco or Priest...tee hee.";
close;
}
}
else {
mes "So...do you have the time? I'm kidding, girlfriend!";
close;
}
}
else if (SAGE_Q == 14) {
if (countitem(916) > 0 && countitem(919) > 0 && countitem(1019) > 0 && countitem(1024) > 0 && countitem(713) > 0) {
delitem 916,1; //Feather_Of_Birds
delitem 919,1; //Animal's_Skin
delitem 1019,1; //Wooden_Block
delitem 1024,1; //Chinese_Ink
delitem 713,1; //Empty_Bottle
mes "Okay~ so its now or never~ tee hee~";
mes "I taught you everything I know. Don't be nervous, you'll be okay~";
next;
mes "..........";
next;
mes "....................";
next;
mes ".................................";
next;
mes ".....Magic spells are varied into 4 elements such as";
switch(select("Water, Earth, Fire and Wind.:Earth, Water, Fire and Wind.:Water, Wind, Earth and Fire.")) {
case 1:
mes "Water, Earth, Fire and Wind.";
break;
case 2:
mes "Earth, Water, Fire and Wind.";
break;
case 3:
mes "Water, Wind, Earth and Fire.";
break;
}
mes "Each property has an opposing property,";
switch(select("Magic with wind property is strong against water:Magic with water property is strong against fire:Magic with fire property is strong against earth")) {
case 1:
mes "Magic with wind property is strong against water";
break;
case 2:
mes "Magic with water property is strong against fire";
break;
case 3:
mes "Magic with fire property is strong against earth";
break;
}
mes "Magic with earth property is strong against wind.";
switch(select("However, that does not work on the opposite case :This theory works the same for earth property weapons:Elemental properties are varied by monster types")) {
case 1:
mes "However, that does not work on the opposite case ";
break;
case 2:
mes "This theory works the same for earth property weapons";
break;
case 3:
mes "Elemental properties are varied by monster types";
break;
}
switch(select("You must be aware of the limit of your ability.:You must apply different types of property by the situation or place.:Red Potion is rumored to taste like strawberries.")) {
case 1:
mes "You must be aware of the limit of your ability.";
break;
case 2:
mes "You must apply different types of property by the situation or place.";
break;
case 3:
mes "Red Potion is rumored to taste like strawberries.";
break;
}
next;
switch(select("The most adorable NPC is YuPi in Prontera:Red Potion is rumored to be made out of Porings:You never know the limits of magic")) {
case 1:
mes "The most adorable NPC is YuPi in Prontera";
break;
case 2:
mes "Red Potion is rumored to be made out of Porings";
break;
case 3:
mes "You never know the limits of magic";
break;
}
switch(select("Merchant Lady in Morroc is also as cute as YuPi.:Nobody knows why Red Potion tastes like strawberries.:It is not suggested to be too addicted to magic spells.")) {
case 1:
mes "Merchant Lady in Morroc is also as cute as YuPi.";
break;
case 2:
mes "Nobody knows why Red Potion tastes like strawberries.";
break;
case 3:
mes "It is not suggested to be too addicted to magic spells.";
break;
}
switch(select("If I had a Bunny Band,:If so, what about the taste of White Potion?:Only pertinent uses of magic, as well as rest")) {
case 1:
mes "If I had a Bunny Band,";
break;
case 2:
mes "If so, what about the taste of White Potion?";
break;
case 3:
mes "Only pertinent uses of magic, as well as rest";
break;
}
switch(select("I would want to give it to her as a present.:I can't even imagine the taste.:will guarantee you a safe battle.")) {
case 1:
mes "I would want to give it to her as a present.";
break;
case 2:
mes "I can't even imagine the taste.";
break;
case 3:
mes "will guarantee you a safe battle.";
break;
}
switch(select("Although the Bunny Band best fits the Acolyte class:I love this thrilling feeling:Forming a party with people of different classes")) {
case 1:
mes "Although the Bunny Band best fits the Acolyte class";
break;
case 2:
mes "I love this thrilling feeling";
break;
case 3:
mes "Forming a party with people of different classes";
break;
}
switch(select("I still wonder if the Bunny Band would be perfect for GOD-POING.:I won't be able to drink it even if my HP is less than 1.:is considered the best way to ready for battle.")) {
case 1:
mes "I still wonder if the Bunny Band would be perfect for GOD-POING.";
break;
case 2:
mes "I won't be able to drink it even if my HP is less than 1.";
break;
case 3:
mes "is considered the best way to ready for battle.";
break;
}
next;
mes "..........";
next;
mes "....................";
next;
mes ".................................";
next;
set SAGE_Q,15;
mes "[Aebecee George]";
mes "Tee hee, so... are you done with your thesis? What do you think of your work? I think you did fine~";
mes "Don't forget, this is the first and the last time you'll write a thesis, okay? Tee hee~";
getitem 1550,1; //Book
next;
mes "[Aebecee George]";
mes "Okay, now you can show the dean your thesis~";
mes "You're almost there~ tee hee.";
close;
}
else {
mes "What are you still doing here, sweet cheeks? Tee hee~";
mes "Oh, poor dear. Did you already forget what I told you? Do you want me to remind you? Not a problem, tee hee.";
next;
mes "[Aebecee George]";
mes "^3355FF1 Feather of Birds^000000 which will be used as a pen,";
mes "^3355FF1 Animal Skin^000000 which will be used as paper,";
mes "^3355FF1 Trunk^000000 which will be used to bind a book,";
mes "^3355FF1 Squid Ink^000000 which will be used as ink,";
mes "^3355FF1 Empty Bottle^000000 which will be used for holding squid ink.";
next;
mes "[Aebecee George]";
mes "You are supposed to prepare all of those items, aren't you?";
mes "Hurry baaack~! Tee hee~";
close;
}
}
else if (SAGE_Q == 15) {
mes "What are you doing here, dearie? Don't you want to meet the dean and show him your stuff?";
mes "Take it from me, boys like him won't wait for you forever, tee hee~";
next;
mes "[Aebecee George]";
mes "I know, I know...you wanna play with little ol' me. But you should become a Sage first.";
mes "Please hurry up, tee hee.";
close;
}
else {
mes "Well well...what do we have here?";
next;
mes "[Aebecee George]";
mes "You're not a Sage. Pity, sweet thang like yourself...";
mes "But seeing as you're not here for business, you must be here for...";
next;
mes "[Aebecee George]";
mes "...PLEASURE. Wait, where are you going, hon?";
close;
}
}
job_sage,50,165,4 script Test Helper#talk 700,{
mes "[Test Helper]";
mes "Welcome to the Sage practical examination hall.";
mes "If you wish to take the test right now, please enter the waiting room.";
next;
mes "[Test Helper]";
mes "If someone is currently taking the test, please wait until that person finishes.";
mes "The progression of the test is announced on the entire map. An announcement will be made when the next person is ready to leave the waiting room.";
next;
mes "[Test Helper]";
mes "The Test takes 5 ~ 10 minutes per each person.";
mes "If you wish to leave the arena, please log out from the game.";
close;
}
job_sage,50,165,4 script Waiting Room#sg 700,{
OnInit:
disablenpc "Waiting Room#sg";
waitingroom "Waiting Room",20,"Waiting Room#sg::OnStartArena",1;
end;
OnStartArena:
disablewaitingroomevent;
warpwaitingpc "job_sage",116,97;
set .Sage_pid,$@warpwaitingpc[0];
if (attachrid(.Sage_pid) == 0) {
enablewaitingroomevent;
end;
}
donpcevent "Arena#1::OnEnable";
end;
OnEnable:
enablewaitingroomevent;
end;
}
- script Arena#1 66,{
OnInit:
disablenpc "Arena#1";
end;
OnEnable:
enablenpc "Arena#1";
set .MyMobs,16;
monster "job_sage",111,102,"Grade F",1183,1,"Arena#1::OnMyMobDead";
monster "job_sage",120,102,"Grade F",1183,1,"Arena#1::OnMyMobDead";
monster "job_sage",111,93,"Grade F",1183,1,"Arena#1::OnMyMobDead";
monster "job_sage",120,93,"Grade F",1183,1,"Arena#1::OnMyMobDead";
monster "job_sage",107,98,"Grade F",1183,1,"Arena#1::OnMyMobDead";
monster "job_sage",124,98,"Grade F",1183,1,"Arena#1::OnMyMobDead";
monster "job_sage",115,106,"Grade F",1183,1,"Arena#1::OnMyMobDead";
monster "job_sage",115,90,"Grade F",1183,1,"Arena#1::OnMyMobDead";
monster "job_sage",103,110,"Grade D",1184,1,"Arena#1::OnMyMobDead";
monster "job_sage",128,110,"Grade D",1184,1,"Arena#1::OnMyMobDead";
monster "job_sage",103,85,"Grade D",1184,1,"Arena#1::OnMyMobDead";
monster "job_sage",128,85,"Grade D",1184,1,"Arena#1::OnMyMobDead";
monster "job_sage",107,106,"Grade D",1184,1,"Arena#1::OnMyMobDead";
monster "job_sage",124,106,"Grade D",1184,1,"Arena#1::OnMyMobDead";
monster "job_sage",107,89,"Grade D",1184,1,"Arena#1::OnMyMobDead";
monster "job_sage",124,89,"Grade D",1184,1,"Arena#1::OnMyMobDead";
initnpctimer;
end;
OnReset:
killmonsterall "job_sage";
end;
OnMyMobDead:
set .MyMobs,.MyMobs-1;
if (.MyMobs < 1) {
mapannounce "job_sage"," " + strcharinfo(0) + ", successfully defeat all the monsters.",bc_map;
donpcevent "Arena#2::OnEnable";
stopnpctimer;
}
end;
OnTimer1000:
mapannounce "job_sage","The practical examination has started.",bc_map;
end;
OnTimer2000:
mapannounce "job_sage","1st test - time limit 3 minutes.",bc_map;
end;
OnTimer3000:
mapannounce "job_sage","Please defeat all the monsters within the time limit.",bc_map;
end;
OnTimer33000:
mapannounce "job_sage","2 minutes 30 seconds remaining.",bc_map;
end;
OnTimer63000:
mapannounce "job_sage","2 minutes remaining.",bc_map;
end;
OnTimer93000:
mapannounce "job_sage","1 minute 30 seconds remaining.",bc_map;
end;
OnTimer123000:
mapannounce "job_sage","1 min remaining.",bc_map;
end;
OnTimer153000:
mapannounce "job_sage","30 seconds remaining.",bc_map;
end;
OnTimer173000:
mapannounce "job_sage","10 seconds remaining.",bc_map;
end;
OnTimer183000:
mapannounce "job_sage","Time over.",bc_map;
donpcevent "Arena#1::OnReset";
end;
OnTimer184000:
areawarp "job_sage",100,82,131,113,"yuno",324,258;
end;
OnTimer185000:
mapannounce "job_sage","Next candidate, enter.",bc_map;
end;
OnTimer186000:
disablenpc "Arena#1";
donpcevent "Waiting Room#sg::OnEnable";
}
- script Arena#2 -1,{
OnInit:
disablenpc "Arena#2";
end;
OnEnable:
enablenpc "Arena#2";
disablenpc "Arena#1::OnReset";
set .MyMobs,24;
monster "job_sage",111,102,"Numerical Value",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",111,102,"Physics",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",111,102,"History",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",120,102,"Geography",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",120,102,"Astronomy",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",120,102,"Meteorology",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",111,93,"Architecture",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",111,93,"Control",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",111,93,"Instrumentology",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",120,102,"Statistics;",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",120,102,"Graphic Method",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",120,102,"Language",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",111,93,"Sitology",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",111,93,"Dietetics",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",111,93,"Landscape Architecture",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",120,93,"Anthropology",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",120,93,"Biology",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",120,93,"Ethics",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",107,98,"Economy",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",107,98,"Politics",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",107,98,"Photography",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",124,98,"Dendrology",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",124,98,"Hygiene",1063,1,"Arena#2::OnMyMobDead";
monster "job_sage",124,98,"Sociology",1063,1,"Arena#2::OnMyMobDead";
initnpctimer;
end;
OnReset:
killmonsterall "job_sage";
end;
OnMyMobDead:
set .MyMobs,.MyMobs-1;
if (.MyMobs < 1) {
mapannounce "job_sage"," " + strcharinfo(0) + ", successfully defeat all the monsters.",bc_map;
donpcevent "Arena#Doorkeeper::OnEnable";
donpcevent "Arena#3::OnEnable";
stopnpctimer;
}
end;
OnTimer1000:
mapannounce "job_sage","Second test - time limit 3 minutes.",bc_map;
end;
OnTimer2000:
mapannounce "job_sage","Please defeat all the monsters within the time limit.",bc_map;
end;
OnTimer33000:
mapannounce "job_sage","2 minutes 30 seconds remaining.",bc_map;
end;
OnTimer63000:
mapannounce "job_sage","2 minutes remaining.",bc_map;
end;
OnTimer93000:
mapannounce "job_sage","1 minute 30 seconds remaining.",bc_map;
end;
OnTimer123000:
mapannounce "job_sage","1 min remaining.",bc_map;
end;
OnTimer153000:
mapannounce "job_sage","30 seconds remaining.",bc_map;
end;
OnTimer173000:
mapannounce "job_sage","10 seconds remaining.",bc_map;
end;
OnTimer183000:
mapannounce "job_sage","Time over.",bc_map;
donpcevent "Arena#2::OnReset";
end;
OnTimer184000:
areawarp "job_sage",100,82,131,113,"yuno",324,258;
end;
OnTimer185000:
mapannounce "job_sage","Next candidate, please enter.",bc_map;
end;
OnTimer186000:
disablenpc "Arena#2";
donpcevent "Waiting Room#sg::OnEnable";
}
- script Arena#Doorkeeper -1,{
OnInit:
disablenpc "Arena#Doorkeeper";
end;
OnEnable:
enablenpc "Arena#Doorkeeper";
donpcevent "Arena#2::OnReset";
disablenpc "Arena#2";
set .MyMobs,1;
monster "job_sage",116,97,"Academic Probation",1179,1,"Arena#Doorkeeper::OnMyMobDead";
initnpctimer;
end;
OnReset:
donpcevent "Arena#3::OnReset";
killmonsterall "job_sage";
end;
OnDisable:
disablenpc "Arena#3";
disablenpc "Arena#Doorkeeper";
end;
OnMyMobDead:
set .MyMobs,.MyMobs-1;
if (.MyMobs < 1) {
mapannounce "job_sage","Congratulations, " + strcharinfo(0) + ". You passed the test.",bc_map;
set SAGE_Q,8;
donpcevent "Test Helper#sg::OnEnable";
disablenpc "Arena#Doorkeeper";
stopnpctimer;
}
end;
OnTimer1000:
mapannounce "job_sage","3rd test - Time limit 1 minute.",bc_map;
end;
OnTimer30000:
mapannounce "job_sage","30 seconds remaining.",bc_map;
end;
OnTimer50000:
mapannounce "job_sage","10 seconds remaining.",bc_map;
end;
OnTimer60000:
mapannounce "job_sage","Time over.",bc_map;
disablenpc "Arena#Doorkeeper";
end;
OnTimer61000:
areawarp "job_sage",100,82,131,113,"yuno",324,258;
end;
OnTimer62000:
mapannounce "job_sage","Next candidate, please enter.",bc_map;
end;
OnTimer63000:
disablenpc "Arena#Doorkeeper";
donpcevent "Waiting Room#sg::OnEnable";
}
- script Arena#3 -1,{
OnInit:
disablenpc "Arena#3";
end;
OnEnable:
monster "job_sage",107,106,"Absent 3 times",1185,1;
monster "job_sage",124,106,"Being Late 5 times",1185,1;
monster "job_sage",107,89,"Cheating 2 times",1185,1;
monster "job_sage",124,89,"Cheating 4 times",1185,1;
end;
OnDisable:
killmonsterall "job_sage";
end;
}
- script Test Helper#sg -1,{
OnInit:
disablenpc "Test Helper#sg";
end;
OnEnable:
initnpctimer;
end;
OnTimer2000:
mapannounce "job_sage","Please go back to where you came from and finish the rest of your job change quest.",bc_map;
end;
OnTimer4000:
mapannounce "job_sage","This is the end of practical examination. Next candidate, please get ready.",bc_map;
end;
OnTimer5000:
areawarp "job_sage",100,82,131,113,"yuno_in03",163,180;
end;
OnTimer7000:
mapannounce "job_sage","Next candidate, please enter.",bc_map;
end;
OnTimer9000:
disablenpc "Test Helper#sg";
donpcevent "Waiting Room#sg::OnEnable";
stopnpctimer;
end;
}
//============================================================
// Mapflag
//============================================================
job_sage mapflag nomemo
job_sage mapflag noteleport
job_sage mapflag nosave SavePoint
job_sage mapflag nopenalty
job_sage mapflag nobranch
//============================================================
// Old changelog
//============================================================
//= Script mostly based on translated jA script
//= Written test questions/answers weren't translated 100% corectly
//= So a lot of those are based upon mRO site and my own info
//= IF you by excident have (or can get) screenshots of these questions
//= Then PLEASE send them to Darkchild
//= 1.3 Baby class Support added [Lupus] 1.5 Fixed possible EXP abuse [Lupus]
//= 1.6 Added a func which prevent advanced classes passing
//= 2nd Job Quests again. It also guides adv classes where to go. [Lupus]
//= 1.7 Fixed tuition fee. Fixed some answers, names & typos, added missing labels [Lupus]
//= 1.7a Moved JFunc back in the main file, fixed typos [Lupus]
//= 2.0 Changed numbers to constants. [Vicious]
//= 2.0a Fixed double warp [KarLaeda] 2.0b Mantis Scythe Item name fix
|