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
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752
4753
4754
4755
4756
4757
4758
4759
4760
4761
4762
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
4777
4778
4779
4780
4781
4782
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
4916
4917
4918
4919
4920
4921
4922
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094
5095
5096
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
5118
5119
5120
5121
5122
5123
5124
5125
5126
5127
5128
5129
5130
5131
5132
5133
5134
5135
5136
5137
5138
5139
5140
5141
5142
5143
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153
5154
5155
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219
5220
5221
5222
5223
5224
5225
5226
5227
5228
5229
5230
5231
5232
5233
5234
5235
5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256
5257
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285
5286
5287
5288
5289
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
5319
5320
5321
5322
5323
5324
5325
5326
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405
5406
5407
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417
5418
5419
5420
5421
5422
5423
5424
5425
5426
5427
5428
5429
5430
5431
5432
5433
5434
5435
5436
5437
5438
5439
5440
5441
5442
5443
5444
5445
5446
5447
5448
5449
5450
5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465
5466
5467
5468
5469
5470
5471
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542
5543
5544
5545
5546
5547
5548
5549
5550
5551
5552
5553
5554
5555
5556
5557
5558
5559
5560
5561
5562
5563
5564
5565
5566
5567
5568
5569
5570
5571
5572
5573
5574
5575
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587
5588
5589
5590
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601
5602
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
6010
6011
6012
6013
6014
6015
6016
6017
6018
6019
6020
6021
6022
6023
6024
6025
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084
6085
6086
6087
6088
6089
6090
6091
6092
6093
6094
6095
6096
6097
6098
6099
6100
6101
6102
6103
6104
6105
6106
6107
6108
6109
6110
6111
6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
6218
6219
6220
6221
6222
6223
6224
6225
6226
6227
6228
6229
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
6297
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473
6474
6475
6476
6477
6478
6479
6480
6481
6482
6483
6484
6485
6486
6487
6488
6489
6490
6491
6492
6493
6494
6495
6496
6497
6498
6499
6500
6501
6502
6503
6504
6505
6506
6507
6508
6509
6510
6511
6512
6513
6514
6515
6516
6517
6518
6519
6520
6521
6522
6523
6524
6525
6526
6527
6528
6529
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544
6545
6546
6547
6548
6549
6550
6551
6552
6553
6554
6555
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671
6672
6673
6674
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684
6685
6686
6687
6688
6689
6690
6691
6692
6693
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704
6705
6706
6707
6708
6709
6710
6711
6712
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737
6738
6739
6740
6741
6742
6743
6744
6745
6746
6747
6748
6749
6750
6751
6752
6753
6754
6755
6756
6757
6758
6759
6760
6761
6762
6763
6764
6765
6766
6767
6768
6769
6770
6771
6772
6773
6774
6775
6776
6777
6778
6779
6780
6781
6782
6783
6784
6785
6786
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803
6804
6805
6806
6807
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850
6851
6852
6853
6854
6855
6856
6857
6858
6859
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869
6870
6871
6872
6873
6874
6875
6876
6877
6878
6879
6880
6881
6882
6883
6884
6885
6886
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
6916
6917
6918
6919
6920
6921
6922
6923
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005
7006
7007
7008
7009
7010
7011
7012
7013
7014
7015
7016
7017
7018
7019
7020
7021
7022
7023
7024
7025
7026
7027
7028
7029
7030
7031
7032
7033
7034
7035
7036
7037
7038
7039
7040
7041
7042
7043
7044
7045
7046
7047
7048
7049
7050
7051
7052
7053
7054
7055
7056
7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074
7075
7076
7077
7078
7079
7080
7081
7082
7083
7084
7085
7086
7087
7088
7089
7090
7091
7092
7093
7094
7095
7096
7097
7098
7099
7100
7101
7102
7103
7104
7105
7106
7107
7108
7109
7110
7111
7112
7113
7114
7115
7116
7117
7118
7119
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149
7150
7151
7152
7153
7154
7155
7156
7157
7158
7159
7160
7161
7162
7163
7164
7165
7166
7167
7168
7169
7170
7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199
7200
7201
7202
7203
7204
7205
7206
7207
7208
7209
7210
7211
7212
7213
7214
7215
7216
7217
7218
7219
7220
7221
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241
7242
7243
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
7267
7268
7269
7270
7271
7272
7273
7274
7275
7276
7277
7278
7279
7280
7281
7282
7283
7284
7285
7286
7287
7288
7289
7290
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331
7332
7333
7334
7335
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351
7352
7353
7354
7355
7356
7357
7358
7359
7360
7361
7362
7363
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373
7374
7375
7376
7377
7378
7379
7380
7381
7382
7383
7384
7385
7386
7387
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397
7398
7399
7400
7401
7402
7403
7404
7405
7406
7407
7408
7409
7410
7411
7412
7413
7414
7415
7416
7417
7418
7419
7420
7421
7422
7423
7424
7425
7426
7427
7428
7429
7430
7431
7432
7433
7434
7435
7436
7437
7438
7439
7440
7441
7442
7443
7444
7445
7446
7447
7448
7449
7450
7451
7452
7453
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463
7464
7465
7466
7467
7468
7469
7470
7471
7472
7473
7474
7475
7476
7477
7478
7479
7480
7481
7482
7483
7484
7485
7486
7487
7488
7489
7490
7491
7492
7493
7494
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
7539
7540
7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
7583
7584
7585
7586
7587
7588
7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
7619
7620
7621
7622
7623
7624
7625
7626
7627
7628
7629
7630
7631
7632
7633
7634
7635
7636
7637
7638
7639
7640
7641
7642
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661
7662
7663
7664
7665
7666
7667
7668
7669
7670
7671
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708
7709
7710
7711
7712
7713
7714
7715
7716
7717
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727
7728
7729
7730
7731
7732
7733
7734
7735
7736
7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751
7752
7753
7754
7755
7756
7757
7758
7759
7760
7761
7762
7763
7764
7765
7766
7767
7768
7769
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
7813
7814
7815
7816
7817
7818
7819
7820
7821
7822
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
7835
7836
7837
7838
7839
7840
7841
7842
7843
7844
7845
7846
7847
7848
7849
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859
7860
7861
7862
7863
7864
7865
7866
7867
7868
7869
7870
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883
7884
7885
7886
7887
7888
7889
7890
7891
7892
7893
7894
7895
7896
7897
7898
7899
7900
7901
7902
7903
7904
7905
7906
7907
7908
7909
7910
7911
7912
7913
7914
7915
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925
7926
7927
7928
7929
7930
7931
7932
7933
7934
7935
7936
7937
7938
7939
7940
7941
7942
7943
7944
7945
7946
7947
7948
7949
7950
7951
7952
7953
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963
7964
7965
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
8012
8013
8014
8015
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028
8029
8030
8031
8032
8033
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057
8058
8059
8060
8061
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076
8077
8078
8079
8080
8081
8082
8083
8084
8085
8086
8087
8088
8089
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
8101
8102
8103
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123
8124
8125
8126
8127
8128
8129
8130
8131
8132
8133
8134
8135
8136
8137
8138
8139
8140
8141
8142
8143
8144
8145
8146
8147
8148
8149
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
|
Date Added
-------- Read Changelog-SVN.txt for the newer SVN entries--------
2005/10/31
* Fixed all players having the "plant" mode on... [Skotlex]
* Added a timer to delay the automatic respawn of characters in gvg or pvp
grounds. The delay is currently 1 second, but be warned that because of
this it may be possible to revive the character if some priest is insanely
fast as there's currently no way to "prevent" a character from being
resurrected. [Skotlex]
* More and more new quest skills! :3 [DracoRPG]
* Removed the setting where characters could logout overriding the
prevent_logout setting if they were dead (it made it extremely easy to
accidentally log out if you were killed while trying to escape) [Skotlex]
* Changed prevent_logout from yes/no to a "duration in ms" setting.
Defaults to 10secs (10000ms), note the client always says "wait 10 seconds"
regardless of the value of this setting. [Skotlex]
* Moved the status change of SC_RIDING/SC_FALCON from clif_changeoption to
pc_changeoption which correctly makes the falcon/riding states end on quit.
[Skotlex]
* Mob ai fix (mobs locking down into one target forever even if they should
be able to change targets) [Skotlex]
* Added routine to check party share level whenever one of the members
levels up. It's checked on the map server, and then a share request is sent
to the char-server if party_share_level is broken. [Skotlex]
* Corrected "show drain" to show nothing if the leeched values are
non positive. [Skotlex]
* Probably fixed Wand of Hermode not blocking the caster from walking.
[Skotlex]
* Applied Silent's fix to @where [Skotlex]
* Code cleanup regarding sign/unsigned comparisons. [Skotlex]
* Updates to new quest skills, some are fully functionnal, some half, some
not at all xD. [DracoRPG]
2005/10/30
* Fixed a bug that broke pet skills. [Skotlex]
* @follow: Now to stop following, you may just type @follow, thx2Sartory [Lupus]
* Fixed & finished what I did yesterday with SCs and quest skills, thanks
to Silent. [DracoRPG]
2005/10/29
* Reorganized SC IDs to make room for 2nd jobs quest skills statuses: upped
SC_SENDMAX to 300 and moved all required SC to 300+. BEWARE: as a side-
effect of this, you might get 'glue boots' if an SC was saved and cannot
be restored because the ID isn't used anymore, this should only happen
with bonuses from cooked foods & dances/songs (unlikely since they last 20
seconds only), and maybe a few other such things. Simply remove lines
with SC IDs above 200 in your sc_data file/table. [DracoRPG]
* Changed a bit the way Plant Cultivation fails: when it fails because of
missing items, it does nothing and displays "Skill had failed"; when the
50% success rate test fails, the effect is displayed but no plant summoned.
How should it work exactly? Because previous way was a bit confusing for
the player, not explaining why it failed, so I'd like to know. [DracoRPG]
* Changed food cooking success rate to unmodifiable 50%, temporary value
waiting for accurate data ;) [DracoRPG]
* Fixed the code in skill.c so that skills are considered as guild skills
(for things such as inf, maxlv, etc) only when their ID >= 10k, enables
use of 2nd jobs quest skills with 1k+ IDs, thanks to Silent. [DracoRPG]
* Fixed the Flag guild script. Now one can only flag in using the flags infront
of the castle. [Kayla]
* Removed most of the built-in zlib files and the LOCALZLIB compile option
Note: All native Windows builds now require zlib1.dll, you can just download
it from http://www.zlib.org and place it in the main directory [celest]
* Changed the unzip library to be static linked instead of dynamic [celest]
* Small fix to the trading routing, should fix items with the no-trade flag
being able to be vended. [Skotlex]
2005/10/28
* Fixed the size of the equip_job field in SQL item_db/item_db2, thanks to
blackhole89. [DracoRPG]
* Harmonized the way NPC events such as PCLoadMapEvent, PCBaseLvUpEvent, etc
are implemented. Caution, now PCLoadMapEvent NPC is called globally: it
is not needed to put it in a specific map. Use script functions to know
which map the player has been warped to. Thanks to Z3RO. [DracoRPG]
* Fixed the names of the job level up char commands. [Skotlex]
* Tiny change to the script engine which may fix those crashes. [Skotlex]
* Added blocking use of skills while sitting. [Skotlex]
* Implemented Trancid's expanded global announce system. [Skotlex]
2005/10/27
* Applied Ilpalazzo-sama/Zzo's patch that cleans up and fixes some bugs
with the script engine. [Skotlex]
* Made land protectors from enemies cancel each other out. [Skotlex]
* Made it so Guardians/Emperiums with no owning guild can be attacked out
of woe. [Skotlex]
* Corrected being able to attack and use skills during the first interval
of Petrify [Skotlex]
* Fixed packet exploit that allowed you to produce multiple times without
first triggering the skill. [Skotlex]
* Cleaned up/simplified the implementation of SC_NOCHAT [Skotlex]
* Added file upgrade_svn3746.sql, use it to alter your `char` table column
"manner", which should NOT be unsigned (if your column already is
signed, then no need to apply this update) [Skotlex]
* More code cleanup to make eA ANSI-C compliant. [Skotlex]
* Some fixes to the night-day-system. [Skotlex]
2005/10/26
* Some more multi-map server work. It seems to work now correctly and with
no memory leaks, however it likely needs more testing. Also added the
support into the char-TXT server. [Skotlex]
* Patched a crash where mobs with no space for looting would attempt to
loot. [Skotlex]
* Updated mapflags, readded gvg_dungeon. Now mapflags work according to
this post: [Skotle]
http://eathena.ws/board/index.php?showtopic=58201
* Likely fixed Party Even Share. [Skotlex]
* Added map flag "nightenabled", only maps with this flag will display the
night effect when it's night. Said maps are specified in mapflag/night.txt [Skotlex]
* Modified map flags gvg and gvg_dungeon. gvg now is basicly the same as
pvp, except guilds are automatically teamed up, while gvg_dungeon was
removed and replaced by gvg_castle, which is the flag now used for castle
maps which only modify the behaviour during WoE times. [Skotlex]
* Updated the login/char TXT Makefiles so the TXT_ONLY flag is passed, this
SHOULD fix the guild size mismatch errors... [Skotlex]
* Probably fixed a char-server crash related to whispers. [Skotlex]
* Updated the custom jobmaster so it should stop second advanced classes
from being able to re-change jobs. [Skotlex]
* Implemented dynamix's night system which uses a status change rather than
the "darkness levels", said config option removed as is no longer needed.
[Skotlex]
* Some fixes to the char-sql code when sending chars to another map server.
[Skotlex]
* LuzZza's ported Trade/Vending additional antispoof checks [Lupus]
- thanks to Yor&Freya Team. So LuzZza is our new dev (it was his 2nd test)
2005/10/25
* Some work fixing up multi-map servers. It should now *work*, however each
time the player swaps map-server it triggers all the relevant
on-login/on-logout events, which likely needs to be corrected at a later
date. Only SQL has been updated so far, TXT is still pending. [Skotlex]
* Updated GrandCross so it does half damage on the caster (+half damage
from Faith, it does just 25% or less damage to self now) [Skotlex]
* Updated battle_check_target to consider normal mobs as always belonging
to the same party (should fix them fighting out when pkmode is on)
[Skotlex]
* Fixed the Makefile for TXT char/login servers (fixes guild structure size
mismatches) [Skotlex]
* Added script command "playerattached", returns the char_id of the player
currently attached to the script, 0 if there's no player attached (or
attached player is no longer on the map server) [Skotlex]
* Fixed @changegm in the char-txt server. [Skotlex]
* Some code cleanup to make eA ANSI-C complaint (not quite there, but
closer) [Skotlex]
2005/10/24
* Applied Ilpalazzo-sama/zzo's patch that optimizes the status_get_*
functions. [Skotlex]
* Fixed changegm (as far as I know) [Skotlex]
* Modified again the code that checks who and what can target traps. It
should be set to only let heaven's drive, arrow shower and remove trap
target them. [Skotlex]
* Breaker now ignores mdef. [Skotlex]
* Fixed script command "makeitem" to only require an attached player if the
map is defined as "this". [Skotlex]
* Updated battle_check_target to enable only skills with inf 32 (can target
traps) to hit traps. Implementation may not be perfect depending on how
the client reacts to the associated skill_db change. [Skotlex]
* Cleaned up battle_weapon_attack. [Skotlex]
* Some optimizations to the struct mob_data. [Skotlex]
* Applied Ipalazzo-sama/zzo's memory optimization patches. [Skotlex]
* Fixed some quests and updated item_db. [Kayla]
* Updated Grimtooth to cause "Stop" on enemies instead of slow down. The
duration used is now skill's time 2. [Skotlex]
* Updated the mob_ai code so they do nothing if they were attacked but
can't attack back (and it did not invoke a rude attacked, that is,
monster_ai does not has 2 set) [Skotlex]
2005/10/23
* Some fixes to @charmountpeco [Skotlex]
* Some cleanups to pet.c, fixes pet_timer being invoked when the pet is
idle. [Skotlex]
* Added a clause to ignore name solve requests of chat-rooms (for some
reason the client requests them...) [Skotlex]
* Updated sql-files/item_db.sql to the latest. [Skotlex]
* Removed that mob_spawn_once message that is just a debug message with no
real purpose anymore. [Skotlex]
* Fixed forging displaying success even when it fails. [Skotlex]
* Changed main.sql so that sc_data only has indexes, not a primary key
(I keep hearing mysql can't handle a triple column PK...) [Skotlex]
* Fixed Doublecast's success chance [Skotlex]
* 'Fixed' the warning on @reloadscript (just removed the warning and
avoided memory leaks, because properly unloading the user functions and
reloading them I could not get done) [Skotlex]
* Fixed possible crash due to custom packets, thanks to Andz for the info.
[Skotlex]
* Fixed mob's Scream/Frost Joke crashing the server if the message was too
long [Skotlex]
* Fixed the wrong attribute being passed to the attribute fix in
battle_calc_magic attack (strange deja vu feeling.. I am sure I fixed this
same bug before). [Skotlex]
* Fixed trading. [Skotlex]
* Removed Mastery damage being applied to Grand Cross [Skotlex]
* Some more fine-tuning of the Grand Cross equation. [Skotlex]
* Fixed mobs that couldn't attack not being able to use skills (first half
of why marine spheres were broken). [Skotlex]
* Updated summoned marine spheres so they can move (second half of why
marine spheres were broken). [Skotlex]
* Rewrote the produce system for mixed foods creation [DracoRPG]
* Small changes and optimizations to battle_calc_magic_attack, replaced redundant
magic_subrace with missing magic_addsize, updated crappy doc about it [DracoRPG]
2005/10/22
* Modified Finger Offensive's formula to be 100% + 50%*skilllv which seems
to be a more factually correct equation than what is shown in the websites.
[Skotlex]
* Applied Ilpalazzo-sama's patch which speeds up the data zeroing in
status_calc_pc. [Skotlex]
* Crashfix on invalid lines when reading castle_db.txt [Skotlex]
* Updated GrandCross's damage formula according to Komurka's information.
[Skotlex]
* Also, now skills that ignore card modifiers only ignore the attacker's
card modifiers, no the target's (does not apply to skills like Pressure
that do fixed damage). [Skotlex]
* Updated Bowling bash damage, knockback to current Kro values. [Skotlex]
* Modified NPC_EMOTION and NPC_EMOTION_ON so they can be used to modify the
current mob's mode (instead of setting it). [Skotlex]
- Some examples:
1269,Clock@NPC_EMOTION_ON,attack,474,1,10000,0,30000,yes,self,always,0,6,4,300,,,
Adds mode 4 (aggressive) for 300 seconds to Clocks when attacking.
1193,Alarm@NPC_EMOTION,chase,197,1,200,0,5000,yes,self,always,0,19,4,10,,,
Removes the aggressive mode (4) from Alarms when chasing for 10 seconds.
- After a mob's mode is changed, their state is reset so they can stop
chasing/seek a target.
* Made GrimTooth be longranged, Soul Drain work only on targetted skills,
and Extremity Fist only checks for enemy state right before attacking (I am
not sure it is 100% as it should be still, though) [Skotlex]
* Eh.. now Safety Wall blocks all skills tagged as short-ranged. Report any
anomalies this causes. [Skotlex]
* Added support for global mob skills. In essence, you can now specify a
mob skill that is added to ALL mobs in a single line by using negative
class IDs. -1 adds the skill to normal mobs, -2 adds the skill to
bosses, and -3 to both. For example:
-1,All@AL_HEAL,any,28,10,10000,500,5000,yes,friend,friendhpltmaxrate,60,,,,,,
Adds Heal Lv10 to all normal mobs.
* Readded the level up buff bonus from the Taekwon class T.T [Skotlex]
2005/10/21
* Removed the level up buff bonus from the Taekwon class T.T [Skotlex]
* Small change in mob_ai_sub_hard which may fix mobs casting their Rude
Attacked skill when they shouldn't. [Skotlex]
* Moved the code so that SNovice Steel Body should trigger inmediately upon
death, and bypass the exp loss penalty. [Skotlex]
* Added Taekwon boy to the buff on level up system. [Skotlex]
* Fixed Skills checking for water-cells instead of Land Protector cells.
[Skotlex]
* Added config option skillrange_by_distance, makes skills be long/short
ranged based on the source/target distance. Defaults to 6 (mobs + pets).
[Skotlex]
* Fixed Magic Power totally messing up matk. [Skotlex]
* Fixed Meteor Storm [Skotlex]
* Some changes to Moonlight Petals, it should make the skill finally be
considered an ensemble skill. [Skotlex]
* Updated skill_split_atoi to guess linear increases up to half of the data
provided. This means it can understand the more complex cast times of
skills such as Meteor and Soul Strike. If you provide the data of ten
levels, then it will check for patterns up to 5 steps long (meaning that
the diff between 1 and 6 is the same as the diff between 2 and 7 and so on,
and if they all match, the tested pattern is applied all the way to level
100) [Skotlex]
* Some modifications to Magic Power, it should hopefully be working now. [Skotlex]
* Cleanups and fixes to Tarot Card. [Skotlex]
* Fixed a screwup in skill_split_atoi which was corrupting the skill db. [Skotlex]
* Free up block chunks allocated by the memory manager when shutting down [celest]
* Updated packets in packet_db and clif.c [celest]
2005/10/20
* Turned on the error_log by default (had this been on before, I would had
noticed why Longing for Freedom was not working several WEEKS ago >.<)
[Skotlex]
* Fixed Longing for Freedom [Skotlex]
* Hopefully fixed even-share party on char relog exploit. [Skotlex]
* Modified Land Protector so it behaves more like Basilica. [Skotlex]
* Removed GM account reading from the char-sql server and moved it into
the login-sql server (Ancyker requested this was fixed... and this is how
it was working on the TXT servers) [Skotlex]
* Modified skill_split_atoi so it can guess linear changes in the values
and fill out the rest of the array correctly (eg: blowcount is defined as
1:2:3:4:5, now the function can understand that and fill the rest of values
with 6:7:8:9:10 and so on. It can also understand two-step increases, if
the value is 1:2:2:3:3:4, it can guess that the following values should be
4:5:5:6:6:7:7 and so on). This allows mobs to cast stuff like Thunderstorm
LV67 without the need of manually updating the dbs with the corresponding
values :O [Skotlex]
* Fixed monster_ai&1 doing the opposite of what it should do. [Skotlex]
* Rewrote the skill unit reiteration code so that it'll work with any AoE
skill that is set to not reiterate in skill_unit_db.txt, when no
reiteration is set, the skill cannot be stacked with itself, but it can
be placed on top of other AoE skills (except for Pneuma, Safety Wall,
Warp Portal, Basilica and the Hunter traps who all have their own checks
hardcoded) [Skotlex]
* Modified the way Magic Power works for AoE magic skills, it should now
work correctly for all AoE spells including Meteor. [Skotlex]
* Added mode "change target" (0x200 = 512) to specify mobs that can change
target while attacking. Since no mob in the db has been updated yet to
include this mode, for the time being all aggressive mobs will also be
considered as "change target" types (which is how eA has been managing it
up to this point) [Skotlex]
* Added a check in status_check_skilluse to make AoE skills fail if the
caster is standing on Basilica. [Skotlex]
* Reduced a bit the size of the party structure. [Skotlex]
* Fixed Play Dead [Skotlex]
* Reverted a memory fix in script.c which causes a crash.. [Skotlex]
* Reverted a small change which likely made magic power not work anymore on
ground skills. [Skotlex]
2005/10/19
* Added an SQL update update_logs2.sql Use it for more effecient work of your MySQL server [Luups]
* Likely fixed Root and the Wedding Skills [Skotlex]
* Fixed that crash in skill_use_id.. oops. [Skotlex]
* Fixed demonstration triggering status effects. [Skotlex]
* Fixed ground placed skills causing skill_counter_additional_effect
triggering on the skill's owner. [Skotlex]
* Added corrections/checks that should prevent the char servers from
crashing if they parse a packet from a client where the session data is
expected to be but is not set. [Skotlex]
* Converted NPC_STOP to a status-inducing effect, SC_STOP which prevents
characters from moving. [Skotlex]
* General checks and cleanup (new function pc_can_move) to prevent chars
from walking when they shouldn't be able to. [Skotlex]
* Some changes to int_party, which may prevent crashes due to large parties
in congested situations. [Skotlex]
* Software Caused Connection Abort errors should inmediately terminate the
connection now (rather than waiting for the timeout) [Skotlex]
* Hopefully fixed Basilica by making battle_check_target use the mapcell
instead of the status change when deciding the enemy state. [Skotlex]
* Fixed being able to enable NPC clicks while a trading window is open. [Skotlex]
* Added status change SC_MODE which allows to temporarily override a mob's
mode. It can be invoked through mob skills NPC_EMOTION and NPC_EMOTION_ON
using the second and third value (new mode and duration in seconds,
respectively). Example:
1269,Clock@NPC_EMOTION_ON,attack,474,1,10000,0,30000,yes,self,always,0,6,133,300,,,
Makes the Clock do the /an emotion, and his mode changes to 133 (can
move, can attack, aggressive) for the following 300 seconds (if the mode
is 0, then the mode is not changed).
- Note that when a mob gets their mode changed, their state is reset (so
they stop attacking/chasing)
- Because of this update, the code that made mobs give up chasing after a
while is no longer needed and hence, removed.
* Implemented function status_check_skilluse which checks whether a skill
(or melee attack) can be used on an enemy based on their status (restricts
skills that may be used if opponent is cloaked/hidden, or blocks Aex
Aeterna if opponent is petrified/frozen, blocks skills while silenced, etc
etc). Note that the code simplification/modification is big, so beware of
any new bugs that might have been caused by the function. [Skotlex]
2005/10/18
* Fixed card set bonuses for sure this time (or so I hope) [Skotlex]
* Fixed the Dissonance song bug which allowed you to cast a song afterwards
and it would not follow you around. [Skotlex]
* Modified the counting function to never count in skills (traps, AoE
skills) since traps were always being counted in for stuff like Napalm
beat/Blitz Beat/etc. [Skotlex]
* Fixed Devotion/Sacrifice check which should enable recasting on
characters. Thanks to Irmin for pointing it out. [Skotlex]
* Fixed offensive heal so it fails if not used on an enemy (instead of
failing when used on an ally). [Skotlex]
* Modified the char servers so they do a party range check when a character
logs in. This should fix parties keeping their even share even after a
low-level member rejoins the server. [Skotlex]
* Updated mob AI so that aggressive mobs will change targets if they are
attacked and their current target isn't attacking them (regardless of
range) [Skotlex]
* Some updates to the pet AI so their chase range is range3 instead of the
hardcoded value of 13. [Skotlex]
* Reverted Mika's fix since it makes it impossible for mobs to heal each
other. (what is the so called exp bug about?) [Skotlex]
* Fixed a possible crash in clif_equiplist(), thanks to Zoc [Skotlex]
* Spells are now considered a "miss" if they do no damage (this prevents
additional effects from triggering out such as freezing) [Skotlex]
* Temp bug fix of Exp increase when healing non-undead mob (by MiKa) [Lupus]
2005/10/17
* Updated sql-files/mob_db.sql to match with the current one. [Skotlex]
(someone else also did this, but missed a few values from Incantation
Samurai. Altough who did it and why it is failed to be mentioned in the
log files?) [Skotlex]
* Fixed alchemists not being able to hit their marine spheres (how many
times this same bug keeps coming back from the dead anyway?) [Skotlex]
* Updated sql-files/item_db.sql to the current item_db.txt [Skotlex]
* Fixed magic rod not cancelling the additional effects from skills. [Skotlex]
* Cleaned up the card inserting code to prevent crashes from modified
packets. [Skotlex]
* Fixed offensive heal [Skotlex]
* Applied a random chance when reducing the mob's chase duration. This
should randomize how long the mob chases you around before giving up.
[Skotlex]
* Some modifications to the timer push heap function, may fix timer issues
when creating timers with tick values that overflow. [Skotlex]
* Modified the mob ai so it has a seek time, when the min_chase runs out
(it is constantly decreased while chasing, starts out at range3) the mob
will stop chasing, do a /swt, and stop being aggro for 10 secs. This is how
it should be according to what I understood from Komurka's explanation.
[Skotlex]
* Added config monster_ai, it determines some of the mob behaviour:
- If &1, mobs will use hard path finding to reach their target, otherwise
only easy (straight line) path searches will be used (for most offensive
purposes).
- If &2, mobs will use the rude attacked skill if they can't attack back no
matter what, otherwise they use it only if they can't reach the target.
[Skotlex]
- Still pending on what other things it could define. Currently defaults to
0 (seems to be the official mob ai) [Skotlex]
* Now Atk/Matk potions duration don't get automatically multiplied by 1000,
duration must be specified in ms in the scripts. [Skotlex]
* Made all mobs with no guild belong to the same guild, this should prevent
mobs from attacking each other on WoE. [Skotlex]
* Fixed Into the Abyss + retrieving traps related exploits. [Skotlex]
* Changed monster_skill_nofootset to no to enable mobs casting stuff like
Bomb underneath characters. [Skotlex]
* Fixed Sacrifice, it can now be recasted on a player as long as it's by
the same crusader that is currently protecting the player. [Skotlex]
* Fixed some unitialized values error in magic and misc attacks. [Skotlex]
* Fixed 30% bonus from upper/baby classes affecting card bonuses. [Skotlex]
* Fixed baseClass not working on Acolyte class, thanks to Silent. [Skotlex]
* Made the stone curse animation only show up on successfully cursing. [Skotlex]
* Added Meditation's bonus to offensive heal, thanks to Orn. [Skotlex]
* Made devotion fail when already used on a char with that effect. [Skotlex]
* Made it so you can't quit while cloaking/hiding, and said status will end
on quit if force-quitting. [Skotlex]
* Cleaned up and fixed isequipped script commands, it should be working
correctly now (tested with the Assassin combo) [Skotlex]
* Fixed not stacking Long Attack Rate bonuses [Lupus]
- Bow Thimble +3%, Archer Skeleton Card +10%, Merman Card(when CARDS COMBO) +20%
- We should get rid of that +-15% ranged damage varianc (it doesn't cure "stoprate bug" anyways)
2005/10/16
* Fixed wrong calculation of items max drop chance (when using MySQL MOB DB) [Lupus]
* Added nomemo mapflag to more levels of Thanatos Tower, thx2Justin84 [Lupus]
2005/10/14
* Updated the gvg_dungeon mapflag to mean "guild versus guild regardless of
woe schedule" and set it on the guild versus guild maps. [Skotlex]
* Fixed perfect hiding. [Skotlex]
* Cleaned up (or rewrote?) the Run and High Jump code to merge them better
with the normal walking routines. [Skotlex]
* Corrected Turn Undead from ignoring element. [Skotlex]
* Updated Power Thrust Max & Power Thrust so that they don't stack (and
only PT Max cancels PT) [Skotlex]
* Some fine tuning in battle_check_attackable. [Skotlex]
* Changed db_final's implementation to End of Exam's. [Skotlex]
* Corrected Guardian removal routines to also update/save their respective
Castle data (Guardian HP and visibility) [Skotlex]
* Added map server setting "enable_spy", must be set to yes/on for @spy
commands to work. [Skotlex]
* Applied End of Exam's fix to the previous fix to the db. [Skotlex]
* Fixed spyguild/spyparty sending packets to the spied guild/party instead
of your own. [Skotlex]
* Rewrote the card hash implementation. Now it should work correctly for
any card set on any equipped item. Supports up to 4 slots in any of the
equipped items. [Skotlex]
* Updated the mob ai so it stops chasing right away if you
hide/cloak/vanish/etc. [Skotlex]
* Fixed some memory issues in the db handling. Credits to End of Exam.
[Skotlex]
2005/10/13
* Updated the main.sql file with some of the recommendations by Zoc
[Skotlex]
- If your sc_data table works as it is, you don't have to touch it.
* Fixed Maxmize Power/Cloaking sending the sever to an "infinite loop" when
used by mobs. [Skotlex]
* Some cleaning to clif_send in regards to guild-related packets. [Skotlex]
* Added mob skill condition "afterskill", works like "skillused" except
it's triggered after the mob was the one doing the mentioned skill.
[Skotlex]
* Small cleanup and optimization of data saved when received member
information. [Skotlex]
* Fixed some memory issues in script loading and the plugin loading
mechanism. [Skotlex]
* Fixed magic attacks always doing minimum damage. [Skotlex]
* Fixed the crash in battle_check_attackable [Skotlex]
* Fixed Fireball hitting twice on the targetted mob. [Skotlex]
* Updated Recall Guild to work in gvg maps even if the nowarp flag is set.
[Skotlex]
* Updated Recall Partner to warp partner after 20 secs the thing is on the
ground, skill is blocked from reusage during that time. [Skotlex]
* Some updates to correctly decide whether skills hit cloaking and/or
hidden chars. [Skotlex]
* Updated skill code so that heaven's drive will hit and destroy traps
(untested), also AoE skills will not trigger on hidden characters. [Skotlex]
* Fixed the crash on magic rod. [Skotlex]
* Updated Maximize Power and Cloaking to last forever (until reuse, I
believe) for non-players. [Skotlex]
* Made Berserk end when you logout. [Skotlex]
* Made song/dances end when you unequip your weapon rather than on equip.
[Skotlex]
* Fixed one bug in battle_calc_magic attack and some cleaning of it as
well. [Skotlex]
* Updated sql-files/mob_db.sql to match the latest mob_db.txt [Skotlex]
* Updated sql-files/item_db.sql to match the latest item_db.txt. [Skotlex]
* Fixed stealing. Now it works like aegis one. [Lupus]
2005/10/12
* Fixed everyone gaining high speed after casting a ground-based skill.
[Skotlex]
* Corrected the magical part of Soul Breaker ignoring mdef. [Skotlex]
* Updated Reverse Orcish to use the duration specified for the skill in
skill_cast_db.txt [Skotlex]
* Modified REVERSEORCISH to make it a status change (SC_ORCISH), since
there's no data about duration, defense, or if any stat reduces it's
duration, it currently is fixed to 5 minutes. [Skotlex]
* Fixed crash when sending the insert card packet with an invalid index. [Skotlex]
* Added script constant baseClass. [Skotlex]
- Example: if (baseClass == Job_Novice) will match on all novices and super
novices. if (baseClass == Job_Swordman) will match on all Swordmen, Knights
and Crusaders. Once tested several item scripts can be simplified in the
item_db.
- In contrast, the already defined baseJob works by stripping the upper
kind only. (eg: baseJob == Job_Swordman matches on swordman classes, but
not Crusader/Knight)
- I know the names can be confusing, but anyone has a better suggestion for
a name?
* Added a fix to prevent people from buying equipment in stackable from by
hexing the packets and specifying an amount greater than 1. [Skotlex]
- Thanks to End of Exam for pointing out the exploit.
* Added flag "move delay" to skill_castnodex_db.txt [Skotlex]
- By setting this flag to 1, players won't be able to move during the skill
delay time. Some reorganization was needed in skill.c to make room for
this, so some testing is required.
* Fixed the Char SQL server unnecessarily loading AND saving parties each
time a party-member changed maps. [Skotlex]
* Modified skill_min_damage so that it defines the minimum damage for
skills IF the skill does not misses/is blocked. Can be used to specify
to any of weapon attacks, magic attacks, or misc attacks. Defaults to 6
(magic + misc attacks) as that is what was set up previously. [Skotlex]
* Fixed Wand of Hermod and a potential crash related to ground based
skills. [Skotlex]
* Probably corrected npc load count when using reloadscript. [Skotlex]
* Likely fixed petheal [Skotlex]
* Fixed PVP client crash bug. By a new cadidate into eA coders LuzZza [Lupus]
* Updated maps comments, thanks to Justin84 [Lupus]
2005/10/11
* Fixed not being able to cast resurrection on dead players. [Skotlex]
* Fixed party HP update crash. [Skotlex]
* Fixed players being killed always in one hit. [Skotlex]
* Fixed chars not being able to unhide. [Skotlex]
* Rewrote/optimized the hp updating code (both party hp and disp_hpmeter),
this should lower bandwidth a bit from all the unnecessary packets that
were previously being sent. [Skotlex]
* Removed the mysterious 2.2% drop chance for all items when read from the
sql db. [Skotlex]
* Updated targeted skills and normal attacking to fail when targetting
hidden characters. [Skotlex]
* Merged reddozen and Draco's code regarding TK skills. [Skotlex]
* Added a function to allow guilds to delete alliances with nonexisting
guilds. [Skotlex]
* Corrected the weapon damage return in battle_weapon_attack, thanks to PeF
for pointing it out. [Skotlex]
* Added max_baby_parameter to define the max parameter for baby classes.
Also fixed some instances where the baby parameter restriction was not
being taken into account. [Skotlex]
* Fixed Firewall doing knockback on the undead. [Skotlex]
* Fixed Waterball count when casted by non-players, thanks to Orn [Skotlex]
* Fixed the instrument/whips gender restriction being applied to Cap. [Skotlex]
* Damn typo: Fixed Mobs Drops with the same % droprate. thanx 2rover 4bugreport [Lupus]
* Fixed SQL Mob DB reading(no drops issue, etc) thanx to yoanykim for pointing it out [Lupus]
2005/10/10
* Probably fixed the peco-riding issue. [Skotlex]
* Fixed clif_clearchar_delay (cause of the ghost mobs from my tests). [Skotlex]
* Small fix on the mob ai (attacked_id was never being reset if the
attacker no longer exists). [Skotlex]
* Added a couple of checks to prevent the mob_ai from executing if the mob
is dead. [Skotlex]
* Fixed a typo in skill_attack which causes all sort of unpredictable
behaviour, such as firewall never hitting. [Skotlex]
* Fixed a memory leak involving pets and cast cancel. [Skotlex]
* Made Wand of Hermod end when the caster is moved for whatever reason. [Skotlex]
* Increased the random damage delay modifier to +/-15% [Skotlex]
* Fixed "rare drop filter" considering "available in shops only items" as RARE items [Lupus]
* The GM can drop level now also determines whether a GM can store items in
the Guild Storage or not. Thanks to Kayla for pointing it out :P [Skotlex]
* Fixed Grimtooth so that it's slowdown works on both players and mobs.
[Skotlex]
* Fixed Fireball's damage. [Skotlex]
* Now the Wedding Dress and Tuxedo will always check for the correct
gender. [Skotlex]
* Cleaned up the code for Potion Pitcher. [Skotlex]
* Reverted Falcon Assault to be 5x Blitz Beat's damage at level 5. [Skotlex]
* The npc_counter is now reset in a @reloadscript. [Skotlex]
* Cleaned up Falcon Assault and made it's %dmg increase be an addition on
top of Blitz Beat (altough I am not so sure that's right) [Skotlex]
* Hardcoded the gender restrictions for items with view 13 & 14 (Musical
Instruments and Whips), changed ignore_item_genders to yes as default. [Skotlex]
* Changed GX duration to 900ms. [Skotlex]
* Cleared up the item get times descriptions in battle_athena.conf [Skotlex]
* Some timer fixes in status_change_start regarding sc_data loading. [Skotlex]
2005/10/09
* Probably fixed Waterball so it does max number of hits when casted by a
non-player regardless of water availability. [Skotlex]
* Fixed perfect hiding. [Skotlex]
* Corrected magic damage return to only work on targetted skills [Skotlex]
* Some cleaning up of the skill_attack function. [Skotlex]
* At last finished 2 last logs filters options: [Lupus]
- Implemented 'Rare' items option (you can set rare_items_log value)
- Implemented 'Big amount' of items option (it would always log big set amount of items (per 1 action!) despite on the other filter option)
* Updated @iteminfo ATcommand. It would show you additional item info. [Lupus]
- Monsters drop this item with ?.?% chance
- Monsters don't drop this item
- This item is available in the shops only
- Tip: When you Trade/Vend goods, use @iteminfo to check items price and even rareness ^_-
* Rearranged item_data struct units to make it compatible with some old script commands after Skotlex's changes
- Tip: Now you can use GetItemInfo script command to find out if the item is rare or not
2005/10/08
* Some improvements to the mob ai. [Skotlex]
* Fixed summoned marine spheres exploding on their own. [Skotlex]
* Probably fixed the attribute fix for magical attacks. [Skotlex]
* Made the gender check to not be ignored by default [Skotlex]
- This is necessary because the new job ID system makes both Dancer and
Bard be treated as the same job, so all bard/dancer comparisons were
changed to be gender comparisons, thus, the gender check is indispensable
for their weapons.
* Updated item_db structure. new column upper (after equip_jobs) defines
the type of job that can equip the item (1: Normal jobs, 2: Upper jobs,
4: Baby jobs), merged the use_script and equip_script columns into one.
Also the equip_jobs column now has support for the following classes:
Taekwon (2^24), Star Gladiator (2^25) and Soul Linker (2^26)
The provided db/item_db.txt and sql-files/item_db,sql are already updated
with all the necessary changes (all equipable/usable items have their
upper set to 7)..
- Lupus, Nexus, get working on updating the item_db.
* Made FrostJoke/Scream work the same way out and inside woe grounds.
[Skotlex]
* Corrected Grand Cross Damage [Skotlex]
2005/10/07
* Took out Lighthalzen's noteleport mapflag. Added it by accident. [Nexon]
* Some commented code cleanup and help.txt update [Foruken]
* Applied Draco's fixes to battle_calc_magic_attack. [Skotlex]
* Modified @showexp and @showdelay so they will work as people would expect
them to. [Skotlex]
* Figured out what ## variables are, and documented it on
doc/script_commands.txt [Skotlex]
* Foruken pointed out that the actual script problem was a certain
acalloc() that was changed to realloc(), so undid the last revert and
reverted this one instead. [Skotlex]
* Fixed a char-sql issue where character variables seemed to be saving
incorrectly. [Skotlex]
* Removed a free() that was added on R3421 that was supposed to fix a
memory leak but instead causes crashes :/ (so the memory leak is back in
there, but no more crash) [Skotlex]
* Applied End of Exam's script engine patch. [Skotlex]
- This adds support for nested blocks, if/else, fors, switches. See
<http://eathena.deltaanime.net/board/index.php?showtopic=50037>
for more information. Note that he admits it is not fully tested, so be
careful when trying out the new commands!
2005/10/06
* Some corrections to the script engine, should fix a few memory leaks.
[Skotlex]
* Minor corrections to the screen output of the char_sql server when
saving. [Skotlex]
* Corrected authorisation issues in msg_athena.conf [Skotlex]
* Updated Wand of Hermod [Skotlex]
- Can't amp out of it.
- Affects everyone
- Only prevents people from casting supportive skills.
* Fixed mobs not doing their "rude-attacked" skill. [Skotlex]
* Corrected casters being able to walk during Wand of Hermod [Skotlex]
* Made Guild Recall be usable outside of WoE. [Skotlex]
* Changed the default gvg_traps_target_all to yes. [Skotlex]
* Changed the default for copyskill_restrict to 2 (cannot copy advanced
skills) [Skotlex]
* Added a bunch of code related to the 2nd job quest skills and Tae -second
classes skills, as provided by Draco and acquired from jA [Skotlex]
* Merged Draco's implementation of battle_calc_magic_attack. [Skotlex]
* Modifications to the mob AI to more accurately use Range2 (mob's sight
range) and Range3 (mob's chase distance ability) [Skotlex]
* Cleaned up item_db.txt, updated sql-files/item_db.sql to match. [Skotlex]
* Added logarithmic drops support for TXT itemdb loading (how could I had
forgotten that?) [Skotlex]
* Added battle options item_rate_treasure, item_drop_treasure_min,
item_drop_treasure_max, these override all other rate options when it comes
to Treasure box drops. [Skotlex]
* Cleaned up battle_athena.conf regarding drop rates. mvp_item_rate has
been changed to item_rate_mvp. [Skotlex]
* Implemented Maya Purple card effect (you can see any hidden mob). Thanks to jA [Lupus]
* Updated functions: pc_calc_base_job,pc_calc_base_job2 [Lupus]
- They return 24:Taekwon, 25:StarGladiator, 27:Soul Linker
Now someone should UPDATE Job fields of item_db.txt for TK,SL,SG classes
then I'll remove ugly hardcoded "temp plug" from pc_isequip function
[Item_DB JOB field note]: We don't check Knight2,Crusader2,Star Gladiator2 bits,
so don't set them.
In other words we use only these bits:
0-Novice,1-Swordman,2,3,4,5,6-Thief
7-Knight,8,9,10,11,12-Assassin,14-Crusader,15,16,17,18,19,20-Dancer
23-Super Novice
24-TK,25-SG,27-SL
Don't ever use other bits e.g. for Advanced classes. It's useless
* Added Poring Box logs (into dead branch logs)
2005/10/05
* Updated nomemo and noteleports for Lighthalzen/Einbroch/Einbech maps and others. [Nexon]
* Fixed the mob AI. [Skotlex]
* Updated alchemist_summon_reward [Skotlex]
- Summons now never give exp, and they may drop items according to setting:
0: Never drop items
1: Only Marine spheres drop items (default)
2: All summons drop items.
(maybe a different battle option can be made to make summons give exp?)
* Simplified the Grand Cross code. [Skotlex]
It is now entirely a magical attack with extra damage of the form base
atk * skill% - armor def% - vit def. Note that weapon properties won't
apply now as well as many of the offensive cards (those that do not apply
to both magic and weapon attacks, that is), and the def penalty from
having many mobs targeted on one is not applying neither (so the full
def is being taken into consideration). Report any corrections further
needed.
* Cleaned up, organized and improved somewhat the mob ai code. [Skotlex]
(update and test at your own risk as I can't test it currently)
* Some corrections to the way the guild master's name is updated during a
gm change. [Skotlex]
* Added a check to avoid saving negative durations for status changes. [Skotlex]
* Added a check to avoid loading status changes with negative durations
(the walk freeze problems seem related to timers and sc_data loading, so I
am shooting in the dark here at possible problem sources) [Skotlex]
* Various cleanups to ensemble related code, Longing For Freedom may be
working now. [Skotlex]
* Added the water levels to ayo_dun01, gon_dun01 and lhz_dun03, thanks to
Master of Muppets [Skotlex]
* Made Autocounter trigger autospells (was not doing so because it's NK
defines it as a no-damage skill) [Skotlex]
* Some cleanups on the mob slave AI code. [Skotlex]
* Added battle config retaliate_to_master, defaults to yes. [Skotlex]
- Why? Because in official, summoned mobs are not attacked by other mobs
(speaking about alchemists), if you set this to no, then mobs will
retaliate against the summon (both @summon and alchemist ones).
* Some fixes to the way the guildmaster flag is being set and checked. [Skotlex]
* Made the skilllv be 1 if the client sends less than that (this is why
active guild skills were not working. For some reason the client was
sending a request to do the skill at level 0!) [Skotlex]
2005/10/04
* Likely fixed Aeterna + Soul Breaker/Destroyer. [Skotlex]
* Some cleaning of the mob ai. May help with some of the current exploits.
[Skotlex]
* Corrected Mob_ai code to make supportive mobs properly gang up on
summons. [Skotlex]
* Moved the plagiarize code to execute it before dealing damage (because on
WoE you are auto-restored when you get killed, hence the player was 'alive'
and it would copy the skill when killed by it on WoE) [Skotlex]
* Fixed Classical Pluck blocking AoE spells. [Skotlex]
* Updated Spider Web code to not retrigger if already trapped by one
(needed because spider webs can now stack) [Skotlex]
2005/10/03
* Fixed a mistake with my last fix. [Kevin]
* Fixed often occurring memory leak in clif.c. [Kevin]
* Made NPC_DARKCROSS work (it's just a copy of Holy Cross with dark
attribute) [Skotlex]
* Removed resetting the manner when a player is saved. [Skotlex]
* Cleaned up map reading code to make it remove maps that could not be
loaded. It prevents crashes related to maps that weren't correctly loaded
on startup. [Skotlex]
* Fixed Endure to make it add armor mdef. [Skotlex]
* Small fixes to updating the guild master's name during a guild master
change. [Skotlex]
* Some corrections to the mob ai to enable mobs to attack other mobs
(summoned ones, of course) [Skotlex]
* Updated autotrading so that the char will close the shop and quit the map
server automatically when there's nothing left to vend. [Skotlex]
* Added checks to prevent a char from joining/creating multiple chat rooms
(anti-crash fix, it is). [Skotlex]
* Cleaned up and restructured the mob item drop code. It also fixes a
possible crash during the autoloot check. [Skotlex]
* Reupdated Wind Walk to add +5% flee bonus... AGAIN. [Skotlex]
2005/10/02
* Fixed STEAL issue. [Lupus]
- Any Mob has 10 drop slots. If we pick an empty one, then we check previous slot, until we find a slot with an item.
Then we apply STEAL FORMULA for the item. (During the tests I managed to steal 2 poring cards 8)
If a mod doesn't have any slots then STEAL fails.
- Possible exploit: If a mob (e.g. NEW MOBS) has only one rare drop, then STEAL would always try to steal that the only slot 8)
How to fix: I suggest to fill other empty slots with Jellopies or Apples with zero chance.
2005/10/01
* Expanded NPC shop log info of sold items (cards, refine, etc) [Lupus]
* Fixed compile errors in converters [celest]
* Updating built-in zlib to 1.2.3 [celest]
* Added unzip functions to grfio.c [celest]
* Finished Fusion AF2 maps support - just put the .af2 files in the
afm folder and start the map server as usual [celest]
NOTE: It will need a new unzip library, so do 'make clean', or delete
'Makefile.cache' before recompiling!
2005/09/30
* Updated the slave warp code. Now when a master recalls their slaves,
these will be placed 'randomly' around the master in an area_size/2 range.
[Skotlex]
* Cleaned up the mob link (supportive mode) code to prevent wasting time
trying to link friends every 100ms. Now the interval for linking friends is
MOB_MINLINKTIME (1 sec currently) [Skotlex]
* Updated mob code so when a mob hits another, they set their 'attacked id'
to the mob in question, and not the mob's master. [Skotlex]
* Some cleaning up of the Taekwon stance skills. Added a attack delay when
they trigger (same way as triple attack delays your continous attack) [Skotlex]
* Modified the range check in skill_use_id/skill_use_pos so that if you try
to use a skill while moving, it will change your path to move one cell towards the
target before casting (as long as you are within one tile of being in
range). [Skotlex]
* Moved the bleeding reduction formula to status_change_start, modified the
formula to be (lv/5+vit)% reduction. [Skotlex]
* Fixed the blind duration reduction formula. [Skotlex]
* Upgraded Meteor Assault so you can specify the duration of
blind/stun/bleeding independently in skill_cast_db.txt [Skotlex]
* Made TK_JUMPKICK share the same code as Ashura Strike (just to see what
happens, both seem like they behave the same way, no?) [Skotlex]
2005/09/29
* Some tweaks and fixes around status.c, may fix the timer mismatches of
status_change_timer. [Skotlex]
* Fixed a memory leak regarding pet status recovery scripts. [Skotlex]
* Added timestamp support. Set timestamp_format to whatever you want, and
it will print a timestamp in said format before every Show* message. They
can be set independently for each server (defined at login_athena.conf,
char_athena.conf and map_athena.conf). Default is using no timestamps. [Skotlex]
* Modified the new auth login system to take into consideration when the
client tries to connect before the character data arrives from the char
server. [Skotlex]
(seems to work well, but could use more testing)
* Corrected the description of the 'skill_add_range' switches and made them
default to 5. Still pending further tuning (the official value of these
switches should have is still unknown) [Skotlex]
* Added Demonstration to list of skills affected by
'gvg_traps_target_all' [Skotlex]
* Likely fixed Firepillar triggering multiple times when many characters
step unto it. [Skotlex]
* Increased the damage delay randomizer to be +/-10% rather than +/-5%, may
fix 'stun-lock'. [Skotlex]
* Added Consumable items log into pick_log [Lupus]
- You can see logs when someone uses items (boxes, potions, etc)
* Added AtCommands/CharCommands items deletion/creation log into pick_log [Lupus]
* Removed some of the unnecessary verbose messages from the char server
during data saving. [Skotlex]
* Added the new "online check" system (more of a fixing of a system that
was already there but was half working) [Skotlex]
it is turned on/off by using the online_check config options for the
login and char servers.
- char server: When the check is on, players are kicked out of the char
server when their character is already online, and the map servers are
instructed to kick the account out as well. If there's no reply from the
map servers, the char is automatically set offline after 15 secs.
- login server: When the check is on, players get "rejected from server"
when the account is online already, and afterwards the char servers are
told to kick that account out (like in the first case), if after 30 secs
there is no reply from the char servers logging off the account, the login
server sets it offline on it's own.
- The checks are by default on as they are meant to prevent possible
exploits on multi-map servers.
- However, I have not figured out where exactly a char server gets to know
that a player has changed map-servers, so this could cause trouble in said
enviroments until I figure it out (it won't go out of sync forever since
the map servers do update their list of online characters every then
seconds) :/
* Fixed crash, related to STEAL logs [Lupus]
* Added TXT logs for Pick_log [Lupus]
2005/09/28
* Added 'scripts items operations' and 'vending' into pick_log: [Lupus]
Tested with refine, getitem, getnameditem, removecards, etc commands. They are all supported.
Now you can see if a player breaks his armor in NPC Cards Remover, etc.
You can track down any item within a single DB.
You can make a SQL query to find which items are most popular, which quests are most popular, etc
Of course, it could help you to find your local items exploits, cheaters and unfail admins ^_-
- Added 'Autolooted' and 'Stolen' items into pick_log
- TODO: Add TXT logs
* Fixed JobMaster NPC. Thanks Amada [Kayla]
* Removed card-fix flag from Cart Termination. [Skotlex]
* Updated battle_check_target so that a mob will consither another mob an
enemy if either one has special mob ai (is a @summon or summoned alchemist
mob). Summons from the same master should not be attacking each other,
however I do think they will attack summons from another player. [Skotlex]
* Removed 10 chances to pick an item from STEAL skill (it should have only 1 chance) [Lupus]
2005/09/27
* Corrected again Wind Walk. Just +5 flee at lv10, walk bonus does not
stacks with other speed giving skills. [Skotlex]
* Corrected Wind Walk's walk and flee bonus (walk was a +4*skill_lv%
increase! and flee was +5 flee, rather than +5% flee of your total).
[Skotlex]
* Added atcommand @changeleader, transfers the leadership of a party to
someone else. [Skotlex]
(defaults as a GM-level 10 command, not quite yet tested)
* Added delitem2 script command with script sample by Mihilion [Lupus]
* Removed the check that prevented chars from logging out during status
changes, as the current system should save and restore these correctly.
[Skotlex]
2005/09/26
* Fixed MAX GUILD capasity in mmo.h to allow correct +6 Guild Extension [Lupus]
* Changed back the TIMER_MIN_INTERVAL to 50. Who changed it back to 25?
(svn3015 skotlex: Changed TIMER_MIN_INTERVAL to 25 (from 10), it probably needs to be bumped even higher, awaiting results from testers to see if a higher value would be needed.
svn1284 lupus: timers optimization / speed up / bug fix : no freezing mobs [TIMER_MIN_INTERVAL: 50->10])
(note to self: make this a setting in inter_athena.conf) [Skotlex]
* Guild Extension now adds 6 per level. [Skotlex]
* Added define ENABLE_SC_SAVING in common/mmo.h, comment/remove this line
to disable saving of status changes (temporary measure) [Skotlex]
* Updated Double Casting to only work on Firebolt, Coldbolt and
Thunderbolt. [Skotlex]
* Fixed cloaking/hiding. [Skotlex]
* Updates to status_change_start, scdata loading now should display on the
targetted player. [Skotlex]
* Removed card modifiers from Meteor Assault. [Skotlex]
* Corrected skill_out_range_consume so that spells effectively fail if the
target goes out of range. [Skotlex]
* Another another check on the new auth system which may help prevent
exploits. [Skotlex]
* General cleanup and code improvements needed because of the new auth
system. [Skotlex]
* Fixed a bug in the new auth system (TXT) which was causing the gender to
be pretty much randomly sent. [Skotlex]
* Fixed a bug in changesex at the TXT char server level. [Skotlex]
* Updated new logging system. Now logs TRADE, NPC Shops [Lupus]
* Fixed a possible exploit in the new auth system. Thanks to End of Exam
for the information. [Skotlex]
* Corrected True Sight critical bonus. [Skotlex]
* Water Ball will now do the full number of hits regardless of available
water when used by non-players. [Skotlex]
* Changed the emoticon delay to 1 second. [Skotlex]
* Zeny/item kill bonuses now work on all skills, and not just physical
weapon attacks. [Skotlex]
* Added official Ayothaya Town script by MasterOfMuppets [Lupus]
* Added new Players / Monster Drops / Pickups Logging system [Lupus]
- Changed new log table, now it has field 'type':
M = Monsters Drop, P = Players Drop/Take, L = Mobs Loot Drop/Take, T = Players Trade Give/Take,
V = Players Vending Sell/Take, S = Shop Sell/Take, N = NPC Give/Take
NOTE: 'looted drop' might has cards, refine, etc. 'common drop' has item w/o cards/refine
- Now you can see Players(cheaters) passing any items w/o trade
- Now MOBS+PLAYERS drops come in the same table (easy to query)
Poring -5 Apple
Zelgadis +5 Apple
- You can tell off monsters by their LOW id. < 2000~
- Negative value of AMOUNT shows that a mob, or a player has dropped that items amount
- Positive value of AMOUNT shows that a player has pickedup that items amount
- It works 5x faster than old DROPLOGS
- TXT logs don't work yet
- TODO: Add Autolooted & MVP items in the log, too.
- TODO: Add Mobs Looters DROP items in the log. (Now only attacked mobs log loot drops)
- TODO: Add Scripts/Vending logs
2005/09/25
* Modified battle_weapon_delay so that additional status effects are
invoked even if the attack does no damage, as long as the attack connects
(that is, it is not a miss/lucky dodge) [Skotlex]
2005/09/24
* Updated several mob stats for the Lighthalzen and later mobs from the
data provided by Viccious Pucca. [Skotlex]
* Updated sql-files/mob_db.sql to contain the most recent mob_db. [Skotlex]
* Added support for saving/loading status changes when characters log
in/out. [Skotlex]
- TXT users: the file used by default is scdata.txt, can be changed by
setting scdata_txt to something else in inter_athena.txt.
- SQL users the table used by default is sc_data, can be changed by setting
scdata_db to something else in inter_athena.txt. Use upgrade_svn3273.sql to
generate the new table.
- It is currently unknown the behaviour of restoring some status changes,
if any anomality shows up, do report.
- Currently, even thought the sc data is restored, the client does not
receives the packet telling them that the effect started (like Gloria, you
can see you have +30 luk, but the message is never there) nor the visual
effects are in neither. This is a side effect of starting the status
effects on a player before the client finished loading the maps and spawns
in the map. Will be fixed later.
* Some memory optimizations tothe new auth system. [Skotlex]
* Moved the charsave_method config to inter_athena.txt [Skotlex]
* Fixed Demonstration/Bomb getting 100% breaking chance on low skill break
rates [Skotlex]
* Fixed chars being able to cast skills while rooted if they didn't have at
least root lv1 [Skotlex]
* Removed Assert in pet_walk, use a less unstable debugging tool, causes
errors in remote shells. [Kevin]
* Fixed TXT char login with new auth system. [Kevin]
* Done: Adjustable players titles for @who, @who2, @who3 commands [Lupus]
- Check msg_athena.conf for new lines
2005/09/23
* Software Caused Connection Abort errors will now cause said socket to be
removed inmediately from the listening list of sockets, this may help with
the lag issues that arise when said error occurs. [Skotlex]
* Fixed Demonstration having 100% breaking chance if you set skill breaking
chance to 0. [Skotlex]
* Swapped functions of @who and @who3 commands. Because it's a spoil [Lupus]
to show players locations. You may enable @who for your common players now.
there's a shortcut for @WHO: @W
* Started adding adjustable players titles for @who, etc commands [Lupus]
- e.g. Super Player, GM, GM+, etc
2005/09/22
* Updated sql-files/item_db.sql to have the most current version. [Skotlex]
* Finished first part of new auth system, fully tested. Will reduce char->map
lag by whatever it is you are haveing. [Kevin]
* Added consideration of GrandDarkness in various code sections that were
only checking for Grand Cross [Skotlex]
* Deployed use of map_getallusers all over the map server where it makes
sense to include disconnected players. [Skotlex]
* Corrected map_getallusers to depend on the actual count of players in the
db rather than the variable users (prevents possible crashes if the two
differ) [Skotlex]
* Updated the player counting function so that it correctly accounts for
all players (including those not connected like in autotrade) [Skotlex]
* Characters will now automatically stand if Soul Drain is triggered while
sitting. [Skotlex]
* Set default option gvg_traps_target_all: no [Lupus]
- In kRO it used to be 'yes' some time ago but has been reverted back to 'no'
2005/09/21
* Corrected an error in the way guild alliances were being counted, as
pointed out by Viccious Pucca. [Skotlex]
* Fixed and deployed map_getallusers() on atcommands @who, @who2, @who3.
[Skotlex]
- This function should enable the aforementioned commands to work even on
players who are in the server but are not connected (eg: autotrade
players). It is temporarily only deployed on the @who functions pending on
feedback (bug reports, anything) before going ahead and implementing it on
all relevant atcommand/charcommand/script functions.
* Replaced the trim() function with Furoken's implementation (it should
remove tabs, consecutive spaces and other such unwanted characters from a
char's name) [Skotlex]
* Updated doc/script_commands.txt to explain the upper parameter of the
function jobchange. [Skotlex]
* Corrected sql query errors when logging trades and vending. [Skotlex]
* Updated doc/script_commands.txt with the script commands I've modified
or added that are not yet described within. [Skotlex]
* Small fix to clif.c which corrects characters that can't log in again if
they log out when the char and map server are not connected. [Skotlex]
* Cleaned up all SQL error reporting. It now follows the same standard
everywhere, and is followed by a debug line which includes the file, line
number and contents of the attempted query which caused the error. [Skotlex]
* Corrected an sql logs error when selecting a character with special
characters (eg: single quotes) on it. [Skotlex]
2005/09/20
* Changed Palm Strike's initial animation display. [Skotlex]
(it will show as a normal attack that misses instead of an skill, but at
least the animation delay is correct and the skill can be chained now)
* Adjusted Cart Revolution's damage to be based on the Cart's Max Weight
(instead of the hardcoded 8000w value) [Skotlex]
* Fixed a memory leak when pets cancel their casting. [Skotlex]
2005/09/19
* Added error reporting an item in the item_db.txt file has insufficient
fields (rather than just crashing) [Skotlex]
* Updated the item_db to use the new race and element constants. [Skotlex]
* Fixed (I think) battle option muting_players. Defaulted it to yes. [Skotlex]
* Added timers for displaying guildmates position. [Skotlex]
- All the packet related code was already there by Valaris, so I wonder why
this wasn't finished before?
* Added battle_athena options max_def/over_def_bonus (read
battle_athena.conf for desc) [Skotlex]
* Added error reporting when the magreg file fails to be saved. [Skotlex]
* Made berserk castable during the no-regen period when it expires. [Skotlex]
* Fixed a query error on sql refine logging. [Skotlex]
* General checks to the script engine string management. Should fix a bunch
of memory leaks. [Skotlex]
2005/09/18
* More updates to status change IDs [DracoRPG]
* Implemented TK_SEVENWIND, allowed simultaneous use of several stances, thanks to
reddozen for all the info about that [DracoRPG]
* Allowed to pickup/drop items while in Frenzy [DracoRPG]
2005/09/17
* Added a check that should prevent fighting against other guilds outside
of WoE times. [Skotlex]
* Hopefully fixed Hunter's Dectect skill. [Skotlex]
* Fixed the packet issues on the char txt server. [Skotlex]
* Miscellanous corrections to skill_attack. [Skotlex]
* Corrected the AutoSpellWhenHit rate of all items in the db (TXT + SQL)
[Skotlex]
2005/09/16
* Reverted some of the contents of skill_unit_move_unit_group since the
previous algorithm was optimized. Walking during a Song/Dance should be
smooth again. [Skotlex]
* Rewrote the guild gm changing system. [Skotlex]
- @changegm works now (tested in SQL, TXT should also be working)
- Added script command "guildchangegm <guild id>,<new master's name>". Now
go write some Guild Master changing npc if you want it to cost money, have
a minimum guild level requirement, etc.
* Added Ishizu's logarithmic drops equation. [Skotlex]
(see battle_athena.conf for full details)
* Added a sub-function call to clear Castle owners when their guild is
broken. [Skotlex]
* Added a char-server call to clear the alliance when a guild is broken
(when a guild breaks, the alliance/opposition is removed from memory on the
map server, so it seems said change is not sent/saved on the char-server
side?) [Skotlex]
* Added script function sc_start4, starts an status change with all four
values. [Skotlex]
Use: sc_start4 TYPE, DURATION, VAL1, VAL2, VAL3, VAL4, <target ID>
* Added SC_ARMOR_ELEMENT/SC_DefEle, specifies elemental defense bonus
against two elements at a time. For example:
sc_start4 SC_DefEle, 60000, Ele_Fire, 20, Ele_Wind, -15;
Gives 20% additional fire resistance and reduces 15% Wind resistance for
60 seconds.
* Expanded battle_attr_fix to consider the status changes of the involved
chars that affect elemental modifiers. [Skotlex]
* Fixed some status effects not being correctly ended/recalculated when you
stepped out of quagmire/song/dances. [Skotlex]
* Made quagmire be affected by the "gvg_traps_target_all" battle switch. [Skotlex]
* Added Bloody Branch log (along with Dead Branch) [Lupus]
2005/09/15
* The skill Vending will now fail on GM characters who do not satisfy the
gm_can_drop level requirement. [Skotlex]
* Updated the sql-files mob_db.sql and item_db.sql files to the current
version (just feed'em to sql to have your item_db and mob_db tables
updated). [Skotlex]
* Now @allskill and it's ilk will give you ALL skills except the ones
marked as "npc skills" (those have an inf2 value of 2). [Skotlex]
* Some code optimization around song/dances, now the ensemble should be
cancelled if you walk (or are knocked out or whatever) out of it.
[Skotlex]
* Added log support to N slots. Now all cards should be logged [Skotlex]
- Note that I have not been able to test it yet, so report back any
problems caused by it.
* Fixed a memory leak when removing disconnected chars. [Skotlex]
* Re-enabled the Memory Manager by default. [Skotlex]
* Updated atcommand @rates so that it displays current exp rates in x form
(eg: "Current rates: Base 4.5x, Job 8.0x") as suggested by Mellowz.
[Skotlex]
* Corrected resetskill messing up with Wedding Skills. [Skotlex]
* Some adjustment to the status change defense (as per data provided by
Viccious Pucca) [Skotlex]
* VVVS weapons now give +50 damage instead of +40 (again thanks to
Viccious) [Skotlex]
* Success rate of making Star Crumbs now is 100% (regardless of skill
level?) [Skotlex]
* Couple of crash fixes on the map-server char saving method
(char_save_method: 1) [Skotlex]
2005/09/14
* Yet another correction to SQL char saving. [Skotlex]
* Added support for N slots. [Skotlex]
- By changing the constant MAX_SLOTS in common/mmo.h, the server can be
configured to support items with more than 4 slots. Saving/Loading and
inserting of cards should be working correctly. Features still missing
are including the extra slots in the log functions and updating clif.c to
send the extra cards to the client (This is still work in progress).
- SQL Users interested in using this, need to manually add columns card4,
card5 and so on to the relevant tables (cart_inventory, guild_storage,
inventory, storage), example query:
ALTER TABLE inventory ADD COLUMN card4 int(11) NOT NULL default
'0' AFTER card3;
- TXT users need do nothing, the char server handles the
expanding/contracting of slots internally (if the number of slots is
shrinked, the additional slotted cards are lost)
- Never set the amount of slots to less than 4, as they are needed for
forged equipment.
* Likely fixed Lex Divina. [Skotlex]
* Likely fixed sql char-saving, too. [Skotlex]
* Lex Divina can now be casted on allies as long as they are silenced.
[Skotlex]
* Fixed crashes on GVG grounds involving characters with no guild. [Skotlex]
* Added a few socket features from Freya which hopefully will help
stabilize eA on Windows (testing needed!) [Skotlex]
* Miscellanous fixes and rewrites to memitemdata_to_sql, it'll probably
fixed the stackable named items duplication exploit. [Skotlex]
(note that it is not tested, so there's the chance I broke everything
instead, so upgrade for testing purposes only and report back!)
* Changed HP/SP drain rates so that the max (100%) is 1000. Adjusted item
db accordingly. [Skotlex]
* Disabled chars from muting themselves (as a temporary measure against the
mysterious "don't use bot!" message) [Skotlex]
* Added atcommand logging for /monster and /item (not quite tested yet, but
I think it'll work) [Skotlex]
* Changed autospell rates so that the max (100%) is 1000. Adjusted item
database accordingly. [Skotlex]
* Reverted displayed heal value. [Skotlex]
2005/09/13
* Fixed Basilica [Skotlex]
* Rewrote the mechanics of how Devotion works. [Skotlex]
* Updated Heal so that it displays on-screen the actual amount that was
healed. [Skotlex]
* Changed the damage motion equation to 1/4th of what it was before (now
using player_damage_delay_rate: 100 is what was player_damage_delay_rate:
25 in previous revisions) [Skotlex]
* The login servers will now notify when a player has an account ID under
700000 (which won't let them connect to the map server) [Skotlex]
* Added support for SC_BLEEDING in skill_counter_additional_effect &
skill_additional_effect [Skotlex]
* Changed bonuses bAtkRate, bWeaponAtkRate and bCritRate to modify
base+watk damage, not just watk. [Skotlex]
* Corrected coma-effect killing bosses. [Skotlex]
2005/09/12
* Party even share code won't try to give dead players their share of the
exp (since pc_gainexp would refuse so anyway) [Skotlex]
* Added trim() usage to char servers to prevent creation of characters with
spaces at the beginning or end of name. [Skotlex]
(the client won't let me create chars with said names so I can't really
test it, but on the very least valid names are not crashing it as far as
I can see)
* Expansion/optimization of the skill unit code. Now it should be correctly
identified when a character walks into a skill cell, walks out of a skill
cell, and walks out of the skill group (performance optimization,
client-side: songs and dance effects will work correctly, and Quagmire
won't spam "speed up/down" messages). [Skotlex]
- Got basic testing only (casting, amp/encore, walking, being knocked back,
warping), so report any problems found.
* Bomb/Demonstration should now be cast-able under the Emperium. [Skotlex]
* Acid Terror now knows ignores armor defense, but not vit defense. [Skotlex]
* Added an official Bards Job Quest (check npc\changelog.txt) [Lupus]
2005/09/11
* Changed back the default of gx_all_hit to no. [Skotlex]
* Added check to prevent ensemble skills from changing position. [Skotlex]
2005/09/10
* Removed the changing of targets for offensive songs in gvg grounds. [Skotlex]
* Corrected Grand Cross not always hitting 3 times. [Skotlex]
* Fixed the display of Auto Counter. [Skotlex]
* Added check to prevent auto-spells from being casted when the source and
target are the same (normally you can't hit yourself, though....) [Skotlex]
* Fixed Root [Skotlex]
* Fixed the issue which made mobs do nothing. [Skotlex]
* Change Provoke to affect armor def of mobs, and vit def of mobs/players. [Skotlex]
* Another change to autocounter, I think it will work now. [Skotlex]
* Fixed Defender's aspd bonus. [Skotlex]
* Fixed rooted character's root level (instead of using the caster's level) [Skotlex]
* Windows builds will now abort and exit when there's a "Software Caused
Connection Abort" error since it seems unrecoverable.. [Skotlex]
* Reverted back my char.c/sql char.c changes 8) Have to re-check [Lupus]
* Added official Louyang city (thanks to MasterOfMuppets), fixed some Kafra bugs [Lupus]
check npc/changelog.txt
2005/09/09
* Fixed TXT/SQL char servers not reading properly their command line arguments [Lupus]
* Refixed those compiler errors >.< [Skotlex]
* Readded the damage delay to firewall. [Skotlex]
* Added an extra db (pc_db) to hold players, it should speed up map_id2sd
lookups. [Skotlex]
(note that all functions which do a search on all connected players do a
linear search on the connection sessions, and porting this to use the new
system will take a pretty annoyingly long time)
* Added checks to prevent dropped items from stacking (they can still
stack, but at max 2 items per cell). [Skotlex]
* Added Guild removing from memory upon guild break to Char SQL server
(TXT already had this correctly) [Skotlex]
* Changed Provoke to reduce armor defense, not vit defense. [Skotlex]
* Likely fixed the direction check in Auto Counter. [Skotlex]
* Removed the console functionality from socket.c (it was no good on the
map server since that session is used on disconnected players), also added
more checks to prevent parsing session 0. [Skotlex]
* Added check to prevent skills from triggering auto-skills of the same id
(prevents unlimited chain-reactions) [Skotlex]
* General fixes to guardian spawning code. [Skotlex]
(includes setting a timer so the Emperium gets it's guild data if not
available at spawn time).
* When the Emperium's guild is not found (in mob_spawn_sub, 5 secs after
trying to spawn it) the Castle will be reset back to no guild owning. [Skotlex]
* Fix to battle_check_target, should correct guardians/emperium [Skotlex]
* Guardians will now be deleted if their guild is not found in
mob_spawn_guardian_sub. [Skotlex]
2005/09/08
* Added filter into chat log. Check log_athena.conf for more info [Lupus]
- Now you can turn off logs during WOE, etc
* Made Musical Strike/Slinging Arrow work while in ensembles. [Skotlex]
* Oops, fixed the compile error. [Skotlex]
* Various checks to prevent trying to send data to disconnected players in
clif_send [Skotlex]
* Moved the auto-spell code from weapon attacks to skill_additional_effect
and skill_counter_additional_effect. [Skotlex]
- The autospells will trigger for all skills/normal-attacks except those
with nk =1 (no damage skill) which is needed to prevent stuff like
heal, traps or dances from triggering it.
- Does not affect SC_HINDSIGHT triggered spells.
- NOT properly tested as of yet, report any abnormalities and skills it
should/should-not be working with.
* Fixed the crash when attempting to target a Emperium. [Skotlex]
* mob_spawn_guardian will now 'retry' to load the guild data five seconds
later if the guild info is not available at spawn time. [Skotlex]
* Fixed disconnected chars appearing as GMs on the console. [Skotlex]
* clif_send_sub won't try to send any data to disconnected chars now. [Skotlex]
(may fix possible buffer overflow crashes)
2005/09/07
* According to the patch, enabled Butterfly wings in the Castles [Lupus]
* Adjusted MAX_GUILD constant according to Skotlex's changes [Lupus]
* Now when the castle owner guild id is loaded, and the guild is not in
memory, the map server will request it right away from the char server. [Skotlex]
* Corrected Guild Extension to be +4 to the max guildmates per level. [Skotlex]
* Changed the default max vending value to 1 Billion [Skotlex]
* Inverted meaning of pvp_noguild and pvp_noparty flags. the default then
for all maps where they are not set is: You can't attack parties/guildmates
on pvp maps. [Skotlex]
* Updated mapflag/pvp_noparty to mark only the gvg arenas. [Skotlex]
* Added mapflag/pvp_noguild, by default includes all pvp arenas. [Skotlex]
* Cleared up some of the warning messages on mob_spawn_guardian. [Skotlex]
* Fixed the compile error on skill.c... [Skotlex]
* Changed offensive song/dances target to BCT_ALL when invoked in pvp/gvg
grounds. [Skotlex]
* Added unit flags UF_NOMOB, UF_NOPC to give better control on who gets
affected by ground skills [Skotlex]
* Fixed the possible crash in map_foreachinpath. [Skotlex]
* Removed the error message in mob_guardian_changeguild when the new guild
has ID 0, the mob will just be removed instead. [Skotlex]
2005/09/06
* Changed Assumptio to target all players around target. Mobs are no longer
affected. [Skotlex]
* Fixed battle_check_target fails on guild-mates in pvp maps. [Skotlex]
* Reverted battle_check_target to prevent floras from hitting themselves
until a better scheme can be thought of. [Skotlex]
* Reorganized battle_weapon_attack to allow counter/root from blocking
autotriggered skills (like TripleBlows/Sacrificial Ritual) [Skotlex]
* Fixed that crash on mob_spawn_guardian. [Skotlex]
* Added battle option gvg_traps_target_all, defaults to yes for now. [Skotlex]
* Added Zoc's fix to @autotrade (which made traders unable to login again..
ever) [Skotlex]
* Massive Guardian update. [Skotlex]
- Rewrote the guardian stat-passing system to minimize the need of db
lookups. Should greatly reduce the heavy lagging during WoE.
- Not properly tested (lack of resources), update at your own risk AND
PLEASE report any crashes/problems.
2005/09/05
* Fixed Endure. [Skotlex]
* Fixed Harmonic Lick not adding status change resistant. [Skotlex]
* Moved ensemble stats calculating from status_change_start to
skill_unitsetting (performance purposes) [Skotlex]
* Fixed song/dance effects lasting 30 secs rather than 20. [Skotlex]
(still somewhat inefficient, needs better handling method)
* Battle check target fix: Novices/Low levels being unable to target mobs. [Skotlex]
* Temporarily made traps not target allies on gvg (Still up for dabate) [Skotlex]
* Battle check target update: Summoned creatures won't be checked versus
their master, means you should be able to target them as if they were
normal enemies. [Skotlex]
* Made Shield Chain long ranged (it has to be affected by pneuma/defender). [Skotlex]
* Fixed both trader/seller not being saved when using autotrade. [Skotlex]
* Added debug messages to figure out who is causing the rain of function
mismatches on deleting skill_timerskill. [Skotlex]
2005/09/04
* Fixed Trade Bug (when Trade Window indication was wrong). Thanks to k3dt
* Now Water Ball isn't affected by RAIN mapflag anymore. Also corrected
caclulation of number of WB shots (was broken by a typo) [Lupus]
- Rain has been removed from kRO long ago.
* Now Safety Wall fails to protect against Acid Terror. [Skotlex]
* Added battle_config option firewall_hits_on_undead (defaults to 1) [Skotlex]
The deal is that each time the skill triggers on an undead, this number
of hits will be dealt instead of just one.
PROs: With a value of 5 or so, vertical firewall will work completely.
CONs: A high value means the whole tile can be wasted killing a single mob.
* Fixed working stealing with NOLOOT mapflag on. Thanks 2Lorky [Lupus]
* Now Knockback won't work when the target is already dead (prevents
ghosts) [Skotlex]
* BSS now targets every player in the area of effect (might be updated to
include mobs pending on further information) [Skotlex]
* Acid terror is now considered a ranged attack. [Skotlex]
* Crash fixes to the npc-whisper system. [Skotlex]
* Fixed classchange-able Emperium/Guardians/Treasure Boxes, thanks to alsimons [DracoRPG]
* Fixed songs/dances, updated Hip Shaker [DracoRPG]
* Fixed some fields in sql-files\main.sql... Who the hell added back `broken`? The field
`attribute` is the good one! Also changed `fame` type to the same as `zeny` (same max
value in the source code, so samemax value in the SQL saves !) [DracoRPG
* battle_check_target update: Fixed BCT_NOENEMY checks. [Skotlex]
* Moved Mental Sensing bonus from pc_gainexp to mob_damage, it is now a
status effect which the mob itself needs to be inflicted with to take
effect (and everyone involved in killing it will benefit) [Skotlex]
* Pets now won't move while casting (unless their master is like a screen
away or so) [Skotlex]
2005/09/03
* Fixed speed calc for pushcart/stalk/dancing/singing. [Skotlex]
* Some crash-fixes introduced by the rewritten status system. [Skotlex]
* Adjusted the default gvg penalty values, added gvg_flee_penalty. [Skotlex]
* Fixed skill_blown causing a dangling pointer in the map data. [Skotlex]
(I believe this is the actual cause of all the crashes as of late)
* Fixed @autotrade venders not being saved after they sell an item. [Skotlex]
Now both characters are saved to prevent exploits, too.
* Fix to mob_setdelayspawn, if lucky might help with the crashes as of late. [Skotlex]
* Added status effect SC_WATK_ELEMENT, converts part of your weapon attacks
into a different element. Used in magnum break to give 10% fire damage
bonus to your attacks. [Skotlex]
* Made firewall hits not have any "damage delay", it merely knockbacks. [Skotlex]
* battle_check_target update: added novice/low-level pk prevention on
pk_mode [Skotlex]
* testing new SVN location [MouseJstr]
2005/09/01
* Entirely rewrote status_calc_pc and status_get_[stat] functions to have a clear code.
They all use shared status_calc_[stat] functions to handle SC effects, this will avoid
to have 2 almost identical codes in different places for those effects [DracoRPG]
--> It compiles, it runs, it seems to work but I couldn't perform any extended testing
as always, feel free to report bugs ;)
* Added battle_option "slaves_inherit_speed" to decide whether slaves have
or not the same walk speed as their master. Defaults to yes. [Skotlex]
* Removed val4 from song/dances so that they won't be as bugged anymore.
(still pending on Draco's status update, but at least now stuff like Poem
of Bragi shouldn't cause insta-cast) [Skotlex]
* Changed the way song/dance status effects last. The first time you step
in a tile the status starts for 30 secs, not refreshed until it times out.
Not the way it really should be, but it's much better for performance
issues.
* Fixed summoned slaves having the same walk-speed as their master (fixes
metamorphosis-hatched mobs from having an egg's speed). [Skotlex]
* Added fix_timer_heap, should correct timer problems when the tick
overflows. Does it works? We'll find out in 48 days when the next
loop occurs. [Skotlex]
* Another update to battle_check_target [Skotlex]
(Should fix slave-skills hitting a slave's master)
* Corrected magic_damage_return code being double-invoked. [Skotlex]
* clif_GM_kick will now invoke map_quit if the player doesn't has a session [Skotlex]
(this should fix @kick and other such commands on autotrade chars and the
like)
* Fixed pc_damage/mob_damage returning 0 instead of damage dealt (which in
turn made all attack/skills not trigger their additional effects) [Skotlex]
* Updated Assumptio to target everyone instead of "not enemies" [Skotlex]
* Fixed a fatal dangling pointer in the mob_setdelayspawn when handling
mobs that don't respawn. [Skotlex]
* Updated WE_CALLPARENT to not check for range (as it should?) [Skotlex]
* Added flag accreg_dirty to identify when account variables have not been
saved yet, it'll retry then on every call to save the character (it will
prevent account variables from being lost when the char/map connection is
not established)
2005/08/31
* Updated @npctalk to work as it should [Skotlex]
- Usage @npctalk NPC Name, Your Message Goes here
* Fixed Wind Walk's flee/speed bonus (as pointed out by Viccious Pucca). [Skotlex]
* Fixed a crash in pc.c when the last save point was not found (thanks to
Foruken) [Skotlex]
* Rewrote map_foreachinpath, it should work mostly right now. [Skotlex]
(the path 'stops' at the destination point rather than keep going
forward, but it can probably be fixed later)
* Moved battle_config spawndelay adjustments from mob.c (calculating it
each time they were killed) to npc.c (calculate it once during parsing).
[Skotlex]
* Synchronized additional status effects with the delayed damage [Skotlex]
(this should fix eg: enemies freezing when you start the attack
animation, and then breaking the ice when your attack animation finishes
and the damage shows up)
* Moved knockback to effect after damage is applied. [Skotlex]
* Fixed the Wedding Skills not displaying the actual amount healed. [Skotlex]
* Moved skill induced status effects to take effect before knock back. [Skotlex]
* Refixed "Don't Forget Me" [Skotlex]
* Changed 'pet_hair_style''s description and default value to 100 [Skotlex]
(100 is the value being reported to work with current clients)
* Fixed Freeze 'counter' not resetting when killed. [Skotlex]
* Fixed Endure adding to mdef2 instead of mdef. [Skotlex]
08/30
* Fixed Breaker's magical part of the damage having element -1 [Skotlex]
(now it takes neutral element, because I don't think the magical part of
an attack can get the weapon's property)
* Fixed Magic Crasher having the min/max values inverted. [Skotlex]
* Updated "Don't Forget Me"/"Slow Grace" to last 20 secs after you step out
of the dance-zone. [Skotlex]
* Changed the default of defunit_noenemy to no, and added comments
explaining what it REALLY does. [Skotlex]
* Fixed perfect tableture's lucky dodge bonus. [Skotlex]
* Updated slave ai code to let slaves wander freely on the screen (will
wander as far as battle_config.view_area lets them) [Skotlex]
* Splitted Char-sql status saving into status/status2, the later is for
values that will seldomly change. [Skotlex]
* Updated servers so that when the player changes dye or hair color, the
char-server is notified and the guild_member data is updated on all map
servers. [Skotlex]
* Updated servers so they also report on sex change. [Skotlex]
(altough this one I have no tested yet)
* Changed bGetZenyNum/bAddZenyNum to be a bonus2 type [Skotlex]
(eg: bonus2 bGetZenyNum 10, 30 <- Receive 10z per mob level on 30% of
your weapon-based kills)
* Added script function groupranditem(i), returns a random item_id from the
specified item-group given. [Skotlex]
* Changed bLongAtkRate bonus to be more card-like (works just like
bLongAtkDef, except it's for attack) [Skotlex]
* [SQL] Added Storage Items sorting by nameid. On loading. [Lupus]
* Added GetItemInfo(Item ID,n) script function. Returns Buy/Sell Price, Def, etc [Lupus]
added sample/getiteminfo.txt Tested, fully working!
* Added ID#2258 Spiky Band(Sharp Headgear) to allowed equipment of Star Gladiator [Lupus]
* According to the 23 Aug Patch added complete equipment check for 3 new classes. [Lupus]
Now they can't equip forbidden items 8)
08/29
* Added battle config option pet_hair_style and defaulted it to 24 [Skotlex]
According to information relayed by End of Exam, this should fix the new
clients showing the sword cursor for pets (older clients will be the ones
screwed instead, in said case you'll want to change pet_hair_style to 20)
* Updated battle_check_target to take into consideration the special states
killer/killable. [Skotlex]
* Corrected the Fury Guardian Angel not giving +50 critical. [Skotlex]
* Made mob_walktoxy fail when the mob is dead. [Skotlex]
(may fix the phantom mob issue?)
* Updated spawn parsing to identify small/big mobs. [Skotlex]
Use the "event" field (last column, the one after the two spawn delays)
to identify the mob's size: 2: small mob, 4: big mob. 1-2 is not used
because a hella lot of plants/mobs already use 1 in it (even though eA
completely ignores this value)
* Inverted the meaning of mapflags pvp_noparty/pvp_noguild [Skotlex]
When the flag is set, then you should NOT be able to hit your
party/guild-mates on pvp grounds.
08/28
* Fixed demonstration/Bomb stacking. [Skotlex]
* Fixed damage versus plants in BF_WEAPON attacks. [Skotlex]
* Fixed the whole sqrtl mess. Thanks to Shinomori for clearing things up.
[Skotlex]
* Added new maps, thanks to Poki#3 [DracoRPG]
* Switched SCs between two taekwon kicks to get the proper icon ^^ [DracoRPG]
* Added the falling animation to TK_HIGHJUMP, but now the client doesn't refresh the
position u_u [DracoRPG]
* Reverted default option to allow anyone to plagiarize advanced skill (vicious or
someone else - I can't remember xD - told me it was like this on kRO, but not yet on
iRO) [DracoRPG]
08/27
* Fixed the cast-bar from autocounter not disappearing after triggering the
skill. [Skotlex]
* Updated battle_check_target to make marine spheres universal enemies, so
anyone can attack them. [Skotlex]
* Cleaned up item_db.txt (format, commas, etc), added status bonuses to the
cooked foods. [Skotlex]
* Updated sql-files/item_db.sql to match with the current contents of
item_db.txt [Skotlex]
(sql users just feed it to mysql, it will drop and recreate the table)
* Fixed IDs for Taekwon-class : 4047 is Star Gladiator, 4048 is a second Star Gladiator
(probably used for a "Superman-mode" flying sprite) and 4049 is Soul Linker [DracoRPG]
08/26
* Fixed being able to move during Encore skills when you did not need a
partner. [Skotlex]
* Fixed @reloadmobdb not properly erasing mob skills before re-reading. [Skotlex]
* Updated/fixed effect of most dances & songs according to kRO's website and ragnainfo's
very good Bard/Dancer Guide [DracoRPG]
* Fixed Raging Trifecta Blows missing Emperiums, thanks to happylight [DracoRPG]
* Changed the way short|long|magic_damage_return work : previously they gave 100% chance
to return x% damage, now it is x% chance to return 100% damage (Maya and High Orc Cards
should behave like this, I'm not sure for Orc Lord Card but it seems logical to be the
same system...) [DracoRPG]
* Fixed bonuses from Wind Walker, thanks to vicious_puca [DracoRPG]
* I also reorganized the hit/flee calc in status_calc_pc to consider first absolute values,
and then apply relative (percentage) modificators.. if you make a mix of both, it'll be
completely fucked up, and be sure it won't be like on officials (although my system maybe
isn't the good one neither...) [DracoRPG]
* Some rewrites to client version rejecting code [Skotlex]
Should eliminate lag when players try to log-on with a rejected client,
however there's the chance they won't be receiving the "your client is
not latest EXE version" message, and that's why the previous, laggy,
implementation was used :/
* Fixed Enchant Deadly Poison lasting forever after killed. [Skotlex]
* Fixed the duration argument of @summon [Skotlex]
* Now @summoned mobs will follow their master everywhere and that includes
warping from map to map. [Skotlex]
(why? Because I think that's neat, and will probably be needed anyway
once Homonculus get implemented)
08/25
* Cleaned up mob_db.txt and updated sql-files/mob_db.sql [Skotlex]
Sql users can just feed mysql the .sql file and it will delete and refill
the table with the most updated db data.
* Corrections to damage versus plants. [Skotlex]
MAGIC and MISC attacks do 1 damage per hit.
WEAPON attacks do 1 damage, display miss if they hit multiple times.
* Instead of knocking back (which wasn't even working), characters that are
stepping on an icewall will cause that tile of the icewall to 'die' [Skotlex]
* Final damage equation update to Acid Demonstration. [Skotlex]
(it still won't ignore the raydric card, but why that is official in
itself is a big mystery)
* Added status change for temporary boosts of stats, plus added the
following constants (db/const.txt): [Skotlex]
- SC_IncAll, SC_IncStr, SC_IncAgi, SC_IncVit, SC_IncInt, SC_IncDex,
SC_IncDex
- It hasn't been tested yet what kind of visual these will cause
client-side.
(Now someone go and write down the script for the food items xP)
* Updated @summon to take a second parameter: duration. [Skotlex]
eg: "@summon lunatic 40" will summon a lunatic that lasts 40 mins or
until killed. Max duration is one hour.
* Updated Some Mobs Spawns, Drops check npc\changelog.txt [Lupus]
* Some toning down of the damage of Acid Demonstration (should /100, not
/10) [Skotlex]
* Likely fixed Blitzbeat from hitting neutral chars. [Skotlex]
* Updated Acid Demonstration to be a MISC skill who's damage is (base_Atk *
caster's int * target's vit /10) (half that on players). It's much more
closer to official values than the previous ones... [Skotlex]
* Corrected Pressure sapping SP even if you hide from it. [Skotlex]
(isn't Pressure a holy attack from the grand god himself? How can a thief
HIDE from his eyes? o.O)
* Updated Acid Demonstration damage formula. It's still wrong, but at least
it considers int and vit now. [Skotlex]
Current dummy formula: (100 + caster's int + target's vit)*(number of hits)%
08/24
* Updated pet skills database. [Skotlex]
* Some corrections to socket.c, should stop all the recent crashing... [Skotlex]
* Added a case to knockback enemies if they somehow end up stepping into an
ice wall tile [Skotlex]
* Added checks to prevent walking, attacking or using skills while the
storage is open. [Skotlex]
* Added Lupus's mob skills for Einbroch mobs [Skotlex]
* (almost) rewrite of the storage system. [Skotlex]
Storages are marked dirty after an item is stored/retrieved from them and
will not be marked clean until the char-server acks the save request.
Upon map-server reconnection to the char, all storages that are currently
closed and dirty are saved.
* Synched chrif_save with the storage save functions when either one is
open to further prevent exploits. [Skotlex]
* Updated the mob_skill_db with Komurka's translation (Aegis -> eA) [Skotlex]
The max permilliage (rate) is now 10000 = 100%
* Various mob related summon/metamorphosis changes: [Skotlex]
- Summon Mob/Slave's level is the total number of mobs to summon, when the
skill definition offers multiple mobs, they are spawned in order
(round-robin scheme).
- Metamorphosis/Transformation level is the total number of mobs to
multiply into. Uses the same criteria as summon mob and the original mob
is deleted/killed (no loot drop). If the level is 1, then the mob transforms
into one of the defined classes randomly.
- Note that beyond code-proofreading and making sure it compiles, this
has not been tested yet!
* Added the bonus provided by the /doridori command to TK_HPTIME and TK_SPTIME. [Dralnu]
Thanks to Duduc.
* Updated battle_check_target to check using the master instead of the
slaves (applies for mobs/pets) [Skotlex]
- Should prevent slaves from attacking their master
* Implemented TK_HPTIME and TK_SPTIME exept the bonus provided by /doridori [Dralnu]
* Implemented delayed character logout [Skotlex]
How it works: When a player quits the server when they shouldn't (force
disconnect before the 10 secs, or leave when the char server is not
connected) his session is closed, but the player is left in-game just
like in @autotrade, and a timer is added. Every 10 secs it'll check if
the char server is online, and then save the character and delete it from
the map server. NOT TESTED YET, so report any anomalies.
* Fixed Shield Chain's skill-type (it's short ranged, not long?) [Skotlex]
* Fixed Decrease Agility's equation. [Skotlex]
* Fixed root'ed monks not being able to use root skills. [Skotlex]
* Added inter-server option "kick_on_disconnect" (defaults to yes) [Skotlex]
- The only people who may want to change it are overcrowded servers where
the char/map server link breaks due to overload and then everyone is
kicked out until said connection is reestablished.
- Of course, use at your own discretion until all possible exploits
caused by this are resolved.
08/23
* Fixed provoke's success chance. [Skotlex]
* Battle_check_target update, should fix party/guild skills failing when
checking against yourself. [Skotlex]
* Updated map and char servers to allow them to reconnect without having to
kick out all players. [Skotlex]
- This is still experimental and what possible exploits may come from it
are yet unknown (however, considering that the reconnection should take
place in a few seconds after the disconnection...)
- Note that storage contents and player contents are all kept in the map
server's memory, unsaved data will be lost if player forces a
disconnection, storage changes will also be lost if they are open/closed
during said disconnection (and NOT reclosed after the connection is
restablished)
- These and more stuff might come up with time. Report away!
* Updated Gospel to not buff up Guildmates, only Party members. [Skotlex]
* Fixed @autotrade [Skotlex]
(tested on a limited scenario with few characters, needs more testing.
Test and report!)
* Implemented TK_STORMKICK, TK_DOWNKICK, TK_COUNTER and TK_TURNKICK. [Dralnu]
Note that at the moment if you use theses skills even if the corresponding
SC is inactive, it will use SP and will stop you if you are attacking.
Note too that because we don't know how it should work exactly, when a SC such as
SC_STORMKICK will be launched, it will notice you by a little message over your
head : Hit now !!. Finaly, TK_TURNKICK will not yet have the pushback effect.
* Fixed everyone having 20 flee... I hope. [Skotlex]
* Some corrections and updates to mob skill Metamorphosis [Skotlex]
(don't know if it'll work now, but the way it was before definitely was
not working)
* Probably fixed infinite endure wearing out when being hit. [Skotlex]
* Updated gvg range penalties to be as in official servers. [Skotlex]
- Skills (weapon/magic/misc) get a 40% penalty
- Ranged normal attacks get a 20% penalty, melee receives no penatly.
(battle flag gvg_weapon_attack_rate added to complete configuration)
* Added the -20 flee penalty on GVG grounds. [Skotlex]
* Fixed Enchant Deadly Poison's Damage (it was 500% - 5x at level 5, not 400%
- 4x) [Skotlex]
* Fixed Soul Breaker's magical part of the attack taking element -1 rather
than 0. [Skotlex]
* Login sql server will now only clear sstatus data of connected servers
rather than clean the table. [Skotlex]
* Added some checks to prevent infinite looping in the char servers. [Skotlex]
* Some updates to the way disconnections are handled in socket.c [Skotlex]
08/22
* Fixed typo in skill.c causing errors [Codemaster]
* Added Irmin's recommendation to allow item names in getitenname() [Skotlex]
(kinda odd to use an item's name to get the item's name, isn't it?)
* Fixed Meteor Assault not displaying damage. [Skotlex]
* Fixed WE_CALLPARENT crashing the map server when either parent is
offline. [Skotlex]
* Added TK_HIGHJUMP. Note : To be able to see properly the full jump animation,
casting time will not depend on DEX. [Dralnu]
* Somes fixes in skill_db.txt and skill_cast_db.txt about Taekwon's skills. [Dralnu]
* Fully implemented the STR bonus part of TK_RUN [DracoRPG]
* Added activation/unactivation of TK stances, but not their specific effects [DracoRPG]
* Reverted magnum break, removed the Flame Launcher status change until
actual bonus can be implemented. [Skotlex]
* Skills update (mostly thanks to Vicious Pucca): [Skotlex]
- Success chance and stats of Provoke, mental Break, Signum Crusis, Soul Burn
- Decrease Agility duration halved for players.
- Magnum Break's final damage is splitted 80% weapon's element, 20% fire
element. No longer causes weapon endow.
- Bash's hit bonus (+5 per lv now)
* Fixed skill_db, Added perfect hit to TK_COUNTER [Dralnu]
* Changed skill_tree and job_db1 the same way I changed job_db2, it was necessary for
clear implementation of Taekwon (which has a very unusual ID for a 1st job) and renders
the code less messy (at least it's my humble opinion ^^) although it could be slightly,
but really slightly, more RAM-consuming [DracoRPG]
* Fixed classchange not clearing on unequip, fixed the mob's max hp not being updated on
class change [Skotlex]
* Basic implementation of Taekwon's kicks. [Dralnu]
* Likely fixed SP consumption of Warp Portal. [Skotlex]
* Changed some default values in battle config to get the 'official gaming experience' by
default [DracoRPG]
- Noone can plagiarize advanced skills (from ragnainfo)
- No rare drop announce
- Riding a Peco does not increase one's size
* Allowed Dispell to dispell songs/dances/ensembles [DracoRPG]
* Updated SC IDs to get correct client-side status icons (used 0808 Sakexe) [DracoRPG]
* Prevented from casting Ice Wall under self, independantly of UF_NOFOOTSET [DracoRPG]
* Removed /omg from equipment breaking and added it to Acid Terror only [DracoRPG]
* You can now change to Taekwon, but lots of things are still to do [DracoRPG]
* Began implementation of Taekwon skills [DracoRPG]
08/21
* Changed how triple blows/sacrificial ritual triggers to enable
plagiarizing them. [Skotlex]
* Stolen items will be (un)identified using the same criteria normal drops
use. [Skotlex]
* Updated yet again battle_check_target. Guardians should stop attacking
out of woe now and alchemist should be able to hit their mines. [Skotlex]
* Fixed the map server going in an infinite loop if the connection breaks
while parsing packets from the char server. [Skotlex]
* Mostly rewrote Battle Chant, should be almost like the official one now... [DracoRPG]
* Added enums for skill units, makes the code really clearer (check skill.h) [DracoRPG]
* Merged battle_calc_weapon_attack_sub and battle_calc_weapon_attack [DracoRPG]
* Fixed Acid Terror WEP breaking rate thx2 ShAPoNe [Lupus]
08/19
* More updates to battle_check_target, now you can't target any
ground-based skills that don't have a physical manifestation (ie:
Everything except traps and icewall) [Skotlex]
* Fixed "for sure" battle_check_target when it comes to neutral targets. [Skotlex]
* Removed pc_emotion, merged it with emotion. [Skotlex]
Usage: emotion emotion_number <, target>
- emotion number is the emotion's number (use e_* constants)
- target is 1-> player, 0-> npc. If ommited defaults to zero.
* Updated code so that when a guild master joins the game, their guild
skills are automatically blocked for 5 minutes. [Skotlex]
(prevents avoiding the skill-lock by relogging)
* Another update to battle_check_target, this time neutral targets should
work correctly (non allied/partied people who should be affected) [Skotlex]
* More fixes to battle_check_target, skills should not hit yourself on
pvp/gvg now. [Skotlex]
* Updated classchange to not change the class of bosses. [Skotlex]
* Optimization/Fixes to battle_check_target, GrandCross should work now. [Skotlex]
* Reverted Lupus's change on guild auras' max lv... Please double check your sources and
base yourself on kRO official website as much as possible, thanks. Link to kRO website:
http://guide.ragnarok.co.kr/GuildSystem.asp#ggg03 [DracoRPG]
* Fixed passive mobs incorrectly setting the attacked_id when hit by pets. [Skotlex]
* Rewrote battle_check_target. [Skotlex]
- Positive side-effects: offensive stuff won't hit your guildmates on gvg
(such as traps)
- Negative side-effects: Unknown, but there's bound to be some because of
the big change. I tested it with traps, spells, pets, passive and
aggressive mobs, but it's probable there's stuff I am still missing.
* Updated mob spawns of Glast Heim (gl_sew3 and gk_knt2) [Skotlex]
* Updated classchange code (Azoth, Heiroloist) to get random classes the
same way a dead branch does. Cannot convert to bosses. [Skotlex]
* Script/Npc/Item updates. [Skotlex]
* Bonus b(HP/SP)GainValue will always be considered 100% (the first
parameter) this is done to avoid exploits when combining it with
b(HP/SP)DrainValue (eg: Immaterial Sword) [Skotlex]
* Fixed max level of some guilds skills 5->1 [Lupus]
according to http://eathena.deltaanime.net/board/index.php?showtopic=757
* New items drops, new shop [Lupus]
08/18
* Changed the way 'pl' works (in skill_db) : now 0 for 'weapon' attack skills means the
attack is always neutral. To make so that the skill takes the weapon's element, use -1
instead: this removes the need of hardcoded ele_flag. [DracoRPG]
* Fixed damage bonus from Sage's elemental flooring skills by moving the checks which were
totally wrong placed... Thanks to Antoine for pointing out they were broken. [DracoRPG]
* At the same time I had to change battle_calc_magic_attack quite alot. Maybe it won't work
perfectly, but at least it'll compile. Also added (forgotten?) support for 'skillatk'
bonus with magic skills. [DracoRPG]
* Rewritten most of Gloria Domini to make it be a BF_MISC skill that can hit and damage
Emperium and plants (yes it does), igonres WoE damage adjustments and other changes I
don't remember ^^ [DracoRPG]
* Modified mob_skilluse so that mobs NEVER use offensive heal. They'll now
/swt if they try it (and the skill fails) [Skotlex]
(there's still nothing that can be done about offensive Sanctuary)
08/17
* Added script command pc_emotion, works just like emotion, except the
emotion is displayed on the character that's running the script. [Skotlex]
* Fixed the vicious compile error I added with SC_SPEEDUP1 [DracoRPG]
* Implemented Strengthen Guardians with a custom +10% ATK & ASPD / lv value [DracoRPG]
NOTE : It compiles, but I couldn't test the effect since guilds seem completely
broken on my test server...
* Moved Weaponry Research hidden bonus a bit to get the exact effect [DracoRPG]
* Implemented SC_SPEEDUP1 for Lightning Box effect [DracoRPG]
* Entirely replaced SC_DIVINA with SC_SILENCE (the 1st was an alias of the 2nd) [DracoRPG]
* Fixed the map-server disconnecting the char-server when kicking out all
clients. (Thanks to End of Exam for pointing it out) [Skotlex]
* Cleaned up error messages related to packet parsing in the char servers. [Skotlex]
08/16
* Likely fixed the char-server crashes on mapif_send* functions. [Skotlex]
* Fixed auto-counter's display (it was working correctly, however the skill
was not being shown properly on the client) [Skotlex]
* Fixed Tomahawk not being considered a ranged attack. [Skotlex]
08/15
* Added a few bug fix recommendations [Codemaster]
* Fixed a few problems with Wedding Skills [Codemaster]
* Fixed a bug with old clients connecting and socket reuse which would kick
all new connections on the same socket before even checking the packet version. [Skotlex]
* Fixed the tabs in the ayothaya mobs :X [Skotlex]
* Likely fixed the setsocketops error that was showing on every connection. [Skotlex]
* Updated vending code so that items that can't be traded can't be vended
either. [Skotlex]
* Messed with socket.c, changing lots of stuff around using some earlier
Freya SVN version as base, connection issues might hopefully get better. [Skotlex]
(NOTE: I have yet to try to compile this under Windows/Cygwin, so report
if it breaks)
* Updated Magnum Break: Target selectable, damage is (100+20*level)%, hit
bonus +10 per level. 5x5 splash area. [Skotlex]
* Likely fixed the max hp display of tiny/big mobs. [Skotlex]
* Updated Cloaking. It'll fail if the level is less than 3 and there's not
a wall nearby. [Skotlex]
If cloak_check is set to ignore walls, the wall-type speed will be used all
the time.
(I don't see what all the fuss is about as a Lv2 Cloak is just as good as
Hide, and you can't even use GrimTooth from it. And since lv2 won't let
you move anyway, why would anyone use Clock lv2 over Hiding?)
* Updated Assumptio. It will affect anyone in a 3x3 area around the target. [Skotlex]
(where anyone is anyone the same way Benedictio chooses it's target)
* Updated the delay that a mob can't move after attacking to be 1/4th of
the delay between attacks. [Skotlex]
eg: The mob attacks once every 1000ms, that means it can start chasing
you 250ms after an attack.
* Likely fixed the #fakename crash. [Skotlex]
* Updated the mob skill use code so that hopefully other players will be
considered friends when using support skills. [Skotlex]
NOTE: Not quite tested, use with care.
* Fixed @monsterbig/@monstersmall [Skotlex]
Support for said monster in normal spawn scripts is also fixed, however
the implementation is not stable (currently you add 10K to the ID to make
it a tiny mob, add 20K to make it a big mob, but those values depend on
MAX_MOB_DB which can change in the future. :/)
* When you drink a speed potion, the icon of the previous one will be
removed (however, all speed potions are still in effect server-side). [Skotlex]
08/14
* Likely corrected the error printing in recv_to_fifo (reporting normal
disconnections when they likely are not). [Skotlex]
* Fixed the map-server spamming "Client does not has latest EXE message. [Skotlex]
* Updated char-sql to consider 0 an invalid map-server session number. [Skotlex]
* Fix in map->char auth request packet where char server spams data search error message, currently in testing. But works none the less. [Kevin]
* Removed all close()'s in clif.c, made clif_parse the only one who closes
a socket and deletes the session. [Skotlex]
* Updated socket.c to be much more verbose about connections and when they
are ended. [Skotlex]
(excuse all the extra messages, but they are to help track down the
current map-freeze bug)
08/12
* Updated sql-files: mob_db.sql, item_db,sql, main.sql [Skotlex]
* Likely fixed mob reloading command. [Skotlex]
* Added more reports and some fixes/optimizations to socket.c [Skotlex]
* Added reporting of error when a connection can't be made non-blocking. [Skotlex]
* Updated Logging Filter: [Lupus]
- Implemented refine_items_log condition. You may log only certain refine value items.
- Added 'log_steal' option. It'd log stolen items in the drops log DB
* Added msg string and announce on stealing of rare items [Lupus]
08/11
* Fixed bio-cannibalize's max hp issue. [Skotlex]
* Pneuma completely blocks Soul Breaker (as the forum consensus says it
does so) [Skotlex]
* clif_parse will now print the error message in case close(fd) fails. [Skotlex]
* Fixed players clicking on players disguised as NPCs trying to execute the
"npc". [Skotlex]
* Fixed possible overflows and exploits in log.c, thanks to Irmin [Skotlex]
* Probably fixed devotion's visual not updating. [Skotlex]
* Added flag pet_no_gvg, when set to yes/1 the pet is returned to an egg when
you enter Guild Grounds and you aren't allowed to hatch pets as well. Note
that it only does the check when the player changes maps (should be safe
because players are kicked out of castles when WoE starts)
08/10
* Fixed PNEUMA blocking magic part of Soul Breaker, instead of physiacal attack one [Lupus]
* Fixed the Login/Char SQL crashing when determining the max id of empty
tables. [Skotlex]
Account and Char creation code tested, it is safe to use now.
* Removed use of settick_timer (fixes the "can't move!" bug) [Skotlex]
* Fixed (I think) being able to sit while casting. [Skotlex]
* Updated Char-SQL server to guarantee that new chars are created with
char_ids above 150K. [Skotlex]
(note from last update applies too)
* Updated Login-SQL server to guarantee that new accounts (_M/_F reg) are
created with account_ids above 2M. [Skotlex]
(note it hasn't been tested yet, but I think it should work)
* Fixed @readmail 0 [Skotlex]
* Fixed success rates for Dispell and Decrease Agility [Skotlex]
* Fixed cultivation not being in the list of skills for GMs with
gm_skill_all [Skotlex]
* Fixed mob's hp becoming zero after mob_hp_rate adjustments. [Skotlex]
* Skills update: [Skotlex]
- Changed concentration from +10% hit per level to +10 hit per level.
- Base level gives greater stun chance to Attack Weak Point (currently +1%
every ten levels)
- Changed Tiger Knuckle Fist to be a combo-only skill.
- Updated Spell break to damage 2% of target's max hp, heals half that.
* Small debug change in clif.c which forces a disconnection upon dual-login [Skotlex]
* Updated char-sql deletion to take into consideration the mysql version [Skotlex]
It should treat versions 4.1+ differently from the rest, please test and
report if it is still failing.
* Removed sql loading of storage every time you open it as it's an open
exploit on lagging servers. [Skotlex]
* Removed another "insufficient data" debug line. That should take care of
incomplete packets spamming the console. [Skotlex]
* Alright, removed the "insufficient data" debug line as it was just
causing mass lag. [Skotlex]
08/09
* Fixed Magnum Break's damage display. [Skotlex]
* Finished fixing and testing the sql char deletion update. [Skotlex]
Deleted characters should now properly leave their party/guild.
* Throw Stone is now blocked by Kyrie and Pneuma [Skotlex]
* Fixed "[error] delete_timer error: no such timer -1" (stupid mistake x.x) [Skotlex]
* Some modifications to char-sql char deletion, so that characters are
correctly removed from parties and guilds. [Skotlex]
(Note that this is yet to be tested, so upgrade at your own risk or if
you want to help file bug reports until I can get to test it on my own
later today)
* Likely fixed Endure and the like not being 'disabled' on GvG grounds. [Skotlex]
* More debug messages to clif.c (these can be ignored on normal situations,
but might be useful during freezes) [Skotlex]
* Optimized the packet-version failed rejecting code. [Skotlex]
* Fixed Freezer Card combo casting Weapon Perfection on the enemy. [Skotlex]
* Added more information to the map-char connection process, meant to help
understand what is going on when things 'freeze'. [Skotlex]
08/08
* Fixed players not really being disconnected when the char-server is out. [Skotlex]
* Added check to resend map server connection packets if the connection to
the char server was established but the initial packets get somehow lost. [Skotlex]
* Fixed Picky's pet-script being used for all pets... [Skotlex]
* Fixed an ugly bug that was causing status-changes to crash the map server [Skotlex]
* Added a timer to the map server. It'll try to reconnect 1 sec after it is
disconnected from the char server (in addition to the default "try to
connect every 10 secs" mechanism). [Skotlex]
* Reverted Safety Wall to last known working state. [Skotlex]
(from what I read in the code, it should be crash-safe anyway)
* Mob level up is now capped to max_base_level rather than 99. [Skotlex]
* Another fix to Safety Wall :X [Skotlex]
* Fixed Safety Wall (I think). Do test and pray it crashes no more. [Skotlex]
* Added settick_timer to timer.c, optimizes status retimings for dance
skills. [Skotlex]
* Made @autoloot and item_auto_get play along nicely (@autoloot toggles the
mode, item_auto_get sets the default state of it) [Skotlex]
08/07
* Corrected the Payon Guild Flags [Codemaster]
* Lots of debug message cleanup in clif.c which should make more clear the
why characters are being disconnected. [Skotlex]
* Added OnAgitInit to the list of npc events executed on connection (it
will be executed only the first time it connects, thought) [Skotlex]
* Fixed the exp bonus on pvp maps (it was set to +115%, not +15%) [Skotlex]
* Updated skill_blown to avoid knocking back plants. [Skotlex]
* Made the damage delay of the finishing blow the same delay before sending
a char clear packet, this might fix mob sprites being left there after
killed. [Skotlex]
* More fixes to @autotrade
(You still can't disconnect your autotrader by entering in the
server again. And an autotrader rises map server usage to 70%+).
Started adding Freya's anti-bot thing [Lupus]
* Quick fix meant to prevent crashes when targetting "ghosts" of already
dead mobs. [Skotlex]
* Fixed Pneuma and Safety Wall crashing the server. [Skotlex]
(was caused by yesterday's skill upgrade not being... eh, complete)
08/06
* Yet another @autotrade fix by irmin&Ultra. More fixes are coming soon 8)) [Lupus]
* Pretty big change in the way ground skills are handled, meant to fix
possible segmentation faults. [Skotlex]
Report if you notice any ground skill got broken, as pretty much all of
them have been affected.
* Removed the data about packet_version 14 in the packet_db [Skotlex]
This could mean that version 14 never really existed, and all following
versions need to be shifted up (who decides how to call these versions?
they certainly don't come coded in the login packet. We should ask
Sara-chan, the awesome ex-eA dev who pwns us al with her packet finding abilities.).
Note that no such changes have yet been decided other than removing version 14.
* Updated Devotion/Sacrifice. AutoGuard and Defender skills are now kept in sync
between the Crusader and those Devoted. [Skotlex]
* Added a battle_stopwalking to NPC_STOP effect [DracoRPG]
08/05
* A li'l fix of @autotrade. Used some irmin's code and optimized a bit [Lupus]
* Fixed pc_setcart... [Skotlex]
* Updated Fireball and Stone Curse data [Skotlex]
Source used: http://guide.ragnarok.co.kr/jobmagskill.asp
* Updated map_server sql so that the storage is loaded from sql everytime [Skotlex]
* Updated the char deletion routine (sql) so that only the correct pets
will be deleted (those hatched and that are in the char's inventory/cart)
[Skotlex]
* Likely fixed the map server spamming the console when clients gets
rejected due to packet version. [Skotlex]
* Fixed the make_connection problem (sorry about that) [Skotlex]
* Updated make_connection (socket.c) so that it actually returns -1 when
the connection fails. [Skotlex]
* Fixed change-cart clearing other options. [Skotlex]
* Fixed @spawn not working with string names. [Skotlex]
* Fixed songs/dances not being moved when knocked back. [Skotlex]
08/04
* Made mobs retaliate against a pet's master when for some reason a pet is
attacking a passive mob which is not yet attacking back. [Skotlex]
* Modified the mob_db to make it a dynamic array of mob databases. [Skotlex]
This allows usage of high mob ids without wasting memory on large gaps of
unused mob IDS.
NOTE: Other than loading/unloading the map server, this has not
been tested, if it crashes DO report right away (preferrably with a
backtrace)
* Bumped the MAX MOB ID to 10K [Skotlex]
* Added 2 new mobs, updated and added some items. Thanks to Landarma [Lupus]
Also fixed map-serv loading warnings (about wrong mob IDs)
08/03
* Removed the clif_waitclose timer message, and placed it instead around
clif.c on the areas that are actually invoking the waitclose timer. [Skotlex]
* Changed the "Player not identified with account id" message to be more
descriptive (however I don't know how much of the player data is available
when disconnecting this way, so if it crashes DO REPORT it) [Skotlex]
* Modified @me so that it actually works as expected by IRC junkies. [Skotlex]
(tested and works correctly)
* Updated Enchant Deadly Poison: Can't be dispelled, won't end when you are killed. [Skotlex]
* Fixed draining more HP/SP than you can have [Skotlex]
* Fixed enchanted peach tree damaging you when attacking the undead [Skotlex]
* Removed the tick check from the packet_version guessing as it is an
unsigned int (so every value in said field is valid) [Skotlex]
08/02
* The char server now notifies the map server about which is the max
account/char id available, this is used to help identify packet versions
more reliably. [Skotlex]
* Guardians won't level up now with mobs_level_up=1 [Skotlex]
* Updated Deluge, Volcano, Violent Gale & Land Protector to not require
gems when recasted, and the previous time remaining will be used instead.
[Skotlex]
* Fixed Zeny from mobs. [Skotlex]
* Changed the visual effect when pets heal status ailments to "Detoxify" [Skotlex]
* Fixed "bonus2 bSkillAtk" so that it works with up to five skills [Skotlex]
(previously it only worked for one skill at a time)
* Fixed Enchant Deadly Poison on normal attacks. [Skotlex]
* Updated the packet-guessing code, trying to load negative char accounts
should be fixed now. [Skotlex]
08/01
* Updated the login servers so that account registration can be done with
_m/_f as well as _M/_F [Skotlex]
* Fixed login sql server not using md5sum on the passwords before creating
accounts (when md5 passwords are enabled) [Skotlex]
* Updated Enchant Deadly Poison: Increases Sonic Blow's damage by 4x and
affects all skills except Breaker/Meteor Assault [Skotlex]
* Added a check to prevent char-server freezes when receiving unknown
packets from the map server. [Skotlex]
* Fixed some problems with the clif optimizations from earlier today (wrong
animations being displayed for normal attacks/picking items) [Skotlex]
* Rewrote Ensemble skill implementation to be more efficient and less
error-prone [Skotlex]
(say, when you do an ensemble skill, your partner has to be
charged SP too? That is not the current case)
* Dance/Song checks so that the ground effect is more tightly coupled with
the status effect (if the dance's effect is cancelled for whatever reason,
the ground skill WILL be removed) [Skotlex]
* Fixed stat reset for Advanced Classes [Skotlex]
* Updated Lord Knight's Concentration (damage, defense, endure effect) [Skotlex]
* Likely fixed famous alchemist potion usage. [Skotlex]
* Small optimization to the packet version guessing code. [Skotlex]
* Added Warpparty and Warpguild script commands *requested* [Fredzilla]
* Fixed the exp exploit bug dealing with expaddrace [Skotlex]
* Added missing CharCommands logs (together with ATCommands) [Lupus]
TODO: '/' commands 8)
* Added mod for npc whisper system(lordalpha)[massdriller]
* Added lordalfa's str1 and str2 compare and check commands [massdriller]
07/31
* Fixed (I think) the char sql server freezing when the map server sends it
a GM whisper request. [Skotlex]
* Rewrote the way that experience is given, this should prevent exp overflows
even in even-share parties. [Skotlex]
* Changed how the exp_calc_type works, take note that there's no longer a "2"
value for it! [Skotlex]
* Updated throw stone: Damage is modified by target's cards, 3% chance to
cause Stun/Blind. [Skotlex]
* Added rods/books to the list of items that can't break. [Skotlex]
* Fixed map server rejecting clients of packet versions 9 and below
(regardless of packet_ver_flag) [Skotlex]
* Updated Steel Body: Consumes 50% sp and is not dispellable. [Skotlex]
* Updated sprinkle sand's damage to 130%, Throw Stone's range and delay [Skotlex]
* Fixed increased dodge's flee bonus and speed bonus (to Assassins). [Skotlex]
* Simplified clif.c by removing all code related to hard-coded packet
information (the packet_db.txt is an essential file now) [Skotlex]
* Small fixes to provide clarity to # commands
(So many people ask "why doesnt @char????? work, like OMGWTFBBQ") [Fredzilla]
* Fixed a stupid typo in a drop rate display [Lupus]
07/30
* Some more fixes to the job calculating equations. This one should fix item
usage for mounted classes and hopefully be the last fix needed regarding
the job system upgrade. [Skotlex]
* Corrected the parsing/reading of the skill tree. This fixes the Priest/Monk
skills appearing in the skill trees of Paladings/Crusaders. [Skotlex]
* Another fix about advanced/baby mounted characters not having skills. [Skotlex]
* Fixed character's class not getting updated when mounting/dismounting peco. [Skotlex]
* Fixed the default packet version checking in the guessing version code.
as pointed out by End of Exam. [Skotlex]
* Optimized the code that determines what packet version to use by default
when you specify "packet_db_ver: default" [Skotlex]
* Fixed job changing to high/baby classes [Skotlex]
07/29
* Moved messages "One Castle", "Two Castles", etc into msg_athena.conf [Lupus]
* Fixed wrong msg_athena.conf messages in the trade hack spoof code [Lupus]
* Added a Rare Item announce string into msg_athena.conf [Lupus]
* Fixed compilation of the TXT server. [Skotlex]
* Fixed song/dances not clearing when you run out of SP [Skotlex]
* Fixed #fakename [Skotlex]
* Optimized Apple of Idun's implementation [Skotlex]
* Updated pc_calc_base_job and related functions and applied them around
the map server. This should fix all item related problems with Super Babies
and alike. [Skotlex]
* Simplified/optimized the code that mounts/dismounts from Pecos. [Skotlex]
* Changed Create Deadly Poison to not use the item producing interface (works simplier,
like Aqua Benedicta) and added a separate config option to choose whether the maker's
name is written on the Poison Bottle [DracoRPG]
* Changed NPC_STOP to immobilize the target during 2 seconds (from ragnainfo) [DracoRPG]
* Added "cartboost" state to skill_require_db (used for Cart Termination) [DracoRPG]
* Rewrote Soul Destroyer's damage dealing and displaying code, now everything is done at
once: no more people killed without damage displayed [DracoRPG]
* Readded Assassin Cross not affecting bows [Skotlex]
* Fixed Hip-Shaker (not tested, but I am assuming it works now) [Skotlex]
* Fixed Brandish spear's damage [Skotlex]
* Removed the after-cast delay of Recall Partner [Skotlex]
* Added optional announce of rare drops. When a SomePlayer kills a monster [Lupus]
with a rare drop then everyone gets announce: 'SomePlayer' won Pupa's Pupa Card (chance 0.01%)
07/28
* Fixed the Server Whisper to GMs in the char-sql server [Skotlex]
(when an exploit that should be notified to GMs is triggered, the map
server would just hang instead...)
* Some code reorganization around the name-spoof exploit protection code. [Skotlex]
* Fixed not being able to do Extremity Fist after Glacier Fist/Tiger
Knuckle Fist [Skotlex]
* Likely fixed the Famous Alchemist potions not having that 50% boost. [Skotlex]
* Updated the Wedding Skills (they work with 10% HP/SP and heal 10% of
their target's, summoning has a cast time of 20s) [Skotlex]
* Reverted AssassinCross's song behaviour. [Skotlex]
* Odd bug wanting all Account and Char IDs to end with 0?! [Codemaster]
Note: Not all acc or char ids end with 0...this gave alot of problems with client version 16
* Fixed that compiling issue with buildin_getequippercentrefinery [Skotlex]
* Updated Bard's AssasinCross (Impressing Riff) to not affect Bows (is this
how it really is?) [Skotlex]
* Massive skills update (from now updated kRO website) [DracoRPG]
- Weapon forging, ore/metals refining, potion making : tried to correct rates ^^
- Weaponry Research : does NOT increase NPC equipment upgrading chance
- Skin Tempering : (4*skilllv)% fire resistance and (1*skilllv)% neutral resistance
- Hilt Binding : the original 'undropable weapon' part is dead
- Meteor Storm : (3*skilllv)% stun chance
- Lord of Vermilion : (4*skilllv)% blind chance
- Sandman : (40+10*skilllv)% sleep chance
- Ankle Snare : minimum trap time changed to (3+0.03*skill_lv) seconds
Tons of other skills could and should be reviewed the same way ! ^^
* Fixed massdriller's fixes ^_^ [Kevin]
* Some fixes to Whisper system. [massdriller]
07/27
* Fixed the fame list packet mismatch bug. [Skotlex]
* Even more cleanups to socket.c and chrif.c to prevent even handling
Session #0 [Skotlex]
* Some more cleanups to chrif.c (the interface to the char server)'s code. [Skotlex]
* Appied End of Exam's socket/connection related fixes/suggestions. [Skotlex]
* Fixed a Segmentation Fault with friends list loading. [Kevin]
* Fixed the npc whisper system. [Kevin]
* Fixed most of the matrix bug, note to devs: Don't use tmp_output anymore! [Kevin]
* Fixed a small compile warning with previous fix. [Kevin]
* Added ATCommand @AutoTrade. You open a shop, setup your goods. Then use @AUTOTRADE.
Your will be closed, but your merchant would remain in the game. So you can vending
without your client ON. (originally by Fantik, changed by Lupus)
* Added ATCommand @ChangeGM. Your Guild Master can set another GM of the guild.
Note: It works, but have to be optimized, WIP. (originally by Fantik, changed by Lupus)
* Added lordalfa's npc whisper system [massdriller]
* added lordalfa's fix/enhancement for Execute Scripts::labels [massdriller]
07/26
* Updated the packet-version guessing code, hopefully it does a better job now [Skotlex]
* Fixed the mob bug where they "stick to you" and won't let you escape [Skotlex]
* Reverted mob skill usage rates. A rate of 1000 (in mob_skill_db.txt) IS 100% usage. [Skotlex]
* Corrected Gospel not dissipating when you die. [Skotlex]
* Fixed Providence/Resistant soul so it can't be casted on yourself-other crusaders [Skotlex]
* Updated Quagmire to affect everyone in GVG maps. [Skotlex]
* Small fix to the packet_version identification [Skotlex]
A more complete testing/verification code comes later...
* Likely fixed the txt->sql converter. [Skotlex]
* Corrected some refine success rates. [Skotlex]
* Modified the packet client version guessing code (perhaps it more
accurately guesses the version now?) [Skotlex]
* Fixed reading of 'repairitem' packet in packet_db -> fixes Weapon Repair [DracoRPG]
* Rewrote Weapon Repair to allow use on other players [DracoRPG]
* Moved pc_item_repair, pc_item_refine and pc_item_identify to skill.c [DracoRPG]
07/24
* Enchant Deadly Potion now does count card modifiers. [Skotlex]
* Fixed elemental modifiers not applying to skills. [Skotlex]
* Fixed mob_ghostring_fix config. [Skotlex]
* Fixed firewall stun-locking enemies that are not pushed back. [Skotlex]
* Added some checks into MONSTER spawn command (reports wrong number, ID, delays, etc.) [Lupus]
- somehow it doesn't report about wrong map names yet
* Added check for missing TAB characters into script parser [Lupus]
07/23
* Fixed friend-saving on the new charsave sql method. [Skotlex]
* Corrected the ghostfix description in battle_athena. [Skotlex]
* Modified the Makefile to include FD_SETSIZE = 4096 when compiled under
Cygwin [Skotlex]
* Added a check for max mob skill level (when reading mob_skill db) [Lupus]
* More fixes/updates to the txt->sql converter of inventory/cart (will it ever work?) [Skotlex]
* Fixed job_db2 reading [Sasuke]
Field count is MAX_LEVEL+1 since job ID is the first field of the 'split' table
07/22
* Changed a bit the aspd penalty for dual-wielding assassins. [Skotlex]
The new factor is 2/3 rather than 0.7, which should be closer to what
rodatazone says, but also makes them dual wielders a bit slower :X
* Fixed job_db2.txt reading so that it will read up to MAX_LEVEL job bonuses. [Skotlex]
* Changed the way the OS is detected in socket.h [Skotlex]
This MIGHT fix the current 60 user limit problem.
* Fixed characters not being able to attack and getting "there is a delay
after a skill" messages instead. [Skotlex]
* Fixed status changing cards not taking effect. [Skotlex]
* Fixed packet_ver_flag reading. [Skotlex]
(previously, if you tried setting it to 256 or 512 it would be
resetted back to 255, which would cause problems with the later clients)
* More fixes to the txt->sql converter. Does it works now? [Skotlex]
* Added water height values of Ayothaya, Ayo_dun02, sec_in02 maps (thanx 2Lorky) [Lupus]
* Fixed char-sql memo saving. [Skotlex]
* Added the wantoconnection packet of version 13 to version 14 [Skotlex]
Note that this will cause all ver13 clients to be identified as v14, it
WILL cause problems if you use ver13 clients. There is no easy way around
this as both versions seem to use the identical login packet. If you
want to give preference to v13 over v14, you can specify the default to
be it.
* Fixed Encore skills working when the partner has no weapon equipped. [Skotlex]
07/21
* Fixed the fame lists, they work now. [Skotlex]
* Rewrote the friends system, it now works. [Skotlex]
Sql users upgrade with the 2574.sql upgrade, txt users will have to
wipe their friends.txt (there's no easy way to convert that one).
* Fixed the txt->sql converter not converting inventory/card. [Skotlex]
The friend conversion was removed due to the new structure.
* Restructured some of the logic behind auto-attacks and normal attacks
which should prevent most speed-hacks and be more responsive to players. [Skotlex]
07/20
* Updated the txt->sql converter, I THINK it will work now. [Skotlex]
* Fixed Plagiarized skill's level not being saved. [Skotlex]
* Changed Pressure/Gloria Domini to take a % of current SP, not max SP (from a post on
ragnainfo, not personal custom shit! :p) [DracoRPG]
* Removed debug messages for fame list and signaled the bug that causes problems [DracoRPG]
* Removed the need of job_db2-2 (advanced jobs' stat bonuses) and moved its use to
job_db2 [DracoRPG]
07/19
* Reorganized the way sql chars are being saved. [Skotlex]
* Merged battle options player_combo_damage_delay and
mob_combo_damage_delay into combo_damage_delay [Skotlex]
* Some code reorganization that hopefully should help with mobs not having
the same damage delay on the client and within the server. [Skotlex]
* corrected some bounds errors in the new packet_db code
that was corrupting memory [MouseJstr]
* Corrections to Tiger Knuckle Fist [Skotlex]
* Rewriting of part of the skill-additional effect code. (Should fix
Asura's penalty) [Skotlex]
07/18
* Added a check that might prevent sql char crashes when requesting info
for non-existant Characters. [Skotlex]
* Fixed main.sql (start char_id should be 150k) [Skotlex]
* Some code-cleaning for Sacrificial Ritual [Skotlex]
* Optimization of auto-triggering skills (double attack, sacrifice, triple
blows) [Skotlex]
* Small fix to Sanctuary (shouldn't start healing until after 1.5 secs of
casted) [Skotlex]
* Implemented Palm Strike (you cast the skill, it pushes back the enemy and
deals damage 1 sec after it was casted) [Skotlex]
* Rewrote and tested Gospel's code, currently it works as follows: [Skotlex]
Offensive Effects:
0: Defense ignoring damage 1~9999
1: Curse enemy
2: Blind enemy
3: Poison enemy
4: Lv10 Provoke
5: Def, Def2 to 0
6: Base Atk, Watk to 0
7: Flee to 0
8: Speed/Aspd -25%
Deffensive Effects:
0: Heal 1~9999
1: End all negative status effects
2: Lv10 Bless
3: Lv10 Inc Agi
4: Aspersio (holy weapon)
5: Benedictio (holy armor)
6: +100% max hp
7: +100% max sp
8: +20 to all stats
9: +25% def (armor and vit)
10: +100% base atk
11: +50 flee
12: +50 hit
13: Status effect inmunity
- Effects have a chance of 10*Skill_lv% of triggering every 5~15 secs
for whoever is on the skill area.
- Report any modifications/corrections needed on the forums.
07/17
* More Sacrificial Ritual updates [Skotlex]
* Added Jawaii's water level, thanks to Manipulator [Skotlex]
* Sacrificial Ritual update [Skotlex]
* Bumped max Vending price to MAX_ZENY (currently 1000M) [Skotlex]
* Fixed a bug with Brandish Spear's damage. [Skotlex]
* Changed the minimum valid char_id from 150k to 1 as apparently many sql
servers somehow got their chars to start from id 1 instead of 150k. [Skotlex]
* Added a bunch of debug information to help me understand why the client
version check is failing. Report back the output on the forums. [Skotlex]
* The memory manager is now OFF by default [Skotlex]
(if the server now crashes instead of the matrix bug, then whoever
gets the traceback first gets to locate it's source)
* Various fixes to Sacrifice (self damage, display, defense reduction, etc) [Skotlex]
* Fixed Assumptio's damage reduction in pvp/normal maps [Skotlex]
* Tiny fix to #fakename [Codemaster]
* Probable fix for matrix bug. [Kevin]
* Fixed SegFault with friends list loading on sql. [Kevin]
* Fixed the spamming of 'unknown packet received' when a client connects
with an unidentifiable version. [Skotlex]
* Optimized sql loading of data when displaying the Char Select Screen [Skotlex]
07/16
* Added NOLOOT, NOEXP mapflags files (thanks to Lorky,OSKOM) [Lupus]
* Updated Louyang monsters spawn (thanks to MasterOfMuppets) [Lupus]
07/15
* Rewrote most of the packet_db handling code. [Skotlex]
eA now really supports multiple packet versions at the same time,
(so that transitioning from one packet version to another should be
smooth), there is no longer any need to mess with the db/packet_db.txt
file.
* The values for packet_ver_flag have changed, check the battle_athena
comments and set it up accordingly!
* Using the packet_db is the only way to manage packets now. [Skotlex]
* Added sql runservers to all branches as runserver-sql.bat [Evera]
07/14
* Fixed the login-sql registration issue. [Skotlex]
* Made it so all ground-targetted skills fail if you try to cast them on a
cell you can't step in. [Skotlex]
07/13
* Soul Change should now work on anyone in pvp/gvg maps [Skotlex]
* Wand of Hermod's target change from 'friend' to 'party' [Skotlex]
* Fixed triple blow's 'infinite damage delay'. [Skotlex
* Added check to prevent placing traps on non-walkable cells. [Skotlex]
* Fixed login-sql server not reading login_log value [Skotlex]
* Adjusted my fix of buildin_getequipisequiped to not leave
the return stack tweaked [MouseJstr]
* Changed skill_unit_onlimit to use strncpy instead of memcpy
in one spot to eliminate accessing unallocated memory [MouseJstr]
* Added check into _mmalloc for allocations of less then zero
to make debugging easier [MouseJstr]
* Fixed USE_MEMMGR to disable when running bounds checker or
the debugging malloc code [MouseJstr]
* Fixed the debugging malloc MACRO's to use the correct arguments
[MouseJstr]
* increased max maps per server to 1024 [MouseJstr]
* Added check into buildin_getequipisequiped to make sure arguments
don't go outside of array boundries *crash* [MouseJstr]
* Add a check into refine bonuses to not go outside of array
boundries if somebody has a wlv above 5 in the database *crash* [MouseJstr]
* Modified skill_tree code to confirm we are still inside the
skill_tree array before accessing a element from the skill_tree
array *crash* [MouseJstr]
* Changed the mob spawning code to use strncpy instead of memcpy
in some places to avoid copying unallocated and uninitialized
memory *crash* [MouseJstr]
* Fixed the compile problem on the previous upgrade. [Skotlex]
* Changed refine success chances to match jRO information. [Skotlex]
See http://tomcat1.s13.xrea.com/bs/calc.html and
http://eathena.deltaanime.net/board/index.php?showtopic=39997
for the details on the new equation.
(changed because the current equations seem somewhat outdated)
* Fixed max chance const of "mob skill usage". Now all mobs aren't hyperactive. [Lupus]
* Fixed global vars not being saved instantly (used to cause some scripts exploits) [Lupus]
Need some offensive testing.
07/12
* Added Loli Ruri to the Magician set [Skotlex]
* Fixed 'theif' on the scripts. [Skotlex]
* Added mapflag pvp_noparty to the pvp rooms [Skotlex]
* More Dispell Fixes [Skotlex]
* log_login option now also works for the SQL Login server [Skotlex]
07/11
* Fixed again Dispell. [Skotlex]
* Added nomemo mapflag to Ayothaya Dungeon. Check your memo DBs and wipe forbidden entries [Lupus]
- Yuno, Ayothaya Dungeon
* Fixed Dispell succes rate reduction by MDef working reversed [DracoRPG]
* Changed Guild auras to not be removed by Dispell (they came back when you walked
anyway :p) [DracoRPG]
* Changed the default for equip_natural_break_rate to 0 (official) [DracoRPG]
* Fixed the function that checks whether the player has valid equipment for his buffs :
don't return once one buff is stopped, since there can be more (e.g. Crus' shield buffs
will now ALL be stopped when the shield is unequipped, not only Guard ^^) [DracoRPG]
07/10
* Fixed Alchemist Fame system using' account_id' instead of 'char_id', however this does
NOT solve the names problem : I left debug messages so you can see by yourself that the
bug comes from map_charid2nick that always returns null... [DracoRPG]
07/09
* Added Novice Castles Usher NPC. 4 new Castles for all but 2nd classes! [Lupus]
* Updated Falcon Assault (now gives 500% at 5 lvl) [Lupus]
* Fixed True Sight (now gives +10 Crit, instead of +10%) [Lupus]
* Update Sharp Shooting (now gives 350% at 5lvl) [Lupus]
* Check other DB related skills req changes in db\changelog.txt [Lupus]
* Updated Palm Strike to push back even if it misses. [Skotlex]
* Updated Palm Strike cost/sphere requirement. [Skotlex]
(the delayed damage still needs to be coded in)
* Now adoption.txt NPC can also teach parents/babies their missing family skills [Lupus]
But the skills don't work yet (I tested)
* Massive mapflags fix. Also added there Novice Guilds. [Lupus]
07/08
* Fixed below fix xD [DracoRPG]
* Added another sql injection fix [Kevin]
* Rewrote part of the name request code [Skotlex]
This means that now you can see other people's party even if they don't
belong to a guild, and the party/guild names are updated whenever someone
joins/leaves them. Not fully tested but works alright on the client I use
(0411)
* More Adoption skill fixes. [Skotlex]
* Added the Adoption skills to all classes [Skotlex]
They should be auto-granted upon adoption (and are not resetable,
learnable). This, of course, needs testing, do report if it does not
works. (those that already have someone adopted will need a custom npc to
give them the skills).
* Reverted Wedding Rings as they don't need to give the adoption skills
anymore [Skotlex]
* Added script command getchildid() [Skotlex]
* Updated wedding rings to give the adoption skill when equipped. [Skotlex]
* Fixed some adoption skills [Skotlex]
* Baby classes won't display the wedding sprite when they equip the
tux/wedding dress since that resets their size. [Skotlex]
* Added warning messages when mobs from the mob_db are not loaded due to
invalid IDs. [Skotlex]
* All the new monsters have been added. Check db\changelog.txt
07/07
* Moved some declarations causing errors with gcc 2.95 [veider]
* Added valid fd test in inter.c char_sql - caused charserver crash [veider]
* Fixed pet-exploit where you could use a bow with no arrow equipped to
'send' your pet to attack distant enemies. [Skotlex]
* Added a visual skill effect when pets heal a status ailment. [Skotlex]
(Adrenaline Rush was chosen because it's animation does resemble a
'curative spell')
* Changed all SQL-related error messages to use ShowSQL [Skotlex]
ShowSQL now is also printed on the stderr (like ShowError and ShowFatalError)
* Beautified the output of the char server (sql) [Skotlex]
* Modified Dispel so that it can fail. [Skotlex]
As I have no information of how mdef protects against it, the current
dummy equation is: (50+10*SkillLv - mdef)% (note that mdef2 is not used!)
If someone knows the actual equation, do open a bug report.
07/06
* Fixed Spider-web (works like a ground-targeted trap) [Skotlex]
* Fixed combo delay not working with skills that have a blowcount [Skotlex]
* Set the default skill combo delay value to 230ms [Skotlex]
(this default was empirically obtained testing with Jupitel Thunder as reference)
* Beautified output of the char server (txt) [Skotlex]
* Fixed script config import reading. [Skotlex]
(was working incorrectly and causing memory leaks)
* Another mob-ai fix, this time mobs should unlock their target once
it has died for sure. [Skotlex]
* Added player_combo_damage_delay & monster_combo_damage_delay [Skotlex]
See battle_athena.conf for description of how they work.
Defaults to 0 because it is not yet tested for an appropiate default.
* Removed player_damage_delay & monster_damage_delay [Skotlex]
Use player_damage_delay_rate:0 & monster_damage_delay_rate:0 instead.
* Set item_use_interval to 0 (official default, isn't it ?) [DracoRPG]
* Improved appearance of script-errors reported during loading. [Skotlex]
* Some mob-ai cleanup. Mobs should now unlock their target when it has died. [Skotlex]
* Some items, monster drops fixes [Lupus]
07/05
* Fixed double attack damage [Skotlex]
07/04
* Displayed name is now updated whenever a character leaves/joins a
party/guild. [Skotlex]
* Added some NEW official HEADGEARS quests thanks to Lorky [Lupus]
* Added zbuffer/lance's "Dynamic NPC Look 'n Feel" feature. [massdriller]
07/02
* Fixed a small bug in PCloadmapevent thanks to lance. [massdriller]
* Added lance's PCLoadMapEvent script event command. to trigger, type in
-[TAB]script[TAB]PCLoadMapEvent[TAB]-1,{
YOUR SCRIPT HERE
PCLoadMapEvent as NPC Name will trigger when players step into the map.
OnPCLoadMapEvent as Label will trigger when players step into all maps. [massdriller]
* Added lordalfa's NPCKillEvent script event command. to trigger, type in
-[TAB]script[TAB]NPCKillEvent[TAB]-1,{
YOUR SCRIPT HERE
}
The script should run everytime a normal monster is killed. [massdriller]
* Added lordalfa's edit where Labels from Event Monsters be executed using the MVP RID,
and not the Last Hit guy RID. [massdriller]
* Added lordalfa's PCBaseUpEvent script event command. to trigger, type in
-[TAB]Script[TAB]PCBaseUpEvent[TAB]-1,{
YOUR CODE HERE;
}
the script should run everytime the user gains a level. [massdriller]
* Fixed Job Quests exploits (Advanced Classes were able to pass their 2nd job quests again) [Lupus]
High Novices were able to pass Super Novice Job Quest as well. They weren't able to GET those
professions, tough. But there were some items exploits.
Now Advanced classes get reborn guides from all main Job Quest NPCs (1st, 2nd Classes)
07/02
* Fixed NEWnovice NPC set using gmcommand instead of atcommand. [Codemaster]
* Maps and bugs updates, some cleanup in Weapon Repair code [DracoRPG]
* Added new areas into map flags folder. According to the patch, added NOMEMO flag to Yuno [Lupus]
* Some monsters drops changes, cards fixes. [Lupus]
* Fixed sql-char server crash when deleting a Guild Master [Skotlex]
* Massive cards update (also thx 2Landarma) [Lupus] read db\changelog.txt
07/01
* Fixed being able to steal from Treasure Box #1 [Skotlex]
* Char-sql server now uses autosave_interval to decide when to save a
modified guild. [Skotlex]
* Temporary patch to fix the 'invalid pointer' error on shutdown. [Skotlex]
* Changed all printf's to Show* messages (login/login-sql servers) [Skotlex]
* Cleaned up sql-account creation code. [Skotlex]
* Fixed 'unclean' guilds not getting saved on char-sql shutdown. [Skotlex]
* Corrected map-length calculations when auto-adding .gat (#/@ commands) [Skotlex]
* Fixed guild-skill sql loading. [Skotlex]
* Added battle_config option guild_exp_rate to adjust taxed experience
before adding it to the guild. [Skotlex]
* Some Guild-Sql saving optimizations [Skotlex]
* Changed all printfs to Show* messages (Map Server, common/ files) [Skotlex]
* Fixed crashes of Baby Knight/Crusader Peco riders. Added Baby Class support into
AT / CHAR commands @mountpeco [Lupus]
06/30
* Added web server (http daemon) plugin, originally by jA, ported to plugin form
(but not yet finished) [celest]
- To activate it just edit plugin_athena.conf
- When running just access http://<your server IP>:<your server port>. The
default home page is httpd/index.html, you can edit it if you want.
- If graph creation is enabled you can view them in http://..../graph
(by default only memory usage graphs are added)
* Fixed crash when no grf's are loaded [celest]
* Some tidying ups in clif.c, guild.c, skill.c, storage.c [celest]
* Fixed a missing foreign key for guild_position in the SQL
guild convert files (main.sql has it already) [Aru]
* On Guild_skill table corruption in SQL: this is a problem with
some MySQL versions not supporting the syntax used in
convert_guild_tables properly. The solution is to drop table
guild_skill and re-create it with the query from main.sql. [Aru]
06/29
* Fixed Bowling Bash and Spear Stab having knockback in
situations where knockback should be disabled (GvG/MVP) [Aru]
* Updated map configs with airport maps. [massdriller]
06/28
* Fixed Land Protector's range
* Old Sakexes can now login to the server. [davidsiaw]
* Doubled Investigate/Occult-Sight's damage and made it non-elemental as per
ragnainfo sources. [Skotlex]
* Sacrifice now always hits.
* Added import of msg_conf.txt for custom message translations. [Skotlex]
06/27
* Fixed Pressure missing. [Skotlex]
* Added 2Secs delay to Sonic Blows. [Skotlex]
* Removed battle config option maximum_level and replaced it with max_base_level,
max_job_level, max_super_novice_level and max_advanced_job_level. Refer to
battle_athena.conf for more details. [Skotlex]
06/26
* Fixed typo 'identity'->'identify' in charsave.c [DracoRPG]
* Added missing ',' to guild_position definition of main.sql [Lupus]
* Added proper foreign keys to guild_position,
SQL users run upgrade_svn2331.sql [Aru]
* Added convert_guild_tables2.sql for use on guild tables
created with a 2314-2321 main.sql. Run this or
convert_guild_tables.sql if you are having issues with guild
skill saving [Aru]
* Fixed a bug with guild_skill table in main_old.sql if you're
fool enough to use it [Aru]
* @nuke++, ftw ;D [Valaris]
* Modified friend list loading in char-server (sql) to be more efficient. [Valaris]
* Modified mmo_friends_list_data_str (char-server txt) so it wouldn't make junk data. [Valaris]
* Added 'character_size' to battle config:
Do mounted (on Peco) characters increase their size [Lupus]
* Added new guild database structures to main.sql.
Removed obsolete guild_tables.sql.
If for some reason the new main.sql doesn't work for you, you
can use main_old.sql, but there will be garbage left in the DB
if a guild is deleted. [Aru]
06/25
* Asura/Extremity-Fist needs Fury/Explosion-Spirits active no matter how
it's triggered. Not yet tested, but it should work. [Skotlex]
* Reorganized deletion process. Friends should now be no more problem [davidsiaw]
* Added SQL returned row check to friend-list loading, thanks to Sasuke-. [Valaris]
* Fixed drops_by_luk not behaving exactly the way it was before... ^^' [Skotlex]
* Proper clear of class sprite if used as a mob when killed. [Valaris]
* Added limit 10 to fame list SQL query (faster, when u got 1000+ bsm/alch in DB) [Lupus]
* Added missing field guild/char_id to main.sql database definition [Lupus]
Warning: Don't use guild_tables.sql databases yet! Use main.sql file
06/24
* Small bug fix on the Monk combos introduced by previous reorganization. [Skotlex]
* Some corrections on player_cloak_type code. [Skotlex]
* Some code reorganizing related to Monk combos [Skotlex]
* Reverted behaviour of the drops_by_luk to Valaris's way [Skotlex]
Added drops_by_luk2 for those who want the alternate behaviour instead.
* Adjusted occult-sight/investigate damage modifier to be (def1+def2)/100 [Skotlex]
* Removed remaining bits of code for the ex-guild skill Charisma [DracoRPG]
* Added Lighthalzen to @go [DracoRPG]
* Fixed bug in bowling bash that made the target's sprite remain. [Valaris]
* Added status calculation to nude script command if anything was removed. [Valaris]
06/23
* Fixed LittleWolf's detect hidden mode 256 for mobs (missed a line while merging). [Valaris]
* Disable AF2 loading -- eA doesn't support unzipping archives yet [celest]
* Updated UPnP plugin to 1.0.3.2 [celest]
- Added 'nat_ip' option to upnp.conf (use it to manually set your ip address
if auto detecting doesn't work)
- Fixed ip address not initialised properly
06/22
* Stopped looting from Chase Walk [Aru]
06/21
* Added send of fail packet on failing to pick up items under certain conditions
(this allows you to get an item you tried to pick up while cloaked when you uncloak). [Valaris]
* Updated map server to partially 1203~1249
- Added 'buyer_name' to battle config: shows the buyer's name when an item
has been sold through vending
- Added skills with 'water' requirement can be used in rain-enabled maps
- Fixed Soul Strike not dealing extra damage to undead
- Fixed Advanced Book not giving its aspd bonus
- Fixed skill name display when Frost Joke and Scream are casted by mobs
- Fixed exp overflow with Rich Man Kim
- Fixed exp overflow with party bonuses
- Fixed mob names not updated properly when respawning to its base class
- Reduced size of struct pet_db a bit
- Prevent trying to respawn a one-time-only mob if it can't find any
coordinates to add it
- Added slave mobs with no master/master died will be removed in mob_ai()
- Changed damage log by summoned mobs will use their masters' char_id instead
of account id (old system)
* Some tidying up in atcommand.c [celest]
06/20
* Large monsters now have 2x base stats, drop rates, exp, and zeny (if enabled). [Valaris]
* Small monsters now have half base stats, drop rates, exp, and zeny (if enabled). [Valaris]
** Note: this is referring to size just as @monsterbig and @monstersmall, not small, medium, brute, etc... [Valaris]
* Removed wedding rings from hasitems script command. [Valaris]
* Removed monsters_ignore_gms from battle_athena.conf, and added @monsterignore command. [Valaris]
06/19
* Sirius: Even though the `id` field is never directly read or
written by Athena it is neccesary for the SQL server which
automatically handles it. Else each char may have only 1 item
in a given table. [Aru]
* overhauled PA_SACRIFICE. If you want to revert the old
behavior, you can comment out the new line for it in
skill_db.txt [Aru]
* removed broken SQL "upgrade" script [Aru]
* finished the mapservers direct char loading / Charsaving (SQL only!) [Sirius]
- set charsave_method in char / map conf to 1 if u want to use the feature
- please test it and make db backups, the save / load is completly rewritten.
* Fixed some compilation errors on FreeBSD (old compilers [veider]
06/18
* Properly updated graph files (Oh god, i keep forgetting things now...
sorry again! >.< [celest]
* celest:
added a graph.c / graph.h with void graph_init and graph_final functions
due to compiling errors [sirius]
* SQL USERS: upgrade with upgrade_2252.sql!
* Added new maps, items. Thanks to Landarma [Lupus]
* Added graph creation code by jA / End_of_exam (currently disabled until
finished) [celest]
* Added grfio_crc32() [celest]
06/17
!!!Bug: on optimizing run_script, Kafra NPC stopped working. Celest, read it plz. [Lupus]
-- Fixed, sorry ^^; Please test and tell me if anything goes wrong [celest]
--- Yes. It's fixed now. (Equipment upgraders, etc werent' working, too) [Lupus]
* Started adding the charsave_method, Loading is working, saving will be finished @ 18.6.05 [Sirius]
* SuperUser checking ... (never run athena as root!) [Sirius]
* Added eprintf/eprint (eprintf is equal to printf) but it displays line / file ... (to stdrerr)[Sirius]
* Fixed Ungoliatnt casting assumptio on it's target instead of self. [Skotlex]
* Switched two frees around that might have caused problems [Codemaster]
* Optimised run_script a bit, based on jA [celest]
* Fixed a memory leak in script.c [celest]
06/16
* Fixed "unable to add to guild" bug. [Skotlex]
* fixed a typo of the guilds sql file DB definition [Lupus]
* Added left-out bonus bDef2 [celest]
* Moved minicore .o files compiling to under 'common' [celest]
* Fixed a client crash when using Advanced/Baby job sprites for mobs [Aru]
* Added a random modifier to returned damage modifiers to prevent stun-lock
abusers. [Skotlex]
It's currently set at +/-5%, not tested to know if that's enough or not,
feedback appreciated.
* Updated missing grfio.c, sorry ^^; and thanks Skotlex! [celest]
* Fixed crash in exporting ip address to plugins [celest]
06/15
* Small mod on the new attack function to prevent Asura Strike from
overflowing and doing minimal damage instead of insane damage. [Skotlex]
* Merged Iro's patch to get #changesex working. Try it out. [Skotlex]
* nullpo fix (guild.c:550), it was an actual possible scenario when you
invite someone to a guild and quit before they reply. [Skotlex]
* Removed script command gmcommand and replaced it with atcommand &
charcommand. [Skotlex]
* Small fix regarding speed updating for Cast Cancel + Freedom of Cast [Skotlex]
* Added 'make depend' for resetting Makefile dependencies [celest]
* Readded 'make addons' (works the same as 'make plugins') [celest]
* Split zlib dll opening from grf opening in grfio.c [celest]
* Moved grfio.c back to /common, it'll be needed by the core later [celest]
* SQL Logs crash likely fixed. [Skotlex]
* Added Stone-Curse to the list of status effects undead chars are inmune
to. So far undead chars are inmune to Freeze and Stone Curse. [Skotlex]
* Fixed disp_hpmeter not working properly when set to 0/no [Skotlex]
* Added malloc_usage() for checking total memory used [celest]
* Added func_parse_table to assign a parse function according to SessionType
-- still not used anywhere yet [celest]
* Added 'SessionType' to session_data [celest]
* Some tidying up in charcommand.c [celest]
* Added temporary code for Shinobi's Rebirth skill [celest]
* Added guild exp overflow fix for TXT char [celest]
06/14
* Various item_trade restriction fixes: [Skotlex]
- Fixed guild/normal storage flags not working right.
- Fixed a bug which allowed players to store items regardless of
restrictions.
- Modified the gm override level behaviour on trades so a high level gm
can both give and receive the otherwise untradeable item.
* Small fix to the sql-files/convert_guild_tables.sql script. [Skotlex]
* Modified function status_calc_speed to be faster since it's only used for
cloaking and freedom of casting. [Skotlex]
* Changed the stacking type from speed-bonuses to make it harder to reach max
walk speed. [Skotlex]
* Fixed a bug on the way aspd bonuses stack. [Skotlex]
* Changed map names length from 24 to 16 all over the char(txt/sq) and map
servers, this could fix the "matrix" bug (if done right...). [Skotlex]
* General cleanup and memory checks on char server (txt) [Skotlex]
* Miscellanous memory checks around charcommand.c and atcommand.c [Skotlex]
* Added Maeki's fix to Maeki's fix of SQL Char Server Guild Saving.
* Fixed characters not being able to uncloak
* Split used-by-plugins-only code to plugin.h [celest]
* Standardised plugin functions and names -- dll.c is now plugins.c, addon_athena
is now plugin_athena.conf and so on [celest]
* Updated UPnP plugin to 1.0.3.1 [celest]
- moved code in socket.c back into the plugin
- added configuration file support (plugins/upnp.conf) -- you'll need to do
'make plugins' to install it
* Added 'make zlib' for compiling a zlib.dll [celest]
06/13
* Fixed Asura Strike possibly doing minimal damage when it should do very
large damage instead. [Skotlex]
* Fixed another possible crash on chrif... [Skotlex]
* Applied Maeki's fix for Guild Sql Char server [Skotlex]
if it breaks, go stone him :X (I already got enough rocks to watch
out for...)
* Made berserk-cancels-users-other-self-buffs a battle_config
option, default: off [Aru]
* Some compiler warnings fixes [Skotlex]
* Added battle_config option equip_natural_break_rate. [Skotlex]
Default is 1 (0.01% chance).
* Changed sprinkle sand's range from 8 to 1. [Skotlex]
* Fixed map server failing to connect to char server... [Skotlex]
* Char-Sql server revision [Skotlex]
Miscellanous memory bounds/overflows checks/fixes.
* Fixed options start_armor/start_weapon (char sql) [Skotlex]
* Some more map server memory checks and cleanup (90%) [Skotlex]
* Fixed cloaking re-cloaking you instead of cancelling cloak. [Skotlex]
* Double Damage multiplier applied after vit/def reductions until further
information is available. [Skotlex]
* Restored previous speed stacking type until a fix for the new method can
be devised. [Skotlex]
* Removed MVP status from @summon'd monsters. [Valaris]
* Had the "monster target reset to none" code inside of check for the monster level up code, moved it out. [Valaris]
* Added update of mob hp display on monster level up if mob hp display and monster leveling are on. [Valaris]
* Added mob_clear_delay option to battle_athena.conf.
Can add a delay before sending monster death packet (time is in milliseconds and default 0 is off).
Increasing this can fix the problem with monster sprites still appearing after it died. Recommended value: 10. [Valaris]
* Fixed spawning multiple sized monsters via scripts. [Valaris]
* Added LittleWolf's mode 256 (0x100 internally) for monsters (adds detect hidden to a monster, doesn't have to be an MVP, demon or insect). [Valaris]
* Fixed bug allowing players to cast warp portal under players and other various invalid blocks. [Valaris]
* Removed talk conversion of Zherlthsh and Alice pets since clients now support them. Thanks to Kholdstare for pointing it out. [Valaris]
* Added "ORDER BY" statement to char-server SQL's reading of the memo db, fixing problems with people's memo lists
screwing up when they log back in. Not sure if this problem exists in TXT char-server as well. [Valaris]
* Map server memory cleanups... (85%) [Skotlex]
* Removed battle option "enemy_critical" [Skotlex]
Use enemy_critical_rate=0 instead.
* Changed the default of enemy_critical_rate to 0 [Skotlex]
* Ported oA's imalive and flushtimer system to eAthena plugin 'gui' [celest]
- You will only need the plugin if you are using a gui program like wxOAGUI
to run Athena
- To configure it check addons/gui.conf
- Passing "--gui" as a parameter, i.e "./map-server --gui" will activate it
as well (GUI program creators, you should handle this transparently)
* Added get_uptime to timer.c -- used by @uptime and the 'sig' plugin [celest]
* Merged the 'uptime' plugin into 'dump' and renamed to 'sig' -- it'll now
handle both crash and uptime logging [celest]
* Guild SQL updated again, `exp` and `next_exp` to BIGINT UNSIGNED [CLOWNISIUS]
* Updated the guild_upgrade made sure UNIQUE KEY guild_id is implemented [CLOWNISIUS]
* Pets no longer lose intimacy when you die on a nopenalty map [Aru]
06/12
* Removed the dynamic mob messages (mobs spawned/removed) from default output [Skotlex]
(Use battle_config etc_log to enable them again)
* Fixed sql-files/convert_guild_tables.sql so that it actually works [Skotlex]
(works only on non-modified guild tables previous the new guild system)
* Small nullpo fix on @where.
* Fixed new account flood protection blocking _M/_F registration (txt/sql) [Skotlex]
The bug? The default disallowed time was 1 registration every 10K secs.
* Found & fixed the bug that was causing server instability on clif.c [Skotlex]
* Cloaked characters will uncloak on attack/skill-use [Skotlex]
* Fix on aspd_rate affecting skills not working [Skotlex]
* Miscellanous small fixes in map server. [Skotlex]
* The new attack function is now the unchangeable default. [Skotlex]
* Updated double_rate (side-winder) behaviour. [Skotlex]
It no longer adds to double attack's skill rate, instead the higher of
the two will be used on the currently equipped weapon.
* Dec Agi now cancels Cart-Boost and viceversa as explained by Ishizu [Skotlex]
* Cloaked characters now can't pick items. [Skotlex]
* Made the max speed rate a battle_config option, default 300% [Skotlex]
* Fixed the overflowed valstr free on skill.c:8840 [Skotlex]
06/11
* Lord Knight's Beserk now cancels all the caster's other
self-buffs when used. It also cannot be re-used during the
no-SP-recovery penalty period after it expires. (This penalty
will now cancel on your death however.) [Aru]
* Reverted the previous stacking type for aspd as per rodatazone
information [Skotlex]
Speed modifiers, however, still stack on the new way as there's been
complains of characters reaching impossibly high walk speeds.
* Modified bAspdAddRate code so that it stacks linearly. [Skotlex]
* Changed default stacking type for skill modifiers [Skotlex]
If you have +50 aspd and +50aspd you won't get 100% aspd, instead now you
get 50% of the 50%, that is 75% aspd bonus. Changed meant to protect
against stacking skills to get impossibly high walking speed/attack
speeds.
* Modified the way bAspdRate & bSpeedRate work. [Skotlex]
They are meant to be non-stackable, so only the card/equipment with the
highest bonus prevails.(items with stackable bonus should use
bAspdAddRate & bSpeedAddRate instead.)
* Changed the DoppelGanger Card definition from bAspdRate to bAspdAddRate
to make it stackable. [Skotlex]
* Capped walkspeed at 4x default [Aru]
* Added Maeki's awesome convert_guild_tables.sql
You must still manually add the `char_id` field to the `guild`
table and fill it with the guildmasters' char_ids BEFORE
running it. [Aru]
* Removed inter_guild_storage_delete calls from int_guild,
innodb tables make it unneccessary [Aru]
06/10
* Updated the default pet_db.txt support values [Skotlex]
We don't have an official list of the support rates, but 1% as default
(1.5% if they have max intimacy) is just ridiculous.
* More map server memory cleanups... (70%) [Skotlex]
* Fixed that crash upon login.... [Skotlex]
* More map server memory cleanups... (45%) [Skotlex]
* More map server memory bound cleanups and checks (35%) [Skotlex]
* Fixed Stalkers being able to use (plagiarized) ground-target
skills from Chase Walk
* Fixed come confusion between MVPs (status_get_mexp) and
mini-bosses (mode & 0x20) in battle.c
* Added battle_config option item_use_interval with default 500ms [Skotlex]
* Started map server memory bounds checking for overflows (20%) [Skotlex]
* Small optimizations on ensemble skills [Skotlex]
* Fixed some compile warnings on char-sql server [Skotlex]
* Added script function getitemslots(item_id); [Skotlex]
* Fixed a bunch of script functions generating a new dummy item instead of
failing when the item was not found. [Skotlex]
* Fixed mobhp display so that it will be displayed no matter which /showname option a player is using. [Valaris]
* Fixed names with disguises (I tested it. It works. No more bitching. :P). [Valaris]
* Completely overhauled SQL guild code to use innodb type tables
unfortunately, old guild tables are not compatible.
If you don't mind the data loss, wipe your current guild
tables and run guild_tables.sql to create new guild tables.
[Aru and CuteBoi]
* If you want to manually convert your old guild tables, you'll
need to add the foreign keys from guild_tables.sql to the
databases. And add the `char_id` field to the guild table.
Its value needs to be the char_id of the guildmaster [Aru]
* Added 'alchemist' mob skill condition [celest]
* Rewrote most of the old jA Self Destruction code [celest]
06/09
* Fixed a possible null_po in clif.c:7714 caused by lagged clients [Skotlex]
* Fixed enemy damage_delay being modified by 400 instead of 100. [Skotlex]
* Changed behaviour of map_freeblock/map_freeblock_unlock as the previous
way seems to cause memory leaks. [Skotlex]
* Tidied up code relating to skill_get_inf2() [Skotlex]
* skill_db.txt updated. New inf2 values: [Skotlex]
16: Guild skill, 32: Song/Dance skill, 64: Encore skill
* Other misc arrangements to skill_db.txt (see db/Changelog) [Skotlex]
* Tidied up code relating to skill_get_nk() [Skotlex]
* Readded the previously removed skills from item_db [Skotlex]
* getpetinfo(2) will return "null" on no pet. [Skotlex]
* Tidied up code relating to skill_get_inf() [Skotlex]
* Some small fixes to @grind, @useskill [Skotlex]
* Added fist (bare hands) to the list of unbreakable equipment in
pc_break_equipment [Skotlex]
* Reestructured battle_config options for equipment breaking [Skotlex]
Removed equipment_breaking and added equip_self_break_rate,
equip_skill_break_rate. Read battle_athena.conf for more info.
* Fixed getpetinfo(2) crash. [Skotlex]
* Added a couple missing lines from my PSIBlade merge of disguises. Name, attacking
and such are fixed now with disguises. [Valaris]
* Added battle_config option to set if advanced job skills may be plagiarized
* Fixed ASC_BREAKER to ignore race/size/element cards like it should
* Changed @fakename so it no longer needs to teleport the client to work [celest]
* Removed the old day/night system that uses the blind effect [celest]
* Fixed day/night cycles with darkness_level on not refreshing properly [celest]
* Fixed pc_follow_timer cancels if the player or the target warps [celest]
* Added @follow on the same target for the 2nd time will stop following [celest]
* Added Memory manager will perform a hash check when freeing memory, by
End_of_exam / jA 1213 -- fixes crashes when a pointer created by level 2 ALLOC
is passed to level 1 aFree
06/08
* Updated idle time considerations. [Skotlex]
A character's idle time is reset upon: Walking, attacking (auto-attack
counts too), using a skill or using a item.
* idle_no_share changed from a Yes/No setting to # of seconds before
considering character idle (no/0 still disables). [Skotlex]
* Updated idle_no_share description in battle_athena.conf
* Modified @disguise so that it will always work with Npc/Mob names and Mob
Ids. Only npc by id is hardcoded for now. [Skotlex]
* Added atcommands cleanmap, npctalk, pettalk to atcommand_athena.conf with their
description. [Skotlex]
* Fixed spawn delays for anthell eggs [Skotlex]
* Removed equipment_breaking, use equipment_break_rate = 0 instead.
[Skotlex]
* Clarified some of the comments in battle_athena.conf [Skotlex]
* Steal/Snatcher won't work on summoned creatures now. [Skotlex]
* Some db updates (see db/Changelog) [Skotlex]
* Fixed rude_attacked state not being reset after triggered, credits to
Komurka [Skotlex]
* GM used Type 11 items will be exempt from the "GMs can do whatever they
want" rule regarding skill_usage because otherwise the used item is never
consumed. [Skotlex]
* Fixed Ice Falchion/Firebrand giving skills, they just cast the spell [Skotlex]
* Reduced Ice Falchion's freezing chance from 5% to 1% [Skotlex]
* Added Makefile caching [celest]
'Makefile.cache' is created when you compile for the first time, and keeps
all your makefile definitions so it can be read directly when you recompile,
instead of redetecting things one-by-one.
'Make [char_sql/login_sql/map_sql]' will now work properly too.
NOTE: A cache file created by compiling txt is NOT compatible with SQL, but
a cache created by SQL is compatible with TXT! Delete the cache file first
and compile SQL before TXT if you have to.
* Skills will reset at level down. [davidsiaw]
06/07
* Temporary change of the way mob memory is removed when they don't have a
respawn time (check for memory leaks fixed after killing all summoned mobs)
[Skotlex]
* Fixed map_quit being called twice when a player requests to change char [Skotlex]
* Fixed compile issues on various versions of linux
(please avoid inline in include files until we offically go
over to being a c++ app) [MouseJstr]
* Fixed aFreed messages of double freeing sd->reg and sd->reg_str [Skotlex]
* Re-fixed sql-files/item_db.sql [Skotlex]
* Plagiarism won't work if the skill to be copied killed you. [Skotlex]
* Removed use of 'l' as prefix for temporary variables. [Skotlex]
* Updated max hair styles in battle_conf to 23 [Skotlex]
* Updated map server to jA1159~1203 [celest]
- Added imbueing weapons with random element (with bonus bAtkEle,10;)
- Added Soul Strike do additional damage on undead
- Added Grand cross will not damage self when cast by mobs
- Added Cannibalize & Marine Sphere summoned mobs will use their owner's name
- Added clean up player info when switching characters
- Added reinitialise storage when char server disconnects
- Changed some cloaking/chasewalk checks
- Fixed memory leak when map cache reading has an error
- Fixed a bug when receiving member info for an empty guild
- Skip still connecting players in clif_foreachclient()
* Weather will now properly appear/disappear without having to refresh the client. [Valaris]
* Complete monster disguise re-code: [Valaris]
-No more client crashes in PVP caused by disguises.
-Can view own attack/hit/cast/sit/turn animations.
-Monster sprite syncs up better than before.
-Fixed stat dupe exploit with disguises.
-Fixed crashes that prevented peco riders with disguises.
-No more refreshing of the screen when equipping/unequipping disguises.
* Fixed crashes caused by Graffiti Cleaner. [Valaris]
* Added following missing checks to Ensembles: [Valaris]
-Partner's equipment is an instrument.
-Partner is alive.
-Partner is not casting another skill (This allowed dance floor panel duping).
-That both people are in a party (before if both partner's were in no party (party ID 0)
it would allow them to use an ensemble.
06/06
* Fixed and updated sql-files/item_db.sql to match with the current
db/item_db.txt [Skotlex]
* Removed variables with prefix "l" being treated as a temporary
variables by the scripting engine. [Skotlex]
* Updated description of idle_no_share battle_config option [Skotlex]
06/05
* Added more debugging information to login-in characters to track down the
authook nullpo problem. [Skotlex]
* Added a temporary string length check on trade-request. [Skotlex]
(reports seem to indicate that the map-server garbage text bug could be
related to trading string length overflow, check the map-server output
for "name too long" messages).
* Fixed a few Visual Studio compile errors and warnings - not completely fixed [Codemaster]
* prevent_logout is now overriden by dead characters. There's no point in
waiting 10 secs since you were killed to quit/change character. [Skotlex]
* Passive mobs will now unlock their target once it's dead/gone too
far/in another map. [Skotlex]
Passive mobs are supposed to be defensive, not vengeful. Do report of any
abuses that might be possible from this to take proper measures.
* Fixed pet lures always failing (oops) [Skotlex]
* Corrected Various Jur's (id 1264) equip script to bonus2 [Skotlex]
* Fixed status_get_speed always returning 1000 when invoked on NPCs [Skotlex]
* Added battle_config option pet_support_min_friendly [Skotlex]
Specifies minimum pet intimacy/friendly value needed before attacking.
Default 900, see battle_athena.conf for more information.
* Some reorganizing of pet-catching code [Skotlex]
* Now mobs will do the /ag emotion when you use a lure on them and they
can't be caught (wrong lure, or mob not in the mob_db.txt). [Skotlex]
* Fixed a timer mismatch situation with pc_walk timers [Skotlex]
* Re-structured the pc_follow_timer code [Skotlex]
* Updated the pet_heal_timer code to match behaviour with
pet_supportskill_timer's one [Skotlex]
* Added support for universal lure. [Skotlex]
Use use_script "pet 0;" to create an item that will catch any non-boss
mob (will work as long as said mob has an entry in mob_db.txt, of course)
From what I read in the code, mapping multiple entries in mob_db.txt to
the same egg_id should work, so it should be possible to have all mobs as
pets using a single egg_id item and this custom lure.
* Updated Weapon Repair from jA 1228 [celest]
* Fixed TXT char disconnecting when sent a server packet from SQL map [celest]
* Fixed login failing with md5 encryption, thanks to End_of_exam
* Fixed lock_fclose() failing in Win32 builds, thanks to End_of_exam
* Updated sql-files/mob_db.sql to match with db/mob_db.txt [Skotlex]
* Corrected Zherlthsh's and Alice's attack animation speed (mob_db.txt) [Skotlex]
sql-users can use upgrade_svn2068.sql to update table mob_db.
* Re-fixed disp_hpmeter not getting disabled when set to 0/no [Skotlex]
* Fixed Grandcross/DarkCross to do 3 hits instead of 4 [Skotlex]
* Fixed #fakename =). [Kevin]
* Tidied up and rearranged Makefile a bit [celest]
- added 'make [common/map/login/char] options' -- only for txt though ^^;
- readded sse, mmx and o3 optimisation flags (disabled by default) -- you'll
have to edit and enable them yourself
06/04
* Moved @charchangesex to #changesec *still disabled*. [Kevin]
* Fixed a major security hole in the mail system, thanks to Valaris for the info =). [Kevin]
* Moved @charsk/stpoint to #sk/stpoint. [Kevin]
* Moved @charmodel to #model. [Kevin]
* Moved @charst/skreset to #st/skreset. [Kevin]
* Re-updated sql-files/item_db.sql to use price buy/sell NULL instead of 0 [Skotlex]
The file is full of REPLACE instead of INSERT, so if you already have the
structure of the table right, you can just delete the table definition
and apply the file to update your item_db table.
* Commented out char_athena.conf. [Kevin]
* Moved @charlostskill to #lostskill. [Kevin]
* Moved @charquestskill to #questskill. [Kevin]
* status_change_start will halt silently instead of printing null_po messages
when trying to apply status effects on pets [Skotlex]
(Fixes null_po's from pets doing magnum break and who knows what other
skills)
* Moved #showexp and #showdelay to @showexp and @showdelay. [Kevin]
* Moved @charjoblvl and @charbaselvl to #joblvl and #baselvl. [Kevin]
* Readded the cloth dye packet upon-walk. Sorry about that [Skotlex]
* Fixed Party Exp Even Share [Skotlex]
* Added #fakename, due to popular demand =)[Kevin]
* Clothe dye is updated now on view_class change [Skotlex]
Most noticeable effect: Dye is not lost un unequipping a tuxedo/wedding dress.
06/03
* Updated sql-files/item_db.sql to match with the current db/item_db.txt [Skotlex]
* Added some initialization code regarding dynamic mobs during map startup. [Skotlex]
* Fixed the typo on Thief's Sling Stone quest (Zargon->Garlet) [Skotlex]
Why noone fixed this before? o.O
* Removed a piece of code that updates your cloth's dye whenever you walk.
I have been testing for a bit, and this piece of code seems unneeded, and
not only that, it causes quite a bandwidth penalty by sending
dye-changing packets every time every character walks! [Skotlex]
If you get reports that the characters are getting displayed their
default color instead of their selected dye, report it so I add back that
piece of code (but it would be best if we could do without it, it would
save quite some bandwidth).
* Some compiler fixes in older versions of GCC, thanks to esca.
* Some optimizations to petskill_use [Skotlex]
* Fixed the default max hair dye color count, it is 8, not 9 @.@ [Skotlex]
* Changed disp_hpmeter's behaviour so that you can disable it by setting it
to "no" or 0. [Skotlex]
* Fixed gm chat kick protection. [Skotlex]
* 'Tidied' a bit party_exp_share (more like restructured it). [Skotlex]
* Re-added party_idle_no_share code. When was it removed? [Skotlex]
* Added skills going damanage when PVP isn't on fix. [Kevin]
* Fixed the party-even-share bonus for large parties. [Skotlex]
* Fixed gm chat kick protect.[Kevin]
* GM of higher or equal level can use @where on another GM.[Kevin]
* Fixed @fakename command.[Kevin]
* Stopped the map-server from invoking "OnAgitStart" each time it connects
to the char server. [Skotlex]
* Modified Abracadabra code to make it work with Pet Skills [Skotlex]
(Warning: Not yet tested)
* fixed a bug with Abracadabra
06/02
* fixed compile issues on older gcc, thanks to esca [Shinomori]
* Added @size and @fakename gm commands. [Kevin]
* Added valaris's getstrlen and charisalpha functions into the script parser. [Kevin]
* Added clif_guild_xy(_remove), rest needs to be added somewhere. [Kevin]
* Fixed items lost on shutdown/crash, by valaris. [Kevin]
-Note: Was partially finished by massdriller =).
* A few things: [Kevin]
-Fixed valaris's gms can't be kicked function.
-Added battle_config option for valaris's function.
-Added battle_config option for gms can join password protected chats of valaris's .
* Moved "readme"'s and other non important files into doc/notes/ [massdriller]
* Cleanup in chat.c, party.c, storage.c [celest]
* Fixed an inconsistent message for log_chat in conf file reading [celest]
* Fixed mob class changing not checking array bounds, by Shinomori
* Fixed mob summoning slaves not checking array bounds, by Shinomori
* Updated max packets in clif.c [celest]
* Fixed some compile time warnings. [Kevin]
* Added GM chat kick protections, thanks to Valaris [massdriller]
* Added Password protection chat rooms access to gms, thanks to Valaris [massdriller]
* Fixed a couple of things in map.c, thanks to Valaris [massdriller]
* Storages now saves upon closing, thanks to Valaris [massdriller]
* exp share and added zeny share/party bonus exp thanks to Valaris [massdriller]
06/01
* Fixed Divest Shield and Divest All not able to strip shields [DracoRPG]
* Changed the default max_hitrate to 100% as specified in rodatazone [Skotlex]
* Removed the console messages printed when the script command getmapxy is
invoked [Skotlex]
* Fixed non-droppable items blocking the client from further droping
other items [Skotlex]
* Changed the default of mob_remove_delay to 5 mins [Skotlex]
* Changed the minimum mob_remove_delay to 15 secs since mobs with instant
respawn actually take 5~10 secs to respawn [Skotlex]
* Fixed again disp_hpmeter, it looks like this time it works properly. [Skotlex]
* Added Esca's fixes to make eA properly compile under Sun-OS [Skotlex]
* Tested and fixed script function getnameditem [Skotlex]
Now you can use getnameditem(item,char) to get inscribed equipment (only
works with what you can equip, arrows excluded). The item description can
be the item id or the item name, and the character can as well be the
character id or character name. Function returns 1 if successful and
the character who's name is to be inscribed HAS to be online.
* Changed the way dynamic mobs are removed. Now all mobs have are tagged as
either cached/uncached, and only those cached are removed [Skotlex]
Mob-Slaves are the only non-cached enemies that are also tagged as
cached.
* Fixed a delete_timer mismatch in pet.c [Skotlex]
* Fixed some compile time things in older versions of gcc. [Kevin]
* Removed the clif message when you can't drop items [Skotlex]
Apparently this message breaks the clients and prevents further drops of
items? Might need further testing.
* Changed AspdRate and SpeedRate bonuses so they can stack [DracoRPG]
* Added script function getnameditem [Skotlex]
syntax: getnameditem itemid, inscribed char's name
Needed at least for wedding scripts. Only works on equippable items,
returns 1 on success, always makes only 1 item.
(it should also be able to use char's id or item's name instead)
Script function proof-read but not yet tested, so it might have a bug or
two, use at your own risk for now.
* Fixed dynamic mobs removing Guardians [Skotlex]
* Fixed sql queries in logs giving an error. [Kevin]
* Fixed @memo ignoring the nomemo map flag, thanks to Maeki. [Kevin]
* Enabled an account flood protection system defaulting to 1 account every 10 seconds. [Kevin]
* Corrected dynamic mob unloading to remove slaves. [Skotlex]
* Added Maeki's fix for handling the sql connection to the log server [Skotlex]
* A reminder to people who seem to have a broken item_db (wrong item
sprites, doing nothing on click, etc): there was an update to item_db
some days ago, a new column which is used to determine refineable
items (which goes between eLv and View) The shipped item_db.txt is
already updated, but if you have custom files, you can try updating
them using the gawk line (further below this changelog) or this short
sed command (from within the db directory):
gsed -re 's/([^,]*,){16}/&,/' < item_db.txt > item_db.fix
And then replace item_db.txt with the newly created file (if ya don't
have gsed, try sed. All *nix should come with one or the other, and you
can also get it with cygwin)
* Moved the dynamic mob spawns/deletes to map_addblock/map_delblock [Skotlex]
This pretty much guarantees that mobs won't be spawned/deleted twice from
the same map.
* Added random's battle_config flag for enabling/disabling dynamic mobs [Skotlex]
Dynamic mobs is good for medium to small servers, but on large ones it
gets to be somewhat pointless.
* Fixed disp_hpmeter, I think (can't test it, but the code looks ok) [Skotlex]
* Added battle athena option mob_remove_delay [Skotlex]
Now dynamic mobs are not removed inmediately, but after some time has
passed. Default value is 60 secs
* Added debugging information about dynamic mobs [Skotlex]
Helps keep track of how many mobs are being removed/spawned, use it to
track any possible bugs! Should be removed after dynamic mobs are good
enough.
* Some changes to dynamic mob unloading to avoid remove summoned mobs and
always remove mob slaves. [Skotlex]
* Fixed a nasty pc.c bug thanks to komurka [massdriller]
* Added Sasuke's modification to allow certain gm levels to see the
hp bars [massdriller]
05/31
* Added Einbroch mobs to dead branch DB [Arutema]
* Fixed NPC Typo [Codemaster]
* Updated help.txt, fixed a compile time warning on BSD systems. [Kevin]
* @marry auto-gives named rings, removed @rings as in-needed [Arutema]
* Fixed some compilation errors in BSD systems. [Kevin]
* Restored dynamic mob cleaning to what it was a couple of nights ago
Should send the system back before all hell broke loose. [Skotlex]
* Added battle_config options min_hitrate & max_hitrate [Skotlex]
These only affect the new attack function, and th defaults are 5%-95%
* Added client-messages for when an item can't be drop/stored [Skotlex]
* Finished implementing the "optimization" item_trade.txt [Skotlex]
* Optimised the long forgotten MVP arena [massdriller]
05/30
* Rewrote the trade-add-item function, it was hella messy [Skotlex]
* Updated item_trade.txt implementation [Skotlex]
GM-override lv is still to be implemented.
Code has been reviewed, but not actually tested yet, use with caution.
* Fixed fame list first loading, at server startup [DracoRPG]
* added lordalfa's @me action command [massdriller]
* Reverted changes to dynamic mob removal, now all mobs are removed [Skotlex]
mob_remove_damaged is still respected.
* Partial implementation of item_trade.txt, not quite finished yet [Skotlex]
* Fixed mob_remove_damaged [Skotlex]
* Added two new battle_athena options: [Skotlex]
show_hp_sp_drain (yes/no): displays drained hp/sp from attacks (ie:
Hunter Fly Card)
show_hp_sp_gain (yes/no): displays gained hp/sp from killing mobs (ie:
Sky Deleter Card)
* bHPGainValue, bSPGainValue will only display gained hp/sp when said
gain is above 0. [Skotlex]
* Changed hp_dispmeter from yes/no to GM-level [Skotlex]
Note that now the default value is hp_dispmeter: 100
* Fixed item_avail.txt reading could crash on newline [celest]
* Speedup and fixed @reloaditemdb messing up inventory data [celest]
05/29
* Optimised job quests scripts [massdriller]
* Fixed guild expulsion bug, two chars on same account would be expelled. [Kevin]
* Dynamic mob unloading won't touch mobs with a deletetimer now [Skotlex]
this affects mobs scheduled to be removed (including @summon mobs)
* Dynamic mobs now also removes mobs that have a master [Skotlex]
* Fixed Knockback skills on the new attack function [Skotlex]
* Rewrote the vitality reduction equation in the new attack funcion [Skotlex]
The new equation conforms to rodatazone's information here:
http://rodatazone.simgaming.net/mechanics/substats.php#def
* Fixed item_db.txt to contain the new refinable column [Skotlex]
(I accidentally commited the old item_db last time...)
TXT users with custom items can update their custom db using gawk (*nix
or under Cygwin) this way (thanks to Sasuke):
gawk -F, '{ for (i=1; i<= NF; i++) { if (i==16) { printf $i; printf ",";printf ","; } else if ( i==NF ) { print $i; } else { printf $i; printf ","; } } }' db/item_db2.txt > item_db2.new.txt
Run it from within the root eAthena directory, and you'll get an updated
item_db2.txt in your root directory. However, all custom items are not
refineable by default this way, you still have to set to 1 the refineable
column where it applies on your custom item_db.
* Improved uptime checking, by Shinomori
* Improved calltable import/exporting, by Shinomori
* Standardised init/finalise functions' names [celest]
* Fixed SVN version display at client connection, thanks to Maeki [DracoRPG]
* Prevented Snatcher to try stealing players and already stolen mobs, thanks to shadow [DracoRPG]
* Fixed Parrying and slightly organized status_change_start [DracoRPG]
* Removed fame list update timer and made it to refresh the list everytime pc_addfame is ran [DracoRPG]
05/28
~ Name of NPC file in map_athena.conf is now scripts_main.conf
~ Added a new column to item_db.txt/item_db2.txt: refineable [Skotlex]
The column goes between equip_level and view, use upgrade_svn1863.sql
to update sql tables (including item_db2.txt). Custom item users of txt
servers will have to update manually.
When the column's value is 0, NULL (sql) or blank (txt), the item can't be
refined.
OLD ITEM_DBS WILL NOT WORK WITH THIS NEW UPDATE, update your custom
items!
* Fixed a crash bug in pet_heal_timer on timer mismatch. [Skotlex]
Thanks to Celest for noticing it out.
* Fixed the critical attacks bug in the new attack function. [Skotlex]
* Added MassDriller's updated readme.html files. [committed by Skotlex]
* Fixed script_athena.conf reading of "event_requires_trigger". [Skotlex]
It was looking for "require_set_trigger" instead of
"event_requires_trigger", which effectively ignored the
event_require_trigger's value. Logout events should now be usable without
the need of a global variable.
* Registered all used timer functions to help debugging [celest]
* Added -DMINICORE to compile core.c (for converters and ladmin) [celest]
* Removed most unused code and files in char and login converters [celest]
* Moved converters to /txt-converters [celest]
* Some tidying up in core and socket.c [celest]
* Fixed a bug in the new attack function dealing with dual-wielding [Skotlex]
05/27
* Removed YET AGAIN the mob's skill_idle_flag function. [Skotlex]
Komurka updated the mob_skill_db so that it is not needed anymore.
* Modified the critical equation on the new attack function [Skotlex]
The original equation ((1 + LUK*0.3 + EquipmentBonuses) * CritModifier -
TargetLuk/5) was meant for official servers, where mobs don't do
criticals. If applied to mobs, they get very high critical rate, so the
luk reduction was bumped up to TargetLuk*3/10 on situations where a player
is targeted by a mob.
* Re-Applied the idle_skill_flag [Skotlex]
It was removed because people said it was broken, however it works
exactly the way Komurka explained it to me:
A mob can cast only one idle skill, and can't do another one until it
moves. If the mob casts too many idle skills because it
casts/moves/casts, then increase the skill's delay in the database! If it
still does "not works", drop me a line explaining why, because it works
exactly as I was told it should.
* Small adjustment of the critical equation in the new attack function [Skotlex]
* Fixed some crashes related to pet skills and timers [Skotlex]
* Fixed 1 delete_timer error with pc_stopwalking [celest]
05/26
* Tidied up mob.c and map.c a bit [celest]
* Removed rehash() in atcommand.c [celest]
* Fixed @reloadscript issue with dynamic mobs [celest]
* Added flush fifos first before reloading in @reloadscript [celest]
* Added spawn mobs with 1 second delay instead if moblist is full, by Shinomori
* Fixed wrong name saved when adding friends, thanks to Maeki
* Fixed itemhealrate stackable, thanks to starlon
* Set the new_attack_function to be used by default. [Skotlex]
This function replaces the three previously used functions (pc/mob/pet)
into a single one which was rewritten to follow the attack algorythm as
described in http://rodatazone.simgaming.net/mechanics/attacks.php
Please report any inconsistencies or strange behaviour that this new
function brings (only affects physical attacks/skills) on the boards.
If anyone can do some performance comparisons with the old method, that'd
be useful too.
If you absolutely don't want to test it and prefer the old method, in
battle_athena.conf add a line that goes:
new_attack_function: no
05/25
* Fixed typos in Absorb Spirits, Double Casting and Tarot Card, thanks to Komurka
and Avaj
* Added missing code for Flasher, thanks to Komurka
* Fixed a string bug in grfio_resnametable [celest]
* Updated the readme files to the current statistics. [Mass Zero]
05/24
* Added 'make addons' -- plugins will not be compiled by default now [celest]
* Ported uptime logging function to eAthena plugin [celest]
* Ported pid file creation function to eAthena plugin [celest]
* Ported stackdump creation function to eAthena plugin [celest]
* Added capability to export to plugins [celest]
* Fixed ensemble skills, thanks to Komurka
* Fixed Dissonance damage, thanks to shadow
* Reverted db/pet_db.txt to it's original form. [Skotlex]
The pet skills shipped with eA should be as close as possible to the
original servers. If you prefer the current custom skills in place just don't
update the pet_db.txt file.
` (Somehow my custom pet skills table got updated to svn and I didn't notice
it ^^')
05/23
* Fixed a few problems wit Dynamic Mobs [Wizputer]
Increased max mobs per map from 32 -> 128
Fix mob unloading
Special Mobs w/ Spawn delays are exempted (MVPs, Gaurdians, Branches, and summoned)
Added Option for damaged mobs not to be removed in battle config ( Default yes )
* Mob count in scripts returned 1 less then it was supposed to. [Kevin]
* Updated tool/stackdump script to support eA's own stackdumps [celest]
- Type ./stackdump help to check
* Changed mob_cleanup_sub simply to cleanup_sub [celest]
* Fixed some memory leaks with dynamic mobs [celest]
-- notes: Check bugs.txt
* Fixed some compile warnings in gcc 4.0 [celest]
05/22
* Added Jbain's server restarter bat files. [massdriller]
* Drastically Improved Memory usage by making mobs dynamic [Wizputer]
Mobs load only when a PC is present on the map
Mobs that have special spawn delays are not loaded/unloaded
( Reduced memory usage by 60% for 419 Maps )
* FIFO size fixes [Shinomori]
* Fame point system now uses pc_addfame [DracoRPG]
* Added support for new NPC sprites in @disguise, thanks to akusarujin [DracoRPG]
* CharSQL: changed the init / login connection issue, now 'online'
players will be set offline in login @ start / login reconnect [Sirius]
05/19
* Fixed displaying new when char_new is set to one and changed the option to char_new_display. [Kevin]
* Fixed mysql fix. [Kevin]
* Fixed a previous fix with pet idle skills, needs db update not hard coding. [Kevin]
* Fixed mysql queries to support the following: [Kevin]
-Names now support the ' character
-Runs faster because querying string fields doesn't do strlen.
-Debug option to revert back to old debug queries, will disable the support of the two above.
* Added No Dead Branching Mapflags in cities [massdriller]
* Fixed Asura Strike to need only 1 spiritball if used after Chain Crush [celest]
* Added Asura Strike can be chained after Tiger Fist [celest]
05/18
* Fixed up character creation, txt supports three status error and char_new is now enabled. [Kevin]
* CharSQL: fixed the Delete Char issue, now it's using the sd->email instead if the sql email [Sirius]
* Removed status points adding can be limited via gm level [celest]
* Removed double clean up when char server disconnects from map [celest]
* Removed 'mysql_real_escape_string' usage in SQL char until it'll no longer cause
crashes [celest]
* Added signal handler for SIGXFSZ [celest]
* Fixed some compile errors [celest]
* Fixed broken status changes [celest]
* Fixed Max Overthrust not working [celest]
05/17
* Fixed null pointer in map.c. [Kevin]
* Fixed on a compile time error in status.c/h [Kevin]
* Fixed an invalid pointer in clif.c [Kevin]
* Removed 'Agi Up' visual effect from Berserk [DracoRPG]
* Tidied up npc.c a bit [celest]
* Added crash check in SQL char creation [celest]
* Changed Marionette Control's inf type [celest]
* Added infinite emperium/guardian hp fix, thanks to random
05/16
* Fixed a slightly large inefficiency and bug in clif_foreachclient thanks to Sasuke-! [Kevin]
* Fixed a bug in minimap thanks to Komurka. [Kevin]
* Added mysql_real_escape_string() while creating a new character
- Might fix a few character names if you have no restrictions [Codemaster]
* Fixed 'rudeattacked' skill condition, thanks to Komurka
* Replaced zlib_win32.h and zconf_win32.h with the v1.2.2 files in /zlib [celest]
* Ported zlib.dll loading to eAthena plugin form [celest]
* Fixed some NPC skills acquirable by @allskill [celest]
* Merged sigpipe's handler with sig_proc [celest]
* Optimised timer.c a bit (partially from Shinomori's changes) [celest]
* Fixed up some more null pointers. [Kevin]
* Added Chat-Logging (for Whisper, Party and GuildChat!) [Sirius]
- Sql Log Users please upgrade: sql-files/upgrade_svn1759.sql
05/15
* Minor bug fix by NSSTrunks
* Added Shinomori's MakeWord, MakeDWord and GetWord functions to split a 'long' into
'short' & assemble 'short' into 'long', used for produced items and pet eggs [DracoRPG]
* Fixed famous player's produced items not giving bonuses if the producer had a too long
character ID (exceeding 'short' capacity and then stored both in card2 and 3) [DracoRPG]
* Added gm command symbol checks for atcommand/charcommand.c, thanks to akusarujin
* Added valid session check in clif_additem, thanks to Sasuke
* Fixed a heavy memory leak with the Memory Manager, by Shinomori
* Fixed a memory leak with empty scripts, by Shinomori
* Removed npc unloading via npcname_db finalising -- fixes some wild frees [celest]
* Fixed monsters' attacked_count never cleared if it successfully casts a skill
from 'rudeattacked' condition [celest]
* Fixed some NPC skills can be copied by Plagiarism [celest]
* Changed Enchant D.Poison's poisoning effect to not work on bosses instead of
damage bonus [celest]
* Fixed an item dupe bug, very rare occasions [Kevin]
* Tidied up pc.c [celest]
* Fixed some wild frees from npc unloading at shutdown [celest]
* Changed Make Arrow to not display equipped items as material choices [celest]
* Removed 'make_arrow_flag' -- use 'produce_flag' instead [celest]
* Fixed equip breaking bug in pc.c. [Kevin]
* Fixed alot of null pointers thanks to Sasuke-. [Kevin]
* Set default in battle_athena.conf of player_skillup_limit to yes. [Kevin]
* Extended hide_gm_session to @where [Kevin]
* Fixed a guild exp overflow bug in guild.c & int_guild.c[Kevin]
* new command @iteminfo item_name/id (@ii). It works, but will be improved [Lupus]
* added all known mapflags into @mapinfo command. Rearranged output [Lupus]
05/14
* Simplified @cleanmap [celest]
* Fixed finalizing clean up could miss 1 map [celest]
* Added placeholder code for NPC_EMOTION_ON [celest]
* Fixed damage bonuses (damage_rate) not working for normal attacks [celest]
* Fixed Concentration (again ^^; ), thanks to lordalfa
* Fixed base file name sometimes not retrieved properly in core [celest]
* Removed "memwatch.h" includes for all source files other than malloc.h -- only
1 define is enough [celest]
* Fixed wrong packet for 01-10aSakexe's UseSkillToPos [celest]
* Skip rearranging large memory blocks while cleaning up on memory manager
shutdown [celest]
* Updated the guild aura skills -- gives +1 stat per level, and runs a bit
faster [celest]
* Fixed broken Marionette Control -- changed to clowns/gypsies that are under
marionette will not be able to use the skill [celest]
* Fixed Absorb Spirits working on boss-type monsters [celest]
* Fixed Body Relocation hiding when used by monsters [celest]
* You can only use mute commands when the system is enabled. [Kevin]
* Fixed a guild bug in inif_guild_leave in intif.c, would expel are characters on an account [Kevin]
* Added new mapflags (mainly for fixing jobquests abuse and arenas) by Lorky, fixed added by [Lupus]
- noexp - on killing a monster you don't obtain both Base and Job EXP at all (including MVP EXP bonus)
- nobaseexp - on killing a monster you don't obtain Base EXP at all (including MVP EXP bonus)
- nojobexp - on killing a monster you don't obtain Job EXP at all (including MVP EXP bonus)
nobaseexp+nojobexp=noexp
in other words, 'noexp' set both mapflags 'nobaseexp' and 'nojobexp'
- noloot - on killing ANY monster you get no loot at all
- nomobloot - on killing a common monster you get no loot at all
- nomvploot - on killing a MVP monster you get no MVP loot at all
nomobloot+nomvploot=noloot
in other words, 'noloot' set both mapflags 'nomobloot' and 'nomvploot'
05/12
* Very very very strong weapons (forged with 3 Star Crumbs) now give +40 dmg
instead of +15 dmg [DracoRPG]
* Weapons/potions made by a top-10 famous player now give bonus effects [DracoRPG]
* Updated the battle.c change made to generate compile time
errors if you put the wrong battle_config option with the
wrong type into the wrong place [MouseJstr]
* Added item type 11 into LOGs filter [Lupus]
* Removed mob_skill_use, if you don't want mobskills, set mob_skill_rate to
zero [Skotlex]
* Modified drops_by_luk behaviour. See battle_athena.conf for details [Skotlex]
The new system works a lot like Diablo 2, where having 100% better chance
of finding items means that you basicly get double drop rates than others.
* Implemented pet idle skills restrictions as explained by Komurka [Skotlex]
From what I was told, a mob can only cast a skill while in idle state
once, and it needs to move before it can do another idle-state skill.
* Tested and fixed wedding_ignorepalette, it now works as it should [Skotlex]
* Tested the new item type 11. I forgot to add the code for the sql
version, but that's now fixed and the new system works as it should [Skotlex]
* Put a fix in for the bug mentioned below [MouseJstr]
* Added code to make min_hair_style, max_hair_style, min_hair_color,
max_hair_color, min_cloth_color, max_cloth_color work [Skotlex]
What it does, is cap the values whenever you try to change the
character's dye via an npc/script, it won't touch character's dye colors
upon loading.
* Shrinked @mapinfo output, added 2 missing flags NOWARP / NOWARPTO [Lupus]
* New item type (11) to item_db: delay-consumed usables. [Skotlex]
. All items that have in their script "pet" or "itemskill" must be changed
from type 2 to 11. The new type of item has the property of not being
consumed on double click, but after a target is selected (hence it is
ideal for lures, skill-casting items and the yggdrasil leaf)
The item_db.txt file was updated to reflect these changes. Custom pet
lure owners, update!
SQL users can run upgrade_svn1705.sql which will upgrade both item
databases (including all custom lures)
* Added battle config option 'ignore_items_gender'. [Lupus]
So any player can equip any item regardless of the gender restrictions.
Note: It's ignored by default since gender check isn't implemented at
official servers.
There are 2 exceptions: Wedding Ring M/ Wedding Ring F (their gender check
won't be affected)
05/11
* Added by popular demand battle config options mob_skill_rate &
mob_skill_delay. See battle_athena.conf for further information. [Skotlex]
* Added battle config option wedding_ignorepalette (default no)
When enabled, the wedding dress/tux will always display with the default
dye (not all palette packs bring palettes for the wedding class, nor
they should) (Needs testing)
* Changed most battle_athena options to unsigned short. This means the
maximum valid value is around 60K (65535 on most systems) which
translates to ~60 secs or 600% (600x) for most options. See
conf-tmpl/battle_athena.conf for details on which variables were
excluded (exp/drop rates values are excluded, obviously).
* Removed boss warping code since it is currently supported by the mob skill DB
'rudeattacked' state [celest]
* Fixed plagiarised skills replacing actual learnt skills [celest]
* Fixed 'gmcommand' script command crashing when no players are attached [celest]
... which means the command does not work in script events like OnClock!
05/10
* Added code to prevent pet lures from being wasted until after selecting a
target (only works with official lures). [Skotlex]
* Added MAX_REFINE to status.h [Skotlex]
Enables for custom max refine levels using the success rates in
refine_db.txt, npcs will know they reached the max level when the success
chance returns 0. (npcs still need updating to support this model)
- Note: Whitesmith's refinery skill might need to be tweaked if you want
them to be able to forge above lv10 and up to whatever custom max you
wish.
- Note2: Npc's refine_sucess script command ignores this max.
* Skill updates [celest]
- Fixed Charge Arrow not requiring bows
- Fixed Enchant Deadly Poison working on bosses
- Fixed Concentration (again! xD) def penalty, thanks to UniRing
- Added code for NPC_REVENGE
* Added 'masterattacked' mob skill condition [celest]
* Added battle_config.use_statpoint_table [Skotlex]
When set to no, a new equation is used to calculate stat points after a
reset. I've tested the equation to death, so it should work flawlessly.
Advantages of using the equation: No need for statpoint.txt (it is still
read for the time being), and stat changes through npc buyers/sellers are
preserved after a reset.
* Restructured clif_parse_Wanttoconnection [celest]
* Fixed packet version detecting not working properly if last version's connection
packet is the same as the DB but with different values [celest]
* Added built-in support for 2005-05-09aSakexe and changed 'packet_ver_flag'
default in battle conf to 511 [celest]
* Added load local resnametables.txt into memory instead of opening and reading
it every time we look for a file [celest]
* Fixed crash if resnametables.txt was not found in a grf [celest]
* Removed some unnecessary steps in grf file lists loading [celest]
* Added display_hallucination for clients where the effect lags badly [Skotlex]
* Added the battle_config options for managing the pet-skills system [Skotlex]
* Incorporated the new pet attack/skill system. [Skotlex]
See db/pet_db.txt for explanation, or visit
http://www.eathena.deltaanime.net/board/index.php?showtopic=29918 for
details and support.
* Fixed Marionette skill. Now you can't target other Clowns or Gypsies [Lupus]
* Fixed all Hunters traps to affect Players in PVP/GVG places only. [Lupus]
And Shockwave Trap doesn't work on monsters, because they don't have SP
05/09
~ Added sql_files/upgrade_svn1665.sql to update hair, hair colour and clothes
colours' field format (thanks to Zoc)
* Updated char creation to support 24 hairstyles (from 5/10's patch) [celest]
* Fixed broken stats check during SQL char creation, thanks to Sasuke
* Removed an unnecessary check in plugins loading, thanks to Shinomori
* Changed grfio_read + grfio_size usage to grfio_reads() -- a bit faster [celest]
* Moved the win32 zlib .h files from /lib to /zlib [celest]
* Moved 'afm_dir' setting to map_athena.conf [celest]
* Moved grfio.c from /common to /map [celest]
* Changed grf-files.txt loading: [celest]
~ 'data/sdata/adata' loading will still be supported, but is replaced with
grf: <path to grf or gpf file>
To load extra GRFs (if you have custom ones for your server for example,
or to load weekly kRO gpf's) just add as many 'grf' commands as you want
* Tidied up grfio.c a bit [celest]
* Added FULLY updated mobs skills DB by Komurka (up to Aegis Zone 8.5) [Lupus]
* added a packet to remove maps of other servers [Sirius]
05/08
* documented the packetlentable of chrif [Sirius]
* fixed crash in clif_joinchatok [veider]
* Optimising 2 party queries in SQL char, thanks to Zoc
* Fixed a typo in SQL party saving, sorry ^^; [celest]
* Fixed compile errors in login and char converters [celest]
* Fixed ensemble skills and Benedictio, thanks to shaeh and massdriller
* Fixed typo in Concentration's hit bonus, thanks to UniRing
* Added additional hit bonus for Weapon Research [celest]
* Fixed a missing check in Absorb Spirits [celest]
* Made Meteor Assault cause Bleeding effect too. According the skill desc, it causes all effects
to ANY enemy by chance now. [Lupus]
* Typos and grammatical fixes in various files [DracoRPG]
* Changed Hair style, Hair & Clothes colors fields to unsigned to allow use of 255 palettes [DracoRPG]
* Enhanced @send to allow use of 20 additionnal arguments after the packet identifier [DracoRPG]
* ATK % bonuses provided by Power-Thrust (and similar skills) and attack skills now add instead of multiplicating [DracoRPG]
* Added sd->right_weapon and sd->left_weapon structs to store all weapon-specific values like watk [DracoRPG]
* Added pc_istop10fame function [DracoRPG]
05/07
* Fixed plagiarised skills not updated when hit by different skill level [celest]
* Added server type will be set in the core earlier -- Fixes some plugins cannot
loaded if called before the server finished initialising [celest]
* Added high priority plugins (explicitly set in conf file) will not be unloaded
even if incompatible [celest]
* Added 'DLL_Test' plugin event [celest]
* Ported the upnp feature to eA plugin form [celest]
* massdriller's npc update, fixing SIGPIPE in core and SunOS additions to makefile [Shinomori]
05/06
* Dev's pls take a look to Dev/mmo_change_report.txt [Sirius]
* Fixed build issue under linux machines [MouseJstr]
* Fixed possible stat exploit in char_sql, thanks WoWer [veider]
* Fixed compilation warnings on NetBSD [veider]
* Adding unequip script command, tnx to Spectre [Shinomori]
05/04
* Fixed monsters can't use Heal/Potion Pitcher when hidden, thanks to Komurka
* Documented the sample plugin source a bit [celest]
* Added sample plugin 'sample.dll' [celest]
* Finished plugin events system [celest]
* Finished plugin loading system [celest]
* Added Shinomori's findfile function [celest]
05/02
* Tidied up pc and mob counttargetted code [celest]
* Updated fame lists to display offline characters' names properly, and
* Changed char server to send char id instead of account id in fame lists, thanks
to Sara-chan
* Fixed a mistake in the friends list code [celest]
* Fixed friend's names not sent properly [celest]
* Changed Concentration's hit bonus, thanks to ShAPoNe
05/01
~ Added sql_files/upgrade_svn1623.sql to update item_db2's format, and mob stats
in mob_db to unsigned int (thanks to Zoc, Wallex and akusarujin)
* Added item_db2 and mob_db2 reading for SQL map, thanks to sbilly
* Added new mob skills -- could be inaccurate though ^^; [celest]
* Added proper support for script functions with no parameters, thanks to Wallex
i.e getrefine() instead of getrefine(0)
* Removed 'skill failed' message for Frost Diver [celest]
* Moved Lullaby and Dissonance effect code to skill_onplace_timer [celest]
* Updated some skill id's to fit in a few new mob skills (not coded yet) [celest]
* Increased mob skills using base chance to 1/1000 instead of 1/10000, and monster
delay base rate to 1/100 instead of 1/400, thanks to Komurka
* Fixed players able to request trade with gm's even if gm_can_drop_lv was set,
thanks to Komurka
04/29
* fd checks in send/recv fifo, thanks to Sasuke [Shinomori]
* Restructured malloc.h / malloc.c a bit [celest]
* Fixed a memory leak in console [celest]
* Fixed console to be compatible with the dummy socket [celest]
* Fixed TXT login and map not shutdown cleanly if exitting by console [celest]
* Changed Spiral Pierce's effect to stop movement instead of stun [celest]
* Fixed Chase Walk to properly add a STR bonus [celest]
* Added effect for Tarot Card [celest]
* Cleaned up clif_specialeffect [celest]
* Added hidden gm's will not show warp effect when logging off, and will return
'target character not logged in' when /exall is on, thanks to starlon
* Fixed non-movable monsters moving if they're blind [celest]
* Added boss-type monsters will auto teleport when 'rude-attacked' [celest]
-- note: Just a temporary fix, the mob skill db still needs updating
* Added boss-type monsters cannot be knocked back by skills, thanks to Komurka
04/28
* Fixed a bot trading hack [celest]
* 'isequipped' will now 'tag' items that are used in its set, so a 2nd set will
not be able to use items from the 1st set [celest]
* Changed bAddItemHealRate to be based on total hp healed including vit bonuses
instead of base hp [celest]
* Tweaked skill casting time and delay logic again [celest]
* Fixed another typo in bAutospell, thanks to Komurka [celest]
04/27
* Updated friend list functions, much thanks to Tsusai / Fusion!
* Added packet for a divorce notice ("<your name> has divorced with <your spouse>
name>") [celest]
* Added packet for /pvpinfo (only usable in pvp maps) [celest]
* Added display for /blacksmith and /alchemist [celest]
-- To-do: Offline characters won't have their name displayed properly yet
* Added display when blacksmiths and alchemists gain fame points [celest]
* Fixed talkie box not working when packet DB is enabled [celest]
* Removed redundant monk() and parse_SkillMessage in clif.c [celest]
* Updated @send to check send lengths from packet_db [celest]
* Fixed @mutearea's time always set to 15 minutes [celest]
* Fixed a typo in the bAutospell's, thanks to Komurka
* Reverted a setting in skill casting time calculating [celest]
* Fixed Gravitation not affecting enemies, and ignore element modifiers [celest]
* Added 'bSPLossRate' effect [celest]
04/26
* Added @load/unloadnpc [celest]
usage: @loadnpc <path to script file, i.e npc/other/test.txt>,
@unloadnpc <NPC name>
* Changed @enable/disablenpc to @show/hidenpc [celest]
-- Note: the script commands 'enable/disablenpc' arent affected
* Updated max packet to 0x234 for 205-04-25aSakexe [celest]
* Added cannot use warps when hidden/cloaked [celest]
* Re-fixed an exp overflow bug and raised cap to 2bil [celest]
* Added some more of kRO's 04/26 patch [celest]
* Fixed a crash in stripping skills [celest]
* Tidied up battle.c a bit [celest]
* Added Devotion's effects will be lost if changed map/teleported [celest]
* Added bDoubleRate effects can stack with Double Attack [celest]
* Added support to have up to 20 autocast skills from cards [celest]
* Applied new advanced skills changes from 4/26 patch [DracoRPG]
I could not do everything, things remaining to do :
- Alter Double Casting success rate (did not find the code... is there one ? xD)
- Check that all songs/dances/duets are uncancelable by Dispell
- Make Wand of Hermod affect only party/guild members (and check for a warp portal !)
04/25
* Further improvements on stripping/breaking + added support for targeting mobs with strip skills [DracoRPG]
* Added fd check to clif_additem [celest]
* Optimised weapon stripping/breaking a bit -- skip searching from the item DB
everything we call this [celest]
* Fixed a possible crash when adding timer function strings [celest]
* Tidied up skill casting time calculating a bit + Fixed a possible bad
setting when dex > 'castrate_dex_scale', thanks to phabyo [celest]
* Changed skill unit group checks in status_change_timer a bit [celest]
* Fixed possible sql injection with SQL gm command logging, thanks to starlon [celest]
04/24
* Work on skills [DracoRPG]
- Cleanup in skill.c, added missing guild skills and switched all names to iRO ones in skill names list
- Fixed typo in a guild skill name : GD_KAFRACONTACT -> GD_KAFRACONTRACT
- Entirely rewrote equipment stripping/breaking so that stripping/breaking weapon will affect BOTH weapons of
a dual wielding Assassin, and that stripping/breaking shield won't affect two-handed or left-hand weapons
* Pets can't attack Guardians and Emperium, WoE or not !! [DracoRPG]
* Replaced autospell_type and autospell2_type with a simpler way to save auto-
casting [celest] + Fixed a typo, thanks to Landarma
* Fixed a typo in socket timeout messages [celest]
04/23
* Fixed not working PVPOFF in scripts. [Lupus]
Due to the bug it could work only on maps with NOPVP flag.
* Added item produce pentlty to Baby Class [Lupus]
Comparing with common classes, Baby Alchemist/Blacksmith have 20% less chance of successful item making.
04/22
* Fix main.sql to include the fields that are in the
upgrade files [MouseJstr]
* Added bonus4 support for bAutoSpelll [celest]
* Fixed Cast Cancel [celest]
* Fixed compile error in log.c -- had to remove the 'Log refined items' option
in log config [celest]
* Fixed plagariased skills not cleaned up properly when copying another new skill,
and corrected copying skill level [celest]
* Added Spiral Pierce ignores defense, thanks to Komurka
* Added base code for PK/Karma system (not completed) [celest]
- Added equipment drop based on alignment (not enabled yet)
- Added alignment shift after PK (not enabled yet)
- Added 5 minute silenced status PK penalty
* Added @packetmode (for debug only) [celest]
* Added clif_gm_silence to clif.c and rearranged ReqNoChat abit [celest]
* Added damage reduction in PK mode [celest]
* Added /memo cannot be used when dead [celest]
* Added bonus2 support for bAddMonsterDropItem [celest]
* Added db/item_group_db.txt [celest]
* Added bAddMonsterDropItemGroup [celest]
~ check doc/item_bonus.txt
* Fixed bCriticalAddRace giving too little increments [celest]
* Fixed Ruwach revealing Chasewalking players [DracoRPG]
* Changed equipment breaking to 'on' by default [DracoRPG]
04/21
* Fixed a typo in mobs skills checking [celest]
04/20
* Fixed a few item errors with callfunc("Is_Merc_Class") (not checking if it returned 0)
* Changed a bad mistake in map cache configuration (swap between compressed and uncompressed options) [DracoRPG]
-> Check this !! using '1' you can get a 1MB mapinfo with all 450 maps inside !!
* Added Intravision vars and all the stuff, but not the code (for Maya Purple Card) [DracoRPG]
* Fixed memory leak in @reloadmobdb [celest]
* Fixed logging settings reset to default after reading the conf file [celest]
* Added support for 'masterhpltmaxrate' condition in the mob skill db [celest]
* Fixed Ruwach not dealing damage to revealed players/mobs [DracoRPG]
04/19
* Fixed insert like item as card hack. [Ancyker]
* Fixed adoption script [Codemaster]
* Simplified @day and @night [celest]
* Added script command 'adopt', 'day' and 'night' [celest]
* Refixed the 'gtb_pvp_only' option, thanks to Zoc
* Added Baby Class support to all renters, job quests, etc [Lupus]
* Added UPnP plugin (will only load in Windows XP) [celest]
- if everything loads successfully you should get a "Firewall port xxx
successfully opened" and "Upnp mappings successfull" for each server.
If it doesn't, either your router has it turned off or doesn't support it
- Go here for the debug version and source code:
http://svn2.stormbirds.org:8080/svn/ea/devel/Celest/addons/upnp/
* Added extra info in 'goto' and 'if' script errors [celest]
* Added new mapflag 'gvg_dungeon' -- Same as GvG, but doesn't show simplified
effects for the client [celest]
* Fixed blind mobs can still follow out-of-range attackers [celest]
* Support for /blacksmith and /alchemist commands (doesn't do anything yet)
* Added allow gm levels for the /[str/agi/..]+ commands to be set in atcommand
config -- set to 0 by default [celest]
04/18
* Fixed exp overflow in mob.c and guild.c [celest]
* Allow gm's to drop/trade limited items (i.e wedding rings) [celest]
* Fixed super novices' guardian angel couldn't be summoned because the message
was uncapitalised (yep you need to follow the caps too ^^) [celest]
* Fixed wrong EXP table usage / Max possible Job Level calculation of BABY CLASS [Lupus]
* Some changes to @send and @packet [celest]
* Fixed a crash in @adjcmdlvl [celest]
04/17
* Corrected Strip skills rates [DracoRPG]
* Moved timer and db finalising to core.c [celest]
* Fixed a typo that was causing crashes from blind monsters [celest]
* Added reset all character's status to offline when map disconnects from char
(TXT) [celest]
* Fixed Tarot Card damage not showing, and the Lover Card to warp the caster
instead of target [celest]
* Fixed ground-targetting skills usable with Blade Stop on [celest]
* Started implementing Baby Class compatibility for items / job quests,
some optimizations due to usage of BaseJob [Lupus]
04/16
* Fixed Frost Joke and Scream working on dead characters, and set them to not
affect hidden GM's [celest]
* Added support for 'rudeattacked' condition in the mob skill db [celest]
* Added blind monsters will try and move to its attacker's position [celest]
* Added monsters will try and escape if attacked but cannot retaliate
(a 'rude attack') [celest]
* Added a crash check in mob skill casting [celest]
* Adding support for Fusion AF2 maps (not finished) [celest]
* Added more correct Einbroch/Einbech monster spawn [Lupus]
04/15
* Fixed building under FreeBSD [MouseJstr]
* Shield Chain and Acid Demonstration should now display damage properly [celest]
* Fixed memory leak when an npc with no maps defined is loaded [celest]
* Changed default mem manager log path to "log/[server name].leaks" [celest]
04/14
* The display of account/character IDs is now a setting in battle_athena [Ancyker]
* Allow married couples to exchange normally untradeable rings with each other
* Finished adding saving character online/offline for TXT char and login [celest]
* Added save guild storage as well when auto saving characters to prevent duping
if the server crashes, by End_of_exam / jA 1064
* Moved Meditatio's effect back to status calculation [celest]
* Updated the fame list sending between char and map to separate blacksmiths
and alchemists [celest]
* Added 'setcell' support in scripts. Usage:
[map name]tab[cell type],[x0,y0,x1,y1]
* Added REGEN cell (0x20) [celest]
* Fixed a memory leak in SQL login [celest]
* Made display version on login settable in battle_athena. [Ancyker]
04/13
* Removed Quagmire cancelling Crazy Uproar (Lord Exclamation) [DracoRPG]
* Corrected Song of Lutie (Apple of Idun) healing [DracoRPG]
* Moved server type info to version.h
* Added dumping svn revision or Athena version when saving stacktrace
* Added auto disable built-in stacktrace in Cygwin if 'error_start' is already
set in the environment, thanks to Ser
* Display a more appropriate message if items are not allowed in trading
* Implemented Longing for Freedom (roughly), Wand of Hermod, Gravitation and
Gambatein (14 of 14 skills done! Please post any problems, since they're done
mostly in a rush ^^; ) [celest]
* Added -1 skill id checks [celest]
* Fixed event timers crashing when freeing memory [celest]
* Fixed sage enchanting skills using up gems even if it failed [celest]
04/12
* Fixes and updates [DracoRPG]
- Fixed Cart Boost speed bonus being not removed when the skill ended (missing calc_flag)
- Lv4 weapons don't give fame point anymore when upgraded to +10
- Axes and Maces can't be broken
* Added checks in event timers from crashing when freeing memory [celest]
* Implemented Acid Demonstration, fixed Double Casting [celest]
(10 of 14 skills roughly done)
* Implemented Double Casting, finished Tarot Card effects [celest]
* Overhaul on status changes' numbering -- some statuses will show icons now
* Implemented Mana Regeneration, Shield Chain, Plant Cultivation, Cart
Termination, Max Overthrust and Tarot Card [celest]
~ To get the new skills you need 2005-04-11aSakexe!
* Enable cards to be stolen with level 5, thanks to Ishizu-chan
04/11
~ Please upgrade your SQL char DB with /sql-files/upgrade_svn1499.sql
to accomodate Fame saving!
* Fixed AC_DOUBLE and AC_SHOWER cast delays according to kRO Patch - 6/29/04
they both have 0.1 sec cast delay thanks to Moraddin
* Added SQL DB compatibility testing upon SQL char server startup -- now it
will not run if any important fields are missing [celest]
* Added sending list of characters with highest fame for TXT and SQL [celest]
* Added saving of fame for TXT and SQL [celest]
* Added saving of plagiarised skills for rogues [celest]
* Corrected heal and max hp bonus for Apple of Idun [celest]
* Added /tool/stackdump for Cygwin users to debug .stackdump files.
Usage: ./stackdump [map/char/login] [sql]
* Removed set_termfunc usage in char and login servers [celest]
* Card fix - owl_duke_card should cast Imposito manus on self, not on
enemy, wind_ghost_card should cast jupiter thunder level 10, not
Sight level 10 [veider]
* Finished coding fame point gain [DracoRPG]
* Fixed crash in clif_guild_memberlist not checking sd->fd could be NULL [veider]
* Fixed Punk card giving Sight (10) level 5 instead of Quagmarine (92)
level 5 [veider]
04/10
* Performance improvements (currently protected with -DTURBO) to
common/socket.c for very large servers (500+ users) [MouseJstr]
* Fixed a warning in npc.c, started implementing fame point system [DracoRPG]
* Added fix for "bad setting of guild members", thanks to Alex14
* Fixed a bad typo in 'disp_hpmeter', thanks to starlon again ^^;
* Fixed Bleeding and Poisoned status continueing even after death [celest]
* Updated bleeding effect for Acid Terror, Head Crush and Pressure [celest]
* Fixed 'make converters' not working in clean builds [celest]
* Added capability for Mem manager to clean up ALL unfreed memory on shutdown.
Leaks will still be reported [celest]
* Added enable jA's MALLOC_DBN in db.c by default [celest]
* Fixed compile error caused by strerror_r() [veider]
04/09
* We now can come up and shutdown leak free.. thanks go to celest for
assisting me in this long and painful quest [MouseJstr]
* hitting Control-C three times causes a instant shutdown without any
cleanup [MouseJstr]
* Fixed a NPC memory leak [MouseJstr]
* Added Einbroch to @go [DracoRPG]
* Fixed a NPC memory leak [MouseJstr]
* Added lower level gm's shouldn't be able to see higher level gm's with the
'disp_hpmeter' option -- thanks to starlon
* Added 'make converters' -- compiled converters will go under
/tool [celest]
* Fixed Weapon Refine not checking if the item type is refineable [celest]
* Improved checking if items can be dropped, traded, refined or stored [celest]
* Fixed a bug in SQL char.c, thanks to Alex14
* Fixed some compile errors in the core [celest]
* Fixed compile errors when Mem manager is enabled [celest]
* Added Einbroch monsters spawn, fixed one mapflag for Einnech mines [Lupus]
04/08
* Changed how signals shut the process down so that we were
not doing work in a signal handling thread but instead on
the main thread.. which is important due to the limited
stack size of a signal thread. [MouseJstr]
* Eliminated the use of atexit() so that we could control
the order objects were destroyed in as well as make
high end debuggers happier about what we were doing after
exit. [MouseJstr]
* Fixed a bug in do_final_npc() that was hanging
shutdown [MouseJstr]
* Fixed use of deprecated strerror in common/lock.c [MouseJstr]
* Fixed buffer read-overflow in mail system in char/char.c [MouseJstr]
* Fixed msg_table definition mismatch in map server [MouseJstr]
* Fixed memory leak when doubly allocating the scriptlabel_db [MouseJstr]
* Fixed two uninitialized memory reads in map/skill.c [MouseJstr]
* Fixed memory leak when accessing AFM files in map/map.c [MouseJstr]
* Changed default limit for MaxHP/SP from 32500 to 1M in battle_athena.conf [DracoRPG]
(this is because with Berserk and Tao Gunka Card, players can go up to 100k+ HP)
* Added 'delay_battle_damage' [celest]
* Fixed @kamib not working properly, thanks to maldersoft
* Fixed compile warnings in pc.c [MouseJstr]
* Fixed a crash in clif_send when sending messages to guild
members [MouseJstr]
* Added @shuffle map, @shuffle area, @shuffle world [MouseJstr]
* Added @mutearea [MouseJstr]
* Readded setting of sd->skilllv, sd->skillid to skill_use_id
caused skill failures for BARD/DANCER combo skills [veider]
* Changed how get_svn_revision() is implemented to compile the actual
constant into the executable. [MouseJstr]
* Replaced some printf's in the core with showmsg functions [celest]
* Replaced 'exists' with a built in function for WIN32 builds [celest]
* Added 'clouds' and 'fireworks' mapflag [celest]
* Added a new @fog and @fireworks [celest]
* Changed the old @fog to @clouds [celest]
04/07
* Added @version atcommand [Ancyker]
* Readded @disablenpc (not the same as @hidenpc) [celest]
* Fixed @reloadscript not removing old NPC's and monsters first [celest]
* Some changes in mob and NPC unloading [celest]
* Changed the original @disablenpc to @hidenpc [celest]
* Fixed HP Conversion to properly not reduce HP if SP is full [celest]
* Updated Defender -- should reduce walking speed, and does not reduce attack speed
at level 5 [celest]
04/06
* Fixed a crash in clif_send when checking packet version, thanks to Alex14
* Fixed a crash in Deluge, Volcano and Violent Gale, thanks to Alex14
* Skip partner checking when calculating status with Marionette Control on [celest]
* Fixed plagiarised skills become unuseable after saving character [celest]
* Fixed double skill fail messages for stone curse, thanks to wind
* Added modulus by zero check to rand(), thanks to starlon
* Improved error messages during npc parsing [MouseJstr]
* Fixed a crash in login_sql [MouseJstr]
* Added logs filters in more logs [Lupus]
now you can set individual bit-mask filter for each log file
Example: (drops log)
log_drop: 1 = logs ANY items
log_drop: 332 = logs only Healing items, Cards and those items which price is >= price_items_log
04/05
* Fixed damage reflecting (silly typo xP) [celest]
* Fixed Backstab to not have a push back effect [celest]
* Fixed auto spell to not taking SP, thanks to Hekate
* Fixed Sanctuary to have proper healing count, thanks to Hekate
* Simplified Valaris' online_timer [celest]
* Updated Fogwall, Spiderweb, and HP Conversion, thanks to redcard [celest]
* Adding saving character online/offline for TXT char and login (unfinished)
* Added SERVER_TYPE to core for future plugins support [celest]
* Added support for the UPNP plugin to release port mappings and re-close firewall
ports on shutdown [celest]
04/04
* Some work on re-enabling trade and storage logging [MouseJstr]
* Updated showmsg with Shinomori's improvements [celest]
* Fix showmsg for Visual Studio [MouseJstr]
* Update base code for the UPNP plugin loading [celest]
* Removed anti-freeze system for login and char -- Shinomori's update would
be enough to keep inter connections alive [celest]
04/03
* integrating anti freeze system to status update [Shinomori]
* Fixed impossible drops at 0.01% chance [Lupus]
* Fixed some variable declarations in SQL login.c causing compilation errors [veider]
* Added NetBSD support into Makefile (Still lots of warrnings during compilation [veider]
* Finished Valkyrie. Now it correctly works. Valhallana reborns players to High Novices. [Lupus]
(added missed kRO condition: to reborn, player shouldn't have money nor items(equipment) )
Then Valhallana warps just reborn players to the home city of their main job.
On Job Level 10 of High Novice they can get 1st Advanced Job from correct 1-1 job quests NPC.
They'll get there all learnt skill quests.
On reaching 45 Job Level they may visit Valkyrie and get 2-2-1 / 2-1-1 class (3rd Job)
from a correct NPC.
* Fixed SKILL POINTS exploit in Assassin Job Quest [Lupus]
04/02
* Added bonuses bUnstripable[Weapon|Armor|Helm|Shield]
instead of just bUnstripable that worked only for armor [DracoRPG]
* Updated Tiger Knucke Fist's 'fixed state' effect [celest]
* Allowed people to enable/disable using the online column via
'register_users_online' in the login_athena.conf [Codemaster]
* Added the 3 baby skills WE_BABY, CALLBABY and CALLPARENT [celest]
* Some tidying up in skill.c [celest]
04/01
* Updated ShowMessage functions to use vprintf [celest]
* Fixed a potential crash in pc_walk in Win32 builds [celest]
* Added bAddEffWhenHitShort and changed bAddEffWhenHit back to all physical
damage [celest]
03/31
* Fixed memory corruption during shutdown via the script_buf
[SVN 1370: MouseJstr]
* Added some useful filename info to the script parser so that
it is easier to figure out what is going on [SVN 1370:
MouseJstr]
* updated the visual studio projects a little bit [SVN 1370:
MouseJstr]
* fixed memory corruption in mapif_guild_info:int_guild.c
[SVN 1367: MouseJstr]
* Fixed common/lock.c (problem with unistd.h include) [Codemaster]
* Added father/mother/child fields to mmo_char_tostr() and
mmo_char_fromstr() [veider]
* Added exp sharing between family members for TXT version [veider]
* Added char_married() and char_child() to TXT version [veider]
* Fixed memory corruption associated with afm files [SVN 1363: MouseJstr]
* More pedantic g++ fixes so that it builds without any and
all warnings [SVN 1362: MouseJstr]
* Removed some #include's causing warnings on some platforms
[SVN 1360: MouseJstr]
* Fixed a bug with InitTimer/StopTimer, thanks to ilpalazzo-sama
* Set 'undead_detect_type' to 0 by default, thanks to Dino9021
* Fixed Enchant Poison / Deadly Poison having too high poisoning chance
* Reverted the pc_remove_map() change temporarily
* Added back up old files in 'save' before saving new data -- also fixes
'Access denied' errors when saving in TXT
03/30
* sql native vc7 projects now build/link [1351: MouseJstr]
* Began sql projects for VC7 [1349: MouseJstr]
* text char-server and login-server now build using VC7. You
can use the eAthena.sln solution to build all three. These
are currently just the text versions of the servers. I have
not added projects yet to build the sql versions.
[SVN: 1347 MouseJstr]
* Made the map-server build cleanly using Microsoft Visual
Studio.. entirely native code without any cygwin dependency
[SVN: 1345 MouseJstr]
* Fixed @reloadgmdb in SQL -- after reloading ask the char to forward the new
accounts back to the map [celest]
* Added base code for loading Ser's UPNP plugin [celest]
* Added 'idle_no_share' to battle_athena.conf [celest]
* updated map server to jA1137~1159
- Added @reloadatcommand, @reloadbattleconf, @reloadstatusdb, @reloadpcdb
(Note: You should copy the latest msg_athena.conf from conf-tmpl and replace
your current one EVERYTIME it's updated to prevent it from crashing when it
can't find the newer messages!)
- Updated packet DB to support /item and /monster
- Added pc_remove_map()
- Added 2 new mobs skills: NPC_RUNAWAY and RECALL
- Updated BioCannibalize
- Updated Hammerfall, Meteor Shower and Lord of Vermillion -- when MvP's
cast them they should have much more range
- Some other skill tweaks
- Added item_findingore.txt
* Some tidying up in mob.c and skill.c [celest]
03/29
* Please make sure to use the stable/sql-files/upgrade_svn1315.sql to
upgrade your mysql as a result of the new adoption system. Thank you
-MouseJstr
* More ANSI C++/C conformance fixes [SVN 1341: MouseJstr]
* Fixed SQL char server crashing when loading the item_db, my bad ^^; [celest]
* More ANSI C++/C conformance fixes [SVN 1334: MouseJstr]
* Added auto save guild data (only guardian HP and owner guild ID for now,
both cached) every 5 minutes during WOE [celest]
* Updated damage calculation for Magnum Break [celest]
* Fixed #item not working properly, thanks to TripleOxygen
* Fixed a lot of compile time problems with our mixed C++/C
conformance [1328: MouseJstr]
* Fixed use of storage variable to conform to ANSI C spec
[1327: MouseJstr]
* Added CIA-bot to the #athena channel [MouseJstr]
* Some tidying up in mail.c [celest]
* Added an invalid pointer check in clif_displaymessage [celest]
* Added sql upgrade file in sql-files for svn1315's update [celest]
* Added auto create 'save' folder from 'save-tmpl' when compiling for the
first time, thanks to Jbain
* Fixed 'use_sql_db' not read properly in SQL char server, thanks to Wallex
* Changed db/const.txt to have right baby jobs IDs [veider]
* Added three fields to mmo_charstatus - father/mother/child
needed for adoption system [veider]
* Added adoption support to charserver SQL version [veider]
* Added atcommand_adopt - create a family of three [veider]
* Added to char_commands showexp/showdelay so that
players could remove some messages [veider]
* Added percent to "Experience Gained" message [veider]
* Added adoption system support to party_check_exp_share()
so that parents can share exp with child [veider]
03/28
* Fixed Auto Berserk activating by itself when changing maps [celest]
* Re-fixed the SQL syntax crash in logging [celest]
03/27
* Fixed AutospellWhenHit effect to only work on melee attacks [celest]
* Fixed AddEffWhenHit effect to only work on melee attacks [celest]
* Moved guardian hostility checking and monster_ignore_gm check to battle.c --
processed earlier, and more appropiate [celest]
* Fixed a SQL syntax crash when logging character names with "'" in them
[celest]
* Added use dynamic allocation when loading the msg_table [celest]
* Fixed some memory leaks with the new timer changes [celest]
* Refresh the client when day comes to get rid of the night effect (if
night_darkness_level was used) [celest]
* Changed @refresh to fake map loading, but without teleporting side effect
(skill delays reset, extra load on server etc)[celest]
* Updated SQL file for the item_db, thanks to Zoc
* Fixed the 'show_mob_hp' option not updating when a monster is healed, thanks
to leinsirk10
* Added flexible Filter to the Monster Drops logging [Lupus]
- Now you can choose what types of items either to log or not.
- You can also log expensive items (you can set the min logging price)
* Optimized a bit ATCommands.c functions (inspired by Freya) [Lupus]
* Added missing parenthesis in my Improve Dodge code, not giving +4/lv to proper jobs [DracoRPG]
* Added all released cards into monsters drops and Old Card Album [Lupus]
03/25
* Fixed a typo in my fix for Stalk / Tunnel Drive increasing instead of decreasing speed, sorry [DracoRPG]
* Rewrote a little bit Improve Dodge [DracoRPG]
- The speed bonus does not effect when Cloaked
- Assassins & Rogues get +4 Flee/lv, but all other jobs can get +3/lv
if they have the skill (not only Thiefs & Super Novices)
* Some minor changes to Sacrifice in battle.c [celest]
* Set the Emperium to be immune to Sacrifice [celest]
* Set the Emperium to be have max status effects immunity [celest]
* Fixed indoorsrwstable.txt reading even when 'indoors_override_grffile' is
set to 'no' [celest]
* Fixed @monsterbig/@monstersmall not working [celest]
* Fixed @killmonster2 not working [celest]
03/24
* Updated obj_del to delete all GNUMakeFile and .o files + compiled exes [DracoRPG]
* Fixed a typo in Stalk / Tunnel Drive speed calculation [DracoRPG]
* Added some mapflags for new towns [Lupus]
* Added timer.c optimization / timers sort fix. 'no freezing mobs anymore' Thanx 2 Yor/Freya [Lupus]
* Added 'map_charid2id' [celest]
* Changed monster damage logging to save char ID's for the most time -- also
fixes an exp bug, thanks to Super Novice / Ezhik [celest]
* Implemented 'event_script_type' -- no changes at '0', at '1' script events
will work according to Qamera's original mod
For more info please refer to his thread:
http://www.eathena.deltaanime.net/board/index.php?showtopic=13305&hl=
* Set Emsolute Develop as a learnable skill [celest]
* Updated 'require_glory_guild' [celest]
- the skill is only acquirable if this is set to 'yes', otherwise it will not
appear in the guild skill tree. Default is changed to 'no'.
* Allow monsters to cast skills near themselves even when monster_nofootset
is set to 'yes' -- they're only not allowed to cast near players [celest]
* Print number of online users in online.txt/.html even if there's only 1 user
online [celest]
03/23
* Adjusted my trade fix [1280: MouseJstr]
* Fixed possible memory corruption in storage if number of guilds
in database exceeds the max server can support [1278 : MouseJstr]
* Fixed @mapexit to properly flush the fifo's before shutting
server down to help insure all the char data is properly flushed
[1278: MouseJstr]
* Fixed trade exploit/crash from invalid data being sent
[1278: MouseJstr]
* Possible use of uninitialized data used during mob walk
calculation resulting in radical mob movement or crash
[1278: MouseJstr]
* Fixed some --addrace variables' sizes [celest]
* Added' require_glory_guild' - sets whether changing guild emblems require
the Glory of Guild skill [celest]
* Fixed alot of memory leaks [celest]
* Added stray memory cleaning routine to db.c [celest]
* Fixed some compile errors, sorry xP [celest]
* Corrected potion creation success chances, thanks to Avaj and DracoRPG
* Removed some unused potion creation code, thanks to DracoRPG
* Updated Joint Beat's effect, thanks to DracoRPG
03/22
* Fixed Alchemist's CANNIBALIZE, now it summons correct # of plants. With their real HP [Lupus]
* Updated @reloadmobdb, @reloadskilldb, @reloaditemdb [celest]
* Some tidying up in @reloadscript (more work needed) [celest]
* Moved some gm command messages to msg_athena.conf [celest]
* Removed skill_range_leniency [celest]
* Removed enable_upper_class [celest]
* Removed riding_weight [celest]
* Added signal handler for SIGPIPE [celest]
* Updated Frost Joke to affect everyone else in PvP/GvG, thanks to veider
* Corrected Detect Trap range to be based on level, thanks to veider
* Updated Tunnel Drive's movement speed, thanks to veider
* Removed cdp_rate, suggested by leinsirk10
* Fixed a typo in Acid Terror, thanks to leinsirk10
* Fixed some typos/memory leak in script cleaning up, thanks to leinsirk10
* Added gm_can_drop_lv limitations for trading and opening storage, thanks to
Dino9021
* Changed shop_exp's calculation to use 0.01% increments, suggested by tcdiem
* Refixed "--en/ja--" usage in 'monster' script not working properly, thanks
to sbilly
03/21
* Moved /tool and /webserver to under /src and added 'make tools' and 'make
webserver' [celest]
* Removed ladmin compiling from 'make sql' [celest]
03/20
* Don't register the day/night timers if any one is set to 0 [celest]
* Fixed @storage / @gstorage ATcommands thanks2 Yor/Freya [Lupus]
* Added 4 new card effects from 3/15's patch -- check item_bonus.txt [celest]
* Added 'enable_ip_rules' to packet_athena.conf [celest]
* Updated socket debug messages to be more readable [celest]
* Added a sql upgrader to handle the mob_db changes to assist
in migrating to the newer SVN servers [MouseJstr]
03/19
* Added getrefine() for 3/15's card patch -- returns the refined number
of the current item [celest]
* Fixed day and night settings not ignored even if they are set to 0,
my bad ^^; [celest]
03/18
* Fixed a crash when freeing memory of pets [celest]
* Added Cygwin support to the -DDUMPSTACK option, and changed its format
to "<server type><number>.stackdump", thanks to Ser [celest]
* Removed duplicate fopen in login_log [celest]
* Don't log SQL char actions if log_char is not enabled in char_athena.conf
[celest]
* Updated shop_exp's calculation to give more exp, thanks to tcdiem [celest]
* Fixed the bDamageWhenUnequip effect dealing damage when unequipping unrelated
items [celest]
* Fixed compile errors in SQL char.c [celest]
03/17
* Added ~86 new cards. Fixed new cards bugs, optimized [Lupus] thanks to Indiona,Landarma
* Removed nullpo warning from trade.c (my prev anti-spoof protection) [Lupus]
* Added the new Einbroch/Einbech maps to maps_athena.conf [celest]
* Added display script filename when a script error is found while parsing
[celest]
* Added 2 char-server packets to support Freya's login server [celest]
* Rewrite on Full Strip [celest]
* Fixed heap corrupion in map.c caused while loading maps
[SVN 1241: MouseJstr]
* Re-fixed compile error in map.c -- sorry ^^; [celest]
* trade.c fixed possibility of STORAGE+TRADE spooffing dupe [Lupus]
Now, on accepting trade your active Storage window closes. (Either Common or Guils Storage)
thanx to Sergey for the exploit test and report
03/16
* map.c fixed compilation error [Lupus]
* Updated jA's dummy socket to mod1137 [celest]
* Added jA's ddos protection system -- check packet_athena.conf [celest]
* Moved stall_time's reading from inter_athena.conf to packet_athena.conf
03/15
* Fixed a compile warning in pc.c [celest]
* Updated Soul Breaker's damage display, by DracoRPG [celest]
03/14
* Fixed @marry and @divorce. Also added Wedding music+confetti effect to @marry [Lupus]
- @marry Player1,Player2
(don't miss the COMMA ',' betwin the names)
- @divorce Player
(in @divorce use any name from the couple)
* Added auto convert advanced job and baby class sprite ID's in mob_avail.txt
to correct format [celest]
* Added SC_Speedup cannot be stacked with Increase Agility [celest]
03/13
* Added PvP/GvG check for Tiger Knuckle fist [celest]
* Fixed Pressure reducing the target's SP twice, thanks to deepin [celest]
* Fixed SQL logging not checking if its supposed to use SQL or TXT logs, thanks
to Alex14 [celest]
* Fixed 23 new cards (some effects chances were divided by 100, some cards had no bonuses
due to misplaced arguments, usage BONUS instead of BONUS2, etc) [Lupus]
03/12
* Fixed Status Recovery dealing too short blind time on undead [celest]
* Fixed mobs not affected by Blind status [celest]
* Added an invalid id check check in map_id2sd [celest]
* Added sd check in clif_send [celest]
* Fixed usage of mvp_hp_rate and monster_hp_rate. MVP rate was used for common monsters [Lupus]
* Added additional random respawn delay for instant respawning monsters (0..5 seconds) [Lupus]
- Should be made as an option of battle_athena.conf
03/11
* Speedup player autosaving -- don't save guild castle data at the same time,
thanks to Alex14 [celest]
* Optimised guild castle saving when autosaving player data, thanks to Yor /
Freya (UPDATE: view above)
* Added sd check in mob_damage, thanks to sbilly [celest]
* Added Sage enchanting skills can only be cast on party members [celest]
* Fixed Magic Power not working for ground-targeted skills [celest]
* Fixed Frost Diver having double freezing chances [celest]
* Added Breaker's magic damage to be blockable by Pneuma, thanks to DracoRPG
[celest]
* Corrected 1206Sakexe's packet detection, thanks to Yor / Freya [celest]
* When casting cloaking stop displaying the skill title after its finished,
thanks to Battitude [celest]
03/09
* Some changes in sig_dump to allow Cygwin produce stackdumps upon crash again,
thanks to Ser [celest]
* Changed the default stackdump creation folder from /save to /log [celest]
* Fixed a typo in TXT login server logging, thanks to Skyer / eAthenaC [celest]
* Added HP and SP rate underflow checking [celest]
* Added stop auto attacking if no arrows were equipped [celest]
* Added new script command: 'cardscnt'. It returns N of inserted cards in the same weapon. [Lupus]
Now I can start fixing CARDS COMBO exploits. And it's possible to fix old cards power abuse, too.
e.g. Assassins can equip 2 4-slot weapons and have HUGE card bonuses.
It's said that you can have only ONE bonus per hand...
* Fixed and tested script command 'isequippedcnt'. It didn't return real value [Lupus]
Here's an easy way to test all items:
4149,Gargoyle_Card,Gargoyle Card,6,20,0,10,,,,,,,2,,,,{},{ dispbottom "Gagoyle OK:"; dispbottom isequipped(4149); dispbottom isequippedcnt(4149); dispbottom cardscnt(4149); }
* Fixed "nice char save by the fountain of Prontera"; People (Helpers, GMs) did abuse their power and [Lupus]
used to @jail friend / @unjail friend. To make his save point in the middle of the Prontera.
So I made @unjail save coords to 0,0 (on unjail it makes player's save point to appear always in a random place of Prontera)
You can use this query to "Clear nice save point of all jail/unjail abusers friends"
SQL QUERY: update ragnarok.char set save_x = 0, save_y = 0 where (save_map = 'prontera.gat' and save_y = 191)
03/08
* Added chance for Enchant Poison to poison enemy, and reduced Deadly Poison
chance [celest]
* Compacted some code for Deadly Poison [celest]
* Added DracoRPG's code for Soul Breaker - the magic attack part should work
as it should now, thanks! ^^ [celest]
* Reverted the reverted jA event change but this time without bugs (hopefully) [Shinomori]
* corrected status_change_timer as far as I understand the functionality
(better have a look at it, Celest), added a some security to prevent pending timers
* moved two variable declarations to scope start (mob.c and skill.c)
* Fixes Icewall can be directly cast on players and monsters -- also removes
the 'unsupported layout' message [celest]
* Added the new turbo_room and alde_tt to the maps config [celest]
* Speedup SQL inventory and storage saving, thanks to Ilpalazzo-sama [celest]
* Reverted a jA change in event loading [celest]
03/07
* Added uptime logging support whenever the server closes, to enable change
the 0 to 1 in core.c [celest]
#define LOG_UPTIME 0
To-do: Add this as an option to log config
* Fixed 'make clean' not removing the .o files in /common [celest]
* Removed some unused code for Breaker and temporarily set Emperium to be
immune to Breaker [celest]
* Updated core and map-server to jA 1115~1137 [celest]
- Added monster_delay_damage to battle conf
- Increased some default settings in script conf
- Updated Brandish Spear, Soul Change, Soul Burn
- Updated Body Relocation (shorter distance)
- Added monster skill NPC_EXPLOSIONSPIRITS
- Corrected Mindbreaker level to 5
- Updated Meteor Assault to instant-cast
- Added command @users - shows the percentage of users in all maps
- Don't save status if the player is set for disconnection
- Added free block lock-checking system
- Added saving the processes' ID into [xx-server.pid]
- Fixed a memory leak with duplicate script labels
+ For more detailed logs check 'Readme-jap'
* Fixed a typo in Volcano, thanks to Ilpalazzo-sama [celest]
* Fixed Apple of Idun reading the wrong skill level and giving too much HP
[celest]
03/06
* Added new anti-hacker trade protection from Freya. [Lupus]
It also auto-ban hackers and broadcasts messages to all GMs. Good work, Yor!
* Misc fixes. [Lupus]
2Shino: BTW Some players can't re-connect to the server. Due to the updated session checks in chrif.c
actually impossible, because the checks handle the connection with the char server, not with users
anyway, I checked again and rearranged code but functionality is still the same and valid [Shinomori]
03/05
* Reversed drop_rate0item option, corrected MVP Drop rate (thanks to Freya) [Lupus]
03/04
* Fixed SQL Guild Castle Saving (now fully working, tested on 100 players during WOE) [Lupus]
03/02
* Fixed SQL Guild Castle Saving (partial, yet it doesn't clear GuildID when you abandon a castle) [Lupus]
+ added 2 fixes by POW (Mac Guild Position fix, Max Guild Members fix)
* Fixed Emotion Flood (by Yor) [Lupus]
* SQL: Fixed temporary ban. Now banned players can enter the server when the ban time is over. [Lupus]
It wasn't working because STATE hasn't been cleared properly.
Also fixed wrong client messages (ban reasons: Banned by GM / Temp ban till DATE).
03/01
* Effects from dancer/bard skills will stay for 20 seconds after leaving the
skill area [celest]
* Fixed /resetstate /resetskill being unuseable at all [celest]
* Fixed /mm /mapmove being useable by all players [celest]
* Fixed some compile errors in mob_once_spawn [celest]
* Corrected a typo in Chemical Protection skills, thanks to holyfork [celest]
02/28
* Fixed SQL Castle saving bugs [Lupus]
* Corrected Tiger Fist, Chain Crush, and Palm Push Strike damage, thanks to
Eskadron [celest]
* Updated Endure to be usable in GvG, but only gives the mdef bonus [celest]
* Some rewrites on the passive guild skills effects [celest]
02/27
* Fixed some bugs in Monk Job Quest. Now it's fully passable. [Lupus]
02/26
* Added jA's dummy socket to prevent fd crashes [celest]
* Added some jA script commands: [Lupus] (first steps to add ELSE, FOR, WHILE, etc)
- getusersname (works like @WHO ATCommand, outputs by 10 names in the Pop-up window)
- dispbottom (print message in the common chat window)
- recovery (restore MaxHP/SP and revives all players on the server)
- getpetinfo (returns pet's name, type, class, hunger, intimacy)
- globalmes (works like Announce, but outputs in the common chat window)
- jump_zero (reserved - for future compatibility)
- select (reserved - for future compatibility)
- getmapmobs (# mobs on a named map, use "this" for current map)
check script.c for their paremeters (in English)
02/25
* Fixed npc_dequeue, testing on remove of RoVeRT's npc timer system [Shinomori]
02/24
* Re-added missing cart dupe-proof code. From Freya [Lupus]
* Some rewrites on Basilica [celest]
* Fixed another bad typo in skill list_num reading, thanks to orn [celest]
* Fixed Steal Item Rate. It has been multiplied twice on common_item_drop value for any kinds of items. [Lupus]
e.g. If you set droprate of comman items to 500%, then even rare items could be stolen more easily. Thanks to Freya
* Items Droprate fix. Now it adjusts correctly, w/o overflows. Thanks to Freya [Lupus]
* mob DBbs EXP reading fix. w/o overflows. Thanks to Freya [Lupus]
02/23
* Added bAddItemHealRate [celest]
* Fixed a crash if adding an offline player to a party, thanks to Alex14
[celest]
* Fixed a crash with Warp [celest]
* New Cards: Some fixes, revisions, additions [Lupus]
* Fixed char server crash when sending wisp with a "'" in the names [celest]
* Fixed Backstab not checking for and consuming arrows [celest]
* Fixed another bad typo causing @allskill to not add points into advanced job
skills [celest]
* Fixed a bad typo in status.c's StatusChangeTable [celest]
* Corrected Spiral Pierce's hits in the skill_db [celest]
* Moved /common/*.o into a obj folder when compiling [celest]
* Updated core and map server to jA 1094~1115 [celest]
- Added End_of_exam's Memory Manager for detecting memory problems.
To enable remove the // in malloc.c line 11
// #define USE_MEMMGR
- Added @npctalk and @pettalk
- Added support for jA's local zlib
- Fixed a bug with path search long
- Updated malloc.c to support Memwatch
- Added DB data loss detection
- Added db/skill_unit_db.txt
- Updated skill unit system
- Changed Waterball to the new timerskill system
~ For more detailed logs check 'Readme-jap' (knowledge in japanese required,
obviously ^^;)
Please test if there's any skills that might have suddenly stopped working,
thanks ^^;
02/22
* Revised New Cards, added missing effects, fixed bugs [Lupus]
~20 cards to check left 8) But on 22 Feb some new cards have been announced T__T'
* Cleaned up some compiler warnings [SVN 1158: MouseJstr]
* Added perl regular expression support.. look at src/map/npc_chat.c
for all the dirt on the new features. To build it, you have
to enable the PCRE_SUPPORT #define and you also have to
build/install the pcre library. [SVN 1157: MouseJstr]
02/21
* Added actual item_db.sql into sql-files. [Lupus]
* Added actual mob_db.sql into sql-files. If you use SQL Mob DB then update it [Lupus]
* Updated Bleeding effect [celest]
* Removed some unused code for Graffiti [celest]
02/20
* Char SQL: Rewrote/Fixed the castle save function, now the sql version saves castles! [Sirius]
* Fixed the /mm /mapmove command access bug [Sirius]
* Added skill requirements for the new guild skills [celest]
* Allow Emergency Recall to be cast in guild castles even if nowarp and
nowarpto mapflags are enabled [celest]
* Add 'minimum job level required' for skill_tree reading [celest]
- Berserk now requires job level 50
* Added Spring Trap to be able to trigger ankle snare traps that aren't
activated yet [celest]
* Added a fix in guild.c by Mellowz [celest]
* Some rewrites on the pet skill bonuses system -- also fixes pet bonuses
not effecting stats as they should [celest]
* Check whether a monster is still alive before starting a status change
-- also fixes the status_change_timer nullpo errors with grimtooth [celest]
02/19
* Added bSubSize, bHPGainValue, and bDamageWhenUnequip [celest]
* Updated bSPDrainValue/Rate to accept a 'type' [celest]
* Set baby class players' size to 0(small) [celest]
* Fixed item_db2.txt reading printing wrong number of entries read [celest]
* Fixed @allskill not giving the newer stalker, whitesmith and creator skills
[celest]
02/18
* Fixed a bug with statpoint.txt reading and giving too much stat points,
thanks to Benz / eAthenaC [celest]
* Fixed client errors when pecopeco Lord Knights/Paladins log in with a weapon
equipped [celest]
* Added bAddRace2 -- check item_bonus.txt [celest]
* Added mob_race2_db.txt -- contains 'main races' of certain monsters [celest]
* Updated description for backup_txt in char_athena.conf a bit [celest]
* Set read_map_from_cache to 2 (enable compression), and map_cache_file back to
saving in /db instead of /save, as suggested by Poki#3 [celest]
* Updated description for auto_counter_type, and set plaer_auto_counter_type
to 0 by default, as suggested by Poki#3 [celest]
* Use the event names from script_athena.conf to check whenever a player event
trigger is being read/set [celest]
* Removed an unused save/bank.txt [celest]
* Added some new cards effects. (check DB\changelog.txt) [Lupus]
02/17
* Now all mobs have 10 drops slots. the last one is used for Cards Drops [Lupus]
Don't forget to update your SQL files (Drop Log: logs.sql and db_tables.sql
if u were using SQL Mobs DB. Update it from TXT! )
* Fixed Branch Log TXT filename [Lupus]
* Made all logs work with compiled TXT Server, too (removed old #ifndef) [Lupus]
* Added 4 columns into mob_db.txt (check DB\changelog.txt) [Lupus]
* Fixed some mobs drops (Whisper, etc) and some MVP mobs (bonuses were shifted...) [Lupus]
* Readded Chemical Protection -- i forgot to check for it when changing some
jA stuff earlier, sorry ^^; [celest]
* Removed some old eA code that was causing Frost Nova to do an extra hit
[celest]
* Corrected Vulcan Arrow's hits in skill_db -- the bug appeared when the
correct numbers hardcoded were removed [celest]
* Readded zlib and zconf .h files to under /lib for compiling in Windows,
thanks to Ser [celest]
* Fixed some compile errors in Windows, thanks to Ser [celest]
* Changed remove_control_characters back to supporting korean chars [celest]
* Moved some other code around [celest]
* Added Shinomori's changes to Dissonance -- don't increment the timer again
if the target has died [celest]
* Changed some nullpo checks back to normal null checks -- in some situations
it would be normal to get a NULL [celest]
* Changed some nullpo checks to print some debug information [celest]
* Added some sd checks before calling pc_blockskill [celest]
* Added Dino9021's fix for SQL char's friend list updating [celest]
* Fixed a crash if the player invited to join a guild is not online, thanks to
Alex14 [celest]
* Find the guild invitation sender first before clearing its ID [celest]
* Added 2 new script commands to support 2/15's cards patch... most of the
effects in kRO should be available now ^^ [celest]
- isequipped(...): Accepts a list of item ID's and checks whether all of
the items/cards have been equipped.
- isequippedcnt(...): Same as above, except it returns how many of the items
are being equipped
Example: if(isequipped(4002,4004,4006)) bonus bStr,1;
02/16
* Char SQL: Fixed the Whisper chat on splittet mapservers (i think now all features work!) [Sirius]
* Added 3 more of the new card effects -- check item_bonus.txt [celest]
* Added 'bonus4' to support the new card effects that might need up to 4
parameters [celest]
* Set 'killerrid' and do PCKillEvent before calling PCDieEvent, thanks to
mrmagoo for pointing it out [celest]
* Added some new script event related options to script config [celest]
- [die/kill/login/logout]_event_name: Name of script to activate when an
event has occured
- event_requires_trigger: whether or not a 'set [EventName],1;' has to be
defined first for the event to be activated
* Added 8 of the new card effects on the 2/15's patch (still untested and
not yet added to the item_db)
- Refer to doc/item_bonus.txt for description
* Minor rewrites on self and enemy weapon/armor breaking during battle [celest]
* Added missing code for 'bBreakWeaponRate' and 'bBreakArmorRate' effects
[celest]
* Added missing code for 'bAddStealRate' effect [celest]
* Removed redundant 'infinite_autospell' in map_session_data [celest]
* Fixed Treasure Box spawn bug in all castles. [Lupus]
* Fixed wrong PresentLOG (it wasn't showing PRESENT BOX type ID) [Lupus]
* Expanded Monsters Drops Slots from 8 to 10. Everywhere in the sources. [Lupus]
But in TXT / SQL monsters DB reading functions, I added a temp plug
to make eA work fine with existing DBs. It reads only 8 drops and fills
9th and 10th drops with Zero.
On expanding MOB_DB.TXT we'll remove that plug.
We are adding new cards and some monsters
have no free slots for them. Current state is tested and works fine.
02/15
* Allow Potion Pitcher to be able to cast on yourself -- i've almost forgot
about this, thanks to Filougarou and Poki#3 for the fix ^^; [celest]
* Added Wallex's changes for weapon skills to read list_num from the skill_db
when calculating damage [celest]
* Login / Login SQL: Fixed the EXE-Version check (now it works finally :) [Sirius]
* Char SQL: Fixed the '0x2b05' reply to the mapserver (now multi - mapservers works again!)
* Rewrote skill blocking system that was allowing people to bypass blocking
time simply by casting a different skill [celest]
* Edited out some inconsistencies with skillnotok [celest]
* Corrected Investigate's damage calculation, thanks to matthias [celest]
* Generate the remaining entries of the stat point DB if the number of
entries in db/statuspoints.txt is less than MAX_LEVEL, or statuspoints.txt
was not found [celest]
* Try to spawn the player at a default map ("prontera.gat") when logging in if
the save point map was not found [celest]
02/13
* added an @autoloot switch that Upa-kun has forgotten [Shinomori]
* changed pet_skillattack_timer and corrected the poison spore attack
* tighter check's on "unknown skill" error; but added prints to trace it
* Added Wallex's changes to only evoke script_rid2sd if agitcheck(1) is used
[celest]
* Merged jA's equipment breaking system into the current one, and corrected
items with unbreakable effects in the item_db [celest]
- "bonus bUnbreakable,[chance];" changed to
"bonus bUnbreakable[Weapon/Armor/Helm/Shield],0;"
02/12
* Merged Dexity's pc_statpointdb into pc_readdb, changed statp's string
array to short (less memory), and fixed the db not giving status points if
character level is above 255 [celest]
* fixing and optimizing sharp shooting
have implemented two different versions, just have a look and
decide which to use, description is in the code [Shinomori]
* Changed default map cache path from db/map.info to save/mapinfo.txt [celest]
* Removed old code for Sharp Shooting (still a little buggy) [celest]
* Merged Shinomori's code into map_foreachinpath [celest]
02/11
* mob.c fixed doubling entries in DROPS LOG, optimized [Lupus]
* item_noequip.txt now you can disable named consumable items
during GvG / PvP, too by Maya, optimized and checked [Lupus]
NOTE: Get rid of old cards on your server!!! IDs: 4149-4332
before using of this item_db.txt (some cards have changed their IDs)
and it could cause ALIEN cards in your players equipment 8))
i.g. a weapon compounding CARDS inserted in armor, etc...
* item_db.txt Massive update: [Lupus]
- Added all new missing items (up to st.Valentine's Day Event)
- Added new cards 4149-4332, sorted them and set their sripts.
- Fixed some names, typos, weigths and prices
* Commented out old custom cards from Old_Card_Album.txt till we brush them up [Lupus]
* Removed old custom cards from MOBs drops [Lupus]
thanks to Landarma(new items templates) Poki#3(removing cards from drops)
* Tidied up battle_check_target abit [celest]
* Updated traps to affect allies as well in GvG [celest]
* Check if login server is online before setting character to online (in SQL),
thanks to Alex14 [celest]
* Synchronise storage as well when saving character to cut down on item
rollbacks or duping, by Yor / Frea [celest]
* Added fix for super novices' Guardian Angel system crashing when base_exp = 0
thanks to Alex14 [celest]
* not realy fixing the "unknown skill" error
but returning skill_castend_damage_id when called with skillid < 0
still need to search a reason why it is called with -1 [Shinomori]
* EXPERIMENTAL: Reduced memory used for the skill_tree DB by 30+mb [celest]
* Added script commands isday and isnight - checks whether its night or
daytime. Example: if(isnight()) ... [celest]
* Skill Updates [celest]
- Sharp Shooting: Dropped jA's and kA's code and wrote a new
map_foreachinpath function in map.c -- about 14 times faster, but still
uncomplete
- Ankle Snare: Added matthias' suggestion to let agility reduce more trap
time, but no less than 3 seconds.
- Magnum Break: simplified code a bit, and changed to non-targetting /
automatically damages an area around the caster
- Tiger Fist: enable it to be used by its own besides as a part of
the combo skills
- Devotion: Fixed maximum level difference not reading its setting from
battle_athena.conf, thanks to leinsirk
- Soul Burn: Added some safety checks
02/10
* Login/Login SQL: fixed the client version check function [Sirius]
02/09
* Added conf-tmpl/readme.txt, explaining the import folder [1066: Ajarn]
* SQL Char: Rewrote the char_create function (now it's faster/optimized) [Sirius]
* SQL Char: Fixed the reply if a charname is invalid on create (now it replys denied..) [Sirius]
* SQL Char: Added a Character limit per Account (can be set in the config) [Sirius]
* SQL Char: Optimized some SQL-Querys [Sirius]
02/06
* NULL entries for guild data fixed [Credit to Sirius] [1060: Ajarn]
* Login server uses login_db_userid and login_db_user_pass for
queries now [Credit to Sirius] [1059: Ajarn]
* Login server can now check clientversion in clientinfo
[Credit to Sirius] [1059: Ajarn]
* Fixed txt build compile problems[1057: MouseJstr]
* Corrected end-of-line issues in source code [1056: MouseJstr]
* Coded new command: @MOBINFO <monster name|monster N> [Lupus]
the command has also 2 aliases: @monsterinfo, @mi
It shows all Monster stats, Element, Race and stuff
It shows all items with their drop chance
It also shows MVP bonuses (MVP EXP, MVP Drops)
02/05
* increased the max_files allowed in a grf [1054: MouseJstr]
* Changed the way char deletion works for SQL [1051: Ajarn]
- If the email the client fails check then check if the
email is blank and the DB email is a@a.com (default)
If so, assume it was created with _M/_F, and delete it
* SQL Login accepts _M/_F now [Credit to Sirius] [1049: Ajarn]
* Map server now actually reads bind_ip [1048: Ajarn]
Side note: login reads bind_ip, but doesn't use login_ip now.
* Made eA compile under AMD64 64-bit native [1047: MouseJstr]
* Changed interface binding to use a bind_ip instead of using
the login_ip, char_ip, or map_ip. This lets you still be
able to set your WAN IP seperate from what interface you
wish to bind to. Also, the default is back to binding to
all interfaces on the machine. [1045: MouseJstr]
* optimizing OnTouch event name generation [Shinomori]
* fixing Celests Sharp Shooting [Shinomori]
* Updated Sharp Shooting AoE code, thanks to Neodis / k-Athena [celest]
- Update: Adapt jA's path_search algorithm and removed the need of struct
'dev' in map_session_data
- Update: Increase range to 14
* Tidied up explicit typecasts in status_get_max_hp, thanks to Ilpalazzo-sama
[celest]
* Non-MVP / miniboss summoned monsters should give exp, my mistake ^^; [celest]
Note:- minibosses are considered a 'Boss' as well, not just MVP's
* Fixed a typo that was preventing packet version 5 clients (628sak) from
logging in (it was supposed to only block those with 4 or below) [celest]
02/04
* Fixed more compile signed/unsigned errors [SVN 1040: MouseJstr]
* TXT convertors now read the import command in inter_athena.conf
[SVN 1038: Ajarn]
* Fixed some compile errors [SVN 1037: MouseJstr]
* Added common/buffer.(c/h) [SVN 1033: Ajarn]
* Login server can now set it's ip address in the config [SVN 1033: Ajarn]
* Servers now bind to a single ip address, thus allowing multiple servers to
a single port [SVN 1033: Ajarn]
* Added experimental code to generate a stack dump when it segfaults, thanks
to Ser [celest]
- does not work with Cygwin, as it does not have glibc
- to enable, edit the Makefile and remove the # on the line:
# OPT += -DDUMPSTACK -rdynamic
- What it does: everytime eA crashes it'll generate a file "stackdump_
<number>.txt" in your save folder with a backtrace, which you can
examine and send to a dev to be fixed.
* Some more tidying up in status_get_ functions [celest]
02/03
* When loading shop scripts automatically check if the prices can be exploited
with OC/DC [celest]
* If the buying price provided in item_db.txt is above 2x higher than selling
price for an item no need to reset and redetermine the buying price [celest]
* Fixed a mistake that was causing Ruwach to only work in PvP and PvM [celest]
* Added DracoRPG's code for Joint Beat effects, thanks! [celest]
02/02
* Added checks to prevent some crashes in skill.c
[Full credit to shinomori] [SVN 1022: Ajarn]
* Removed nullpo check in skillnotok() -- otherwise it will display fail
messages for monster skills [celest]
* Added crash check for Ice Wall [celest]
* Added some optimisations by Ilpalazzo-sama [celest]
- reduce mob_data->size variable to 1 bytes
- change from if-else to switch statements in buildin_strmobinfo
01/31
* Fixed a typo in Pressure causing it to deduct sp from the caster, and remove
its sp_rate requirement [celest]
* Updated skill_range_leniency code when casting a ground targetting spell
( as in Revision 968) [celest]
* Added Karma and Manner to const.txt
-- To change a player's alignment to more Good/Evil in scripting for example,
use:
set Karma, Karma + <number here>;
In older exe's (11-08 or older) you can actually check your karma in the
character alignment screen (alt-A)
The rest is up to your scripting creativity ^^
* Delete players' ID from id_db when kicking everyone from the map-server due
to char disconnection -- Fixes an odd crash with lazy mob AI [celest]
* Added at(@) command @autoloot, which turns autoloot on or off for the
player who uses it [Upa-Kun]
01/29
* Fixed Storage Bug with Named Stackable items. Thanks to Nimion [Lupus]
e.g. Arrows, Iron, Elemental stones, etc...
* Added a crash check to Safety Wall, thanks to LebrEf[TaVu] / Freya for
pointing it out [celest]
* Added some optimisations in clif_parse_MapMove, by Ilpalazzo-sama [celest]
01/28
* Fixed a typo that was causing /in to always report failure even when the
name was removed from the ignore list [celest]
* Link "wisexin", "wisexlist" and "wisall" to the PM ignore functions, and
"friendslistadd" and "friendslistremove" to the friends list functions
when parsing the packet DB [celest]
* added clif_parse_PMIgnoreList (packet 0xd3) from jA [celest]
* Added DUMP_ALL_PACKETS and moved dump packets code in clif_parse a bit to
support it [celest]
* Added base code for Party Item Sharing -- still needs some work in client-
server support [celest]
* new GC link http://amber.stormbirds.org/~joshs/gc6.4.tar.gz
This fixes some issues... works better
* Added macros skill_chk and skill_get to check for out of bounds errors when
retrieving info from the skill_db [celest]
01/27
* Added memory leak fixes with temporary script variables and pets-related
actions, by End_of_exam / jA 1109 [celest]
* Kick all characters when the char server disconnects from the map
server [celest]
* Added @changelook command for spriters to test view ID's [celest]
* Added a check to Pneuma to prevent crashing, thanks to LebrEf[TaVu]/Freya for
pointing it out [celest] [celest]
* Tweaked garbage collection code after feedback from users
[SVN 1002: MouseJstr]
* Fixed TRADE exploits (it cures proxy hack / vending+trade hack) thanks to Freya [Lupus]
01/26
* Added bug fix for a memory leak caused when a character logs out,
by End_of_exam / jA 1108 [celest]
* Fixed a bug in gettick cache when compiling in Windows, thanks to Shinomori
(jA 1094) [celest]
* Added updates from jA 1092 [celest]
- Changed "read_map_from_bitmap" to "read_map_from_cache",
"map_bitmap_path" to "map_cache_file" in map_athena
- Fixed item effects not showing when only one was used
- Fixed a bug in Safety Wall
- Allow only either Storm Gust or Lord of Vermillion to cause damage if
stacked together
- Added path_search_long, map_find_skill_unit_oncell
* Added status_get_sc_def for calculating resistance against status
abnormalities [celest]
* Added status.c and status.h of jA 1091 update and moved some functions into
the new source files:
-- skill_status_change_ -> status_change_
-- battle_get_ -> status_get_
-- pc_calc_ -> status_calc_
-- pc_getrefinebonus and pc_percentrefinery -> status_getrefinebonus and
status_percentrefinery
* Updated auto_counter_type's description in battle_athena, thanks to
akusarujin for pointing it out [celest]
* Removed some unnecessary skill level checks in battle.c [celest]
* Removed my changes to /stable/Makefile which has libGC enabled by default
that i've accidentally commited, sorry ^^; [celest]
* Removed an unnecessary "cloneskill_lv" from map_session_data [celest]
* Removed WATER.TXT (this file wasn't used at all. There's no such mapflag as WATER even). [Lupus]
* Added Water Height of New Yuno Fileds 9 and 11.
Now Water Ball works there as should. Wizards could levelup on sleepers, too. [Lupus]
* libGC isn't ready to be the default quite yet... [MouseJstr]
Enough people have asked so... Once you grab a copy of the
libGC library from (http://amber.stormbirds.org/~joshs/gc6.3.tar),
you start up a bash shell from inside cygwin and untar
the gc6.3.tar. This will produce a gc6.3 directory. Then
cd into that directory and type ./configure. Once that is
done you type "make" and then "make install". This will
spray the various includes and libraries all over your
cygwin install (most in /usr/local).
Now, edit Makefile and change the CC line to use the
CC = gcc -pipe -DGCOLLECT
entry. Also change the GCLIB to
GCLIB = -L/usr/local/lib -lgc
Remember to comment out the ones no longer used. Do a clean
build and good luck. Obviously, this has not been tested
by that many people so you really are on the cutting edge
but if you have good results, send me a note
(joshs@stormbirds.org) so that we can see if it really is
ready for prime time.
What should you see? Well, the map-server should not
grow/consume extra memory anymore. More so, it should use
dramatically less memory then it did before using the
garbage collector.
The downside is that it will consume a little more CPU...
The question is, how much? how laggy? what effect on lots
of players? I've heard stories saying it makes the server
unplayable and others told me that they saw no
player-visible effects at all.
01/25
* Fixed TXT compile problems with libGC [celest]
* Added "Clients older than 2004-09-06aSakray" option to packet_ver_flag in
battle_athena, just in case server owners still prefer the older clients.
With so many changes to Sakray over the past months its much better upgrading
to the newer clients (November or higher recommended) available ;P [celest]
* Merged Full Strip into jA's tidier stripping skills code -- also fixes
a typo that was causing Full Strip to do the reverse effect instead,
and the skill not updating the target's status after successfully unequipping
items [celest]
* Tidy up the 4 chemical protection skills into one code block [celest]
* Corrected Slim Pitcher's code -- sorry, i missed a few things ^^; [celest]
01/24
* Fixed a typo in Provoke that was causing crashes [celest]
* Fixed another compile warning in src/char/char.c
[SVN 985] [MouseJstr]
* Fixed a account wipe bug in login/login.c (Thanks Wallex)
[SVN 984] [MouseJstr]
* Fixed a crash in char_sql/char.c where people were selecting
chars before requesting connections [SVN 983] [MouseJstr]
* some G++ compile tweaks and got through several files in the
map server - [SVN 976] [MouseJstr]
Why are we doing a C++ conversion? We have a lot of duplicate
code and would like to make the "classes" in the server share
code.. For example, a pet should be able to share code from
the player or from a mob. Similerly, introducing a new type
of entity in the game should be as simple as creating a
sub-class instead of having to crawl through the entire source
tree searching for every class check and introducing handler
code in for your new type.
Finally, while a garbage collector is "cool", it would still
be nice to have enough object knowledge on how to clean up
data that it is not absolutely required. It is faster for
us to clean up our own messes then introduce a whole system
for cleaning up after ourselves.
Is there a C++ performance penalty? Not if the code is
written correctly. For example
1) No templates - code bloat and destroys cpu cache
coheriancy
2) No C++ exceptions - slows down entering and
exiting functions
3) No operator overloading - makes it hard to
understand what is going on.
4) No C++ STL libraries - Templates, huge, bloated,
unportable
5) No method inlining - code bloat and reduces cache
coheriancy. Let the optimizer do it...
01/23
* char-server (SQL & TXT), login-server (SQL & TXT), and txt-coonvertors
(char and login) all compile on g++ now [svn 975] [Ajarn]
* Fixed the sizeof errors in g++ [SVN 972] [Ajarn]
* Reverted back some of the char* changes [SVN 972] [Ajarn]
* Changed parse_script to now return char* [SVN 969] [Ajarn]
* Converted run_script and run_script_main from unsigned char* to char*
[SVN 969] [Ajarn]
* Forgot a couple small changes [SVN 35] [Ajarn]
* Changed map_data.gat and map_data_other_server.gat from unsigned char*
to char* (this might be needed, because of unicode or something, please
correct me if I'm wrong) [SVN 34] [Ajarn]
* Converted decode_zip, encode_zip, remove_control_chars, mapif_sendall*,
and e_mail_check to use char* instead of unsigned char* (again, please test)
[SVN 34] [Ajarn]
* Modified skill unit group checking in skill_unit_onplace that might have
been causing crashes [celest]
* Updated packet 0x143 length's for version 14 (2004-11-01Sakexe) and version
16 (2005-01-10Sakexe), thanks to jathena and ice2big [celest]
* Fixed login-server compile error with the "new" -> "new_" changes [celest]
01/22
* Fixed an error that was in my last commit (optimising g++ build) [SVN 29]
[Ajarn]
* Made strlib functions char*, instead of unsigned char*. Strings are meant
to be char. (Shouldn't break anything, but might, please test this for me)
[SVN 26] [Ajarn]
* Added cast for TXT version [SVN 25] [Ajarn]
* Added cast from allocation calls, from void* to intended type [SVN 24] [Ajarn]
* Changed bool -> bool_. Still need to make convertions between
char* and unsigned char* valid, and some other convertions too.
Also, sizeof is being used wierd in map.c, at least g++
complains [SVN 22] [Ajarn]
* Changed the rest of the class variable names to class_ and all the new
variable names to new_, for futher g++ support [SVN 21] [Ajarn]
* Update both caster and target's SP after using Soul Change -- thanks to Aalye
/ Freya [celest]
* Force a monster to switch attack target when being casted Provoke [celest]
* Corrected description for @enablenpc -- "@npcon" -> "@enablenpc" [celest]
* Since job normalising is still buggy require all 1st class skills to check
for Basic Skill level when calculating the skill tree [celest]
01/21
* Updated packet DB configurations : enable_packet_db, packet_db_ver,
-- check the .txt for description [celest]
Note: For people having connection problems try setting 'enable_packet_db'
to 'no'... and use the latest client (01-10Sakexe)
* Fixed a small typo in 12-06's packets -- 21b => 21d [celest]
* Updated packet_db.txt to only contain the latest version, like jAthena,
since there's not much point to re-read packets eA already supports
(although if you remove all the //'s it can still read multiple versions)
[celest]
* Added clif_config in clif.c - for keeping packet/client connections related
stuff [celest]
* Send 'Game Exe not latest version' to a client if it hasn't been authentified
yet, but is sending a non-connection-related packet to prevent crashing
-- assume the client is using an unknown exe [celest]
01/20
* Fixed compile time problems with the non-GC case [MouseJstr]
* Introduced aMallocA and aCallocA
These two functions allocate "atomic" memory which means
"memory that does not contain references to other memory".
This lets the garbage collector ignore these objects when searching
memory for references to other objects dramatically increasing
performance of the GC.
When in doubt, use aMalloc and aCalloc. It is better to add
a tiny bit of work to the GC then do cause a crash due to memory
being cleaned up when it shouldn't.
[MouseJstr]
* Modified all calls to aMalloc and aCalloc that reference
atomic memory to use aMallocA and aCallocA
[MouseJstr]
* Modified the socket buffer allocator to use "atomic" memory
for the fifo data buffers [MouseJstr]
01/19
* added support for the Hans-J. Boehm libC garbage collector
(A copy is in http://amber.stormbirds.org/~joshs/gc6.3.tar).
It is ABSOLUTELY critical for people to use
aFree/aMalloc/aCalloc/aStrdup for this to work. If somebody
has just used free or malloc, this will crash when used with
the garbage collector.
A amusing environmental variable to set is GC_PRINT_STATS (to 1)
so that you see real time statistics of leaked data being
recovered.
grab a copy of the gc6.3.tar.. build it .. install it..
modify the Makefile to have the
CC = gcc -pipe -DGCOLLECT
GCLIB = -lgc
lines... and make the sql servers (the txt server doesn't
build using this right now due to stupid Makefile issues)
[MouseJstr]
* SVN 3 on http://svn.stormbirds.org/svn/eathena will be what
I diff against when I merge back into delta.. if we ever merge
back into delta [MouseJstr]
* Removed 12-06 Sakexe detection, since it doesn't seem to work, and
might be conflicting with 10-25 clients [celest]
* Update the Soul Burn target's SP when it has been successfully reduced to 0,
thanks to Aalye / Freya [celest]
* Moved SC_PRESERVE and SC_BATTLEORDERS's id so they'll display a status icon
when cast, thanks XiaoLin of cAthena [celest]
* Added missing code for Preserve -- i totally forgot to add it ^^; [celest]
01/18
* Added some skill bug fixes, thanks to Aalye / Freya [celest]
- stop player attacking if the target goes into hiding
- fixed Sword Reject not working against swords, only daggers
- additional check in case Marionette Control doesn't end properly even
when one of the partners has logged off
* Added stun, bleeding and SP loss effect for Pressure, thanks to DracoRpg
[celest]
* TEST: Fixed more compile warnings in MSVC [celest]
* TEST: Fixed some compile errors in MS Visual C++, thanks to Ser [celest]
01/17
* Some rewrites in skill_delayfix [celest]
- If the delay is < 0, add the weapon aspd delay to it
- If the skill is not weapon type, and has 0 delay, add 300ms as default
* Added min_skill_delay_limit as the minimum allowed delay for any skills
[celest]
* Some tidying up in battle_get_ functions [celest]
* Set exp table and job bonus table to 0 before reading - might solve some
memory bugs [celest]
* Updated skill range leniency code - If possible try and move towards the
skill target so that when casting it no longer falls out of range [celest]
01/15
* Added effects to enemies for Gospel [celest]
* Added mobs spawn to all Yuno fields (according to 4th Jan patch) [Lupus]
01/14
* Added party supporting effects for Gospel [celest]
01/13
* Added and testing support for 2004-12-06Sakexe [celest]
* Removed emblem changing requiring Glory of Guild limited to TXT only [celest]
* Corrected a typo preventing Plagiarism to work, thanks to orn [celest]
* Fixed Berzebub card and other 'reduce cast delays' equipment not working
[celest]
* Updated packet_db.txt loading to support reading into multiple packet
versions [celest]
* Removed packet_db_ver defining in packet_db.txt -- it'll determine itself
based on MAX_PACKET_VER [celest]
* Integrated packet size and function DB's into 1 packet_db [celest]
* Added MAX_PACKET_VER -- maximum versions supported by eA, including the
packet_db -- and changed packet size and function DB's to use it [celest]
* When sending 'Game exe not latest version' packet don't close the session
immediately so it will still be delivered [celest]
* Added map-server display if an unidentified client was rejected --
also fixes the 'empty string sent to _showmessage' [celest]
* Added a bug - Celest, LOOK AT THIS BUG ASAP. [Codemaster]
* Tided up/fixed some mobs [Lupus]
01/12
* Implemented Vending Log [Lupus]
TODO: use log option to log only important deals (much money, rare items, etc)
01/11
* Added Shinomori's changes to npc event timers (I never realised it, thanks
^^; ) [celest]
* Updated clif.c to be able to identify client versions based on the packet DB
[celest]
* Correct packet_db_ver to the maximum version allowed if it was set too high
or too low in packet_db.txt [celest]
* Added support for 2005-01-10Sakexe [celest]
* Updated packet functions for 2004-11-08 and 2004-12-06 (Note: eA *can*
support 12-06, but still doesn't recognise it... so unless we find a way,
it is *not* supported yet) [celest]
* Updated packet_db, thanks to Sara-chan [celest]
* REMOVED support for clients before packet version 10 (2004-08-25 and
earlier) - the client will receive a 'Game Exe not latest version' message
[celest]
* Added a check to prevent crashing when trying to log in with
2005-01-10aSakexe in servers that don't support it [celest]
* Added a fix to @sound where if you forgot the .wav exention, i'd attempt to play the file without it (it adds the .wav) [Codemaster] [SVN 949]
* Added @disguiseall / @undisguiseall [Codemaster] [SVN 949]
* Added misc. clif.c fixes (jAthena added alot of close(fd)'s, so i added them, too) [Codemaster] [SVN 949]
* Added bug reports - Celest, you might want to check one of those out [Codemaster] [SVN 949]
* Fixed a bug in clif.c which didn't allow to enther the map-server.
It worked under win32, but didn't under Linux. [Lupus]
01/10
* Completed adding packet DB reading... still needs (a lot) more work in
clif.c [celest]
* Added Shinomori's suggestions for npc timers, thanks again ^^ [celest]
* Removed checking for script event timers' length, and added Shinomori's
changes [celest]
* Start adding packet DB reading [celest]
* Added 'max_eventtimer_length' (default is 32) to script_athena.conf. [celest]
Some event timers with names longer than 24 could cause the server to close
itself, change this if you need support for even longer names
* Removed PCLoginEvent requiring 'PCLoginEvent' for the player to be set to 1
first to be activated. [celest]
* Added Shinomori and orn's fix for the skill tree to only check the first
required skill in the DB and skipping the rest [celest]
* Modified 'wedding' script command to work with "OnTimer" scripts even without
doing 'attachnpctimer' (The 'player not attached' error will still display,
but the effect will appear *over the NPC* instead of the player...
at least it won't fail ^^) [celest]
* Added 'attachnpctimer' script command for attaching the player to the current
npc's timer in "OnTimerxxxx" scripts, thanks to Wallex for the idea. [celest]
Syntax:
attachnpctimer;
attachnpctimer "<Player Name">;
Check /npc/sample/npc_test_npctimer2.txt for example.
* Added 'detachnpctimer' script command for detaching players from the npc's
timer. [celest] Syntax:
detachnpctimer;
detachnpctimer "<NPC Name">;
* Added 'OnInterIfInitOnce' for WoE scripts & modified the WoE scripts as well [Ajarn & Codemaster] [Thanks to FREYA] [SVN 943]
* Added the @sound command and the NPC command of soundeffectall
- works just like soundeffect, but plays for everyone in the area [Codemaster] [SVN 942]
* Don't allow Pets to attack Guardians outside of WoE [Codemaster] [SVN 940]
* Require 15% of HP or more for WE_MALE skill [Codemaster] [SVN 940]
* Require 15% of SP or more for WE_FEMALE skill [Codemaster] [SVN 940]
01/07
* Upon changing to high novice 100 stat points should be given, not 88 [celest]
* Give high novices First Aid and Trick Dead upon job changing [celest]
* Remove some unnecessary checks in battle.c [celest]
* Added some checks to prevent novices still allowed to attack when using
Trick Dead [celest]
* Added 'summon' script command. Syntax:
summon <monster name>,<monster id>[,<event>];
Example: 'summon "Poring", 1002, "OnPoringKilled"; 'will summon (note:
not *spawn*) 1 poring that'll help its master for 1 minute,
and activate the "OnPoringKilled" event when killed.
'summon "--ja--",-1;' will summon a random monster.
* Added Wallex's fix for the wedding script functions [celest]
* Added the below-mentioned alive packet to SQL's char and login [celest]
* Enabled login server 'anti-freeze' by default as a temporary solution
to char-login disconnection [celest]
* The TXT char server was rejecting login's "i'm alive" packet and disconnecting
it... fixed [celest]
* Stall_time wasn't being read in login_athena at all (not by the login server,
because the code didn't read it, nor by TXT map server, since its in the SQL
inter_athena.conf reading)... so moved it to inter_athena.conf, and
change sql_config_read in map.c to inter_config_read [celest]
* Some tidying up of battle_get_def and _def2 [celest]
* Added 'bDelayrate' and changed Phen card, Marduk Card and Berzebub Card's
effects to use this instead of bCastrate (which was reducing casting time,
not delay time) [celest]
* Some tidying up of skill_castfix and skill_delayfix [celest]
* Added Filougarou's fix for Bowling Bash causing it to only display damage,
but doesn't do any - thanks! [celest]
* Set delay_dependon_dex in battle_athena to 'no' by default [celest]
Note: Just to clarify things, on official servers dex is not supposed to
reduce skill delays, only Poem of Bragi and Berzebub card does!
* Fixed typo in skill_delayfix - reduce delays only if delaynodex was *not* set,
sorry ^^; [celest]
01/06
* Fixed various memory corruptions causing crashes (SVN 925) [MouseJstr]
* Fixed typo in src/map/map.c causing compile
errors (SVN 924) [MouseJstr]
* Removed the alive_timer mechanism entirly replaced with
a stall detection mechanism that will disconnect a player
who has not sent any data for a configurable
(conf/login_athena.conf:stall_time) amount of time. The default
is currently 60 seconds.
The root cause of the disconnect error is that some NAT based
routers are not dropping the TCP connection when the aliased
machine goes offline abnormally. This means that we are seeing
a stalled but perfectly valid TCP connection.
(SVN 924) [MouseJstr]
01/05
* Fixed some typos in map_versionscreen() [MC Cameri]
* Removed loop freeing in map-server's do_final(), it was causing seg faults [MC Cameri]
* Finished do_storage_final() in map-server's do_final(), it was there but doing nothing [MC Cameri]
* Fixed Celest's typo making all vended items cost 0 zeny [Codemaster] [SVN 919]
* If a vending item was priced at 0 it'll be auto changed to 1million [celest]
* Fixed TXT logging - log_athena.conf reading was kind of messed up [celest]
* Added a simplified version of Qamera's OnConnect: OnDisconnect: OnDeath:
NPC events mod, (All credits go to him.) except adapted based on eA's current
PCLoginEvent. (by davidsiaw) [celest]
- Currently only 4 events have been added: PCDieEvent, PCKillEvent,
PCLogoutEvent and PCLoginEvent
- For notes and usage example check /npc/sample/PCLoginEvent.txt (by
davidsiaw)
- To enable them for a player in a script, do
"set <name of event>, <0 or 1>;"
(yes it's saved in a permanent character variable and auto read every time)
- Simply put, if any of them is set to 1 the appropiate event will activate
p.s - Scripters who are already using PcLoginEvent, you'll need to add a
"set PCLoginEvent, 1;" now, sorry for the trouble.
* Optimised PCLoginEvent activation a bit [celest]
* Set 'droprate0item''s default to 'yes' so that items with 0 rate will never
drop [celest]
* Look at item type other than item ID as well to check whether it is a card
in card-related script commands - better support for custom items [celest]
* Reset all skill variables if the skill fails so certain skills can't be
abused (such as Warp, thanks to Alex14 for pointing it out) [celest]
* Added /mapflag/noreturn.txt for disabling butterfly wings (not fly wings)
[celest]
* Fixed skill_require_db reading somehow getting corrupted if weapons usable
for the skill is more than 20, thus causing the skills to fail everytime
[celest]
* Fixed @killmonster crashing the server with summoned monsters, thanks to
Alex14 [celest]
* Added double_connection_system to battle_athena (not completed yet) [celest]
01/04
* Fixed GM Command Logging (Not sure why TXT logging still isn't working properly :( ) [Codemaster] [SVN 907]
* Fixed one of Lupus' additions to the item_db [Codemaster] [SVN 907]
* Fixed Seismic Weapon Skill (it 100% didn't break target's weapon at 4 level of the skill) [Lupus]
01/02
* Re-fixed map-server crashing if an empty line is in skill_castnodex.txt,
thanks to Alex14 for pointing it out (SVN 899) [celest]
* Modified breaking rates calculating - meltdown's chances is separated from
self breaking chances (SVN 900) [celest]
* Reduced MAX_SKILL_LEVEL to 10 to save a bit of memory and speed [celest]
* Tidied up parts in skill_castfix a bit (SVN 895) [celest]
* Fixed map-server crashing if an empty line was added in any of the skill-xx
db files (SVN 895) [celest]
* Updated skill_castnodex reading - An *optional* 3rd value can be added to set
whether a skill's delay time can be affected by dex (SVN 895) [celest]
Example: 46,1,1 - double strafe's delay is not affected by dex
46,1,0:0:0:0:1 - only level 5 double strafe is not affected by dex
* More atempts at memory leak fixes [Codemaster] [SVN 890]
* Updated weapon breaking rates, thanks to DracoRPG (SVN 891) [celest]
* Optimized enchanting skills success rates calculation, thanks to Wallex
(you were right! ^^; ) (SVN 891) [celest]
* Modified Spiral Pierce and Breaker to type ranged (SVN 891) [celest]
01/01/05
* Attempted to fix a memory leak [Codemaster] - tell me if it works XD (NPC/Mob memory leak in npc_parse_mob(...)) [SVN 886]
* Added a char config that allows GMs that have a certain level or above to
bypass the server's user limit [Codemaster]
* Changed some create arrow outputs for new kRO 12/21/04 patch [Aria]
* Fixed some respawn delays of MVP/Miniboss monsters. Redo Umbala/Niflheim fields, added missing mobs, corrected
monsters quantity. In Niflheim fixed wrong Lord of Death monster ID. [Lupus]
12/30
* Added ispartneron, getpartnerid, and warppartner script
commands to properly support jawaii NPC's (SVN 880) [MouseJstr]
* Moved supernovice guardian angel messages to msg_athena.conf [celest]
12/29
* Fix account register wipe issue (SVN 868) [MouseJstr]
* Double storage/lag exploit fixed (SVN 867) [MouseJstr]
* Another -1 alive_timer fix (SVN 866) [MouseJstr]
* Added @dmstart and @dmtick for debugging malloc tests [MouseJstr]
* Fix some more compile errors on different platforms [MouseJstr]
* Fixing a crash if you change the name of a pet you don't have (SVN 863) [MouseJstr]
* Eliminated src/common/malloc.c when not needed [MouseJstr]
* Some code cleanup in prep for new debugging malloc (SVN 861) [MouseJstr]
* Updated Soul Breaker's damage calculation [celest]
* Updated Meteor Assault's cast delay to be not affected by dex [celest]
* Changed int_guild.c so it will calculate average guild level only if > 0
members are found - prevent divide by zero crashes (why would an empty guild
be requested to update its' member info in the first place?) [celest]
* Added Shinomori's fixes for string copying in script.c [celest]
* Removed @giveitem since #item it's the one that does this and added some of it's support to #item [MC Cameri]
-#item <item_name> <item_count> <charname|all|everyone>
* Uncommented out import in charcommand_athena.conf, there is
need to have it commented (all the others ones are
uncommented) [Ajarn]
12/28
* When restarting the char-server, reset the online status
of all characters and guild-members (SVN 849) [MouseJstr]
* Fix double timer_delete caused by pc_alive_timer (SVN 848)
[MouseJstr]
* Fixed typo in npcs_athena.conf (mc_cameri verses mc_Cameri),
thanks Mellow972 for pointing that out (SVN 845) [MouseJstr]
* Reduced weapon breaking chance for Overthrust, thanks Draco - i almost
forgot to add this update [celest]
* added checks into the skill code to prevent proxy's/bots
from crashing the server by using skillid's that
are WAY out of range (SVN 841) [MouseJstr]
* Fixed clif.c errors that prevent old clients from being used. [nsstrunks]
* Fixed @jobchange to not default to upper (SVN 837) [MouseJstr]
* Fixed a compile error in @mobsearch (SVN 836) [MouseJstr]
12/27
* Updated 1206's packet fuctions in clif.c [celest]
* Updated the new guild skills - cannot be reused within 5 minutes of
activating it [celest]
* Added @mobsearch, @cleanmap and @giveitem from jA [celest]
* Fixed the guild issues (SVN 832) [MouseJstr]
* Updated description for player_check_cloak_type [celest]
* Increased skill range limitations in pc_no_footset [celest]
* Added exp_calc_type - to alternate between 3 different versions for exp
calculating [celest]
* Reinitialized variable 'c' in map_readmap, it's supposed to have a start value. Ex. '-'. [MC Cameri]
* Commented out dump_timer_heap() again... [MC Cameri]
* Added include of string.h in malloc.c, was causing compile errors/warnings [MC Cameri]
* Modified the map progress bar to reduce updates (SVN 829) [MouseJstr]
* Updated map cache system from jA 1087 - change read_map_from_bitmap to 2 to
enable zlib compression [celest]
* don't delete alive_timers of -1 (SVN 823) [MouseJstr]
* switched malloc,calloc,realloc to aMalloc, aCalloc, aRealloc
so support the use of a garbage collector (SVN 821) [MouseJstr]
* Removed some printf's from map-sql [MC Cameri]
* Uncommented MSG_SQL, for _ShowMessage(), usage: ShowSQL() [MC Cameri]
* Removed fixed bugs in dev/bugs.txt [MC Cameri]
* Now I remember what I was smoking.. (SVN 819) [MouseJstr]
* Fixed a bug in the guild_castle persistance code
in char_sql. What was I smoking? (SVN: 816) [MouseJstr]
* Corrected a bad error in itemdb_read_itemslottable [celest]
* Corrected wrong logging of text in int_guild.c, thanks to Alex14 [celest]
* Summoned monsters will not give exp and items [celest]
* Added the 6 new Yuno fields to maps_athena.conf [celest]
* Added some Freya's optimisations in clif_parse [celest]
* Added clif_update_mobhp - monsters' hp viewing now updates properly [celest]
* Set alive_timer to -1 when quitting, not 0, or the map server might assume
its still active [celest]
* Changed the *_override_grffile to no by default, because many were having issues with it [Ajarn]
12/26
* Fixed ANOTHER pet crash (double free) (SVN: 804) [MouseJstr]
* Added a proper #define for MAX_VENDING (SVN: 802) [MouseJstr]
* Fixed crash associated with vending more then 12 items
which walked on memory.. corrupting the pet data
structure (SVN: 801) [MouseJstr]
* Fixed a crash that resulted when disconnecting (SVN 800)
the new client when the old client is still connected [MouseJstr]
* Fixed some gcc 2.95 compile errors [MouseJstr]
* Fixed some array bounds errors (SVN 799) [MouseJstr]
* @mapexit (and do_final) now persist all data to the
char server before exiting to eliminate storage/inventory
inconsistancies.. [MouseJstr] (SVN 793)
* Some cleanup of spiritball memory management [MouseJstr]
* Dramatic performance work for exp updates to sql. Previously, [MouseJstr]
when u killed a mob (in party share), it would cause the char_server to
1) Delete all guilds for all members of your party
2) Re-create all guilds for all members of your party with the new exp
values.
Now it just generates 2 sql statements per party member,
1) update the guild exp,
2) update the guild_member exp.
src/common/socket.c src/common/socket.h src/char_sql/char.c
src/char_sql/int_guild.c src/map/chrif.h src/map/pc.c
src/map/map.c src/map/chrif.c
* Disabled import charcommand_conf.txt by default [celest]
* Added Bitmap File system from jA 1086 - automatically generates a cache
from maps in the GRF to speed up loading. You can enable/disable it with
read_map_from_bitmap in map_athena.conf. Note: AFM maps will override this
cache [celest]
* Added --run_once flag for the map server for testing purposes - closes itself
when everything is done loading [celest]
* Added some code for Moonlit Petals and Basilica [celest]
12/24
* Added suggested fix when client disconnected [celest]
- send "disconnected due to time gap" and close session when timed out
- send "server still recognises last login" message and close existing
session when client reconnects
* Upped windwalk to lv 10 in skill_tree [MouseJstr]
* Fixed a scripting crash (SVN: 781) [MouseJstr]
* removed @changesex and @charchangesex until we can
fix it properly [MouseJstr]
* Fixed item-dup bug in storage and cart [MouseJstr]
* @skilltree was looking outside of the particular class
of the char to see if they could do a skill [MouseJstr]
* Fixed a calc_skill_tree bug where too many skills were
visible [MouseJstr]
* Added Dev/GDB_reports.txt, take a look in it devs [Ajarn]
* Corrected description for player_skill_nofootset and monster_skill_nofootset
in battle_athena.conf [celest]
* Added a special NPC Logging command 'logmes'. It works as mes"Hello world!";
It is useful for such NPC as BANKS, CASINO, etc. To keep track of won money, etc.
Check kafra_bank.txt 1.1 for example.
Note: mes = otput into client's NPC window
debugmes = output into map-server window
logmes = output into lognpc log DB.
12/23
* Fixed some bugs in the clif.c changes (SVN 766 to SVN 767) [MouseJstr]
* Added ayo monsters to @disguise
* Began updated clif.c to work with 1108 and 1206, tested and works [nsstrunks]
* Fixed skills still being available after a job change [MouseJstr]
* Changed pc_alive_timer to use map_id2sd - should be more accurate [celest]
* Added jA 1084's fix to mob.c - check whether the player is still alive
when calculating exp [celest]
* Added clif_changed_dir, clif_adopt_process [celest]
* updated Backstab to show the target's new direction [celest]
* Corrected the file types of several files in the SVN tree to
fix the newline issues [MouseJstr]
* Updated mapflags (added missing payon_in03,ayo_in01,ayo_in02, que_god01, que_god02) [Lupus]
* Updated Sacrifice : it's now self-activating, and lasts for 5 attacks [celest]
* Fixed compile errors in party.c [celest]
* Moved SC_EDP back to 114 [celest]
* Added some of Shinomori's fixes [celest]
* Added optimisation in intif_parse_WisMessage from Freya [celest]
12/22
* Eliminated skill tree mapping since we have entries
for all the classes in the skill_tree.txt files [MouseJstr]
* Added finding_ore_rate to battle_athena.conf, thanks to orn [celest]
* Changed how party exp is passed out to eliminate players
current in a chat window or those who havn't moved or attacked
in 2 minutes [MouseJstr]
* Fixed a bug in resnametable from local directories,
by fixing a bug in grfio_read causing memory corruptions [MouseJstr]
* Rearranged how guild messages, gm messages, and party messages
are moved back and forth between the inter server and the
map server.. eliminating unneeded round trips to eliminate
lag on a loaded char-server. [MouseJstr]
src\char_sql\int_party.c src\char_sql\int_guild.c
src\char_sql\inter.c src\map\atcommand.c src\map\guild.c
src\map\intif.c src\map\party.c src\char\int_guild.c
src\char\inter.c src\char\int_party.c
* Reverted npc.c back to before jA 1081. This fixes warp portals missing and other npc bugs [Ajarn]
* Added conditional SHOW_DEBUG_MSG for displaying ShowDebug()'s output, it was missing before [MC Cameri]
* Added #zeny, removed @charzeny [MC Cameri]
* Fixed reading itemslottable.txt causing cards to become unuseable [celest]
* Added error message if file renaming in lock_fclose fails [celest]
* Fixed frost diver not working ... my bad =p [celest]
* Corrected typo in clif_hpmeter - md -> sd [celest]
* Check if the player has been authentified by the char server before
clearing any timers in map_quit [celest]
* Added eventtimercount and timerskill_count - check these before clearing
or deleting timers [celest]
* Added sc_count check in skill_stop_dancing [celest]
* Translated the japanese part in battle_athena.conf [celest]
* Added ignore the new skill delays when chaining monk combos [celest]
12/21
* Since conf/maps_list.txt was removed, added conf/maps_athena.conf [Ajarn]
* Fixed a few NPCs that were giving curly errors. It seems to be caused by a bug that the NPCs' last line isn't read or something [Codemaster]
* Fixed a tiny compile warning in npc.c [Codemaster]
* Allowed the NPCs without proper curly brackets to still load, but give an error still [Codemaster]
* Added variable 'current_file' which tells the filename of the script while loading npcs [MC Cameri]
-the variable its set in do_init_npc() or something like that, so you can only access it
after the use of do_init_npc().
* Fixed the display of a warning saying that a right curly brace was missing [MC Cameri]
* Removed @charwarp and @rura+ and added #warp, #rura, #rura+ [MC Cameri]
* Removed conf/npcs_list.txt, and placed it in npc/npcs_athena.conf [MC Cameri]
* Moved some code in pc_break_equip that was causing compile errors [celest]
* guild skills vanished due to incorrect placement of a
check for quest skills in the calc_skilltree code [MouseJstr]
* Fixed skill LK_HEADCRUSH, LK_JOINTBEAT to work on both on
and off peco's for lord knights (fixed typo in
skill_tree.txt) [MouseJstr]
* removed LK_SPIRALPIERCE from lord knights not on peco's[MouseJstr]
* Moved the code from map_quit to pc_makesavestatus that
"adjusts" the skill tree before persisting to the character
server [MouseJstr]
* made pc_makesavestatus() properly persist skills that are
unavailable but not forgotten (example, spiral pierce). You can now
get spiral pierce, get off your peco, log out, log in, and
get back on your peco and still have not lost the skill
points you invested. This also solves the problems of when
the skill tree gets changed, players loosing the points. [MouseJstr]
* Made pc_resetskill() properly reset skills that are
currently not visible due to skilltree changes [MouseJstr]
* Finished updating most of the map-server to 1082... i'll leave the more
technical ones for the other devs ^^; [celest]
* Added other new battle_athena options from jA 1082 ... descriptions not
translated yet [celest]
* Removed my own additions for skill delays using aspd and added jA's code
(-removed-) [celest]
* Adapted skill_range_leniency to jA's code - should be more stable [celest]
* Fixed drop rates only limited to multiples of 100's - thanks to jathena
for pointing it out [celest]
* Added missing code for castle_defense_rate [celest]
* Removed pc_undead_nofreeze - no code for it [celest]
* Updated unrefineable items table - thanks to jathena [celest]
* Added 3 new script commands: [celest]
- skilleffect : shows a skill effect on the player
- doskill/skilluseid (originally by Qamera) : casts a skill on the player
- skillusepos : casts a skill on a position
* Added SC_SpeedUp0 [celest]
* Merged itemdb_read for SQL and TXT [celest]
* Moved itemdb_read_itemslottable in itemdb.c for better readability [celest]
* Removed itemdb_read_cardillustnametable limited to TXT only [celest]
* Added reading itemslotcounttable.txt from the GRF to auto set number of slots
per item [celest]
* Added a display message when reading itemslottable from the GRF [celest]
* Added options in battle_athena.conf to enable/disable reading the GRF for
indoorrswtable.txt, leveluseskillspamount.txt, num2cardillustnametable.txt,
itemslottable.txt & itemslotcounttable.txt [celest]
* Removed conf/npcs_list.txt, and placed it in npc/npcs_athena.conf
12/20
* Fixed npc_parse_mob with large/tiny monsters causing
memory corruption [MouseJstr]
* Fixed a crash in char.c with new chars [MouseJstr]
* Updated npcs_list.txt [Ajarn]
* If last_pos.x or .y == 0, set to start point [MouseJstr]
* Fixed map loading. If a map was not found, it would remove the next map in the list [Ajarn]
* Moddified some *_athena.conf's (my typos and some inncorect default values) [Ajarn]
* Added Valaris' double connection bug fix (imalive watchdog) [Valaris]
* Fixed map-server exiting when it came across a bad NPC file [Codemaster]
* Updated Valaris' large/tiny monsters - of course, he told us what he did wrong and how to fix it :) [Codemaster & Valaris]
* Updated makefiles to new strlib locations [Codemaster]
* Moved strlib.h and strlib.c into the common directory [Codemaster]
* Updated a bit of jA 1081 - it's not completly updated yet!!! [Codemaster]
* Fixed some gcc 2.95 problems [MouseJstr]
* Speedups in socket code [MouseJstr]
* made samesex weddings work and give out correct ring [MouseJstr]
* CFixed wedding NPC halting after server reboot/crash (shadowlady put in comments but didn't add to code) [Aria]
* Added reading leveluseskillspamount.txt from the GRF to auto set sp used for each skill [celest]
* Added reading indoorrswtable.txt from the GRF to auto set 'indoor' mapflags
[celest]
* Added check in grfio.c to prevent crashing if a file wasn't found [celest]
* Rolling GUILDCACHE and FASTCHAR into main branches/stable
tree [MouseJstr]
* Changed max_paramter to an unsigned int so that you can have over 255 as your max stat [Codemaster]
* Experimental: Reverting a change on deleting any skill units when we're
logging off - might reduce the 'delete_timer' errors [celest]
* Added check whether an item is allowed to be dropped, for example wedding
rings [celest]
* Updated Acid Terror - should never miss [celest]
* updated Sword Reject - should display reflected damage properly now [celest]
* Updated Double Strafe - should only work with bows [celest]
* Replaced checking whether items can be refined or not with a new function [celest]
* Added Gengar's fix for npctalk outputting to chat [celest]
* Allowed some values in script_config to be customised in script_athena.conf [celest]
12/19
* Added -DFASTCHAR to char_sql for testing performance work
before I merge it into the main running code [MouseJstr]
* Added ShowDebug(), Debug(), DisplayDebug(), printDebug(), CL_DEBUG, MSG_DEBUG to _ShowMessage() [MC Cameri]
* Replaced many \033[x;xm with their corresponding CL_xx constants [MC Cameri]
* Separated NPCs and Maps from map_athena.conf into npcs_list.txt and maps_list.conf [MC Cameri]
* Modified all the *_athena.conf's to have the import command enabled by default [Ajarn]
* Added charcommand_conf.txt and log_conf.txt in conf-tmpl/import [Ajarn]
* Fixed import command for log_athena.conf file [Ajarn]
* Updated charcommand.conf [nsstrunks]
12/18
* Added some of my info to Dev/quotes.txt, not done yet... [Ajarn]
* Added some ideas to Dev/Ideas_Suggestions.txt [Ajarn]
* Fixed import command in inter_athena.conf file [Ajarn]
* Fixed a few command compiling problems for TXT [Codemaster]
* Modified the main.sql to add the friend0 column; also added the upgrade_1.0.0.sql file [Codemaster]
* Introduced StringBuf into utils for use in building larger queries [MouseJstr]
* tested GUILD_CACHE (reducing guild related sql traffic to 30%) in
prep for unleasing it on the sql using public [MouseJstr]
* Fixed some SQL queries crashing char server [davidsiaw]
* Added several PID GM commands, thanks to Dino9021 [nsstrunks]
* Storage was merging items incorrectly [Mousejstr]
* eliminated a uninitialized var when using afm maps [MouseJstr]
* Added concept of dirty storage to reduce saves/load
to the char server (do a clean build!) [MouseJstr]
* Eliminated storage_storageopen2 as unused [MouseJstr]
* Switched to account2storage2() whenever possible
to eliminate the possibility of saving empty storage
back to the character server (storage wipes) [MouseJstr]
* Made it save storage as soon as you close the storage
window to reduce possibility of loss/abuse [MouseJstr]
12/17
* Added #item [MC Cameri]
* Added #storagelist, removed @charstoragelist [MC Cameri]
* db.c: Fixed probs with OnInit, OnTime, and etc NPC probs
Just reverted it back. [Lupus]
* Fixed warning message in db.c line 445 [MC Cameri]
* Added #effect, removed @chareffect [MC Cameri]
* Reverted a change in map.c causing problems, sorry >.< [celest]
* Updated Sphere Mine - it'll now move in the opposite direction if
being hit by its master [celest]
* Updated Wind Walk [celest]
* Fixed skill #301 causing crashes [MouseJstr]
* Fixed documentation error on gm_skills_unconditionl [MouseJstr]
* added @grind test command.. only for testing [MouseJstr]
* Added clearweather to the atcommand configuration file. [nsstrunks]
12/16
* Added a fix for AFM loading, thanks to Pete [celest]
* Updated maximum levels for supernovice to 99 [celest]
* Updated supernovice jobexp table - should be same from 50 onwards [celest]
* Corrected maximum job level checking in @joblvup and @charjob [celest]
* Added the new spell scrolls, thanks to Landarma [celest]
* Corrected a few skills, thanks to orn [celest]
* Corrected Extremity Fist to not require Explosion Spirits when being used
right after using Combo Finish or Dilemma [celest]
* Added instant cast weapon skills rely on attack speed as cast delays, not
on dex [celest]
* Fixed mob_ghostring_fix not working [celest]
* Changed default value for mob_ghostring_fix to 'yes' [celest]
* Added #itemlist, removed @charitemlist [MC Cameri]
* Changed @job and #job so that when it's used it unequips all the items, to prevent sprite errors [MC Cameri]
* Fixed a misuse of mysql_config (thanks Daegalus for
creating a reproducable environment for me) [MouseJstr]
* Fixed compile time errors for gcc 2.95 [MouseJstr]
* Updated Forging and Potion making formulas by DracoRPG [celest]
* Changes to the guild skills
- Dropped using sc_data and use flag values instead
- Changed moving guild skill units to once every 'move request' only instead
of every movement - should reduce server load abit
- Corrected crash when checking its skill requirements
* Initialise 'canregen' when logging into map - forgot to add this earlier,
sorry ^^; [celest]
12/15
* Fixed more compile errors gcc 2.95 [MouseJstr]
* Removed log files from svn... they will be created when
needed [MouseJstr]
* Removed unused var in src/map/map.c:107 [MouseJstr]
* fix compile error in text converters [MouseJstr]
* Skill Updates [celest]
- Corrected traps to last longer in GvG
- Some minor changes to Hiding, Cloaking and Chasewalk to prevent it from
not working if sc_data is null
- Corrected an error in Cannibalize
- Updated Marionette Control to check its range from the partner
- Updated Berserk to disable hp and sp regen for 5 minutes after the skill
* Changed the weather gm commands to be able to toggle on and off. For example,
use @snow once to turn it on, reuse it again to turn it off. [celest]
* Added Jawaii and Ayothaya to @go list [celest]
* Changed the default values for ranged, magic and misc damage rate in
battle_athena to 60, 50 and 60 [celest]
* Removed redundant 'berserkdamagetick' from map_session_data [celest]
* Added changes to map.h according to Shinomori [celest]
12/14
* Changed "Map-server can't connect to char-server" message to reduce output spamming and set it to
display only once [MC Cameri]
* Added a busy animation for npc loading [MC Cameri]
* Replaced the way map loading was displayed into a progress-like way [MC Cameri]
* Fixed some typos in _ShowMessage() [MC Cameri]
* Replaced lots of more printf's in map-server with _ShowMessage() [MC Cameri]
* Added constants for console colors in showmsg.h [MC Cameri]
* src/char_sql/int_guild.c:56 - t_mes2 was not big enough causing
stack overrun's, corruptions, and crashes [MouseJstr]
* common/mmo.h: changed base_level and job_level to unsigned int to increase max levels [Codemaster]
* char/char.c: added a NULL check for the file in parse_friend_txt [Codemaster]
* map/atcommand.c/.h: added @clearweather (thanks to Dexity) [Codemaster]
* map/charcommand.c/.h: added #spiritball [Codemaster]
* map/mob.c: fixed a compiler warning (ln was an int and was supposed to be an unsigned long int) [Codemaster]
* Added nullpo_retb to nullpo.c - does a break; if null [celest]
* Replaced some parts in skill.c with nullpo checks [celest]
* Corrected some typos - penaly -> penalty [celest]
* Skill Updates [celest]
- Most of 12/14's Sakray patch
* The SKILL_MAX_DB (yes, a different #define from the one below)
was not large enough for current skills causing memory
corruptions and crashes [MouseJstr]
* Fixed how socket handles EAGIN errors (retry instead of
disconnecting) [MouseJstr]
12/13
* Skill Updates [celest]
- Added the new 'Throw Tomahawk' skill (Requires Sakexe1129 or newer)
- Added some new monster skills - but still not complete.
- Adjusted Palm Strike, Tiger Fist and Chain Crush based on 12/14's patch
* Removed redundant 'sg_count' for map_session_data and mob_data [celest]
* Save both persons' data after trading in case a crash causes them to
rollback - fix by Freya [celest]
* Removed 'type' paramater from pc_unequipitem to use 'flag' instead[celest]
* Moved unequip checking code from clif.c to pc.c [celest]
* Replaced many printf's in map-server with _ShowMessage(). [MC Cameri]
* Skill timers for skills with id's higher then 450 were
corrupting memory [MouseJstr]
* Increased max skills to 650 from 450 fixing MANY crashes [MouseJstr]
* Creating Guild events were reading beyond supplied guild names ,
causing crashes [MouseJstr]
* trades were derefing -2 into the inventory table sometimes [MouseJstr]
* Not having a arrow in your inventory but having a bow
could cause it to set sd->status.inventory[-1].equip=32768
resulting in a memory corruption [MouseJstr]
* local broadcasts of messages larger then 64 bytes were
corrupting the stack, causing crashes [MouseJstr]
* mob eventnames were reading beyond source point, risking
going over page boundries, causing crashes [MouseJstr]
* Internal MAIL system: moved all strings to msg_athena.conf [Lupus]
12/12
* Made guild skills to check for skill levels first when casting [celest]
12/11
* Modified arrow checking in skill.c [celest]
* Corrected Cart Revolution damage calculation [celest]
12/10
* Fixed players unable to move in AFM maps [celest]
* Added error message if a player's last map couldn't be found [celest]
* Moved AFM map check to map_mapname2mapid [celest]
* Added USE_AFM and USE_AF2 to be used later [celest]
* Modified sc_data check in pc_damage [celest]
12/9
* Moved a map_freeblock_unlock() around to eliminate a
crash [MouseJstr]
* Fixed how players are cleaned up when they disconnected
during authentication [MouseJstr]
* Adjusted some messages in @marry [MouseJstr]
* Skill Updates [celest]
- Fixed Auto Spell not working
- Fixed skill level check causing Baphomet card not to work at all (possibly
other problems too)
- Added some new monster skills based on jA mod 1077
* Changed @job to accept text job names - For example: @job wizard, @job high
priestess, @job super baby [celest]
* Added sc_data check for pc_damage [celest]
12/8
* Fixed @rings [MouseJstr]
* Added @marry, @divorce, and @rings [MouseJstr]
* fixed @revive [MouseJstr]
* Added option to turn off login server logging [celest]
* Moved char server starting logging to after we've read the configuration
file first [celest]
* Fixed crash with supernovices with 100% base exp [celest]
* Updated the readme a little. [Mass Zero]
12/7
* Added GUILDCACHE #define to int_guild.c for testing performance
effects [MouseJstr]
* Skill Updates [celest]
- Arrow Shower, Double Strafing, Charge Arrow, Throw Arrow, Sharp Shooting,
Arrow Vulcan, and Musical Strike now take arrows when used
- Level 6-10 Stone Curse will not consume a red gem now when it fails
- Players should be able to use items when they're stoned but not yet
completely petrified
- Corrected Triple Blow to work with bows (they actually do ^^)
* Added 'guildgetexp' script command [celest]
* Added bLongAtkRate item effect [celest]
* Implemented Confusion (50%) - still need more info on how monsters act
when they're confused [celest]
* Added 'Guardian Angel' code for supernovices [celest]
12/6
* Fixed file props for new npcs [MouseJstr]
* Fixed weddings.txt as per Fress_Boy [MouseJstr]
* Added a case_sensitive to login [MouseJstr]
* Fixed follow crashing server when gm dies [MouseJstr]
* Fixed global message not working on txt [Wizputer]
* fixed a server crash in mobinsite [MouseJstr]
* fixed a server crash in party sharing exp [MouseJstr]
* fixed a server crash in BS_FINDINGORE [MouseJstr]
* Updated Chase Walk [celest]
* Added 'checkoption1' and 'checkoption2' script functions - Refer to
/npc/sample/npc_testchkoption.txt for similiar examples [celest]
* Updated maximum level for Guild Skills [celest]
12/5
* Fixed another crash sending updates to disconnected
clients [MouseJstr]
* Fixed the range_check again to stop it from crashing
servers [MouseJstr]
* removed stubbed out unfinished atcommands as per Cameri [MouseJstr]
* Fixed nullpo's for gcc 2.95 [MouseJstr]
* Fixed bug in which login-txt was crashing in do_final() due to some free's [MC Cameri]
* Added nullpo's to all atcommand's functions, phew... [MC Cameri]
Note: I point out that MouseJstr has added some @commands that start with char which
havent been finished, they are just there but don't do anything.
* Removed mapbug.txt and corresponding function in map.c (realized it's pointless) [MC Cameri]
* Added allow_atcommand_when_mute - Change this to set whether muted players
can use gm commands [celest]
* Temporarily leaving the changing guild emblems requiring Glory of Guild
feature only for TXT until the SQL char-server supports guild skills fully[celest]
* Modified battle_range again to check if src's type is a player first [celest]
* Corrected typo in battle_range [celest]
* Fixed a crash where party chats can be sent to a
partially disconnected player [MouseJstr]
12/4
* Fixed a crash in clif_send when player disconnects but player
object is not fully removed from map [MouseJstr]
* Fixed a crash associated with NPC_BARRIER [MouseJstr]
* Renamed flush_fifos_at_exit to flush_fifos [MouseJstr]
* call check_connect_char_server() on char_server disconnect [MouseJstr]
* stale skill groups were crashing server [MouseJstr]
* Fixed crash in SC_LULLABY [MouseJstr]
12/3
* hacked the frozen mob issue [MouseJstr]
* Fixed a battle_range crash [MouseJstr]
* Updated Stone Curse, Soul Drain, Auto Berserk [celest]
* Added a fix for MVP exp being multiplied twice by Gengar
* Modified battle_range to check for sd first [celest]
12/2
* Fixed double login feature, resets online users when map connects to char [Wizputer]
* Changed all LOGS inserts to INSERT DELAYED (MySQL has this feature and cache unimportant queries, then
executes them at once together = 10x faster) [Lupus]
* Skill Updates [celest]
- Modified Weapon Refine - should only +1 every time.
- Updated Berserk, Chase Walk, Slim Pitcher
- Added skill_range_leniency : In some cases when moving to cast a skill the
exe will a send a UseSkill packet before the server has moved us to the
correct position, causing it to fail. Leaving this at 1 should be enough.
- Fixed a bug that was causing monsters not to move towards the target
* Added check for clif.c in case the server didn't realise we've died [celest]
* Added a fix for @npcmove by JohnC and Fredzilla
* Added motd_type : Set this to 1 if your clients have langtype problems and
can't display the motd properly[celest]
* Edited atcommand.c to fix compile warnings [celest]
12/1
- Make it build against gcc 2.95 [MouseJstr]
- Changed #define MAX_PET_DB to 300, it's easier for people adding new pets like this. [Nas]
* Skill Updates [celest]
- Updated Poison React
- Added Soul Change, Soul Burn
- Added a somewhat crude timer for Venom splasher
- Added a fix for Guild Skills causing crashes by Sara, thanks!
11/30
* Fixed client crash when disguised characters die [celest]
* Skill Updates [celest]
- Fixed and finished Guild Skills (~90%)
- Fixed Meltdown and Overthrust used together breaking your own weapon
- Updated Weapon Repair :- uses different materials depending on repaired item
(Iron Ore/Iron/Steel/Rough Oridecon)
- Fixed sp recovery problem, thanks to OutSider for pointing it out
- Updated Tiger Knuckle Fist stun time
- Added cooldown time for Emergency Recall
- Fixed typo in skill.c, thanks to Toster
11/29
* Fixed crash in src/char_sql/char.c when setting chars offline [MouseJstr]
* Added mapbug.txt which is displayed in map-server, displays
the last bug or w/e fixed for the map-server [MC Cameri]
-You may change it whenever you want
-It will only show if mapbug.txt exists
-This file must not be included in releases
* Made some changes in map_versionscreen() to make it easier to
read/change in the source [MC Cameri]
* Fixed a typo in _ShowMessage() removing the message caption. [MC Cameri]
* Fixed typo in map_helpscreen() showing -h instead of --?. [MC Cameri]
* Added more sc_data checks in skill.c and pc.c [celest]
* Updated Quagmire, Enchant Deadly Poison, Fog Wall [celest]
11/28
* Fixed a crash in login_sql/login.c [MouseJstr]
* made common/socket.c more crash resistant [MouseJstr]
* Added flush_fifos to socket.c so that we can make sure everything
has been sent before we shut the process down [MouseJstr]
* Modified src/char_sql/char.c to flush fifos on exit [MouseJstr]
* Fixed a crash in src/map/map.c shutdown where it would
use the char_fd session after it was alrady cleaned up [MouseJstr]
* removed conf-templ/atcommand_athena.conf.orig [MouseJstr]
* removed a USE from sql-files/main.sql that should not be there [MouseJstr]
* Changed MSG_INFO color to bright white, since bright blue want so bright... [MC Cameri]
* Made Map Removed: %d string be displayed only if there were maps removed. [MC Cameri]
* Fixed online system for char not sending players left "online" to login when restarting [Wizputer]
* Fixed damage formula of Cart revolution: 150% +1% per 80ea [Lupus]
* Removed 2x Chance of Equipment Breaking during CRITICAL attacks [Lupus]
* Fix some file props [MouseJstr]
* Added map_versionscreen(), displayed when --version flag is passed on command-line. [MC Cameri]
* Finished map_helpscreen(), displayed when --help flag passed on command-line. [MC Cameri]
* Changed Guilds Extention Skill to +6 people per level. [Lupus]
(tested it for 2 weeks! or a big server)
* Added a fix for gettimeofday() for WIN32 [Codemaster]
* skill Updates:
- Updated Slow Poison, modified checks for skill_unit_onplace abit. [celest]
- Updated Finger Offensive, thanks to orn [celest]
* Updated packet_ver_flag's default value, thanks to iscandium [celest]
* Added warning if motd.txt was not found [celest]
(Turn on error_log in battle_athena.conf to enable it)
11/27
* Fixed a few map crashes when char-server crashes [Wizputer]
* Added fix of 0x2aff and 0x2af8 flooding [Wizputer - thanks Toster]
* Fixed Map crash when person uses global message hacks [Wizputer]
* Fixed online system, online column works and prevent double login at the login server [Wizputer]
* Fixed some compile time errors associated with showmsg [MouseJstr]
* Added get_svn_revision() in core.c [MC Cameri]
-Only if you have the file .svn\entries, it will show the revision # at runtime.
11/26
* Fixed Abrakadabra (2 minor bugs of consumed items - they were ignored if placed in 0 pos) [Lupus]
* Finished Full Strip, Weapon Refine, Slim Pitcher and Full Protection. [celest]
* Added skill_nocast_db.txt. Use it to set which skills cannot be used in
which conditions [celest]
11/25
* Added @skilltree to help GM's answer skill tree questions [MouseJstr]
* Update Spider Web; I believe you cannot use it on yourself now. [Codemaster]
* Added Ore Discovery, and base code for Slim Pitcher and Preservation [celest]
11/24
* @charreset #reset [MC Cameri]
* @charstatsall is now #statsall [MC Cameri]
* @charsave is now #save [MC Cameri]
* Updated most of jA's 1067; battle.c and skill.c might need more updates! [Codemaster]
* Fixed char-txt crashing when closing, Codemaster free()'s. [MC Cameri]
* Skill Updates: [celest]
- Updated guild skills (60%)
- updated Weapon Repair and Aura Blade by DracoRPG
- modified Weapon Repair to use Identify's packet, should show a list of
repairable items now
11/23
* Fixed script loading small/large monsters. [Valaris]
* @charoption is now #option [MC Cameri]
* @charpetfriendly is now #petfriendly [MC Cameri]
* @charstats is now #stats [MC Cameri]
* Skill Updates: [celest]
- Added some code for the new guild skills (50%) and Moonlit Petals (5%)
- Notes to other devs: Guild skills with id's 10000-10014 will be stored in
skill_db[500-514]
- Corrected Hilt Binding
- Corrected Assassin Cross' dual wield
- Changed player_cloak_check_type to yes by default and edited description
since it's already fully implemented.
- Added a bit more restrictions to Call Partner and Emergency Recall and
updated mapflag for sec_pri.gat
- Added pc_calcspeed and updated Cloaking so it won't need to recalculate
the player's entire status everytime there is movement.
11/22
* (TXT)Stripped some code off read_gm_accounts() and made with it addGM() [MC Cameri]
-Usage: addGM(account_id,level);
* (TXT)Changed GM_accounts.txt to meet new standards. [MC Cameri]
* (TXT)Enabled the use of id ranges in GM_accounts.txt [MC Cameri]
* Added a few free()'s so that I am sure it freed the allocated memory (char & login) [Codemaster]
* Changed monsters_ignore_gm option to a level value. [Valaris]
(accounts greater than or equal to this setting won't be attacked by aggressives.)
* Fixed mapflag #s and constants for setmapflag and remove mapflag. [Valaris]
* Added skill names for kRO 11/23's new skills [celest]
- Preserve, Full Strip, Weapon Refine, Slim Pitcher, Full Chemical Protection,
(Throw) Tomahawk
* timer.c static int timer_heap_max=0; //fix by Shinomori from eA forums
ititialize static var!!!
* Added the old effect list # into effect_list.txt of spira's. [shadow]
* Added new flag (#3) to clif_specialeffect [MC Cameri]
* @doom,@die,@doommap now display the Dark Cross effect on you. [MC Cameri]
11/21
* Display IP when wdata is expanded [Wizputer]
* Added bClassChange,%; Has random chance to turn monster into another monster. [Valaris]
* Re-Fixed Trade/Vending exploit [Lupus]
* Fixed @whozeny. [Valaris]
* Added rest of mapflags to const.txt. [Valaris]
* Closed AFM files after reading, this fixed the improper char-server session #. [Valaris]
* Skill updates: [Celest]
- Updated Basilica, Sharp Shooting, Berserk, Meditatio (Thanks to DracoRPG!)
- Fixed a typo with Blade Stop that was causing crashes, sorry. ^^;
- Reverted changes to Cloaking, ours is already more updated! ^_^
- Added temporary code for guild skills to stop crashing
* @alive, @raisemap, @raise, @revive now display the resurrection skill animation [MC Cameri]
* @charpetrename(AtCommand) is now #petrename(CharCommand) [MC Cameri]
* @charjob/(AtCommand) is now #jobchange(CharCommand) [MC Cameri]
* Removed japanese interserver packets, should fix various problems (jumpto, where, charposreq). [Valaris]
* Added Yor's trade exploit bug fix. Added 2 skills bugs in the bugs.txt [Lupus]
* Added charcommand.c/.h for the following reasons: [MC Cameri]
- Less congestion in atcommand.c
- Port commands that start with @char to #, example:
~ @charoption will now be #option
11/20
* Added str_lower() function to atcommand.c (from OA). [MC Cameri]
* Simplified @charchangesex to @charchangesex [player], your sex is changed to the opposite one [MC Cameri]
* Added @refresh, which is like a @jumpto <<yourself>>. [MC Cameri]
* Added @petid <pet name> to find pet names, useful when you dont know which pets have eggs. [MC Cameri]
* Added an effect_list in docs/ for descriptions, free to add onto that later. [spira]
- Attempt to find new skill effects.
* Added "nogo" mapflag to prevent the use of @go on a specified map. [Valaris]
* Fixed small/big monster spawning crashing (mixed up the merge). [Valaris]
* Fixed crash with upgrading TXT and having more than 256 accounts. [Valaris]
* TXT upgrades will convert broken flag to attribute column. [Valaris]
* Prevent use of emotion packet to display red mute emote. [Valaris]
* Initialized "day" variable in npc.c. [Valaris]
* Added @whozeny. Shows list of top 50 online players and their zeny sorted from highest to lowest. [Valaris]
* Added @happyhappyjoyjoy. Makes all players on server do a random emote. [Valaris]
* Removed -funroll-loops from compile, thanks to kashy for pointing out the problems caused by this. (Do not re-add!) [Valaris]
* Added check for max vending_max_value when reading config [kobra_k88]
* Skill updates [celest]
- Napalm vulcan, Enchant Deadly Poison, Slow Poison (based on jAthena 1066)
- Create Deadly Poison, thanks to DracoRPG!
- Added effect for Meteor Assault
* Added night_darkness_level to battle_athena.conf. [celest]
Use this to set 'how dark' it'll become during night time. Use 0 for default,
or between 1-10. (Yeah, i know lots of people hated the original night! xP)
Warning: It may cause errors with old exe's!
11/19
* Re-added check for empty bottle when using aqua benedicta. [Valaris]
* Fixed skills not showing after using @allskill [celest]
11/18
* Added a line to @unmute, added @mute. [celest]
Usage: @mute <time in minutes> <character name>
* Added save_flag for skill_status_change_start [celest]
* Fixed muting not being saved when you quit/change characters/log off [celest]
* *Hopefully* fixed the skill tree problem where you have to use 49 skill
points first before 2nd job skills will show... please report any bugs found
with it, thank you. [celest]
* Added flag to pc_unequipitem (thanks to DracoRPG for suggestion) [celest]
* Skill updates [celest]
- Updated Cloaking (thanks to orn), Endure
- Pneuma (thanks to DracoRPG)
- Changed sc_ id for Basilica
- Cancel Basilica (100%) when caster moves or uses another skill
- Updated Poison React (90%), Endure
- Added SC_BLOCKSKILL, SC_SLOWDOWN
* Modified pc_attack to fix monster npc's not working in certain exes, thanks
to leinsirk10 [celest]
* Moved mapflags organized by type to main mapflag folder and removed "type" folder.
Removed mapflags organized by location.[kobra_k88]
11/17
* Added stub-handler for packet 0x3090 into char_sql [MouseJstr]
* Fixed a crash in the afm reading/closing code [MouseJstr]
* Added skill_steal_type to battle_athena.conf for the new (but unconfirmed)
stealing formula [celest]
* Skill updates: [celest]
- Removed annoying skill fail messages from rogue's Snatcher
- Add sc_data check for firewall and fogwall
- Fixed Berserk (99% hopefully? ^_^)
11/16
* Fix for compiling against gcc 2.95 [MouseJstr]
* Added day of week events (OnSat2000) into scripting engine [MouseJstr]
* Temporarily Disabled GM Command Logs; Weren't working Properly >_<! [Codemaster]
* Fixed a typo in ../db/Changelog.txt [Nana]
* Added -funroll-loops argument to makefile to further increase performance [Shinigami]
* Fixed 2 bugs in DELITEM script command. [Lupus]
- added deleting priority: If you have some items with the same ID and want to delete some of them, then
at first it'll delete common items then, if necessary, delete the rest items but upgraded/named/with cards. [Lupus]
* Added checks for Perfect hiding [celest]
* Modified level 0 skill check to allow auto blitz beat and steal. [celest]
* Added constant BaseJob. [celest] Usage: For example, instead of
If (Class==12) || (Class==4012) || (Class==4035)
you can use
If (BaseJob==12) or If (BaseJob==Job_Assassin)
* Added 'indoors' mapflag : When in-doors players will not be affected by Night [celest]
* Skill updates [celest]
- Assumptio is now disabled in GvG maps.
- Changed cloaking checks a bit.
- Tidied up some parts of skill.c abit. ;P
* Added pk_min_level option in battle_athena.conf. Change this to define the
minimum level players can attack others when pk_mode is on. [celest]
11/15
* Added a Database Changelog.txt File, use it for any changes inside the db folder. [shadowlady]
* Added GM Command Logs & Added TXT Logs + TXT Log Options [Codemaster]
* Added spawning of monsters at specific level by adding ,# after the spawn name. [Valaris]
mobs_level_up option should be on when using this.
(Example: {ama_dun01.gat,0,0,0,0 monster Shinobi,99 1401,1,0,0,0} to spawn a level 99 shinobi.)
* Added addtoskill script command for (levels can stack on top of existing levels). [Valaris]
Use same usage as skill script command.
* Added -ffast-math argument to makefile to increase performance, thanks to kashy. [Valaris]
* Added small and big mob sprite spawning. [Valaris]
-Added @monstersmall and @monsterbig commands.
-For using in scripts, use id +2000 for small and id +4000 for big.
(Example: 3002 for small poring and 5002 for big poring)
* Added mobs_level_up option. [Valaris]
-Everytime a monster kills a play their level will increase and show levelup animation.
-Their 6 main stats and speed will increase as they level.
-They will recover 10% of the max hp of the player it kills.
-Player will gain extra exp based on how much stronger a monster is than normal.
-Skill estimation will show monsters current level (instead of reading from db).
-Will display level 99 aura if and when a monster hits level 99.
-They will not go higher than level 99.
* Fixed maximum skill levels not following skill tree [celest]
* Updated HP/SP for baby classes [celest]
* Corrected pc_calc_base_job [celest]
* Skill updates [celest]
- Marionette Control (70%), Berserk (thanks to DracoRPG)
* Modified pc_jobchange code to work with new pc_calc_base_job [celest]
* Corrected skill_tree_get_max, sorry >.< [celest]
11/14
* Made the Advance jobchangers to kRO standars with the following;
- Checks if you are level 99/50 and 2nd class OR above.
- Checks if you have an Cart of Falcon equiped.
- Checks if you have any Quest Skills, stores a variable on you and gives them back
when you change to 1st advance class.
- Added minimum joblevel to change to an 2nd or 2-2 advance class to job 45 after kro. [Nana]
* Fixed loading of AFMs when no resnametable is found. [Valaris]
* mob_db.txt: Fixed Golden Thief Bug MVP MOB mode (it wasn't moving/attacking) [Lupus]
* Added AFM (Advanced Fusion Map) support, thanks to alexkreuz and fusion. [Valaris]
Use the afm_dir option in grf-files.txt (currently needs a resnametable.txt).
* Initialized password variable in login.c. [Valaris]
* Added zeny_from_mobs option. [Valaris]
* Corrected the file type attribute on most of the files in three which fixes the
newline issues between linux and dos [MouseJstr]
svn propset -R svn:eol-style native .
* Skill changes [celest]
- Corrected steal formula, updated BladeStop, Headcrush.
11/13
* Fixed map-server loading, doesn't require data\resnametable.txt anymore [Wizputer]
* Updated & Optimized TXT Login from FREYA. (need to do SQL now) [Codemaster]
* Removed compile warnings in intif.c. [Valaris]
* Fixed chrif_changesex and @changesex, now uses packet 0x3000. [MC Cameri]
* Updated some skills, credits to orn and midas. [celest]
- Magnum Break, Throw Stone, Sprinkle Sand, Magic Power, Memorise, Quagmire,
Spider Web, Reject Sword, assassin's Dodge, Demonbane, Divine Protection.
- Firewall, Quagmire, Fog Wall (100%), Marionette Control (30%), Sandman,
Claymore Trap
- Adjusted some mob skills for mod support.
* Fixed weight increase when riding. [celest]
11/12
* added folder: /save-tmpl, removed folder /save
* battle_athena.conf: Updated Packet Version Flags.
* !!!Fixed Mobs Attacking!!!: Thanks for MagicalTux and Yor, I fixed the mobs attacking by using one of their files. [Codemaster]
* Warps Update : Added ayothaya warps in ./npc/warps/ and in map_athena.conf [Nana]
11/11
* Skill Updates : (Need to revise skill_cast_db.txt for new updates)
( Sharp Shooting, Sword Reject, Chain Crush Combo, Tiger Knuckle Fist,
Head Crush, Arrow Vulcan, HP COnversion) Thanks to DracoRPG.
Fixed Devotion use requeriments. Thanks to Orn. [shadow]
11/11
* Corrected minor typo in item_db, and removed/commented out dupe items.[kobra_k88]
11/10
* Updated Sprout (Item #7193), Thin Trunk (Item #7186),
Huge Leaf (Item #7198), and Rante Whip (Items #1956, #1957)
- thanks to cheng - [Codemaster]
* Updated Parasite (Mob #1500) Drops - thanks to cheng [Codemaster]
* Updated Soft Grass Leaf (Item #7194) - thanks to cheng [Codemaster]
* Added, Fixed & Updated ALOT of skills: [Codemaster]
- Fire Pillar, Backstab, Grimtooth, Poison React, Falcon Assalt,
Skin Tempering, Hilt Binding, Frost Nova, TEMPORARY fix for Create Deadly Poison,
Enchant Deadly Poison, Endure, Sacrifice, Spider Web, Memorize,
Hyper Spirit Sphere, Palm Strike, Sword Reject, Pressure, Magic Crasher,
Amplify Magic Power, Napalm Vulcan, True Sight, Wind Walk, Aura Blade,
Concentration, Cart Boost, Magic Power
- Thanks goes to Celest, Midas, and DracoRPG!
* Fixed spira's mistake in using the packet_len_table; no biggie ^_^ [Codemaster]
* char/char.c & char_sql/char.c: Fixed start_armor and start_weapon - thanks to AppleGirl [Codemaster]
* Added packetver 6 flag to makefile. [Valaris]
11/09
* mob_db.txt: Fixed Drake dropping the wrong card - thanks to roslen [Codemaster]
* chat.c: Fixed multiple joins in a single chat - thanks to Alex14 and CHaNGeTe. [Codemaster]
* clif.c: Fixed sitting. [spira]
* - Fixed item 657 Job ID , 11/09 patch updates to item_db, Correct stats for item 5097
- Added Unbreakable funcions to item_db armors/shields/garments/footgear [shadow]
* Defined SO_REUSEPORT to allow the servers to re-use ports if server crashes [Wizputer]
11/08
* Added new script command: getMapXY(MapName$,MaxX,MapY,type,[CharName$]) by Lorky [Lupus]
Get position for char/npc/pet/mob objects.
* Attempted to fix the mob bug (still haven't :( ). Still updated mob.c/clif.c/chrif.c according to jA 1057. [Codemaster]
* Fixed item_cardalbum.txt: Removed extra column which mad all albums empty [Lupus]
11/07
- Fixed a few npcs will start implementing new ones soon, have alot on paper, need to type them up. [Nasedo]
* clif.c: Added a few things from jAthena 1057 [Codemaster]
* Corrected some typos in item_db. Items 1143 and 1719 need to be re-checked.[kobra_k88]
* Fixed compiling error in Map Server in which @repairall was using old broken system [Shinigami]
11/06
- Added missing items in item_db.txt and reorganised it.[Nasedo]
- Fixed wrong coords for payon guild flags (it has the old map coords), fixed some weapon effects in item_db,
updated the mob_db (90%+ done), added EP 5-9 mobs to mob_branch.txt and EP 6 cards to item_cardalbum.txt[shadowlady]
* atcommand.c/.h,chrif.c/.h, added @changesex. [MC Cameri]
* mob.c & clif.c: Added & Modified a few parts dealing with monsters and guilds [Codemaster]
* mob.c: Re-did a few parts according to jA's 1057 version. [Codemaster]
11/05
* Fixed and redo optional Umbalian quests:
- Wise Man Fabius' Umbalian Language Quest (you can learn Umbalian language in
alternative way)
- On speaking with Umbalian Chief about meaning of masks you activate Turban Thief Quest
(For Sphinx Mask)
* Fixed several bugs in Niflheim Piano Keys Quest (wrong variable name, missing CLOSE buttons)
Zeny/Item Exploit in Niflhein Sairin NPC quest (should add similiar checks in every
easy quests with expensive prizes to avoid exploits) [Lupus]
* Revised and fixed all comodo,yuno,amatsu,gonryun,umbala mobs and drops. Also fixed mvp and woe mobs too [Shadowlady]
* Fixed crash from guild skill point allocation, there seems to be a problem with guilds loading still. [Valaris]
* Fixed committed typo in map_athena.conf, remove aria's dev npc (was giving errors preventing server startup). [Valaris]
11/04
* Added sara-chan's packet db with support for 11-1 [Valaris]
* [alot of files >_<]: Changed connecting a bit, from oA source; it connected easier/better in my opinion so... [Codemaster]
* map/skill.c: Added a few checks for level 0 skills being used. [Codemaster]
11/03
* Removed broken column, using attribute column for broken equip now. [Valaris]
11/02
* Fixed compile time errors for gcc 2.95 [MouseJstr]
* Changed Blacksmith skill "Hammer Fall" to only be used with maces or Hammers [Aria]
11/01
* Set Comodo Kafra to warp to Umbala (11/2/04 patch) [Aria]
10/31
* Fixed Devnpcs giving off errors -_- [Aria]
* Fixed showmsg.c compile warnings thanks to LittleWolf. [Valaris]
* map/skill.c: removed a second declaration of sc_def_vit in skill_castend_nodamage_id; thanks to spira [Codemaster]
* map/battle.c: re-did Water Ball's damage calculation [Codemaster]
10/30
* Added new guild skills to skill_db from sara-chan. [Valaris]
* db/skill_cast_db, map/skill.c, map/pc.c: Corrected a few CHASEWALK things; Thanks to Celest [Codemaster]
* char_sql/char.c: removed the double free()ing of gm_account [Codemaster]
* Added check for c value in int_guild.c before dividing to calculate average level. [Valaris]
* Commented unfinished dev npcs and added devnpc to map_athena. [Aria]
* Removed item requirement of Aqua Benedicta (10/26 patch) [Aria]
* Fixed some compiling error for Map-server [Shinigami]
* Removed Rogue's backstab pushback effect (kRO style again) [Aria]
* Changed requirement of Fire Pillar to fit kRO style; lv1-5 = no gem, but 6-10 = 1 gem. [Aria]
* Added Mugendai's oA GUI support for map-server (previously not added) [davidsiaw]
* Included Mugendai's oA GUI in the GUI folder [davidsiaw]
10/29
* another exploit fix for mult in script [MouseJstr]
* Corrected mode for peco, condor mobs. Added custom mobs Easter Egg and Easter Bunny for easter egg event script.
Corrected mysteltain card location, penomena card typo.[kobra_k88]
10/28
* Cloak Speed fixed [Aria]
* Throw stone damage fixed [Aria]
* Added new packets from Sara to packet database. [spira]
* Fixed and changed command lists to reflect on new packet changes. [spira]
- @jumpto, @recall, and @where
- Removed old @ignore* functions because they are no longer needed.
* Replaced old whisper ignoring code with better and more efficient code. [spira]
* Added packet_db.txt support, removed old packet functions. [spira]
* fixed forger-zeny exploit [MouseJstr]
Doing script math that returns a number greater then (1<<31) will now
return a (1<<31). This prevents you from finding a npc that
asks for a quantity then mults the cost by that quantity to get
what you need to pay.
10/27
* Updated CSS styles for readme a bit [Aria]
* branched athena at version 340 to begin work on the packet_db
stuff from jA. To retrieve it, do a svn co http://dev.deltaanime.net:8080/svn/eathena/packetdb
later, once we are happy with it.. and feel it is stable, we will remerge it back into the main tree via the appropriate svn commands
as a FYI, the command I used to create this branch was:
svn copy http://dev.deltaanime.net:8080/svn/eathena/athena http://dev.deltaanime.net:8080/svn/eathena/packetdb -m "branch for packetdb work"
* Fixed Aldebaran (gatekeeper conditions bugs and wrong Key ID). Fixed some typos in other cities [Lupus]
10/26
* Added more quotes -_- [Aria]
* Modified a few things related to guild skills. I hope it doesn't interfere with anyone else's work, and isn't seen as bad. [Sara-chan]
-Support for new guild skills, though they don't work yet. Added guild_skill_get_inf and guild_skill_get_max entries for them based on early info.
-Changed guild_skillup functions based on japanese code, but for a good reason.
It allows for guild skill trees, sort of. I made Kafra Contract and Guardian Research require Guild Approval, for instance.
I think the first four new guild skill requirements are correct, at the least.
I hope everything works alright, it's my first contribution to eA in quite some time and I'm rather rusty at programming of late.
* Fixed compile errors in showmsg.c. [Sara-chan]
* Fixed Mouse's devnpc only saying his quotes once per server reset [Aria]
* Added log_athena.conf & the logs.sql file [Codemaster]
* Added log configurations to inter_athena.conf [Codemaster]
10/25
* Fixed a compiling error in Login-server [Shinigami]
* Added alot of Azndragon's spiffy logs & then added a few things of my own (Silly Dragon, structs are for kids!) [Codemaster]
* Corrected a small bug (forgot to change a few variables!) in my different GM option. [Codemaster]
* Fixed items and mobs in DB. Added new items. [Lupus]
* Fixed some NPC bugs (check NPC=changelog.txt) [Lupus]
* Fixed getting MAX PET ID (SQL only bug) [Lupus]
* Fix char/char.c which was crashing after double freeing logs
[MouseJstr]
* Improved basic server rebooters [MC Cameri]
* Commited common/showmsg.c/.h, previously missing x_X [MC Cameri]
* Added a basic server rebooter program, just use 'runserver.bat' to start up the server. [Shinigami]
10/24
* Added files common/showmsg.c/.h which contain the function _ShowMessage(char *string, int flag) [MC Cameri]
-Check showmsg.h to see how to use it.
-This function is made to replace printf in all the cases, so it MUST be used instead of print from now on.
-Begin your own journey of replacing/removing old printfs, and using the new function.
-This function was previously called ShowMessage() in oA, it is now merged, some changes have been done:
1.Outputting messages to a file is now disabled(commented out).
2.MSG_SQL is now commented out.
3.If the server is out of memory, it will not use abort().
4.Returns 0 if successful, 1 otherwise.
-Example: ShowInfo("hello\n"); will print this to the screen: [Info]: hello
-Always add \n at the end. Unless someone edits the function to add the \n whether it exists or not.
-Just add #include "showmsg.h" wherever you need it.
* Edited ALL makefile's to include showmsg.o -> _ShowMessage(). [MC Cameri]
* Updated readme/gmcommands.html with new @uptime command [MC Cameri]
* Somebody had added some additional noskill checks that prevented
vending from happening in prontera [MouseJstr]
* Added bypass with gm_allskill of npc_selfdestruct2. [Valaris]
* Corrected some minor bugs in some Quests [Shinigami]
* Added new maps (from lateast kRO patch)
Touched WOE (u can't surrender the castle during the WOE), misc fix of the bank [Lupus]
10/23
* Added the option to read GM accounts from a different table than login. Default set to login table. [Codemaster]
* Finished Aria and MC Cameri "Dev edition" NPCs. [Aria]
* Corrected extra stat points given to high classes. [Valaris]
* Added high classes getting the extra 40 stat points on stat reset. [Valaris]
* performance tweaks on socket.c to reduce lag [MouseJstr]
do a "OPT="-g -DNSOCKET" to compile with the changes
enabled.. and tell me if you notice a change in your
performance/lag
* Added @uptime to atcommand.c [MC Cameri]
* Added the stuff for my npc to Dev/quotes.txt [MC Cameri]
10/22
* Replaced some checkcart and checkoption(x) with checkcart(0) in the guild folder [Aria]
* Waiting for various devs to tell me their coords, map, biography, quotes,
moving coords, etc. In the meantime, I replaced them with (x,y),(lols),
(sprite),(somewhere), and if they didn't give me any info, I didn't
add them yet =P. [Aria]
* Added Davidsiaw, Shinigami, Lord, Codemaster, MouseJstr, MC Cameri, and Darkchild
to "Dev edition" NPCs [Aria]
* Revised "Dev edition" NPC layout a bit, should go smoother now. Should be final
layout unless something goes wrong =O. [Aria]
* Fixed the eol markers on some checked in files [Mousejstr]
* Fix two crashes caused by calling isGM on mobs [MouseJstr]
* Added folder "mc_cameri" in npc/other which contains my bank npc. [MC Cameri]
* Changed "Dev edition" NPC layout so that they move by themselves by timers. [Aria]
* Changed "Dev edition" NPCs to walk during quotes, and added biography. [Aria]
* Fixed quest/all_quest.txt not showing the correct description of the binoculars. [Aria]
* Fixed quest/all_quest.txt not going to stop pass and not displaying requirements. [Aria]
* Fixed removing friends from the list [davidsiaw]
* Added PCLoginEvent NPC (When a character logs on, NPC runs as if he/she clicked the NPC) [davidsiaw]
The NPC sample is located in npc/sample/PCLoginEvent.txt (you only need one of these NPCs)
10/21
* Fixed clothes_dyer.txt: Disabled Assassing/Rogues Dye. Also fixed wrong labels [Lupus]
* Fixed hair_dyer.txt: fixed missing menu label [Lupus]
* new_hats.txt 1.4 fixed amount of Fish Tail (300 -> 30), Zeny bugs in Ear of Angel,
Ear of Demon,Big Golden Bell, Mistress Crown,
Crown of The Ancient Queen, Indian Headband, Orc Hero Helm [Lupus]
* Fixed name of a flower in Prontera quest (Dreamy->Illusion) according to our DB [Lupus]
* Fixed item names in the temp Crusader Job Quest according to our DB [Lupus]
10/20
* map/mob.c: Added mob_exclusion_add() & mob_exclusion_check() [Codemaster]
* map/map.h: Changed Vending Struct: amount and value to unsigned variables (so they CAN'T be 0 or less) [Codemaster]
* map/mob.h: Added mob_exclusion_add() & mob_exclusion_check() [Codemaster]
* Aligned the list of commands at the beginning of atcommand.c,
with tabs instead of spaces. [MC Cameri]
* Fixed AtCommand_SetBattleFlag, it was previously being called by "@send"
instead of "@setbattleflag". [MC Cameri]
* Finished basic layout, finished Aria starting to create Shinigami [Aria]
* Started to create "Dev edition" npcs [Aria]
* Fixed a compile error in src/char/char.c [MouseJstr]
* Fixed a bug in @trade where the distance was not ignored [MouseJstr]
* Fixed a potential inf loop in pc.c when multi_level_up is set to no. [MouseJstr]
* implemented Friends List support for TXT version [davidsiaw]
* added queries in main.sql for Friends List. mySQL support for friends list pending [davidsiaw]
10/19
* switched login_sql/login.c to use binary when retrieving
by account name [MouseJstr]
* skill.c & skill.h: added skill_type_cloaking [Codemaster]
* storage.c & storage.h: added storage_storageopen2() [Codemaster]
10/18
* Changed readme layout for 1.0 scheme. [Aria]
* added check for console variable in login_sql [MouseJstr]
* Fully translated the untranslated items in the database.sql for SQL. [Nana]
* Dev/TODO, asigned myself to some items. [MC Cameri]
* char/char.c: changed the online system to omniAthena's [Codemaster]
* char/char.c: added log_char and log_inter [Codemaster]
* char/char.c: added Mugendai's GUI Support [Codemaster]
* char/int_guild.c: added log_inter and db_path [Codemaster]
* char/inter.c: added log_inter [Codemaster]
* char/char.c: added db_path [Codemaster]
* char/inter.h: added log_inter [Codemaster]
* char_sql/char.c: added log_char and log_inter [Codemaster]
* char_sql/char.c: added Mugendai's GUI Support [Codemaster]
* char_sql/int_guild.c: added log_inter and db_path [Codemaster]
* char_sql/inter.c: added log_inter [Codemaster]
* char_sql/char.c: added db_path [Codemaster]
* char_sql/inter.h: added log_inter [Codemaster]
* conf-tmpl/char_athena.conf: Added log_char & db_path [Codemaster]
* conf-tmpl/inter_athena.conf: Added log_inter [Codemaster]
10/18
* clif.c,clif.h,map.h,npc.c,npc.h,script.c: Added NPC Walking. [Valaris]
-npcspeed #; To change npc's walking speed.
-npcwalkto x,y; Move an npc to a position (keep it less than area size, or sprite will glitch and disappear).
-npcstop; Stops an npc's movement.
10/17
* Made the IP autodetection code work under a pure win32
executable
* Fixed the win32 build and made a src\map\Makefile.win32 to
make it easier to do win32 builds of the map server
src\common\utils.c src\common\utils.h src\common\grfio.c
src\common\nullpo.h src\common\timer.c src\common\db.c
src\common\socket.c src\common\core.c src\common\mmo.h
src\common\socket.h src\map\script.c src\map\intif.c
src\map\npc.c src\map\clif.c src\map\map.c src\map\clif.h
src\map\chrif.c src\map\Makefile.win32
* skill.c: Fixed noicewall flag. [Valaris]
* battle.c: Battle calc weapon attack now checks to see if pc_breakweapon successfully broke the weapon then recalculates damage. [Valaris]
* pc.c: Removed broken weapon and equip status, just unequips items again when broken. [Valaris]
Removed useless code from pc_breakweapon and pc_breakarmor. [Valaris]
* Added template for server control from the console [Wizputer]
* conf-tmpl/login_athena.conf: added support for Mugendai's "I'm Alive" Timer and GUI Flush [Codemaster]
* login/login.c: added support for Mugendai's "I'm Alive" Timer and GUI Flush [Codemaster]
* login_sql/login.c: added support for Mugendai's "I'm Alive" Timer and GUI Flush [Codemaster]
* Usable GM commands from server console admin:<gm command>:<map of "GM"> <x> <y> [Wizputer]
* Added server:shutdown to shutdown server and help [Wizputer]
* Added user discretion for console commands in conf files [Wizputer]
10/16
* Fixed Umbala Language Quest, where a certain NPC would freeze you due to an unfinished script [Shinigami]
* Fixed bug in new_hats.txt where free items are given out [Shinigami]
* Correct Morroc warp npc overlaying Kafra npc. [Aria]
* Corrected npc typos. [Aria]
* Skip over npc_selfdestruction2 on allskillup (thanks to celest) [Valaris]
* Fixed some typos in some of the NPCs [Shinigami]
* tweaked the auto-configure stuff to deal better with
machines that have no detectable IP addresses.. is this
possible? [MouseJstr]
src\char_sql\char.c src\char\char.c src\map\map.c
* Made it compile under gcc 2.95 [MouseJstr]
* made the char and map servers auto-configure their own IP's
whenever possible [MouseJstr]
If you do not specify the server IP address, it now determines it
on its own. This means that to get a server running that is
accessable from the internet you should only need to specify the
location of the data.grf files. This eliminates one more point
of misconfiguration.
It does not correctly auto-configure for when you are behind a
router or a firewall since there is no way of determining the
external IP address. On the other hand, we should be able to
eliminate the lan_conf file since we know our IP addresses as well
as our netmask.
10/15
* added @setbattleflag to let me reset a battle_config at runtime [MouseJstr]
* --- RC5 release
* another fix to oA2eA-rc5.sql to fix the sell_price [MouseJstr]
* Redid readme, updated content a bit, and made ps2 poster in preperation for 1.0 RC5 release. [Evera]
* made MAX_HAIR_STYLE, MAX_HAIR_COLOR, and MAX_CLOTH_COLOR
configurable via battle_config. [MouseJstr]
* made the dex spell cast time scaling configurable via battle_config
[MouseJstr]
* made the visible area_size configurable via battle_config
[MouseJstr]
* Reorganized and added the warps into their respective folders, updated map_athena.conf. [Nana]
* Added 2 script commands GETLOOK, GETSAVEPOINT (thanks to Lorky). [Lupus]
* Added kafra_bank NPC - a new bank with daily interst of 0.1#%. [Lupus]
* Changed cast time for champion soul collect to 1 sec (thanks to midas). [Valaris]
* Added midas's fix for +30 hitrate with Sonic Blow. [Valaris]
10/14
* Fixed help.txt for some @gm commands [MouseJstr]
* made login.c compile on gcc 2.95 [MouseJstr]
* Fix backwards compatability with old mob skill formats [MouseJstr]
* Added mail system commands and @refreshonline to help.txt. [Valaris]
* Fixed char guild storage bug [MouseJstr]
* Prevented breakage of Weapons/Armor if the respective Alchemist Chemical Protection skill is applied. [spira]
* Added so nochat end will set manner to 0. [Valaris]
* Added broken item check before breaking (to prevent an item from breaking more than once) [Valaris]
* Re-wrote parts of equipment breaking. It will check to make sure it was not a miss before doing break calculations. [Valaris]
* Re-added negative value exploit fix. [Valaris]
* Fixed guardian opposition search. [Valaris]
* Added @unmute. [Valaris]
* Added check for map existing before cleanup (server will exit instead of crashing if maps aren't found). [Valaris]
10/13
* Fixed parse of antifreeze enable/disable flag. [Valaris]
* Fixed end-of-line flags in source tree [MouseJstr]
10/12
* Prevent attack/skill usage while wearing tux/wedding dress. [Valaris]
* Remove item unequip on tux/wedding equip. [Valaris]
10/11
* Added mail system (for SQL version only). [Valaris]
- @checkmail
- @listmail
- @listnewmail
- @readmail <#>
- @deletemail <#>
- @sendmail <name> <message>
- @sendprioritymail <name> <message>
- Added battle_athena.conf option to enable/disable mail system.
- Added mail.sql for sql mail system.
- Use "*" for name to send to all players. Level must be >= to @sendprioritymail level.
* Added @refreshonline to refresh player online status in SQL version. [Valaris]
10/10
* Modified ja blacksmith repair code to function with our broken equipment system. [Valaris]
* Removed ja repair script commands, they aren't compatible with our broken equipment. [Valaris]
* Fixed error in Morroc jewel dealer. [Valaris]
* Added so supernovices will get flee from improve dodge. [Valaris]
* Fixed assassin and rogue flee bonus, was giving +50 instead of +40. [Valaris]
* Fixed bug with using remove trap on a snared monsters and the monster would stay stuck. [Valaris]
* Added a check for row return in an sql statement in login. [Valaris]
* Added some pointer initializations in map.c. [Valaris]
* Calculate pc status when equipping or unequipping pet items. [Valaris]
* Fixed crash in looting pet skills if loot size was greater than 10. [Valaris]
10/05
* Fixed all mob spawn names (typos, errors, wrong names) according to the mob_db.txt [Lupus]
* Added YggdrasilKid's fixed exp.txt. [valaris]
10/04
* Added missed close file functions in pc.c [Lupus]
* Added some new items, fixed some item names and translated all grabled items in item_db.txt [Lupus]
* Fixed bug in MOB_DB and in MOB_BRANCH DB related to wrong "Elder" ID number [Lupus]
* Fixed toggle for using sql item db in char-server. [Valaris]
* Added interval settings for anti-freeze system. [Valaris]
* Added enable/disable options in char_athena.conf and login_athena.conf for anti-freeze system. [Valaris]
* Re-added anti-freeze system. [Valaris]
* Cleaned up warning in src/common/db.c. [MouseJstr]
* Removed afm map checking from char. [Valaris]
* npc.c - Re-enabled new "OnTouch" function. Added a missing line to npc_event in npc.c(line 667).
pc.c - Added 2 missing "else" statements on (line 3702 and 3842). Now ontouch works correctly and activates
everytime instead of only once like in RC4. [kobra_k88]
* clif.c - Added: npc_scriptcont(sd,RFIFOL(fd,2)); to "void cliff_parse_NpcCloseClicked" function.
Now "close2" script command works properly. Previously, it would freeze the server.[kobra_k88]
10/03
* added oA to eA database conversion .sql [MouseJstr]
* renamed sql to sql-files to eliminate a problem with make [MouseJstr]
* Fixed Assassin Quest where "Nameless One" NPC would freeze after clicking "next". [Shinigami]
* charkillable now returns status on target [MouseJstr]
* skill names now have descriptions pulled from the client [Mousejstr]
* Mapflag "petals" has been changed to "sakura". [Valaris]
* The weather @commands will now set that particular mapflag on until server is restarted, and will send weather effect
to everyone on that map. It also will not allow the occurance of the command more than once. This method means
everyone coming onto the map after the command has been used will see the effect. [Valaris]
* Added yor's latest ladmin.c. [Valaris]
* Fixed bug in delitem script command that caused it to delete all of an item. [Valaris]
* Modified Makefile's to work better in non-sql environment [MouseJstr]
* A lot of work on source tree making it more ANSI C compliant [MouseJstr]
* Finalized the timers on shutdown
turned off malloc debugging on db's. [MouseJstr]
* Added release hook's into db's [MouseJstr]
* Added runflag to core to allow cleaner shutdown [MouseJstr]
* Work on LCCWIN32 for building under Windows natively [MouseJstr]
* modified @mapexit to use runflag for cleaner shutdown [MouseJstr]
* Improve cleanup on exit of map server of all objects [MouseJstr]
* statpoint reader can now be larger then 1432 bytes [MouseJstr]
* Fixed so dancing effect is cleared when warping. [Valaris]
10/02
* Modified battle config muting players option to work more effectively. [Valaris]
* Fixed mute from showing red bubble to players. [Valaris]
* Fixed disguise sprite staying when teleporting. [Valaris]
* Added a special mob ai check in mob.c. [Valaris]
* Fixed petit pet skill's damage from ever increasing. [Valaris]
* Removed pet weight and pet loot options, someone re-added them, and this conflicts with pet skills. [Valaris]
* Added new skills to mob_skill_db (skills for Alchemist summon marine sphere among others) [Valaris]
* Updated skill_cast_db and skill_require_db for summon marine sphere and biocanniablize skills. [Valaris]
* Fix for drops by luck crashing. [Valaris]
* Removed @nuke for now. [Valaris]
* Added japanese ankle snare code. [Valaris]
* Using better code for alchemist marine sphere. [Valaris]
* Reverted back to old method of OnTouch for now for compatibility with older scripts. [Valaris]
* Fixed an infinite loop with preventing multi level up and high novices. [Valaris]
* Storage saving in SQL was based on MAX_INVENTORY. Switched to MAX_STORAGE and MAX_GUILD_STORAGE. [Valaris]
Should resolve items disappearing. Thanks to fov for pointing this out.
* Updated skill_db entries for biocannibalize and summon marine sphere. [Valaris]
* Changed sql item name row sizes to 24, and changed memory allocation to 25 bytes instead of 29. [Valaris]
* Added upgrade_1.0.0-rc5_database.sql (will set name columns of item db to varchar(24). [Valaris]
* Removed anti-freeze system. [Valaris]
* Began removing AFM, unless someone wants to complete this. [Valaris]
* Added an online status timer. Will check online status of players every hour (for sql version). [Valaris]
* Added malloc to map.c. [Valaris]
* Added some variables for new mob exclusion. [Valaris]
* Using malloc in pc.c. [Valaris]
* Added skill reset checks to high/advanced/baby classes. [Valaris]
10/01
* Fixed up const.db. [Valaris]
- Added
bBreakWeaponRate 1068
bBreakArmorRate 1069
bAddStealRate 1070
- Fixed
bMagicDamageReturn 1071
bRandomAttackIncrease 1072
bAllStats 1073
bAgiVit 1074
bAgiDexStr 1075
bPerfectHide 1076
bDisguise 1077
* Rewrote mute disable option in clif.c, it did not need to end status. [Valaris]
* Added a missing check for SC_NOCHAT in clif.c. [Valaris]
* Changed comments on max_lv in battle_config to be less
confusing [MouseJstr]
* Fixed Gypsy Job Quest, added Crusader Job Quest [Lupus]
* Adding missing noquests from previous tree [MouseJstr]
* merged conf files between txt and sql [MouseJstr]
* According to item_db.txt and mob_db.txt fixed some name differences, wrong item names in
pet_db.txt,mob_branch.txt,item_violetbox.txt,item_giftbox.txt,item_cardalbum.txt [Lupus]
* Added specialeffect2 script command. Works the same as specialeffect, but the effect will be applied
to the player interacting with the npc instead of being applied on the npc. [Valaris]
* Added hasitems script command. If a player has any items it will return 1 in an if statement. [Valaris]
* Added npctalk script command. Syntax : npctalk "These are my words"; [Valaris]
* Removed script::say in favor of Valaris's version. [MouseJstr]
* Fixed a bug in guild alliances where it was treating a friend as a foe. [MouseJstr]
* Fixed crash in weapon breaking. Was not doing a block type check on the source. [Valaris]
09/29
* Fixed small, almost non-existing memoryleak, in grfio.c that could
cause some systems to exit the application [Kalaspuff]
09/26
(Dated On Aegis Website)
*--Released 1.0.0 RC4--*
09/25
* Reorganized Npc folder for release
* Updated map_athena.conf
* Remove certain statuses when warping (Cloaking, Sitting, Gangster's Paradise) that would allow the effect to
continue and a player to walk normally. [Valaris]
* Remove speed increase of theif and high thief from improve dodge (only assassins and assassin cross's are
supposed to get this bonus) [Valaris]
* removed more #ifdef's between TXT and SQL [MouseJstr]
09/24
* Added @charkillable (to make players killable) [MouseJstr]
* Added @dropall (throws all items on ground) [MouseJstr]
* Added @chardropall (throws all players items on ground) [MouseJstr]
* Added @storeall (put all items in store) [MouseJstr]
* Added @charstoreall (put all players items in storage) [MouseJstr]
* Added @skillid (look up a skill by name) [MouseJstr]
* Added @useskill (use a skill by id) [MouseJstr]
09/23
* Update Some Npc Stuff In Payon [Darkchild]
* Added Sage Quest [Darkchild]
* added @killable - all players can hit you, even out of pvp [MouseJstr]
* Changed Basilica to prevent the priest from walking [MouseJstr]
* Restore base files in save directory [Yor]
* Castle spawn/conquering fix: [Akaru]
- Spawns monster when the guild is not owned when the server starts
- Spawns emperium with the monsters when guild is not owned yet
- If AgitStart and AgitEnd occurs while castle had not been owned, it is just ignored so that the monsters that are guarding the castle and the emperium would not be killed.
- Prevent spawn of emperium/monsters after castle is owned
- In short, you can clear and conquer the castle any time even when it's not agitstart'ed if the castle is unowned, like in official servers
09/22
* added @killer to let GM's hit players outside of pvp [MouseJstr]
* added @skilloff to turn off skills on a map [MouseJstr]
* added @skillon to turn on skills on a map [MouseJstr]
* added @follow to follow players (including warping after them) [MouseJstr]
* added battle_config option to control the max number of castles a guild can have [MouseJstr]
* upgraded the guild alliance checker [MouseJstr]
* added battle_config to control if ghosty armor works for mobs [MouseJstr]
* Fixed battle_config to control how much GTB actually helps [MouseJstr]
* Fixed battle_config to control if pvp battles give exp or drops [MouseJstr]
* Added map aliasing [MouseJstr]
* changed the map_nick2sd to be able to handle sub-strings for refering to players [MouseJstr]
* made turning of skills on a map actually work [MouseJstr]
* Updated Makefiles/GNUMakefiles to include the compilation of /common/malloc.o [PoW]
09/19
* Corrected @charstoragelist: [Yor]
- because account2storage function create a void storage if it's not exist, somethimes a player could lost its storage.
-> creation of account2storage2 to just ask pointer of storage if exist and use it in @charstoragelist.
* Improved range system of @monster/@spawn (nearest of GM when less monsters) [Yor]
* Client until 2004-09-06 (included) is now completely recognized [Yor]
* Fixed kafra storage request for all new clients [Yor]
09/18
* Changed to Yor's code that doesn't try and read when it's already not found [Akaru]
* Removed check for resnametable in data folder exit -> the resnametable isn't even used if present and it should be optional and not compulsory to have a resnametable in the data folder! [Akaru]
* Added an option to choose which clients are accepted on the server (2nd part and finish: Check accepted versions) [Yor]
* Added an option to choose which clients are accepted on the server (1st part: reading of the option) [Yor]
* Fixed action request (sit, attack, etc..) for all new clients [Yor]
* Fixed solve char name for all new clients [Yor]
* Fixed get char name for all new clients [Yor]
* Fixed an error about packet number on char name function [Yor]
* Added items drop packet for all new clients [Yor]
* Fixed: in clif_send (global send, not individual send) don't send a packet that client doesn't recognize [Yor]
09/17
* Added check to make sure mob is already moving before initiating random walk
when the item they are going to loot disappears. [Valaris]
* Client of 2004-07-13 is now completely recognized [Yor]
* Fixed items take packet for all new clients [Yor]
* Corrected packet sizes for each client version (not set packet size if packet doesn't exist) [Yor]
* Fixed direction position for all new clients [Yor]
09/16
* Client of 2004-07-06 is now completely recognized [Yor]
* Fixed skills to position with all new clients [Yor]
* Fixed incomplete packet of authentification [Yor]
* Fixed size of packets for all clients [Yor]
* Improved detection of client version at authentification [Yor]
* Improved packet parsing of client (search packet version before to parse) [Yor]
* Added packets size of 0x20d and 0x20e [Yor]
09/15
* Added "nude" script command, will strip player of all equipment. Syntax : nude; [Valaris]
* Removed sandstorm flag, since it does not work as intended (is not a constant effect like believed) [Valaris]
* Added specialeffect script command. Syntax: specialeffect #; [Valaris]
* Moved noicewall flag to a better position. [Valaris]
* Added mob type check to skill_castfix to prevent crashing. [Valaris]
* corrected error: skill to id (RFIFOW->RFIFOL) [Yor]
* Added packets size of 0x204 and 0x20b [Yor]
* Fixed skill_to_id with all new clients [Yor]
* Fixed tick sending with all new clients [Yor]
* Fixed items use with all new clients [Yor]
* Fixed move with all new clients [Yor]
* Speedup WantToConnect function [Yor]
* Call correct function with any clients packet - size is not correctly set actually [Yor]
09/14
* Resetlvl will unequip items that require more than level 1. [Valaris]
* Added message about new clients (not actually supported) [Yor]
* Added correct call of clif_parse_WantToConnection function for all client types [Yor]
* Added size of packet 0x0214 [Yor]
* Fixed calls of 'clif_send' function [Yor]
09/13
* Modified item_db to have more name consistency, added more translations for items [Akaru]
* Fixed in clif_sitting usage of a buffer [Yor]
* Fixed in clif_movechar usage of a buffer for clif_set007b [Yor]
* Fixed in clif_spawnpc usage of a buffer for clif_set0078 [Yor]
* Corrected a commented printf in packet 0x2b0e for debug [Yor]
09/12
* Put (commented) parse printf in char.c at the right place (to have all informations) [Yor]
* Added Alchemist JobQuest [Darkchild]
* Added Inn Npcs [Darkchild]
09/11
* Added @charitemlist/@charstoragelist/@charcartlist GM commands to display items of a player [Yor]
09/10
* Added a better id control of monster id in @spawn/@monster... GM commands [Yor]
* Correction of an error at reading of 'wisp_server_name' option (char.c) [Yor]
09/09
* Change @spawn/@monster2... GM commands to spawn in close area [Yor]
* commented some printf in char.c to reduce (a little) lag [Yor]
* Put @timer messages in msg_athena.conf [Yor]
* Add a file for SQL developpers [Yor]
* Changed name of newpacket variable of session (packet_ver) and add a message for nex client version [Yor]
* Added new client packet sizes and expanded packet acception. [Valaris]
* Added snow, fog, rain, leaves, petals, and sandstorm map flags. [Valaris]
09/08
* added clif_specialeffect to clif.c, for displaying a wide variety of effects (information from rofx) [Valaris]
* Corrected in map: creation of new session before to delete previous session_data [Yor]
* Corrected in login/char/ladmin: creation of new session before to delete previous session_data [Yor]
* Prevented redeal dupe. Checks to make sure inventory index has not already been added (client prevents
the possibility of stacking items, but server did not.) [Valaris]
09/07
* Added an option to determinate at which GM level nowarp and nowarpto flags are not more used [Yor]
- new option in battle.conf: any_warp_GM_min_level
- new checks and message about 'from' (nowarp) and 'to' (nowarpto) in GM commands
* Third part of new authentification method (clif_parse_CloseKafra): ignore new 0xF7 [Yor]
* Change name of new0x0072 variable by new_auth (because now, auth packet is 0x72 or 0x7E) [Yor]
* Second part of new authentification method (clif_parse_WantToConnection): Auth by char-server of new packets resolved [Yor]
* Improved check of new packet 0x7E to enter in WantToConnect Function [Yor]
09/06
* First part of new authentification method (clif_parse_WantToConnection) [Yor]
- accepted new 0x7E for wantto connect
- begin to found first authentificaiton and answer to client, but not found
* Improved Char-server: [Yor]
- Fixed a possible error on multi-map servers (no lastpoint)
- Added log about character with same name of wisp server name.
- Added a sub function to disconnect a player (used 3 times)
* Improved. In global message, use buffer to send to other (avoid possible overwriting). [Yor]
* Added Super Novice Job Quest [Darkchild]
09/05
* Fixed noskill flag to actually stop all usable skills when used. [AppleGirl]
* Removed last lag on char-server causing by too much savings (on accreg) [Yor]
* Removed a lag on char-server with a lot of players (for party, like guild) [Yor]
* Removed a big lag on char-server with a lot of players: [Yor]
- guilds was saved every time a player is online and a lot of other time (removed).
- guilds are save only when characters are saved (no more bring forward with characters file, and less savings)
* Added GM message that informs when a player blocks wisps of the server (against some bots that auto ignore wisps from a player) [Yor]
* Added perfect GM hide in @where GM command [Yor on suggestion of PoW]
* Correct NEW shops.txt with error displayed AT START of map-server! [Yor]
* Correct NEW payon.txt that crash map-server AT START! [Yor]
* More changes and official locations for new payon, things in correct place:
- Guild Flags
- Kafra
- Shops/Refiners (except Pet Shop!)
- Most Normal Npcs (not all!)
All Based On ScreenShots From kRO!! [Darkchild]
* Payon Warps about 80% finished, others were no screens taken from! [Darkchild]
* Removed nowarp mapflag and new internal check about gmlevel [Yor]
- gmlevel are checked before to call the function (of the GM comand). If you give gmlevel, people can use the function, including if you give level 0.
if you want refuse some GM commands to normal players, set the level of the command with a value upper than 0 (of set GM_only_command option to yes).
Not add new tests for nothing and use more cpu.
- mapflag: no limit for GM commands: what'is the interest to have gm commands limited like player? (it's rule for all GM commands)
A gm can have the possibility to go anywhere, specialy to check/control player ==> no mapflag!
* Stopped client crashes when jobchanging into another class that doesn't support the weapon you are holding. [Valaris]
09/04
* Added nowarp mapflag [PoW]
* Fixed nowarpto mapflag in atcommand.c [PoW]
* Improved: On hack about name in global message, GM of ALL map-server received hack messages. [Yor]
* Moved some GM messages of GM command from at_command.c to msg_athena.txt. [Yor]
* Added @whogm GM command. [Yor]
* Added a warning when a character has same name than wisp server name. [Yor]
09/03
* Added gm level display in all @who(map) GM command. [Yor]
* Correction: [Yor] - Thanks to [EvilEden]
- Soul Strike mistake (according to http://iro.ragnarokonline.com/game/jobmagskill.asp) - corrected cast time
- npc/quests/monstertamers.txt: The Monster Tamer Shogo gives the Deviruchi 'Contracts in Shadow' (641) -> the Bapho Jr. Tamming Item 'Book_of_theDevil' (642).
* Added monster/egg name to create egg in @makeegg GM command. [Yor]
* Added an option to fix started limited time of a new account. [Yor]
* Added @hatch in help.txt. [Yor]
* Fixed ChaseWalk so now you can't use skills while in chase walk mode. [AppleGirl]
* Fixed Looping of Broken Weapon if you continued to use it even after its broken [AppleGirl]
* Updated Weapon Breaking So Now Icon Will Disappear when you unequip the broken item [AppleGirl]
* Re-Added @hatch and added makepet to atcommand_athena.conf [Darkchild]
* Moved job monsters to their respected files [Darkchild]
* Fixed a bug in sence (showing wrong info!) [Darkchild]
* Changed the npc/jobs/ folders heavily! [Darkchild]
* Added COMPLETE Umbala NPC script [Darkchild]
* Added New Payon maps @ bottom of the map_athena.conf [Darkchild]
* Added New Payon NPCs and Warps [Darkchild]
* Fixed typo and made layout a litle bit better of the readme files [Darkchild]
* Added Items Ability to be unbreakable (using bonus bUnbreakable,100;) it will totally unbreakable
any lower than a 100 it still has a chance of breaking but call it more durable ;p[AppleGirl]
* Added Start_Weapon and Start_Armor to all the other starts in char_athena.conf [AppleGirl]
* Updated skill_require_db and skill_cast_db.txt [AppleGirl]
* Finish to add a (reserved) wisp name for server - part 3: in map-server replace name where server name is used for wisp [Yor]
* Continue to add a (reserved) wisp name for server - part 2: in map-server, reception of the name [Yor]
* Begin to add a (reserved) wisp name for server - part 1: in char-server [Yor]
09/02
* Added Meltdown's weapon breaking ability [AppleGirl]
* Added GM level in front of each line to display only enable GM command of the help.txt. [Yor]
* Removed message about limited time if your have unlimited account (that was for tests. sorry). [Yor]
* Set day/night messages in msg_athena.conf (for foreign people). [Yor]
* Added a function to return a string of msg_table outside of at_command. [Yor]
* Fixed clean database at disconnect when session is not auth. [Yor]
* Fixed a bug (but not solve the bug - need more research to found where solve it) in map_id2sd function. [Yor]
* Set initialisation of ignore list after authentification (not need to be done before) [Yor]
* Reduced size of packet 0x2afe (removed not used value) [Yor]
* Improve first auth part (wanttoconnect) [Yor]
* Added TODO 35 [Yor]
* Made a few adjustments to Archer based class skills making more like normal classes instead of Uber Classes. [AppleGirl]
* Updated the weapon and armor breaking to be more like official RO adding status icons and so on. [AppleGirl]
* Updated a few skills based off a few sites, also fixed other skills that were coded incorrectly. [AppleGirl]
* Fixed double connection with same account [Yor]
- disconnect immediatly
- no enter in database (block or others)
- no creation of session
- no more need to have 'new_fd'
-> less memory usage, less tests
* Removed 'other_fd' not used [Yor]
09/01
* Fixed Rainbow Egg quest in quests_lutie NPC [PoW]
* Added packet length for client server-side friend list, if they choose add the client will not disconnect. [Valaris]
Need to figure out the rest of the packets, then can implement.
* Added server-side friend list 'add' send packet info to packet documentation. [Valaris]
* Fixed: in chrif_authreq, don't send a request to char server if session is not found [Yor]
* Fixed: amatsu.txt, when Carter Moores say: remove 10000 zeny, he removes them now! [Yor]
* Removed an unknown item in shops.txt [Yor]
* Fixed 3 goto in father - acolyte.txt [Yor]
* Fixed bug with colors of 5 numbers/digits (warp to city instead of display with color) - wizard.txt [Yor]
* Reduce size of mage.txt and fix a text in mes (no bug) [Yor]
* Fixed thief.txt script (error on a goto) [Yor]
* Fixed account length (WFIFOL(fd,2) instead of WFIFOW(fd,2)) when char-srv doesn't auth an account for map-srv (0x2afe packet) [Yor]
* Added @job and @charjobchange to be similar with @charjob and @jobchange [Yor]
08/31
* Fixed messages of @(char)jobchange GM commands. [Yor]
* Fixed a return value of jobchange function (pc.c). [Yor]
* Added coredumps by system when crash. [Yor] - thanks MagicalTux
08/30
* Added some comments on gravity commands. [Yor]
* Improved /mm, /monster and /item to have some answers. [Yor]
* Modified skill_cast_db and skill.c to allow for status effect chance of wizard skills
(stun for WZ_METEOR and blind for WZ_VERMILLION) [moonsoul]
* Modified skill_cast_db and skill_db to properly reflect cast params and delay times for assassin cross
skills Create Deadly Poison(407) and Soul Breaker(379) [moonsoul]
* Added damage calcs to battle.c for Assassin Cross skill Soul Breaker(379) [moonsoul]
08/29
* Modified skill_require_db to reflect item requirements for assassin cross skills Create Deadly Poison(407)
and Enchant Deadly Poison(378) [moonsoul]
* Added @charmountpeco/@charpetrename/@charquestskill/@charlostskill GM commands. [Yor]
* Added noicewall.txt to map_athena.conf (commented out), noicewall flag [Valaris]
will not function when pvp is enabled on map.
* Added noicewall flag, noicewall.txt. [Valaris]
* Added wiz's temp fix for higher skill ids and skillnodex db. [Valaris]
* Added: Usage of At command when failed (100%).
* Modified: try to have samme presentation for all at-command code (100%).
* Improved/fixed some GM commands [Yor]
* Added some 'usages' in some GM commands [Yor]
* Added baby classes to equipment codes, they will equip the same as their normal and advanced counter-parts. [Valaris]
* Improved some GM commands [Yor]
- Added in @(char)baselvlup/@(char)joblevelup GM command:
When there are some status/skill points available and we reduce level -> remove points.
- Added counter in @statsall GM command.
- Fixed in @charsave GM command when map doesn't exist.
- Fixed @charbaselvl GM command overflow
- Fixed skill value (and crash) in @questskill/@lostskill GM command
- Fixed number of spiritballs (@spiritball GM command)
* Fixed random PvP crash bug [Lupus]
08/28
* Improved some GM commands [Yor]
- Added memo points in @go GM commmand.
- Added negativ value for @heal GM command.
- Fixed @(6stat-adjustement) GM commands overflow.
- Simplified @Statall GM commands.
- Fixed @guildlvup GM commands.
08/27
* Fixed @(char)zeny/stpoint/skpoint GM commands (no more overflow, etc...) [Yor]
* Improved @memo GM command: [Yor]
You can memo anywhere (it's GM command, not /memo command like for any player).
Without value, display actual memo points.
* Improved @refine GM command: you can reduce refinement. [Yor]
* Fixed @broadcast GM command send broadcast to all Map-servers. [Yor]
* Fixed @(char)base/joblevelup command (any adjustement can be entered). [Yor]
08/26
* In at_command.c: [Yor]
Fixed: initialisation of all strings.
Added: Usage of At command when failed (75%).
Modified: try to have samme presentation for all at-command code (75%).
* Made it so that the pvp_nightmaredrop mapflag would work even without pvp being enabled, now works any time it is set. [Ancyker]
* Added level check on /item and /monster. GM level must be >= both @monster and @item [Valaris]
level specifications (both since they share the same packet)
* Added my own extream mode map flags (disabled by default), makes players drop items at random everywhere (except towns). Full details in map_athena.conf. [Ancyker]
08/25
* Added: display usage when GM command failed (some GM commands) [Yor]
* Added @email GM command to change your account e-mail [Yor]
08/24
* Modified changesex script command use same function as @charchangesex now [Yor]
* Added @charchangesex GM command can be used on offline players [Yor]
* Added gm ladmin command to change GM level of an account [Yor]
08/23
* Fixed some at_command messages: [yor]
- remove all unused messages
- create commented line of all messages in msg_athena.conf to have english, and under, translation if necessary
- add some (arround 80, but not all) messages in msg_athena.conf
08/22
* Fixed: In GM commands, add a 'standard' message when GM level is too low [Yor]
* Changed in battle_athena.conf [Yor]
- atcommand_spawn_quantity_limit: 100 (20 is too short for mass spawnings.)
- unknow: give translation of babelfish to help on the explanation (not writing: 'unknow' to not lost the information!)
- day_duration: 7200000 & night_duration: 1800000 (set default to 30 min night, 2 hours day to show improvement of eathena by DEFAULT)
08/21
* Updated battle_athena.conf to be in English (not Engrish) [Ancyker]
* Updated WZ_FIREPILLAR according 8-10 patch [AppleGirl]
* Updated skill_cast_db and skill_require_db according to 8-10 kRO patch [AppleGirl]
* Added how to use skill_castnodex_db.txt [AppleGirl]
* Added skill_castnodex_db.txt, allowing some skills to be casted with out dex's effect on them
Midas' idea [AppleGirl]
* Improved answer messages of char-server on @(un)ban/@(un)block GM commands [Yor]
* Added answer messages of char-server on @(un)ban/@(un)block GM commands [Yor]
* Added block command (ladmin c) [Yor]
* Added block command (ladmin perl) [Yor]
* Fixed job_db1.txt comments to be in english, also spaced the columns to make it easier to read. [Ancyker]
* Added: possibility to use "" or '' to give an account name in ladmin (Perl) (no more problem with account name which have spaces). [Yor]
* Changed: atcommand_gm_only is set to 'no' by default, because: [Yor]
- GM commands level now works correctly
- GM commands levels are now set by default with diffrent types of GM
* Added @inall/@exall GM command to block/unblock ALL wispers of a player [Yor]
08/20
* Added unblock command (ladmin C) [Yor]
* Added unblock command (ladmin perl) [Yor]
* Fixed: when limited time is in past, add new duration starts from actual time [Yor]
* Added chardisguise/charundisguise [Kalaspuff]
* Added default time [23:59:59] for timeset/banset ladmin (C) commands [Yor]
* Fixed sage rebirth ability at professor job change NPC. [PoW]
* Fixed pecopeco knight/crusader rebirth ability at LordKnight and Paladin job change NPCs. [PoW]
* Added default time [23:59:59] for timeset/banset ladmin (perl) commands [Yor]
* Added a check_ip_flag option in char-server [Yor]
* Added a check_ip_flag option in login-server [Yor]
* Added a display at start of login-server about IP checking configuration. [Yor]
08/19
* Added unban/unbanish command (ladmin c) [Yor]
* Added unban/unbanish command (ladmin perl) [Yor]
* Added parameter to choose how works timeadd (ladmin command) with unlimited time accounts [Yor]
* Fixed @option/@charoption when player is disguised. [Yor]
* Added: some information about TODO 19. [Yor]
* Added: possibility to use "" or '' to give an account name in ladmin (C) (no more problem with account name which have spaces). [Yor]
08/18
* Guardians were immune to skills/spells, fixed. [Valaris]
* Added custom draculax.txt script to display npcskilleffect command. [Valaris]
* Added npc/events/custom folder. [Valaris]
* Fixed Umbala Language Quest NPC bug [PoW]
* Added temporary prevention of crash caused by peco + disguise, will look into a better solution. [Valaris]
* Changed working of putting disguise on (much like Yor's setpos with undisguise) [Valaris]
* Changed disguise id check to > 23 instead of max_pc_class. [Valaris]
* Added bDisguise script command for items. [Valaris]
Syntax : bonus bDisguise,npc_id/mob_id; Example bonus bDisguise,1002; for poring disguise
* Added flag so @disguise command will override any disguise scripts. [Valaris]
* Updated @disguise description in help.txt. [Valaris]
* Added: @ignorelist/@charignorelist to know from which people a player ignore wisps [Yor]
* Renamed: @makepet -> @makeegg (@makepet will be created later to create pet, not a egg) [Yor]
* Fixed Phantom of Opera quest, fixed quests_aldebaren requirements [PoW]
* Changed: anti-freeze disconnection in char-server set from 1mn 15s to 30s [Yor]
* Fixed: free block memory on NULL pointer in char-server do_final [Yor]
* Fixed: reset server information when map-server disconnected from char-server [Yor]
* Changed: anti-freeze disconnection in login-server set from 1mn 15s to 30s [Yor]
* Improved pecopeco checks in @option/@charoption/@jobchange/@charjob [Yor]
08/17
* Fixed pecopeco displayings in @option/@charoption/@jobchange/@charjob [Yor]
* Correction of @rura, @where, @rurap and some other things in GM commands. [Yor]
* Correction of a parameters' errors in GM commands. [Yor]
* Correction of @charzeny Gm command (+ @zeny/@charzeny can add and remove zeny without problem). [Yor]
* Acolyte Job Quest: Fixed Marthilda, Yosuke NPC bugs. [Lupus]
* Added some comments in .conf about @gm [Yor]
* Fixed max value of level_new_gm parameter (not 100, but 99) [Yor]
* Added level_new_gm parameter in login-server to disable or set level of all GM created by @gm [Yor]
* Fixed @GM GM command [Yor]
08/16
* Translation of final message of @gm [Yor]
* Fixed on @GM: When login server is offline, char server sends impossible to create GM [Yor]
* Fixed: refuse @gm GM command to ... a GM :) [Yor]
* Added complete answers of /in /ex /inall /exall. [Yor]
* Added option to send information to online GM when there is a hack, a spoof name, etc. [Yor]
* Added individual ignore management, and wisp checks [Yor]
* Added TODO 33 [Yor]
* Fixed possible overflow with @ban GM command [Yor]
* Speed up a little @ban GM command [Yor]
* Added ignore all for wisps (to same map-server). Sorry, before, I was added only for not same map-server [Yor]
08/15
* Added a resume for 'email_creation' parameter [Yor]
* Fixed double messages when a player wisp/page itself [Yor]
* Added ignore all for wisps [Yor]
* Added better explanation for the new 'email_creation' parameter [Yor]
* Fixed: now, GM accounts are sended to all servers when auto-detect change of GM file is actived [Yor]
* Fixed: at auto-creation of e-mail, don't ask the player if login-server is offline (we need login-server to save e-mail) [Yor]
* Used config_switch instead of atoi for email_creation parameter [Yor]
* Added an option to create e-mail at connection with client [Yor]
* Added authentification with login_id2 (1040) - activated by default [Yor]
* Added partial part of authentification with login_id2 (1040) [Yor]
* Added some missing GM commands in help.txt [Yor]
* Improved search of map-server when map is not found [Yor]
* Added banish in ladmin (c) to be like of GM commands [Yor]
* Fixed Angel Helm quest, fixed Spore Doll quest exploit, Fixed Morgenstein quest bug [Lupus]
08/14
* Added banish in ladmin (perl) to be like of GM commands [Yor]
* Fixed some possible errors with maps management in char-server [Yor]
* Fixed bug of map searching when to few maps on map-servers [Yor]
* Changed some console displayings in char-server [Yor]
* By default, activation of player ip check [Yor]
* Added some of 1040: check of player ip between each server [Yor]
* Fixed dupes in warp scripts, reorganized, thanks to midas fro GH warp [kobra_k88]
* Added possibility to disable automatic reload of GM accounts file [Yor]
* Added log when GM accounts file can not be readed [Yor]
* Changed default of GM accounts file check for 120 sec to 15 sec [Yor]
* Added automatic reload of GM accounts file if it was modified [Yor]
* Added @mapmove, @broadcast, and @localbroadcast in help.txt [Yor]
* Fixed possible error of monster id (GM command) if monster begins by a number. [Yor]
* Added jobname in @charstats command. [Yor]
* Fixed: If a GM command uses NULL pointer as command function, there is no more crash. [Yor]
* Fixed Niflheim&Umbala guides. Fixed Niflheim city. removed 2 NPC clones. [Lupus]
* Added Archer Skills quests, fixed Thief Skill Quest [kobra_k88]
08/13
* Add an option to fix a ban for hacker that spoof name (to set minutes of ban) [Yor]
* Fixed incorrect mob IDs with Valaris's mob_db [Ancyker]
* Added possibility to execute GM commands when you wisp someone [Yor]
* Added a console message when a player try to spoof his name in Global message [Yor]
* Added size of packet in packet send by map-srvr to char-srvr about online players [Yor]
* Added check on individual stat at creation of a character [Yor]
* Added npcskilleffect script command. Will allow npc to show effects of certain skills on specified XY coordinate.
Syntax : npcskilleffect 21,10,148,150; skillid, skilllv, x, y. [Valaris]
* Increase maximum weight can be used with an item now, thanks to orn. [Valaris]
* Fixed mob names in Gonryun , thanks to unsul and Filougarou. [Valaris]
* Fixed muramasa curse rate, thanks to OxiMoron. [Valaris]
* Fixed Aldeabran&Comodo towns. Added Cheese quest to Comodo. Fixed Thief Job Quest [kobra_k88]
08/12
* Begin to add 1040 in login/char/chrif about authentification. not finished [Yor]
* @mapmove, @broadcast, and @localbroadcast can now be used. [Valaris]
* Looting mobs will not continue to item if it disappears, instead will walk away. [Valaris]
* Unitinalized nameid in script.c [Valaris]
* Added position in log when unknown packets are saved (login-server). [Yor]
* Corrected possible error to contact not good player when a wisp concerns player on an other map-server. [Yor]
* Added a function to obtain character name with index in auth structure (char.c). [Yor]
* Corrected check/test error in mapif_send. [Yor]
08/11
* itemdb_searchname fixed (now firstly looks for item aliases 'name', if not found looks for item name 'jname'). [Lupus]
* Optimized getitem, delitem. getweight, fixed there possible scripts exploits [Lupus]
* Thief bug's long name in mob_db.txt was Thief Bug Larva, fixed. [Valaris]
* Thief bug names were mixed around in monster.txt, fixed. [Valaris]
* Fixed incorrect parse of usable item rate. [Valaris]
* Added ban command in ladmin (C), like GM command [Yor]
* Terminated some translations about wisp/page, and control/improvement/correction of wisp/page. All 'found' bugs are corrected [Yor]
* Added translations in inter.c about wisp/page. [Yor]
* Corrected printf datas in intif_parse_WisMessage when map-srv receives wisp message from inter-srv. [Yor]
* Sended an answer when a wisp/page is supressed because of a timeout. [Yor]
* Improved: if inter-srv is asked for a wisp, verify first if the character exists. Don't ask all map-server if it not exists. [Yor]
* Changed Printf in intif_wis_message to have better information. [Yor]
* Improved: Don't ask inter-server for a whisp/page if player is on the same map-server. [Yor]
* Completed some printf and comments in char.c [Yor]
08/10
* Improved map_nick2sd function. Now, sensitiv case is removed when it's possible [Yor]
* Corrected split of broadcast messages in char-server [Yor]
* Message to Valaris from Yor (special file)
* Improved accounts file saving: [Yor]
- be sure that accounts file is save at least every minute.
- save accounts file at end of login-server
* Reduce displaying size on some errors about accounts file reading. [Yor]
* Created log when change sex packet give an invalid value (login-server) [Yor]
* Correction of unknow_packet displaying (in log). Separate is done after 8th char [Yor]
* Give possibility to use account name with spaces in prompt commands finished by account name in ladmin (perl). [Yor]
08/09
* Fixed char-server lag. 3 tests from 3 people appeared to function properly again. [Valaris]
* Basic Implementation of Basilica [AppleGirl]
* Added ban command (ladmin perl) [Yor]
* Correction of bug about auth_fifo when we block a player. Invalid value in array (login.c) [Yor]
* Correction of some tests on server_fd array in login.c [Yor]
* Improved Item_searching in all GM commands [Yor]
* Created @undisguise GM command [Yor]
* Added Umbala town&quests&guide. Some fixes in Yuno warps&shops&guides. Kafra fix. Added Valhallen quest. [kobra_k88],[Lupus]
* Corrected char_divorce (char-server) to remove ring to both partner [Yor]
* Eventual crashfix for clif_authfail_fd [Kalaspuff]
* Corrected @jump GM command. [Yor]
* Reduced size of conf/help.txt (max 200 lines in chat window). [Yor]
08/08
* Added NPCs to @disguise. [Valaris]
* Mob disguises will now show up to player using it as well. Attack animation and sitting do show up to them yet. [Valaris]
* Added @disguise GM command in help files [Yor]
* Added @go 16 to visit prisoners [Yor]
* Reduced number of accounts file saving when informations are not important: [Yor]
- save immediatly any modification/creation/deletion of account (like before)
- use counter before saving if only ip/time of last connection is changed (normal authentification)
because these values are already save in log file.
* Speed up account searching in login-server. [Yor]
* Speed up character searching for @(un)block/@(un)ban. [Yor]
* Created @unjail/@discharge GM command. [Yor]
* According to GM definition level in at_command.conf, set level 20 to online_gm_display_min_level for online files. [Yor]
* Speed up some sortings of online creation (strings based sortings) [Yor]
* Fixed nullpointer crash with disguise in clif_changelook [Kalaspuff]
08/07
* Fixed so spells will still be cast if target walks out of range. (please don't overwrite this again) [Valaris]
* Corrected a little error in online files creation (only 1 player was visible) [Yor]
* Optimized memory management of online list [Yor]
- less memory usage
- less tests and loops (more speed)
- more efficient (use directly char_dat position instead of search it)
* Added Official Assassin Job Quest. Now eAthena contains all 2-1 Job Quests! [kobra_k88]
* Fixed scripts: 32hats, warper2, platinum_skills, added/changed some mapflags and other misc script changes [Lupus]
* Added @disguise command (enter a mob_id or name, and you will appear to others as that mob/npc!)
* Fixed code for mob disguises, should not crash clients now.
* Improved online management code when we receive char_id. [Yor]
* Added code for mob disguises. Can not set yet. Atcommand needs created. [Valaris]
* Improved mmo_char_send006b function [Yor]
* Corrected: when save file of character can not be created, try backup file if flag is set to create it. [Yor]
* Added an option to create backup of characters file [Yor]
The backup_txt file was created because char deletion bug existed.
Now this bug is corrected and no character disappear.
But, create a file with a lot of characters can use CPU usage and decrease hard disk speed.
So, I create an option with default value: no create backup.
* Improved online management code and some others little codes (char.c). [Yor]
* Respawn points of prisoners set to the jail rooms. Jail.txt mapflag addeed. So imprisoned players can't escape. [Lupus]
08/06
* Improved/Optimized some little code (char.c/login.c). [Yor]
* Improved 0x2afa and 0x2afb (map transmissions between char and map). [Yor]
* Optimized global message nick spoof fix. [Valaris]
* Fixed crash in attacking guardians in a null guild. [Valaris]
* Capped earned exp at 1000000000. [Valaris]
* Set area size back to 20 for now, some things in path.c need to be fixed. [Valaris]
* Fixed crash in guardian search. [Valaris]
08/05
* Added @jail <char_name> GM command [Yor]
* Added explanation of @idsearch and @mapinfo in help.txt [Yor]
* Improved @idsearch GM command [Yor]
* Improved a little 3 loops in ladmin.c [Yor]
* Improve some codes in char.c: [Yor]
- less tests in online creation
- mmo_char_send006b: remove duplicated memset, create a char_dat structure pointer
- server_fd[] not seted/modified/checked correctly
* Set max_walk_path back to 48. [Valaris]
* Added translated Gonryun town. Fixed map names of Louyang shops. Added missing Blacksmith,
added extra Rapairmen into refine.txt. In Inns added 4 different prices based on Base Lvl.[kobra_k88]
---------eAthena 1.0.0 RC3 TXT---------
08/04
* Set battle_athena.conf to more accurate settings. [Valaris]
* Decreased default damage delay (stun after being hit) by 75%. [Valaris]
* Max walk path is now correct (17). [Valaris]
* Area size is now correct (14). [Valaris]
* Improved some very little codes in char.c. [Yor]
* Remove displayings of logs on console of map-server [Yor]
use it for DEBUG, not by default, that decrease a lot the performance
* Added (commented) printf in freeze function for debug if necessary [Yor]
* Fixed melee ctrl-attack targetting. [Valaris]
* Reset attack target when equipping arrows. [Valaris]
* Improved (log and remove_control_chars functions). [Yor]
* Added 'available free bytes' in displaying when size is expanded. [Yor]
* Fixed incorrect returns in clif_authok. [Valaris]
* Added pointer checks to chrif.c [Valaris]
* Added some pointer checks to the mob ai. [Valaris]
* New (lag-free) fix for NPCs / mobs not showing up when chars walk around [Kalaspuff]
08/03
* Made so if exp given is less than 0, 0 is given instead of 1 (plants were giving exp) [Valaris]
* Added console displaying to have complete informations when we expand Wdata session. [Yor]
* IMPORTANT: Add a TODO 31 for Guilds' coders. [Yor]
* Old packet 0x2b16 use packet number 0x2b0e. [Yor]
* remove packets 0x2b0e and 0x2b0f. [Yor]
* on character_name ask packet: add account_id of asker. [Yor]
* Improved script code in novice.txt. [Yor]
* Fixed error in alberta.txt. [Valaris]
* Allow player placement on afm-type maps. [Valaris]
* Added afm loading. [Valaris]
* Removed useless code for mob equipment. [Valaris]
* Initial packet setup for possible playable mobs. [Valaris]
* Added check for save_clothcolor for the dyefix, and added another check to make sure player is dyed before using the fix. [Valaris]
* Improvement: Character asking of map-server to char-server is not more case sensitive. [Yor]
* Added TODO 29 & 30. [Yor]
08/02
* Re-added "player not attached" error reporting. [Valaris]
* Fixed errors in 32 hat quest that was causing player not attached errors. [Valaris]
* Fixed input number function: commented out negative input check by Valaris in script.c (all scripts have been revised and fixed),
made actual bug fix of buildin_input func (wrong variable type conversion (int)->(unsigned int) in clif.c
Due to the fixed bug Merchant Job Quest works fine now [Lupus]
* Fixed number input bugs/possible exploits: mage.txt IceCream.txt event_valentine.txt refine.txt
milk_trader.txt grandpa_pharmacist.txt aldebaran.txt alberta.txt juice_maker.txt [Lupus]
* Finished: offline player can be @ban/@block/@unban/@unblock by their character name. [Yor]
* Added packet between map to char to work on offline players (@ban/@block/@unban/@unblock) [Yor]
* Added check on character name with less than 4 characters [Yor]
* Added @chardelitem GM command [Yor]
* Fixed Kafras (no more buttonless msg bugs, Kafra Pass works fine) [Lupus]
* Changed input exploit, only checks for negative now instead of having an input cap. Fixed up vending exploit. [Valaris]
* Added check for src with High Wizard's soul drain. [Valaris]
* Fixed up npc_suicide and npc_selfdestruction, should fix up crashes caused by them. [Valaris]
* Added more pointer checks in the clif_authok function. [Valaris]
* Added some pointer checks to clif.c, should prevent crashes. [Valaris]
* Added some checks about writing errors of item names in GM commands (check cases). [Yor]
* Fixed Hunter Job Quest 1.6 [Lupus]
* Removed Kalaspuff's fix for mob/npc data not always being recieved. It was causing
excessive amounts of lag. [Valaris]
08/01
* Added ability to spawn character pets. [Valaris]
* Added show_mob_hp. [Valaris]
* @item/@item2 GM commands now work correctly with name begining by a number. [Yor]
* @spawn/@monster2 GM commands authorise spawn of guardians. [Yor]
* Fixed so guardians may be spawned outside of castles. [Valaris]
* Fixed/Improved @spawn/@monster2 GM command. [Yor]
@spawn/@monster2 GM command: you can use space in the desired name now (use "") [Yor]
* Added TODO 26 and 27. [Yor]
* Guardians if owned by a guild will display guild name and castle on name request. [Valaris]
* Added checks for null blocks in mapforeachin functions. [Valaris]
* Addition of a GM level 99 account for test of GM commands. [Yor]
* Creation of a default structure for GM levels (sub-gm, gm, admin, etc.). [Yor]
* Improved @time GM command (better code and display more informations). [Yor]
* Added informations about game time in @time command [Yor]
* Added @time command to have server time [Yor]
* Fix night at start if administrator want night and there is no duration for night and day [Yor]
* Fix for NPCs / mobs not showing up when chars walk around [Kalaspuff]
* Begin @unban/@unblock GM command (structure done). [Yor]
* It's now possible to disable Night or Day (set to 0 in battle.conf). [Yor]
* @day/@night: when already the desired cycle, display a message. [Yor]
* Fixed overlapping Ice-Cream Maker NPC, duplicated NPCs, restored duplicated Akaru's MrSmile [Lupus]
07/31
* Terminated: night/day cycles. [Yor]
* When a state comes back to normal, player stay in night if it's night. [Yor]
* Started to add management of day/night: [Yor]
creation of 3 parameters in battle.conf
TODO: usage of these parameters (later).
* added line '// $Id: Changelog.txt,v 1.65 2004/09/29 17:31:42 kalaspuff Exp $' in all code source files to avoid overwrite in CVS. [Yor]
* Fixed number/quantity in @item command. [Yor]
* Fixed when night and disconnect/reconnect, it's night. [Yor]
* Removed extension to check a map in char.c (less tests). [Yor]
* Added savepoint coordonates (x,y) if player is set to a new map (char.c). [Yor]
* Added izlude to check major cities. [Yor]
* Began adding developer mobs. [Valaris]
* Added dyes and fixed client crashes with player mobs. [Valaris]
07/30
* Added temp fix for "nullpo player not attached" error message (script.c script_rid2sd) [Lupus]
* Added checks for major cities in afm format. [Valaris]
* Added preliminary AFM(Advanced Fusion Map) support. Actual map-reading works, but rest of server needs to recognize them.
Thanks to alexkreuz [Valaris]
* Changed Map and NPC loading display. [Valaris]
* Removed unneeded 'End' and duplicate 'end' script commands. [Valaris]
* Added 'language <language>' command in ladmin (perl) to change language of displaying. [Yor]
* Fixed atcommand_gm_only parameter: [Yor]
0: you can define level command '0' for normal players (gm level 0)
1: even you define a level 0 for a command, normal player can not use it. Only GM level 1 or more can use command (if command level is possible for this GM)
Note: This parameter is not like atcommand_for_all (this parameter doesn't exist actually) .
* Fixed Kafras (Cart Service for Super Novice), some warps in Morroc, Aldebaran. [Lupus]
Added official shop into St.Abbey. [Lupus]
Added quests: Lutie Town Hat Quest by TonyMan, 23 new hats custom quest. [Lupus]
Fixed jobchange.txt. [Lupus]
Improved pvp.txt. [Lupus]
Rearranged and updated! (now in 2 variants) mapflags. [Lupus]
Updated map_athena.conf [Lupus]
* Fixed: battle_athena config's atcommand_gm_only; yes was no and vice versa [Kalaspuff]
07/29
* Added 'language <language>' command in ladmin.c to change language of displaying. [Yor]
* Re-added guardians don't attack guild members, someone must have removed it by accident. [Valaris]
* Restore correct displaying (LAN/WAN) previous was good :) (sorry... prabably tiredness). [Yor]
* Fixed some errors in novice.txt script. [Yor]
* Kashy's script fixes. [Valaris]
* Displaying of correct information in LAN/WAN test (displaying was reversed) in char.c [Yor]
* Creation of a char_unblocked directory (char directory is blocked) [Yor]
- modification of makefile
* Added a note in TODO 14: encrypted password - problem with client versions [Yor]
---------eAthena 1.0.0 RC2 TXT---------
07/28
* Added metaller to equipped mobs. [Valaris]
* Added a note in TODO 19 [Yor]
* REMOVED last changelog: cvs server: [14:29:29] waiting for cvs's lock in /usr/cvsroot/athena/src/char [Yor]
* Displaying of correct information in LAN/WAN test (displaying was reversed) in char.c [Yor]
* Added "OMG" emotion to weapon/armor breaking. [Valaris]
* Removed space in a pointer in mob.c. [Valaris]
* Restored previous version of lan management in login.c, because: [Yor]
- check test was incorrect (no mask for controled ip).
- in check test, we recalculate every time the subnetwork (loss of time).
- impossible to have a name definition for the sub-network (some network administrator use a name to define the sub-network).
- no more default configuration of sub-network.
- possible errors in the reading function of the lan file.
- no more logs about sub-network.
- BUT, conserved: - new default name for lan file
- color for displaying of LAN/WAN
* Removed some memsets from chrif.c that caused segfaults. [Valaris]
* Added fix for anklesnare and spiderweb. [Valaris]
* Added Kashy's Lan Support code. [Valaris]
* Removed variables and assignment used by prevent_multi_login. [Valaris]
* Removed prevent_multi_login. (many problems reported with it) [Valaris]
* Fixed armor breaking. Was being broken when pc was attacking instead of when being attacked. [Valaris]
* Fixed checkcart, checkfalcon, checkriding (they didn't return any value) in script.c [Lupus]
* Fixed breeder.txt renter.npc, kafras NPC (added correct class check, added correct checkcart, checkfalcon, checkriding) [Lupus]
* Fixed Kafra functions_kafras.txt NPC (added correct checkcart, fixed cmall cart giving bug) [Lupus]
* Fixed Kafra functions_kafras.txt NPC (fixed Kafra Pass exploit) [Kobra_k88]
* Fixed Hunter.txt coords of the Guild entrance warp [Lupus]
07/27
* Improved check command in ladmin.c [Yor]
* Added map_id check in map_foreachinarea, to prevent eventual crashes [Kalaspuff]
* Added @enablenpc and @disablenpc in help files [Yor]
* Fixed Thunder Storm range (thanks midas) [Kalaspuff]
* Added Anthell NPC trigger in Morroc.txt warps/town [Lupus]
* Added missing Warps for Job Quests of Swordman, Hunter and Thief in jobquests.txt [Lupus]
* Updated atcommand_conf, missing GM-level for @enablenpc and @disablenpc [Yor]
* Removed possible overflow error in @enablenpc and @disablenpc [Yor]
* Updated atcommand_conf, missing GM-level for haircolor [Kalaspuff]
* Improved best job test in novice.txt [Yor]
* Improved @go command: [Yor]
- give list of cities if no value
- added start point (to welcome newbies)
- give possibilities to use city names (@go geffen): at least 3 characters, and some writing errors are tested
* Replaced every Job Quest Script (excluding Assassin, 2-2 and 2-2-X ). Now all 2-1 Jobs have big quests. [Kobra_k88]
* Replaced all Skill Quests (Added Sand Attack Skill Quest). [Kobra_k88]
* Added Legendary Swords quest. [Kobra_k88]
* Replaced 6 towns with new scripts: Izlude, Prontera, Morocc, Geffen, Alberta, Al De Baran. Splitted all towns quests into files. [Kobra_k88]
* Splitted and optimized Kafras & Guides. [Kobra_k88]
* Implemented Kafra Pass! [Kobra_k88]
* Removed free Breeders (replaced by the correct ones). [Kobra_k88]
* Placed all Sign Posts/Signs into a single file. [Lupus]
* Files arrangement, additional warps/scripts correction. Fixed several scripts (NPC overlapping, bad sprites, etc). [Lupus]
07/26
* More accurate pvp point system. It skips ranks, needs more work. [Valaris]
* Fixed crash in executioner card code. [Valaris]
* Fixed mob respawn after death bug. [Valaris]
* Fixed exp problem caused by bounds checking. [Valaris]
* Fixed pvp rank so only one person may be rank 1. [Valaris]
* Any time a person is on a pvp map, the rank will calculate, preventing bad rank packets from being sent. [Valaris]
* Added Job Agencies for Training Ground (novice.txt). [Yor]
* PVP respawn client crash fix. [Valaris]
* Fixed small error in kafra.txt [Syrus22]
* Finished adding special equipped mobs. [Valaris]
* Added 2 living statues behind the NPC 'Monster Master'. [Yor]
* Removed infinite possibilities to have items from helper (novice.txt, new_1-4.gat,60,149). [Yor]
* Added 2 living statues behind the NPC 'Monster Expert'. [Yor]
* Improved a little 1st course of novice training. [Yor]
07/25
* Allow mobs to be equipped with pet armor. mob_avail and clone mobs need to be created. [Valaris]
* Removed [AppleGirl]'s armor breaking code. [Valaris]
* Commented out data_dir. [Valaris]
* Finished exp bounds checking. [valaris]
* Added negative value checks to clif_updatestatus. [Valaris]
* Added exp bounds checking for those rediculously high rate servers. [Valaris]
* Added bounds checking to the @zeny and @charzeny commands. [Valaris]
* Improved and corrected some errors 1st course of novice training. [Yor]
* Removed no guild check for Guardians. Guardians SHOULD attack people with no guild. [Syrus22]
* Fixed Alliance check in mob.c [Syrus22]
* Added armor breaking to normal battle (crits will double the chance) [Valaris]
* Fixed mistake in map.c causing compile errors. [Syrus22]
* Fixed backstab bow penalty option. [Syrus22]
* Fixed Alliance check in battle.c for emp/guardian damage. [Syrus22]
07/24
* Added backstab bow penalty option [Akaru]
* Fixed OnGuardianDied events on prontera castles 3 to 5. [Valaris]
* Another vending fix. [Valaris]
* Fixed bugs in npc headers caused by someone using spaces and not tabs. (kafra.txt, guide.txt, yuno.txt) [Valaris]
* Fixed a vending bug. [Valaris]
---------eAthena 1.0.0 RC1 TXT---------
07/22
* Fixed numerous startup errors in aldebaron castles and one geffen castle. [Valaris]
* Full Guild Wars Script Complete!!! [Akaru]
* Fixed rice ball item. [Valaris]
* Fixed problems with options and peco riding. [Valaris]
* Updated item_db with fix for Sleipnir and more translations. [Akaru]
* Translated item_violetbox, mob_poring, mob_branch, mob_boss. Fixed wizard.txt (wrong item id), headgeatquest.txt(added Zeny check) [Lupus]
07/21
* Updated refine.txt. Added optional features and optimized the file. [Syrus22]
* Evened out the # of columns in mob_db, filled in some blanks. [Valaris]
* Undid compilation errors caused by Akaru's removal of nullpo.o from map-server compile [Valaris]
07/20
* Removed Ghostring from gef_fild13.gat [rg]
07/19
* Fixed Graffiti [Valaris]
* Zeny Bug In Vending Fixed [Darkchild]
07/18
* Added a check about level of at_command when reading the file [Yor]
* Updated /help and conf/help.txt [Yor]
* Added @nuke command in conf/help.txt [Yor]
* More WoE Castles Done [Hikaru]
* Changed: inter.txt->inter.log in log directory [Yor]
* Added some char_log when character can not be created (invalid value, invalid name, etc...) [Yor]
* Changed: char.txt->char.log in log directory [Yor]
* Update features.html/changlog.html [Yor]
* Fixed compilationissue on FreeBSD [Kalaspuff]
07/16
* Remove limit for kami/kamib ladmin command. [Yor]
* Fixed crash in weddingtxt.txt where it was checking an invalid equip index. [Valaris]
* Added some TODO for next version. [Yor]
07/15
* Changed: login.txt->login.log in log directory [Yor]
* added system to choice authorised ip for remote administration [Yor]
* Added listBan/listOk commands in ladmin's. [Yor]
* Speed up a little search_mapserver function. [Yor]
* Init map strings of each servers when map-server send informations. [Yor]
* Added some TODO for next version. [Yor]
07/14
* Fixed another lockup with multi_level_up [Valaris]
* Added kami(yellow)/kamib(blue) commands in ladmin (terminated). [Yor]
* Fixed name of ladmin_athena.conf. [Yor]
* Fixed mvp item reading. [Valaris/Syrus22]
* Added new move packet in map (ver.13jully04) [Yor]
* Added new auth packet in map (ver.13jully04) [Yor]
* Added kami/kamib commands in ladmin. not terminated: to do: login->char [Yor]
* Updated Some Npcs [Darkchild]
* Added Gefenia Warps [Darkchild]
* Added Berzebub Quest [Darkchild]
* Removed random alchemist marine sphere code, until some other system is worked out. [Valaris]
* Fixed infinite loop caused by turning multi level off. [Valaris]
* Added display id the char-server is freezed. [Yor]
* Added debug printf about the max_connect_user in char-server. [Yor]
* Added banadd command in ladmin.c [Yor]
* Removed duplicate check in chrif.c. [Yor]
07/13
* Fixed GM_level code in map-server. [Yor]
problem is in the hash system of the db -> use simple db until we found solution.
note: for this db, it's not necessary to use a db system (little db, 2 values: key, value)
* Improved GM_level code in map-srv, but not solve the problem. [Yor]
* Fixed error of 'return' without value in chrif_parse (chrif.c). [Yor]
* Added character name, account id and gm level on console in map-server when auth is accepted. [Yor]
* Added gm_level of the account on console in char-server when auth is accepted. [Yor]
* Added gm_level of the account on console in login-server when auth is accepted. [Yor]
* Added timeadd command in ladmin.c [Yor]
* Added help for each command (help <command>) in ladmin (perl and c). [Yor]
* Fixed global message (normal speak) name spoof exploit. [Valaris]
* Added timeset command in ladmin.c [Yor]
* Added banset command in ladmin.c [Yor]
* Added vending and trading dupe fixes, thanks to Kinko and Kazzy [AppleGirl]
* Added multi_level_up command to battle_athena and commandline. [Valaris]
Turning it off will allow a player to only level up once from a monster.
* Added: explanations of ladmin_athena.conf keys in conf_ref.txt. [Yor]
* Fixed: init mmo_map_server structure (to 0) in char-server. [Yor]
* Added Gefenia Maps [Darkchild]
* Added @nuke command do to user request. [Valaris]
* Removed nick spoof fix code for now, it broke chat. [Valaris]
* Added some code for @nuke command. [Valaris]
* Finished adding battle_athena options to command line. Every option in battle_athena.conf
can now be passed directly through the command prompt. [Valaris]
07/12
* Added many battle_athena options to command line arguments. [Valaris]
* Allow battle_config_switch to be used globally in map-server. [Valaris]
* Rewrote map-server command-line code. Will now begin implemented nice commands for map-server. [Valaris]
* Added BETA version of ladmin in C. [Yor]
* Added new packet structure of authentification and move - automatic detection. [Yor]
* Added /item command. It is same as /monster. Both commands will search for mobid first, if not found will give item. [Valaris]
* Fixed a displaying error in state command (perl ladmin). [Yor]
* Added /monster command. Syntax is /monster <name/id>. [Valaris]
* Fixed chat spoofing in global messages. [Valaris]
* Prevent nick spoofing in whispers. [Valaris]
* Added check about lenght of packet 0x72 for new client version [Yor]
* Added Pet Equip Items Quest Npc
* Added Pet Taming Items Quest Npc
* Added Slotted Sunglasses Quest Npc
* Added pet_equip_required option for pet skills. [Valaris]
* Changed: create a sub-function for help command in ladmin (perl). [Yor]
07/11
* Added Petit pet skill. [Valaris]
* Added some code for Petite Heaven Drive, still does not work, but doesn't crash. [Valaris]
* Fixed dokebi and baby desert wolf pet skills. [Valaris]
* Added Orc Warrior, Hunter Fly, Poison Spore, Baby Desert Wolf, Baphomet Jr, and Dokebi pet skills. [Valaris]
* Added script command petskillattack.[Valaris]
* Fixed search command in ldamin (perl) ignore sensitive case now. [Yor]
* Fixed default to 0 for save_unknown_packets configuration in login. [Yor]
* Fixed the warnings about implicit declarations. [Kalaspuff]
* Added @guildrecall/@partyrecall commands. [Yor]
* Added Isis pet skill. [Valaris]
* Added petmag script command for magnificat. [Valaris]
07/10
* Added Banker NPC because alot of users wanted one. [Syrus22]
07/09
* Added Sohee pet skill. [Valaris]
* Added petheal command. [Valaris]
* Added Smokie pet skill. [Valaris]
* Added bonus bPerfectHide for Smokie pet skill. [Valaris]
* Added Spore pet skill. [Valaris]
* Created petrecovery script command. [Valaris]
* Added Poring, Drops, Poporing, and Yoyo loot skills. [Valaris]
* Added petloot script command for pet looting. [Valaris]
* Removed pet_loot config settings. [Valaris]
* If pk_mode is on, a message will show up in map-server. [Valaris]
* Fixed pk_mode extra experience and drops so will occur if monsters is 20 levels or higher than player. [Valaris]
* Fixed @killmonster crash caused by implementation of pk_mode. [Valaris]
* Finished setting up pk_mode, should be 100% complete now. [Valaris]
* Added nopvp.txt for pk_mode. [Valaris]
* Prevent novice engagement in pk_mode. [Valaris]
* Fixed up and changed the exp penalty system. [Valaris]
* Pk_mode will now give double exp loss if killed by player. [Valaris]
* Updated conf/help with new commands [Yor]
* Removed more pvp timer stuff from pk_mode [Valaris]
* Increase drop rates +25% if over level 20 on pk_mode. [Valaris]
* Changed +25% exp increase on pk_mode to 15%. [Valaris]
07/08
* Disabled pvp rank and timer if pk_mode is on. [Valaris]
* All maps made pvp if pk_mode is on. [Valaris]
* pk_mode additional 25% exp given over level 20 [Valaris]
* Disable @pvpon and @pvpoff commands if pk_mode is on. [Valaris]
* Added pk_mode option in battle_athena.conf (not yet implemented) [Valaris]
* Reworked prevent_multi_login, should work perfectly now. [Valaris]
* Removed need for eof=2 for prevent multilogin, will now just delete the blocks containing both sessions. [Valaris]
* Added map-servers anti-freezed connection in char-server. [Yor]
* Added char-servers anti-freezed connection in login-server. [Yor]
* Fixed spy commands so that inputting the same id/name turns off the command. [Syrus22]
* Created @partyspy command. [Syrus22]
* Renamed search_guildname function to conform with normal naming standards in guild.c. [Syrus22]
* Created @whomap/@whomap2/@whomap3 commands to show online players on a specifical map. [Yor]
* Updated and Shrunk the Kafra Script. [Syrus22]
* Create @reloadgmdb gm command. [Yor]
07/07
(Dated On Aegis Website)
*--Released 1.0.0 RC3--*
* Fixed crashed with prevent_multi_login. [Valaris]
* Allow infinited local logins if prevent multi_login is on. [Valaris]
* If prevent_multi_login is on, it will disconnect both clients on the same ip. [Valaris]
* Prevent_multi_login will now list the character names of both accounts when logged out, and give a message. [Valaris]
* added updated const.txt and pet_db.txt [Valaris]
* GM accounts/level updating without restarting completed (by reloadgm ladmin command). [Yor]
* Removed gm_account_filename definition from map.conf. [Yor]
* Updated GM level by reloadGM ladmin command. [Yor]
* Added a packet between char and map to send GM accounts and their level. [Yor]
* Added a GM minimum level option to display 'GM' in online files. [Yor]
* Added a warning when a GM account is defined twice in the file. [Yor]
* Check for castle before guardian searches for emblem. [Valaris]
* Prevent stealing from treasure boxes. [Valaris]
* Enable mounted classes to use pedestrian counterpart's items. [Valaris]
* Change so petskillbonus will only update stats(client-side) if need be to prevent errors. [Valaris]
* Fixed crash with putting pets with skills back into egg. [Valaris]
* Added Steel ChonChon, Rocker, and Deviruchi pet skills. [Valaris]
* Added bAllStats(SP_ALL_STATS), bAgiVit(SP_AGI_VIT), bAgiDexStr(SP_AGI_DEX_STR) bonuses for pet skills. [Valaris]
* Added ChonChon, Lunatic, Picky, and Savage Babe pet skills to pet_db.txt. [Valaris]
* Added petskillbonus command for pet skills. Added pet_skill_bonus functions in pet.c. Made pointers for pet skills. [Valaris]
* Added 'GM' display option for online files [Yor]
* Improved GM accounts file reading in login-server [Yor]
07/06
* Changed heal dog in prontera to a poring. [Valaris]
* NPCs with mob sprites can now be used in scripts. [Valaris]
* Removed sd->brokencounter. Made getbrokenid more scripter friendly. Updated refine.txt getbrokenid commands. [Valaris]
* Mounted classes will now use equipment of their pedestrian counterpart. [Valaris]
* Improved management of GM account structure in char-server. [Yor]
* Added packet betwen login to char to send GM accounts value. [Yor]
* Added reloadGM command in ladmin to reload GM accounts file without stop the login-server. [Yor]
* Added listGM/lsGM command in ladmin to list only GM. [Yor]
* Correct an error in loop of char_divorce function (incorrect variable). [Yor]
* Added some comments. [Yor]
* Added a check on start_point.map when configuration is readed. [Yor]
* Modified final message of login log at end of login-server. [Yor]
07/05
* Flamelauncher,frostweapon,lightningloader,seismicweapon, and enchant poison now check to make sure target's weapon is not already enchanted. [Valaris]
* If sage breaks another person's weapon due to enchant failure, it will tell caster. [Valaris]
* Modified venom splasher to hopefully stop crashes caused by spamming. [Valaris]
* SA_FLAMELAUNCHER,SA_FROSTWEAPON,SA_LIGHTNINGLOADER,SA_SEISMICWEAPON now check to make sure target is holding a weapon. [Valaris]
* SA_FLAMELAUNCHER,SA_FROSTWEAPON,SA_LIGHTNINGLOADER,SA_SEISMICWEAPON now will break target's weapon on failure (if one
is being held and caster met requirements) [Valaris]
* Prevent unidentified and broken items from being sold. [Valaris]
* Added buildin_repair for equipment repair npc. [Valaris]
* Added repair npc to forgery in prontera. (refine.txt) [Valaris]
* Added sd->brokencounter and buildin_getbrokenid for item repair npc. [Valaris]
* Corrected some item names [rg]
* Fixed so @repairall success message and effect will only display once. [Valaris]
* Added "No items needed to be repaired" message and added forge success effect to @repairall. [Valaris]
* Added @repairall command. [Valaris]
* Added equipment_breaking option, changed weapon_break_chance to weapon_break_rate (changed to %) [Valaris]
* Crit's will now double weapon breaking chance if turned on. [Valaris]
* Added missing commands in atcommand_athena.conf. [Yor]
* Added @warpto command (same @jumpto). [Yor]
* Added increase in chance to break weapon if using powerthrust. [Valaris]
* Added weapon_break_chance to battle_athena.conf. [Valaris]
* Modified multiple login from one ip prevention(and remove gm bypass). [Valaris]
* Broken weapons will now have their description names in red. [Valaris]
* Speed up characters saving [Yor]
* Improved logs when a character isn't readed [Yor]
07/04
* Completed Prontera guild castles [Akaru]
* break_weapon_chance now works, but broken weapon will not be displayed any differently than a normal weapon.
Also does not yet affect a dual dagger assassin's 2nd weapon. No way to repair yet, and no skills/stats affect breaking chances. [Valaris]
* Update int_storage to include broken column on all items (updates from old version) [Valaris]
* Added @guildspy command. [Syrus22]
* Added weapon_break_chance. (Not implemented yet) [Valaris]
* Added break column for items in athena.txt (will upgrade older versions automatically) [Valaris]
* Changed default required GM levels for GM commands (effective if corresponding directive(s) in /conf/atcommand_athena.conf is/are missing) to 1 [rg]
* Added packet_table_en.txt in doc folder. Has some translations of the client_packet.txt. [Valaris]
* Prevent @monster and @spawn of guardians/emperium. [Valaris]
* Changed killmonster so it will not destroy guardians. [Valaris]
* Added prevent_multi_login in battle_athena.conf to disable multiple logins from same ip (ignores gms, and will
display ip of offending ip if turned on) [Valaris]
* Added checks on player trading to prevent possible exploits. [Valaris]
* Make sure cart is on before vending. [Valaris]
* Cleaned up vending exploit fixes. Now checks to make sure not vending more than max items per skill level. [Valaris]
07/03
* Prevent use of potion pitcher on oneself, fixed potion pitcher so can be used on other targets. [Valaris]
* Fixed the damage code for Falcon Assault, so its not totally useless. [?]
* Update peco riders for people upgrading athena, fixed bug in unmounting pecos. [Valaris]
* Removed option 32 from @option, added @mountpeco command. [?]
* Removing peco will revert to proper job level, fixed so jobchanging from peco status to peco user without peco status,
will update job to peco status. (ie going from Mounted crusader to Unmounted knight, will jobchange to mounted knight) [Valaris]
* Fixed so Peco mounting will not reset job level. Set to remove peco status if jobchanging to a class that does not use them. [Valaris]
* Peco mounting will now jobchange accordingly. [Valaris]
* Added checkfalcon and checkriding script commands. [Valaris]
* Added checkcart script command (since was already being used in scripts) [Valaris]
* Re-added unix fd_setsize definitions, makefile will now pass -DFD_SETSIZE=4096 only for windows compiles.
Tested new implementation of using -DFD_SETSIZE=4096 in makefile on windows box, and got past 64 connections even. [Valaris]
* Improved messages between servers about connections. [Yor]
* Improved pc_resetlvl, fixed the bug about options being left. [?]
07/02
* Added optional match_test in @who/who2/who3 commands (no sensitive case) [Yor]
* If there is no map-server, send right message to client (char-server) [Yor]
* Improved counter of users (char-server) [Yor]
* Improved save of characters (char-server) [Yor]
* Improved sorting of account before save (login-server) [Yor]
* Improved map search at selection of a character (char-server) [Yor]
07/01
* Removed FD_SETSIZE definitions from socket.h, added -DFD_SETSIZE=4096 argument to makefiles. [Valaris]
* Changed exploit fix in chrif.c [Valaris]
* Added assassin mask view_id in item_db [Valaris]
* Added a parameter to authorise minimum GM level at connection (login) [Yor]
* Fixed crash caused by making raw connection to map-server. [Valaris]
* Corrected a possible error at check of online players [Yor]
* Improved characters names control/check [Yor]
* Improved save/load of REG2 strings and values (login) [Yor]
* When there is no char-server, login-server sends proper message instead of a void list of servers [Yor]
06/30
* Fixed a crash when used @charmodel,@charstpoint,@charskpoint and
@charzeny with the wrong name [Kalaspuff]
* Added possibilities for switchs in battle.conf (add some foreign language) [Yor]
* Protected char-server again disconnection of login-server [Yor]
* Added possible protection against packet exploits in chrif.c. [Valaris]
* Login-server: Added an option for the format of the date (log, etc...) [Yor]
Improved some little code.
Added log for char-server packets.
* Correction of prtg_cas03.txt that crash server AT START! [Yor]
* Added functions of mapflag noskill [Kalaspuff]
06/29
(Dated On Aegis Website)
*--Released 1.0.0 RC2--*
06/28
* Added monsters_ignore_gm option. Monster won't attack GMs if turned on unless attacked and within 1 cell. [Valaris]
* Added drops_by_luk option in battle_athena.conf. Anything higher than 0 will turn this option on, and act as a mutiplier.
Example : Setting of 10 with 50 luk would add 5 to the drop rate. So say a card has a drop rate of 2, it would become 7. [Valaris]
* Fixed range and removed skill failed message from Venom Splasher, also moved some of it's code around. [Valaris]
* When a player arrive on map-server, time limit of its account is displayed if not unlimited [Yor]
* Fixed problem where warp portals broke in npc.c [Valaris]
* Updated atcommand_heal so it works like it should [Kalaspuff]
06/27
* Changed Venom Splasher so it will increase damage based on level of Poison React (had it set so the player had to be
using it, but it turns out it doesn't need to be) [Valaris]
* Venom Splasher now works except for the counter part. Damage is instantly dealt if skill is successful. [Valaris]
* Improved @item command to make correctly pet eggs [Yor]
* Updated Chase Walk so you can't attack while you have it casted [?]
* Removed un-needed code for graffiti from clif.c [Valaris]
* Added @ban command (to ban a player for a limited time) [Yor]
* Added @charblock command (you have been blocked by GM team) [Yor]
* Added the mapflag nowarpto [Kalaspuff]
* Updated the function of nowarp [Kalaspuff]
06/26
* When a player is banned (or with a state != 0), he is disconnected [Yor]
* When sex is changed, skills of other sex are reseted (and skill points increased of the same number) [Yor]
* To avoid problem with change sex and equipement, changed sex character is unequipped of all equipment [Yor]
06/25
* Added @charchangesex GM command [Yor]
* Changed: Changesex is now done after that the login-server has confirmed the change [Yor].
becuase sex is saved in account file.
06/24
* Added new classes in change sex script command (buildin_changesex). [Yor]
* Translated pet_db.txt again [Valaris]
* Initial implementation of Venom Splasher. Runs checks on target poison status and whether or not hp is less then 2/3.
Will display skill failed if checks do not pass. Shows effect when successful. [Valaris]
* Added administration system to change final date of a banishment. [Yor]
* Added information about banishment in admin packets about an account. [Yor]
* Updated Chase Walk so it cancels when recasted to fix it. [?]
* Initial implementation for Chase Walk skill for Stalker Class [?]
* When an account is banned, message_error_7 is not more modified [Yor].
06/23
(Dated On Aegis Website)
*--Released 1.0.0 RC1--*
* Added bRandomAttackIncrease for Executioner card. Chance stacks, attack does not. [Valaris]
* Fixed magic_damage_return so it will actually work (for Maya card). [Valaris]
* Add a ban timestamp in the structure of the accounts. Management not yet make [Yor]
06/22
* Don't send a message when it's void (packet 0x8e) - client doesn't display it [Yor].
* Add a refresh time parameter for the html online file (refresh time in the explorer) [Yor].
* Create a job_name function in atcommand to have the name of the job (suppress repeated code) [Yor].
* Added New City: Jawaii
* Fix free memory of online structure at end of char-server [Yor].
* Remove possible duplicated online players (multiple map-servers) [Yor].
* Add examples in state command (ladmin) [Yor].
* Use a function to display warnings in login-server to avoid duplicated messages with import option [Yor].
* Iinitial implementation for magicdamagereturn for Maya Card [?]
* skill_out_range_consume - If it is set 'no' the skill will still be cast (like real servers).
If it is set to yes, skill will fail and sp and items required will be lost. [Valaris]
06/21
* Updated Sacrifice skill code to be more flexible for user usage [?]
* Changed SC_ATTACKPOTION and SC_MATTACKPOTION to SC_ATKPOT and SC_MATKPOT, also added it in item_db.txt [?]
* Guild Territory will now display the # of castles owned or "None Taken". [Valaris]
* Changed SC_ATTACKPOTION and SC_MATTACKPOTION so the increase can be specified in itemdb.txt.
Example : sc_start SC_AtkPot,18,30; (+30 atk for 30 seconds) [Valaris]
* Added SC_ATTACKPOTION and SC_MATTACKPOTION for +30 atk for specified time period (need to get the correct id's yet,
right now giving wrong icons and wrong message). Added entries in const.txt, need more info to complete these. [Valaris]
* Fixed so players will always spawn with guild emblem if one is needed. [Valaris]
* Reduce number of tests in atcommand_character_stats_all (@charstatsall). [Yor]
* Fix memory management for online players list. [Yor]
* Party HP now updates instantly on change. [Valaris]
* Fixed crash when non-guild members are in the area of guardians in attack mode.(Will ignore them) [Valaris]
* A higher level GM is not displayed by who/who2/who3 if he uses HIDEGM. [Yor]
* When a GM with HIDEGM relogs, he is always HIDEGM (only GM). [Yor]
* Improve presentation of online.txt file. [Yor]
* In /npc/quests/magicalhatquest, corrected checking for and deletion of Mage Hat instead of Wizard Hat. [rg]
06/20
* Fixed problem with guardian emblems disappearing [Valaris]
* If a GM use GM HIDE, he is not counted in the number of players [Yor]
* Setup prtg_cas01 to load guardians on server startup and to spawn them when purchased. Also switched from GuardianDied
to OnGuardianDied (other way wasn't working). Changed so guardians won't be killed on agitend. [Valaris]
* Guardians cannot attack and cannot be hurt during non woe time. [Valaris]
* Switched checking of castle.txt format so it won't wipe guardian hp everytime it loads. [Valaris]
* Made it so if guardians were installed in old db, that it will set guardians to full hp based on defense and class. [Valaris]
* Autosave will save guardian HP data. [Valaris]
* Castle.txt visibleG flags will be set when guardians are killed. [Valaris]
* Moved emperium defense upgrade to mob.c. [Valaris]
* Removed guardian hp saving from agitend. [Valaris]
* Added option to choose which columns are displayed in the online files [Yor]
* Added option to choose how to sort online players in the online files [Yor]
* Correction of a new error on guild (from [Valaris]). Old castle.txt files couldn't be readed. [Yor]
* Kafra Points And Rewards fixed [Darkchild]
* Kafra file made a lot smaller with DoEvents [Darkchild]
* Fixed lotsa bugs in Kafra's [Darkchild]
* Initial implementation for paladin's skill sacrifice [?]
* Loading/Saving of guardian hp (loads on agitstart, saves on agitend) [Valaris]
* Added so guardian hp will change accordingly. Moved the guardian defense increase to mob.c [Valaris]
* Implemented guardian and guardianinfo script commands [Valaris]
06/19
* Added Ghp0-7 into castle database [Valaris]
* Added configuration parameters to choose online files filename [Yor]
* Added online files (txt and html) [Yor]
* Added choose of authorised letters/symbols for characters names [Yor]
* Added 3 new Dragon Boat Festival monsters with temporary stats to mob_db [Akaru]
* Translated more of item_db [Akaru]
* Added correct effects for Dragon Boat Festival items [Akaru]
* Solve problem about the change of MAX_GUILDPOSITION by [Valaris] when we load an old guild.txt file. [Yor]
* Improve allow/deny configuration. Write warnings if necessary. [Yor]
06/18
* Add heal_payment.txt as an alternative to heal.txt. [Yor]
* Sex change (char.C): Correct error in jobchange. Disconnect player if connected. [Yor]
* Sex change/account deletion: Change authentification to avoid that player comes back on char-server within the 5 secondes before disconnection. [Yor]
* Save configuration of login-server in log file at start. [Yor]
06/17
* Added fritz's vending exploit fixes. [Valaris]
* Increased max guild castle size to accomodate for novice guild castles. [Valaris]
* Fixed investment in prontera castle 1. [Valaris]
* Implemented of showing guardian hp on guardian investment in prontera castle 1 (factors in defense investment) [Valaris]
* Added strmobinfo script command. Syntax is strmobinfo(x,y). 'y' is the mob's id. x will show different values.
1=english name, 2=jap name, 3=level, 4=max_hp, 5=max_sp,6=base_exp,7=job_exp. [Valaris]
* Disable % and / for 1st symbol of commands (party chat symbol and standard ragnarok GM commands) [Yor]
06/16
* Added fully functional economy for Prontera Castle 2 Guild Wars script [Akaru]
* added fix for cross-class ensemble skills. [?]
* Increased max guild member limit to accomodate for +2 member increase per extension level
and increased max position to 56 to accomodate for all members. [Valaris]
* More of fov's fixes for atcommand.c, chrif.c, and clif.c. [Valaris]
* added fixes for class checking skills like bard & dancer skills and a priest skill. [?]
* updated skill_cast_db and skill_require_db.txt [?]
* changed int_guild.c added +4 for extension skill to match kRO [?]
* remote administration: add a command/packet to change sex of an account [Yor]
* Log detailled reason of refused connection in remote administration [Yor]
* Create a mmo_auth_tostr for accounts [Yor]
* Add a message when char-server is terminated [Yor]
* Save deleted accounts (administration deletion) in log file [Yor]
* Add a message when login-server is terminated [Yor]
06/15
* Added in fov's fixes for socket.c, atcommand.c, npc.c and skill.c [Valaris]
* Added a char_log function. Save unreadable characters in log instead of a specific file [Yor]
* Save invalid account lines in log file. Account will be never lost [Yor]
* Sort characters of same player with the slot number in the characters file [Yor]
06/14
* Fix errors in prtg_cas01, prtg_cas05 and MrSmile scripts [Akaru]
* Added fully functional economy for Prontera Castle 1 Guild Wars script [Akaru]
06/13
* If player is on map-server when the account is deleted, player is now disconnected [Yor]
* Correction of char deletion bug when account is deleted [Yor]
* Added Prontera Castle 5 guild wars script [Akaru]
* Added Prontera Castle 4 guild wars script [Akaru]
* Add checks about duplicated character ids and names [Yor]
* Don't save a reg of a character if its string is void [Yor]
* Read a character even if a reg string is void (don't suppress the char for that) [Yor]
* Save characters in account_id order [Yor]
* Save not readed characters in a file (char file name + "not_readed.txt") [Yor]
* Display line number when a character can not be readed [Yor]
* Initialise char_num! Display number of readed characters [Yor]
* Do right initialization of char_dat [Yor]
* Add red color for ERROR displays in char.c [Yor]
06/12
* Change 0 to '\0' for char in login.c. Add red color for ERROR displays [Yor]
* Optimised Mr. Smile NPC script [Akaru]
* Add a configuration in atcommand.conf to set the 1st character of ALL commands (Now, you can choose @, #, !..., any char that is not control character) [Yor]
* Optimised Prontera Castle 1 and 2 guild wars scripts [Akaru]
* Added Prontera Castle 3 guild wars script [Akaru]
* Changed Graffiti placement, will allow placement of one painting at a time (old one will be replaced). [Valaris]
* Graffiti displays to other plays and remains on map for set time period. [Valaris]
06/11
* Initial implementation of graffiti (does not change directions yet (vertical/upsidedown) and doesn't dissappear [Valaris]
* Add config_switch (0/1, yes/no, ...) for char-server configuration [Yor]
* Add a display when a player does a connection [Yor]
* Add a display when a remote administration does a connection [Yor]
06/10
* Improve compiling instructions for cygwin (socket.h) (depends of the cygwin version). [Yor] with help of [Lostsoul]
* Add parameters in login.conf to display or not parse information [Yor]
* Remove some repeated codes in ladmin / add example when error of command [Yor]
* Remove delete_session error in login.c (sorry) [Yor]
* Display correct message for char-server disconnection [Yor]
* Finish translation of ladmin [Yor]
* Fixed Various Npc Bugs [Darkchild]
* Added green colour for READY displays in char-server, login-server and map-server [Akaru]
06/09
* Add some comments in ladmin [Yor]
* Remove displaying of packet 0x2714 from login-server [Yor]
* Correct length of password send to login-server in char-server [Yor]
* Char-server/login-server: put default lan to 127.0.0.1 instead of any hasardous value [Yor]
* Change displaying of the title [Yor]
* Optimised twin towers script to use duplicate [Akaru]
* Edited to a more user friendly error message for invalid server communication password [Akaru]
* Updated the item_db for more item name consistencies [Akaru]
* Reverted training grounds back to new_1-?.gat maps. [Valaris]
* Added added more variety to sending packets to guild members (same map, same map w/out self, ect) [Valaris]
06/08
* Put a HOWTO in lan_support.conf. [Yor]
* Removed extra semicolons in char.c, map.c, and pc.c. [Valaris]
* Added missing } to clif_storageitemlist in clif.c and found a couple lines ending with 2 semicolons, removed them. [Valaris]
06/07
* Translated refine_db.txt. [Valaris]
* Negative vending fix. [Fritz]
* Correction of mktime parameters in ladmin + some translations [Yor].
* Add some checks on login-server configuration parameters [Yor].
06/06
* Fixed error in skill_tree.txt that would crash some people's servers when changing to Professor. [Valaris]
* Added admin_state directive for enabling and disabling remote administration, instead of testing whether admin_pass == "" [rg]
* Add title to the servers. [Yor]
* Add warnings about default password usage (administration and gm passwords). [Yor]
* Modify adduser.c for the default configuration. [Yor]
* Write the complete admin_packet.txt. [Yor]
* Champion NPC was looking for a priest instead of monk, changed to correct value. [Valaris]
* Small fixes in guide.txt, kafra.txt, and swordsman.txt pointed out by StiNKy. [Valaris]
* Begin splitting monsters.txt [Akaru]
* Removed obselete monster spawn files [Akaru]
* Complete Guild Wars for Prontera Castle 2 script done [Akaru]
* Fixed prevent_logout option. [Valaris]
06/05
* Implemented guild castle regen.(Stackable 2x for castle owners) [Valaris]
* Fixed player logout display on map-server console. [Valaris]
* Added atcommand_spawn_quantity_limit directive to /conf/battle_athena.conf [rg]
* Fixed noskill map flag [?]
* Complete information about login configuration in conf_ref.txt [Yor]
* Add possible configuration values on/off or yes/no in login-server [Yor]
* Guardians and emp will now get +2000 hp for every defense investment within a castle [Valaris]
* Changed the login server to reject all remote administration authentication if the admin_pass directive isn't set, and commented-out the admin_pass directive in /conf/login_athena.conf [rg]
* Changed /src/common/grfio.c so it doesn't try to read GRF files with no respective directive in /conf/grf-files.txt [rg]
* Changed so no one can spawn inside castles. [Valaris]
* Updated item_db with more consistant names, fixed some unknown_items [Akaru]
* Complete Guild Wars for Prontera Castle 1 script done [Akaru]
* Disabled guild breaking, alliance breaking, and alliance making during WoE. [Valaris]
* Will not default to prontera.gat if map-server is not connected. [Valaris]
* Warp players who are not in guild out of castles when WoE starts. [Valaris]
06/04
* Allies now do no damage to guardians or emperium. [Valaris]
* Prevent allies from being attacked by guardians. [Valaris]
* Optimized guardian emblem code. [Valaris]
* Fixed map-server crashing with spawning guardians in untaken castles. [Valaris]
* Guardian emblems will change if castle is taken, but client needs to refresh map. [Valaris]
* Fixed problem where guild emblem would vanish from guild info screen. [Valaris]
06/03
* Improve e-mails checks and LAN/WAN checks on char-server. [Yor].
* Add some explanations in front of accounts file. [Yor]
* Set a non LAN configuration for basic configuration in lan_support.conf. Explain parameters. [Yor]
* add missing parameters of char_athena.conf, and explain them. [Yor]
* Restore default admin pass and gm pass of login_athena.conf, and add missing parameters. [Yor]
* fix missing include in char.c. [Yor]
* Translation of checkversion. Add some explanations in front of file. [Yor]
* Translation of getlogincount [Yor]
* Finish translation of new login.c [Yor]
* Implemented Guardian Emblems [Valaris]
06/02
* Added maximum_level option in battle_athena.conf [Valaris]
* Added maximum level cap to all the level up commands. [Valaris]
* Added "Deal has been cancelled" message to Fritz's input exploit fix. [Valaris]
06/01
* Fixed training ground npcs and warps, removed depreceated maps, using new ones. [Valaris]
05/30
* Small map-server crashing fix with Leo and Guide npcs in training ground [Valaris]
05/29
* Removed item_value_db.txt and all references to it [Valaris]
* Removed unused class_equip_db.txt [Valaris]
* Fixed stat and level reset bug where needed status points wouldnt reset unless relogged [Valaris]
* @monster will summon monster without an amount specified [Valaris]
05/28
* Added heal and usable item rate modifier [Valaris]
* Added pet equipment to equipment rate modifier [Valaris]
* Added option to turn alchemist summon experience and drops on and off [Valaris]
* Alchemist Marine Spheres now randomly explode [Valaris]
* Fixed bug where if certain items lowered max hp (4 mysteltain, and 1 eddga) below 0
would loop to server max hp value. [Valaris]
05/26
* Added New Hats [Darkchild]
* Added New Monsters [Darkchild]
05/23
* Added @charstatsall, views all characters (easy for money bug scaning etc! [Fritz]
* Max to input npc command, 0 is lowest, 99999999 is max, this to prevent money bugs! [Fritz]
05/21
(Dated On Aegis Website)
*--Released 0.5.2--*
05/20
(Dated On Aegis Website)
*--Released 0.5.1--*
* got dye working again [Darkchild/fritz]
05/19
(Dated On Aegis Website)
*--Released 0.5.0--*
05/09
* added Prontera Guild Castle 3 test guild wars test script [Akaru]
* modified Prontera Guild Castle 1 and 2 guild wars test script [Akaru]
* fixed several valkyrie jobchangers [Akaru]
05/08
(Dated On Aegis Website)
*--Released 0.4.2--*
*--Released 0.4.1--*
* added Prontera Guild Castle 2 test guild wars test script [Akaru]
05/07 (Dated On Aegis Website)
*--Released 0.4.0--*
05/06
* added Prontera Guild Castle 1 test guild wars test script [Akaru]
05/04
* removed parses and added ENGLISH! [?]
04/29 (Dated On Aegis Website)
*--Released 953 Delta--*
04/28 (Dated On Aegis Website) (Whose Ideas Were These?)
*--Released 953 Gamma--*
04/27
*--Released 951 Beta--*
* fixed @jobchange crash [credits to Mugendai, commited by Akaru]
04/25 (Dated On Aegis Website)
*--Released 947 Alpha--*
04/23
* added more Professor Skills and added checks [?]
04/10
* added more upper skills from moonsoul's works [?]
02/12-04/10
* CVS Down - Not Many changes could be made...*
02/22 (Dated On Aegis Website)
*--Released 817--*
02/12
* added more mob skill conditions (friendstatuseq, mysyatuseq, friendhpltmaxrate) [RoVeRT]
02/06
* dumped @skillall for @allskill [?]
02/05
* fixed provoke so it doesnt work on undead [RoVeRT]
* added TyrNemesis^ card removal code and min/max settings [RoVeRT]
02/04
* added start_zeny and party_level_range to char_athena.conf [RoVeRT]
02/03
* Improved the prontera.gat map fallback. [Sara-chan]
* Improved the way guild emblems act when logging in. [Sara-chan]
* Undead-class armor, and Undead monster themselves will never be frozen [RoVeRT]
* fixed negative values for NPC to always be 0
01/26
* mob_warpslave correction [RoVeRT]
01/25
* added poison hp reduction [AppleGirl]
01/20
* added intimidate [RoVeRT]
* added mvp checks for some skills
01/17
* added skill check for empelium attack and removed drops from NULL kills [RoVeRT]
01/16
* added secondary effects for when characters with appropriate elemental armor
are within area of effect of sage spells SA_VOLCANO(atk up), SA_DELUGE(max hp up),
SA_VIOLENTGALE(flee up) [moonsoul]
* removeal of @randmon as it isnt needed [RoVeRT]
01/15
* fixed auto spell so it works the prober way [RoVeRT]
01/12
* added mob_warpslave [RoVeRT]
* added mob_warp to check noteleport mapflag
01/07
* added OnCommand for NPC [RoVeRT]
* added new on death method for NPC spawned mobs [RoVeRT]
* added mobcount [RoVeRT]
01/06
* fixed icon status for spear quicken [AppleGirl]
* added quoted name support for @monster [RoVeRT]
01/05
* added indivudal support for card and equip drop rates [RoVeRT]
01/04
* added TF_PICKSTONE and skill check condition for TF_THROWSTONE [AppleGirl]
* added updated cast_db.txt and fixed SA_VOLCANO, SA_DELUGE,
SA_VIOLENTGALE, and SA_LANDPROTECTOR GRAPHICS [AppleGirl]
* Fixed Effects of a few bard Skills. [AppleGirl]
* added option to stop logout for 10 seconds after taking a hit [RoVeRT]
01/03
* added inet_ip support to char and map [RoVeRT]
* added checkcart, checkfalcon and checkriding npc commands
01/02
* added new npc timer support that is independant of a player [RoVeRT]
12/31
* Added @refineall [Mark]
12/30
* added support for custom_item-db.txt with battle_athena.conf option [RoVeRT]
* fixed @charzeny bug
* translated help.txt to english anong with a few other files [RoVeRT]
12/29
* added umbala maps to map_athena.conf [RoVeRT]
12/26
* added Skill_range based on level, and partially working AutoGuard [Moonsoul]
* added Correction of Whip and Instrument Damage Again [Sara-Chan]
12/25
* Spear Quicken Correct Graphics,Fixed Magnum Break (Which Fixes All Other
Splash skills), and Fixed Brandish Spear [AppleGirl]
* Updated Command For @SkillAll Added Atcommand_athena.conf [RoVeRT]
12/24
* Added Side Effects for multiple skills for 2-2 classes [AppleGirl]
12/23
* Added GM Command Called @Skillall [RoVeRT]
* @skillall to skill-up all your current skills [RoVeRT]
* @hide does hide you from all monsters [RoVeRT]
* fire wall limited to 5 per map [RoVeRT]
* to turn on PVP without @pvpon and to disable flywing search for mapflag [RoVeRT]
* no luck with @morph at this time yet [RoVeRT]
* splash attack added but still kinda buggy [RoVeRT]
* Added in Dancing and Song Playing for Bard and Dancer [AppleGirl]
* Added Skill Arrow Check For Archer Skills [AppleGirl]
* Added Skill Status Recovery [AppleGirl]
* Added Skill Bard and Dancer Skills Last Longer [AppleGirl]
* Added Skill Grimtooth does splash damage [AppleGirl]
* Added Skill Steal Fixed and Snatcher [AppleGirl]
* Added Skill SonicBlow only works with Katars Now [AppleGirl]
12/22
* Added Skills Shield Boomerang, Shield Charge, and Defender [AppleGirl]
|