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
|
Sat Dec 26 03:02:37 1998 Mitch Davis <mjd@alphalink.com.au>:
* NEWS: Last minute changes, including AI difficulty levels and
thanks to David.
Sat Dec 26 02:56:58 1998 Mitch Davis <mjd@alphalink.com.au>:
* AUTHORS: Added Martin Hansen to recognise the work he's doing
with the new web pages.
Sat Dec 26 02:33:33 1998 Mitch Davis <mjd@alphalink.com.au>:
* HOWTOPLAY: Put in pointers to INSTALL and README, because
otherwise I think people might be confused by a document called
"HOWTOPLAY".
Sat Dec 26 02:27:15 1998 Mitch Davis <mjd@alphalink.com.au>:
* NEWS, configure, configure.in, client/Freeciv.h,
common/shared.h, data/Freeciv: Updated version numbers to 1.7.2.
Patch submitted by David Pfitzner <dwp@mso.anu.edu.au>.
Wed Dec 23 10:02:33 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* NEWS: Updated NEWS for 1.7.2.
Wed Dec 23 10:01:18 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* Makefile.noimake: Removed unused "VERSION" in Makefile.noimake.
Tue Dec 22 10:21:59 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* AUTHORS, HOWTOPLAY, INSTALL, README, server/stdinhand.c: Minor
doc fixes.
Mon Dec 21 16:12:08 1998 Mitch Davis <mjd@alphalink.com.au>:
* server/civserver.c, server/civserver.h, server/meta.c,
server/meta.h, server/sernet.c, server/stdinhand.c,
server/stdinhand.h: - Rationalised prompt printing, so we only get
one when we need it. It makes startup look a lot nicer. - Added
an int return to the metaserver send routines, so callers know
whether it was successful or not. - Unfolded some routines to
avoid lots of elses or long ifs. Basically, if a routine could
drop out, drop out immediately with return, rather than skip an if
or else if until the end. - Changed the format of human players
from player[someplace] to <player@someplace>. It's more like
other things we see, like mail addresses. - Made some messages
correctly handle singular cases. - Made the list command (and the
corresponding client command) look nicer for AI players. -
Changed the default meta-server info line from "Blood's Music II"
to "(default)". Kinda boring I know... :-( - Warn the server-op
if they try a "meta" command, and we can't send to the metaserver.
- Changed "help_command()" to "explain_option()". - Patched the
stdin handler so blank lines are ignored. - "Help" now does what
"h" does. Explaining options is now done by "explain".
Mon Dec 21 15:34:12 1998 Mitch Davis <mjd@alphalink.com.au>:
* README:
- Now only contains README-stuff!!
- Added introduction section.
- Moved website section to the front.
- Added pointer to the GPL.
- Beefed up instructions on running the server and client.
- Updated the list of server commands.
- Clarified non-localhost example.
- Clarified AI creation.
- Clarified purpose of metaserver.
- Improved bug-reporting section.
- Improved section on mailing lists and new releases.
Mon Dec 21 15:33:22 1998 Mitch Davis <mjd@alphalink.com.au>:
* INSTALL:
- Rewrote lots of stuff.
- Added prerequisite section.
- Now only contains configuration, installing and compiling! :-)
Mon Dec 21 15:31:30 1998 Mitch Davis <mjd@alphalink.com.au>:
* HOWTOPLAY:
- Fixed grammar.
- Rearranged, so that strategy is first, and options is later.
- Made mention of Greggurabi's 12 steps.
- Made mention of Dave's techtree.
Mon Dec 21 15:28:53 1998 Mitch Davis <mjd@alphalink.com.au>:
* AUTHORS:
- Generally tidied things up.
- Condensed people who did not contribute to the 1.7 series.
- Verified that everyone in the ChangeLog is in this file.
- Added Dave to the administrators (hi dave!)
Mon Dec 21 07:19:37 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* AUTHORS: Minor AUTHORS fixes.
Mon Dec 21 07:18:01 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/plrhand.c: Fix messages from, eg, "..the Mongol has
Researched..." to "..the Mongols have researched..." Patch
submitted by Mika Korhonen <mikak@ee.oulu.fi>.
Sat Dec 19 10:13:20 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/mapctrl.c: Slightly improve what happens when focus
shifts to units which have been given the "wait" command. In
particular, if there is only one available unit, it keeps the
focus if it tries to wait.
Sat Dec 19 10:11:00 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/mapctrl.c: Refresh the tile of previous focus unit in
set_unit_focus(), when required, to avoid the previous focus unit
sometimes disappearing when the focus changes.
Sat Dec 19 10:08:36 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/mapctrl.c: Allow units to keep focus at the end of a goto
if they have movement left.
Fri Dec 18 10:15:23 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/unitfunc.c: Fixed "spy eliminated" messages to use
unit_name(). Bug reported by Reinier Post. Also #if-ed out some
code in diplomat_incite(), so now spies/diplomats get the usual
diplchance chance to defend against inciters, rather than being
perfect defenders.
Thu Dec 17 11:07:44 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* AUTHORS, common/diptreaty.c: Adding or changing treaty clauses
after a gold clause exists was broken. Bug report from Mika
Korhonen <mikak@ees2.oulu.fi>.
Thu Dec 17 10:12:16 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/unitfunc.c: When a spy steals tech, say "spy" not
"diplomat" in messages. Bug reported by Andrew Schulman.
Wed Dec 16 11:15:54 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/handchat.c: Attempt to allow ':' character in chat line
messages more flexibly, while still allowing messages directed to
one player, and noticing some player name typos. Based in part on
a patch by Reinier Post <rp@win.tue.nl>
Wed Dec 16 10:37:31 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* data/helpdata.txt: In help text, clarified effect of
Hydro/Nuclear/Power Plants, and for some wonders clarified whether
the effect is for all cities or not.
Wed Dec 16 08:40:22 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ChangeLog: Minor fixes to ChangeLog.
Wed Dec 16 08:37:43 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* .cvsignore: Added undep.sh to cvsignore.
Wed Dec 16 08:35:51 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/player.c: Changed "Gandi" to "Gandhi".
Tue Dec 15 10:30:27 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* Makefile.in, configure, configure.in, ai/Makefile.in,
undep.sh.in, client/Makefile.in, common/Makefile.in,
data/Makefile.in, server/Makefile.in: Added a configure option
--disable-cvs-deps, to mangle the configure-produced Makefiles
produced from cvs sources, to remove the dependency calculation
parts, which depend on features of gcc and gmake. If the options
is not specified, configure makes a decision based on whether gcc
is being used; ideally it should also check for gmake, but
doesn't. If the dependency calculation parts are removed, you
should always do "make clean" before "make" if any header files
(.h files) change.
Tue Dec 15 09:56:45 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/aicity.c: When AI adjusts workers in neighbouring cities to
cope with city emergencies, first check if we own the neighbouring
cities!! From bug report by Andrew Schulman.
Tue Dec 15 09:51:06 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/advmilitary.c, ai/aicity.c, ai/aihand.c, client/repodlgs.c,
server/cityturn.c, server/gotohand.c, server/unitfunc.c: Commented
out a case where client wrote to stdout, and changed some server
and ai stdout printfs to debug level log messages.
Sun Dec 13 17:48:52 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/citydlg.c, client/citydlg.h: Made activate_unit() use a
unit pointer as an argument instead of a unit ID. Added a
prototype for it into the header file too.
Sun Dec 13 17:36:02 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h, client/citydlg.c: Clicking the
middle button on a unit in the city dialog will cause the
"activate and close" action to be taken, without having to go
through a pop-up menu.
Sun Dec 13 17:33:30 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/pixcomm.c: Replaced the Notify action with one that
passes the XEvent as the call_data to the callback. This way the
callback can take different actions based on what button or key
activated it.
Sun Dec 13 01:06:43 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/aiunit.c: Fixed some more cases of map.xsize instead of
map.ysize.
Sat Dec 12 12:07:36 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/mapgen.c, server/unitfunc.c: Minor fixes to some debug
log messages.
Sat Dec 12 11:59:08 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/log.c: Slightly improved handling of repeated log
messages.
Sat Dec 12 11:54:46 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/aiunit.c: Fixed a segfault bug when an easy AI explorer gets
killed in a fuzzily ignored hut.
Sat Dec 12 04:18:53 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* configure, configure.in: Made configure.in require autoconf
version 2.12 or later. May not be quite correct, but autoconf
version 2.9 is reported not to work, and version 2.12 is known to
work.
Sat Dec 12 03:33:58 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/packhand.c: Fix to infamous bug when investigating
cities, leading to occasional segfaults and other anomalies (bug
reported by many people). When a unit moves out of known area,
remove the unit's pointer (about to be freed) from its home city
supported units list. Note that when you investigate a city,
units outside known territory don't get shown in the supported
units area.
Thu Dec 10 15:49:02 1998 Mitch Davis <mjd@alphalink.com.au>:
* ChangeLog: Updated the ChangeLog for the changes between 1.7.1
and 1.7.2.
Thu Dec 10 10:16:34 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/aicity.c: When AI stops building a wonder, use
E_WONDER_STOPPED to follow client message options. Bug reported
by Andrew Schulman. Likewise, when AI sells obsolete
improvements, use E_IMP_SOLD.
Thu Dec 10 09:54:49 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* AUTHORS, client/mapctrl.c, common/unit.c, common/unit.h,
server/unithand.c: Clean up what player gets told when a diplomat
or spy can't do an action due to lack of movement points. There
used to be three possibilities:
- The message "You can't attack there", if the city is occupied.
- The message "Only ground troops can take over a city", if the
city is empty and a random number goes in favor of allowing you
to move.
- Nothing at all, if the city is empty and the random number goes
against letting you move.
Now it always says: "You don't have enough movement left". Also,
if spy/diplomat hasn't moved this turn, allow action, to allow
diplomats to act against cities in mountains. Patch submitted by
Patrick Smith <patsmith@pobox.com>.
Thu Dec 10 09:19:22 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/settlers.c: Changed some cases of map.xsize to map.ysize.
Hopefully this completes fix to europe.sav segfault bug report by
Andrew Schulman.
Wed Dec 9 11:25:14 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/settlers.c: Fixed check to exclude y==game.mapsize when
choosing city sites. Possible partial fix to europe.sav segfault
bug reported by Andrew Schulman.
Tue Dec 8 10:20:47 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* AUTHORS: Added/adjusted names of contributors.
Tue Dec 8 10:14:33 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/advdomestic.c: Small optimization to calc of AI barracks
values, based on a patch by Tony Stuckey.
Thu Dec 3 11:33:57 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/gamehand.c: Adjust initial map knowledge depending on
game.civstyle. Patch submitted by Anthony J. Stuckey
<stuckey@jaka.ece.uiuc.edu>.
Thu Dec 3 11:18:37 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* Imakefile: Fixed rule for client/Freeciv.h, to work with Solaris
make. Patch submitted by Reinier Post.
Thu Dec 3 11:07:23 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* configure, configure.in: If we're using gcc, use -Wall, to
encourage patches which are -Wall clean.
Thu Dec 3 10:50:52 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* configure, configure.in: When configure fails due to not finding
X or Xpm, try to give some hints.
Wed Dec 2 10:17:16 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/city.c: Updated Greek city names, submitted by Rizos
Sakellariou <rizos@cs.rice.edu>.
Wed Dec 2 10:08:40 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* data/helpdata.txt: Minor help text fixes.
Wed Dec 2 10:01:03 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/city.c: Adjusted and additional Roman and German city
names. Patches submitted by Massimo Campostrini and Peter
Schaefer.
Wed Dec 2 09:44:44 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* acinclude.m4, aclocal.m4, configure, configure.in: New macro
FC_XPM_PATHS to allow user to specify Xpm paths more easily, or
guess paths in /usr/local if the appropriate Xpm files are found
there. Also renamed AC_EXPAND_DIR to FC_EXPAND_DIR.
Tue Dec 1 09:46:54 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* Makefile.in, config.h.in, configure, configure.in,
ai/Makefile.in, client/Makefile.in, common/Makefile.in,
data/Makefile.in, server/Makefile.am, server/Makefile.in: Fix to
not include -lnsl -lsocket twice on client link line (already once
in X_EXTRA_LIBS), but still include them (if required) for the
server, using new SERVER_LIBS. Should also fix problems with
these libs on IRIX. Don't check for socket func because of
resulting problems with LIBS. Die with an error if can't find
X11/xpm.h include.
Sun Nov 29 07:05:09 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/finddlg.c, client/gotodlg.c, common/game.c,
common/game.h, server/citytools.c, server/civserver.c,
server/plrhand.c: Some minor fixes indicated by Solaris cc
warnings. Removed some bad (void*) casts to the fourth (function)
arg of qsort; changed game.randseed to type int instead of
RANDOM_TYPE (= uint), so the (int*) in settings can point to it
properly, and because we can't store a non-int value in it anyway;
fixed some trivial cases of "statement not reached".
Sun Nov 29 04:23:17 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* configure, configure.in: Use X_CFLAGS to get appropriate -I when
checking for X11/xpm.h
Sat Nov 28 07:21:15 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* README.AI: Band-aid update to README.AI
Sat Nov 28 07:20:15 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/clinet.c, common/shared.c, common/shared.h,
server/sernet.c: New function mystrerror, to work around systems
where a real strerror function wasn't found by configure.
Fri Nov 27 12:02:00 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/map.h: Set default diplcost to 0. Patch submitted by
Mirar <mirar@idonex.se>.
Fri Nov 27 11:32:43 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/helpdlg.h, client/menu.c, data/helpdata.txt: Added help
page for Zones of Control.
Fri Nov 27 11:18:44 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* acinclude.m4, aclocal.m4, configure: Fixed FC_CHECK_X_LIB to put
LIBS rightmost on trial linker line. Patches submitted by Sverker
Wiberg and Greg Wooledge.
Fri Nov 27 11:15:58 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/Makefile.am, client/Makefile.in: Fixed client link line
to not include X_PRE_LIBS twice. Patch submitted by Greg
Wooledge.
Fri Nov 27 11:12:52 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/repodlgs.c, common/city.c, common/city.h, common/game.c,
common/game.h: Fixed minor problem with the city report if any
cities have duplicate names or truncated names. In the process
improved city report popup-time for large numbers of cities by
sorting on city pointers rather than city_id's. Changed
city_name_compare() to operate on city pointers rather than
city_id's, and moved from game.c to city.c. Changed city report
to indicate truncated names with a "." at the end.
Thu Nov 26 10:45:44 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/city.c: An additional city name pool for use by races
which run out of city names. Names are small town names from the
GPL'd game xconq. Patch submitted by Massimo Campostrini
<campo@mailbox.difi.unipi.it>.
Thu Nov 26 10:43:37 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/xmain.c: Initialize the random number generator in the
client, for city name suggestions.
Thu Nov 26 10:35:50 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/Freeciv.h, client/repodlgs.c, data/Freeciv: Allow city
names up to length 31 (ie MAX_LENGTH_NAME-1) when naming or
renaming a city. In the city report abbreviate names longer than
15 characters.
Thu Nov 26 07:18:55 1998 Lalo Martins <lalo@debian.org>:
* debian/rules: changed CREDITS for AUTHORS in debian/rules
Thu Nov 26 07:01:27 1998 Lalo Martins <lalo@debian.org>:
* debian/changelog, debian/civ, debian/civ.man,
debian/civclient.6, debian/civserver.6, debian/control,
debian/copyright, debian/menu, debian/rules: updating the debian/
directory
Thu Nov 26 06:45:07 1998 Lalo Martins <lalo@debian.org>:
* build.debian: script to automatically build Debian packages of
CVS snapshots, directly from the local CVS tree
Wed Nov 25 11:51:45 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/game.c, common/game.h, server/civserver.c,
server/gamehand.c, server/plrhand.c, server/stdinhand.c,
server/stdinhand.h: Removed "default" skill level. Instead set
and display skill levels explicitly. Changed default skill level
to "easy". Set skill level explicitly for aifill players and when
a human player is toggled to ai control. New function
set_ai_level_direct().
Wed Nov 25 11:38:11 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/player.c, common/player.h, server/plrhand.c,
server/settlers.c, server/stdinhand.c: Implemented
player.ai.expand to make easy mode AI less expansionistic.
Wed Nov 25 11:26:11 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/advmilitary.c, ai/aicity.c, ai/aihand.c, ai/aiunit.c,
server/settlers.c: Modified some AI decisions to be fuzzy.
Wed Nov 25 11:19:46 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/player.c, common/player.h, server/plrhand.c,
server/stdinhand.c: Framework for fuzzy AI decisions for easy AI
mode.
Wed Nov 25 07:17:38 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/helpdlg.c, client/optiondlg.c: Fudged empty switch/goto
labels, to placate Solaris cc/xmkmf/makedepend. Based on
information from Reinier Post.
Wed Nov 25 07:08:58 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/packhand.c: In handle_unit_info(), for a new unit,
initialize unit unhappiness, upkeep, fuel, and ai.control, based
on packet rather than to zero. Fuel part fixes a bug with display
of bomber moves left, reported by Andrew Schulman; upkeep and
unhappiness parts fix bug where the unit upkeep and unhappy icons
in the city report were not shown initially when a player
reconnects.
Wed Nov 25 07:04:05 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/helpdlg.c: Fixed help on wonders; was accidently showing
improvement style information, with upkeep instead of obsolete-by.
Bug reported by Massimo Campostrini.
Sun Nov 22 06:04:56 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* Imakefile: Fixed position of client/Freeciv.h rule, thanks to
Reinier Post. Also changed the rule to add the comments at the
top of Freeciv.h
Sat Nov 21 08:04:53 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* configure, configure.in: Changed to avoid using "test -z" (for
testing Xaw3d) since caused problems on Solaris.
Sat Nov 21 07:45:08 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* config.h.in, configure: Autogenerated file updates.
Sat Nov 21 07:42:58 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* configure.in: Don't do the X-related configure tests if
--disable-client, to allow building the server on a machine
without X. From a patch by Sverker Wiberg.
Sat Nov 21 07:41:46 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* configure.in: Minor corrections to VERSION and PACKAGE defines
pointed out by Per Mathisen. This change makes VERSION and
VERSION_STRING in config.h identical, but it seems easiest to
leave them both there.
Sat Nov 21 07:40:46 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* acconfig.h, configure.in, client/pixcomm.c, client/pixcommp.h:
Allow using of Xaw3d via a configure option, --with-xaw3d. Thanks
to xaw3d patch by Trent, and configure patch by Markus Linnala.
Fri Nov 20 23:48:02 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/registry.c: Minor extensions to registry format to allow
future use with client options file: allow '#' as a comment
character, and allow space before equals sign.
Fri Nov 20 23:45:22 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/optiondlg.c: Added a currently unused line to the client
options files, so that in the future we should be able to
transparently change to using registry functions to parse this
file.
Fri Nov 20 23:42:36 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/climisc.c, client/graphics.c, client/graphics.h,
common/shared.h: Moved "vers" define from graphics.h to shared.h
(in future to config.h?) and renamed to WORD_VERSION; allows
removing includes for config.h and shared.h in graphics.h
Fri Nov 20 23:24:04 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/maphand.c: Swamps caused by global warming no longer
retain irrigation.
Wed Nov 18 12:10:32 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* acconfig.h, acinclude.m4, aclocal.m4, config.h.in, configure,
configure.in: Put configured FREECIV_DATADIR into config.h, for
even tidier compile lines.
Wed Nov 18 11:10:35 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/cityturn.c: More minor fixes to foodstock with a granary,
re citysize and odd values of game.foodbox, this time for famine
situations.
Tue Nov 17 09:41:41 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/cityturn.c: Improvements to code and for odd foodbox, in
city_increase_size(), suggested by Tony Stuckey.
Tue Nov 17 09:19:12 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/gotohand.c: Made the warstack queue into a circular
queue, to fix a bug where we could write past the end of warstack
for large maps. Fixes a segfault bug reported by Andrew Schulman.
Tue Nov 17 08:01:38 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/repodlgs.c: Made some columns in the city report right
justified and some left justified.
Tue Nov 17 07:59:24 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/plrhand.c, server/stdinhand.c: Formatted the titles of
some reports better.
Mon Nov 16 11:02:54 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/connectdlg.c: Fixed a bug where the metaserver dialog
sometimes became unavailable. Bug reported by Nicolas Brunel
<brunel@ham.esil.univ-mrs.fr>.
Mon Nov 16 10:35:35 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/civserver.c: Fixed bug where huts reappeared when
reloading a savegame based on a scenario. Bug reported by Andrew
Schulman <andrex@alw.nih.gov>.
Sun Nov 15 08:41:15 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/optiondlg.c: Avoid using snprintf (non-standard).
Sun Nov 15 08:04:54 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/shared.h: Conditionally put VERSION defines back in
shared.h (for now?) so Imakefile and Makefile.noimake can work.
Sun Nov 15 03:15:21 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* stamp-h.in: Put stamp-h.in in cvs again.
Sun Nov 15 01:53:21 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* Makefile.in, aclocal.m4, config.h.in, configure, ai/Makefile.in,
client/Makefile.in, common/Makefile.in, data/Makefile.in,
server/Makefile.in: Autogenerated files from previous batch of
changes: aclocal ; autoheader ; automake ; autoconf
Sun Nov 15 01:49:43 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* Makefile.am, configure.in: Configure options `--disable-client'
and `--disable-server', to only build the server or client
respectively. The default is to build both. From a patch
submitted by Sverker Wiberg <sverkerw@Update.UU.SE>.
(But note: I believe configure still checks (and insists on) the X
libs even if disable-client; needs to be fixed. --dwp)
Sun Nov 15 01:48:52 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* configure.in, client/Makefile.am: Link only the civclient
against X11 libs. From a patch by Markus Linnala.
Sun Nov 15 01:48:08 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* Makefile.am, acconfig.h, acinclude.m4, configure.in: Attempt at
improving detection of X11 libraries. Based on patches by Markus
Linnala and Greg Wooledge.
Sun Nov 15 01:46:56 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* Makefile.am, acconfig.h, configure.in, common/shared.h: Use
config.h and -DHAVE_CONFIG_H instead of very long compile lines.
From a patch by Markus Linnala; also thanks to Per Mathisen.
Sun Nov 15 01:45:45 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* configure.in: Relatively simple and self-contained configure.in
changes, based on a patch submitted by Markus Linnala
<maage@cs.tut.fi>.
Setup all version defines fully in configure.in
Added AM_MAINTAINER_MODE; use configure option
--enable-maintainer-mode to enable make rules and dependencies not
useful (and sometimes confusing) to the casual installer. (Note
this doesn't do what I thought; it determines whether aclocal etc
are rerun by make -- it doesn't affect source compilation
dependencies. -- dwp)
Configure debugging options: --enable-debug=[no/minimum/yes]
--enable-debug=no defines NDEBUG, so asserts aren't included at
binary. --enable-debug=yes defines DEBUG. It does not have any
effect now, but maybe it is needed. --enable-debug=minimum does
not define anything (this is the default). (Removed old debug
example.)
Added program checks for AWK, LN_S (from autoscan); commented out
AC_PROG_MAKE_SET already done by AM_INIT_AUTOMAKE.
Moved checks for library functions down (per autoconf docs).
Combined AC_CHECK_HEADERS lines, and added sys/ioctl.h (from
autoscan).
Added AC_STRUCT_TM (from autoscan).
Added strstr to AC_CHECK_FUNCS, and comment re gettimeofday (from
autoscan).
Sun Nov 15 01:44:11 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/clinet.c, client/connectdlg.c, client/graphics.c,
client/graphics.h, client/helpdlg.c, client/optiondlg.c,
client/xmain.c, common/shared.h, server/civserver.c,
server/gamehand.c, server/meta.h: Conditionally included config.h
for those files which will need it (at this stage only files which
use VERSION defines, since other configure defines are not used).
From a patch by Markus Linnala.
Sun Nov 15 01:42:38 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/Makefile.am, client/Makefile.am, server/Makefile.am: Removed
space between -I and its argument, and other minor formating.
From a patch my Markus Linnala.
Sat Nov 14 06:23:41 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/capability.c: Use mystrdup instead of strdup.
Sat Nov 14 00:55:38 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/Makefile.am, client/Makefile.in: Fix to allow building
freeciv in another tree than the sourcetree. Patch submitted by
Mirar <mirar@idonex.se>.
Sat Nov 14 00:52:51 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* data/Makefile.am, data/Makefile.in: Added scenario savegames to
pkgdata_DATA so they get included in distribution.
Sat Nov 14 00:49:59 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/menu.c, client/messagedlg.c, client/messagedlg.h,
client/optiondlg.c, client/optiondlg.h, client/repodlgs.c,
client/repodlgs.h, client/xmain.c: Added ability to save and
reload client "settings", that is: options, message options, and
city report configuration. The settings file is
$HOME/.civclientrc, or instead $FREECIV_OPT if that environment
variable is set. Settings are loaded at startup if the file
exists, and saved from a game menu option. Based on a patch
submitted by Massimo Campostrini <campo@mailbox.difi.unipi.it>.
Sat Nov 14 00:10:10 1998 Mitch Davis <mjd@alphalink.com.au>:
* AUTHORS, Makefile.am, Makefile.in: Moved the contents of CREDITS
to AUTHORS, as the Makefile that configure generates looks for
AUTHORS, not CREDITS. I've been meaning to do this for a long
time.
Sat Nov 14 00:02:57 1998 Mitch Davis <mjd@alphalink.com.au>:
* Imakefile: This patch recreates client/Freeciv.h from
data/Freeciv. Patch submitted by Reinier Post <rp@win.tue.nl>.
Thu Nov 12 08:33:47 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* configure, configure.in, client/Makefile.in: Set
-DFREECIV_DATADIR to pkgdatadir without modifying
client/Makefile.in directly. Patch submitted by Mirar
<mirar@idonex.se>.
Thu Nov 12 07:57:22 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/messagedlg.c, common/events.h, server/cityturn.c,
server/unitfunc.c, server/unithand.c: Fixed some annoyances with
the messages window: Added some new event types:
E_CITY_AQ_BUILDING for when a city needs an aqueduct/sewer and is
already building one (inspired by a patch by Michael Bickel);
E_UNIT_LOST_ATT and E_UNIT_WIN_ATT to be able to differentiate in
message options between combat results from defenders (initiated
by others) and attackers (initiated by self); similarly
E_MY_DIPLOMAT for diplomatic actions initiated by self (as opposed
to existing E_DIPLOMATED for those initiated by others). Also
default some event messages as "output window only".
Thu Nov 12 07:27:15 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/messagewin.c: Fixed meswin_allocate() to add an extra
space for the string_ptrs sentinel.
Thu Nov 12 07:09:55 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/city.c: Fixed could_build_improvement() so wonders can be
built even when obsolete.
Tue Nov 10 10:44:36 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/Freeciv.h, client/civclient.c, client/menu.c,
client/messagedlg.c, client/messagedlg.h, client/messagewin.c,
client/packhand.c, common/events.h, data/Freeciv: Combined the
message options and message filter dialogs into a single dialog,
and allow requesting individual popups for any event type, not
just the three in the previous "Message options". Also, you can
now specify independently whether event messages go to the output
window and/or the messages window. Also, the message labels in
the dialog are sorted alphabetically.
Tue Nov 10 10:34:50 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/chatline.c, client/chatline.h, client/climisc.c,
client/climisc.h, client/menu.c: Added menu option to clear the
output window. Also decided to put all output window functions
into chatline.c, with append_output_window
(that is, moved log_output_window there from climisc.c).
Mon Nov 9 11:15:04 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/unit.c, server/citytools.c, server/unitfunc.c,
server/unitfunc.h, server/unithand.c, server/unittools.c:
Diplomat/Spy fixes from Kris Bubendorfer
<Kris.Bubendorfer@MCS.VUW.AC.NZ>.
1. You now no longer get the the spy/diplomat menus if you have
insufficient moves to complete.
2. When you bribe a unit you no longer get all the hit points
back. Therefore bribing a damaged unit will result in you getting
a unit with the same damage. This also applies when you bribe a
city - all units inside retain their original hit points.
3. As per an earlier consensus on the list, damaged units cost
less to bribe by the following formula:
cost = original_cost/2 + (original_cost/2 * hp_left/hp)
Therefore a unit with just 1 hp left will cost just over half the
undamaged cost.
Sun Nov 8 00:32:52 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/civserver.c: Fix per-connection capabilities: in the
server the client cap string was never copied into the connection
struct! Also use our_capability instead of raw CAPABILITY in
accept_new_player.
Sat Nov 7 02:55:28 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/city.c, data/helpdata.txt: Changed possible locations
where Hydro Plant (and Hoover Dam) can be built to match Civ1 (was
next to Ocean/River, now Mountain/River).
Sat Nov 7 02:35:28 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/map.h: Increased maximum value of the researchspeed
server option from 20 to 100.
Sat Nov 7 02:23:58 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* README.AI, server/stdinhand.c: Made the default AI skill level
correspond to "normal".
Thu Nov 5 07:46:53 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/civclient.c, client/clinet.c, client/clinet.h,
client/packhand.c, client/xmain.c, common/packets.c,
common/packets.h, common/shared.h, server/civserver.c: Implemented
per-connection capabilities. Replaced c_capability and
s_capability with our_capability, and added capability string to
connection struct. See comments in common/shared.h
Thu Nov 5 07:29:06 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/aicity.c, common/unit.c, common/unit.h, server/citytools.c,
server/unitfunc.c, server/unitfunc.h, server/unithand.c,
server/unithand.h: New function
transporter_min_cargo_to_unitlist(), for when a boat is disbanded
etc and there are other boats on the square. New functions
wipe_unit_safe() and handle_unit_disband_safe() which take an
iterator argument and iterate past wiped units to avoid dangling
pointers and segfaults. Unlink passenger genlist in wipe_unit
(wipe_unit_safe) to free genlist memory.
Thu Nov 5 07:06:59 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/messagedlg.c: Fixed some spelling in message_text[].
Thu Nov 5 07:00:43 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/Freeciv.h, client/repodlgs.c, data/Freeciv: Configurable
city report: can choose which columns are displayed, and extra
columns are now available. Default setup is similar to before,
with some formating changes. Available new columns are: more
concise rapture/disorder display; specialists; number of trade
routes; pollution. It should be easy to add additional columns.
Thu Nov 5 06:16:51 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/cityhand.c: Bounds check argument of find_city_by_id, to
avoid possible segfault when it is called with unit.ai.charge
which may refer to a unit id.
Sat Oct 31 10:31:00 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/unittools.c: Fixed probable problems with
find_a_unit_type() (function to pick a unit_type found in hut).
Previous version had an off-by-one error and assumed Chivalry was
always found before Gunpowder.
Sat Oct 31 10:22:24 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/map.c, common/map.h, server/mapgen.c: Moved
add_specials() from common/map.c to server/mapgen.c where it
belongs.
Sat Oct 31 10:09:45 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/gamehand.c, server/plrhand.c: Removed tag "scorelog" from
the savefile_options string, and use secfile_lookup_int_default()
instead, since its not worth cluttering up savefile_options for a
single entry.
Thu Oct 29 09:34:31 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/game.c, common/game.h, common/map.h, common/shared.c,
common/shared.h, server/civserver.c, server/gamehand.c,
server/mapgen.c, server/plrhand.c, server/stdinhand.c:
Deterministic platform-independent pseudo-random number generator,
from patch submitted by Cedric Tefft <cedric@earthling.net>.
Also added "to_client" field to settings (server options), to
avoid sending the random seeds (and also saveturns and scorelog)
when the client requests "report server options" (--dwp).
Notes from Cedric:
1) Although the PRNG seed is an unsigned 32-bit int, neither the
game file nor the server options know how to deal with any numbers
other than signed integers (no longs, no unsigned ints, etc.), so
in a few places I've had to strip the high bit off of the seed in
order to ensure consistency across platforms.
2) The maximum value for the map seed is now limited to the
maximum value for the random number generator seed instead of
50000 (which I suspect was chosen somewhat arbitrarily anyway).
3) I modified the map generator a tiny bit so that the map seed
variable takes on the value actually used to generate the map
(assuming it was zero to begin with). Previously, a "random" map
seed was used to generate a new map, but this value was never
stored anywhere, so there was no reliable way to reproduce any
randomly generated map.
4) If anybody has questions about the algorithm, please see the
code. Believe it or not, I've actually included a relevant
comment or two. ;->
Tue Oct 27 13:50:47 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityhand.c, server/cityturn.c, server/unitfunc.c,
server/unithand.c, common/events.h, client/messagedlg.c: Added
some new event types for messages that previously used E_NOEVENT.
Reworded a lot of the diplomat/spy messages for grammer.
Tue Oct 27 12:10:52 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/gamehand.c: Cosmetic fix: don't save junk values for
ord_city for unsupported units.
Tue Oct 27 12:03:20 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/civserver.c: Fixed behaviour when server option
saveturns=0 (should mean never auto-save). Bug reported by Ben
Korvemaker <benjamin@cs.ualberta.ca>.
Sun Oct 25 05:24:50 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/advdomestic.c, common/game.c, common/game.h,
server/citytools.c, server/cityturn.c: Added game.aqueduct_size
and game.sewer_size (max size of a city without Aqueduct/Sewer) to
be configurable etc in the future (via rulesets).
Sun Oct 25 05:08:21 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/advdomestic.c, ai/advmilitary.c, ai/aicity.c, ai/aihand.c,
ai/aiunit.c, common/city.c, common/city.h, server/citytools.c,
server/cityturn.c, server/settlers.c: Add and use new function
city_got_effect(), which is whether a city has an improvement or
the same effect via a wonder. (Uses wonder_replacement().)
Sun Oct 25 04:38:30 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/messagewin.c, client/meswindlg.h, client/packhand.c:
Buffer the messages window for "end-of-turn" messages, similar to
city report buffering.
Sun Oct 25 04:35:21 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/Freeciv.h, client/messagewin.c, data/Freeciv: Removed the
limit (previously 32 lines) in the messages window, and made the
messages window scrollable. When the window has enough messages
to be scrolling and new messages arrive, the window scrolls down
to the bottom so the new messages are noticed.
Sun Oct 25 04:07:59 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/player.h, server/civserver.c, server/plrhand.c,
server/stdinhand.c: Save and reload individual AI skill levels.
Also, show the skill level of each AI player in the server player
listing. Do the right thing if server commands "hard" etc are
used with a name which doesn't match any player.
Sun Oct 25 03:32:34 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/repodlgs.c: Increased the number of columns in the
science report by 1 when the number of known techs is large (>60).
Sun Oct 25 03:28:49 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* data/helpdata.txt: Adjusted help text for Controls, giving more
space to keyboard controls, and expanded some of the keyboard
control explanations. Added auto-e(x)plore.
Sun Oct 25 03:23:20 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/mapgen.c: Changed some intermediate floating point
calculations to pure integer calcs to reduce machine-dependence.
Sat Oct 24 15:46:08 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/tiles.xpm: One of the food numbers (the '0') was white
instead of yellow. Also moved the auto-explore 'X' to the
lower-left corner, like the auto-settler 'A'.
Sat Oct 24 13:43:34 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/xmain.c: Changed graphics exposures to off in the
civclient GCs. This _greatly_ reduces the number of events the X
server generates. This fixes a problem where client memory usage
would swell as the XLib event queue would fill with tens of
thousands of graphics exposure events.
Sat Oct 24 13:24:27 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/packhand.c: The wakeup patch from a while back messed
something up. Units stopped getting repainted when they changed
status. For instance, if a unit left GOTO state, the "G" wouldn't
go away until the unit started to flash.
Fri Oct 23 08:33:19 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/citytools.c: Rewrote the function transfer_city_units().
Originally to remove calls to game_find_city_by_coor(), but it was
inefficient and looped over more units that it needed to. Also
took out an ugly printf() call.
Fri Oct 23 08:29:56 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/unitfunc.c: Replaced game_find_city_by_coor() with
map_get_city().
Fri Oct 23 08:28:42 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/game.c, common/game.h: Removed the function
game_find_city_by_coor(). It was only used five times, and is
exactly the same as map_get_city() which is used 95 times.
Fri Oct 23 08:27:49 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/city.c: ifdef'd out the unused function
city_list_find_coor()
Fri Oct 23 08:26:34 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/citydlg.c, client/mapctrl.c: Replaced
game_find_city_by_coor() with the indentical map_get_city().
Thu Oct 22 18:00:57 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityturn.c, server/cityturn.h: Took out the
set_worker_city() function to move into common.
Thu Oct 22 17:58:44 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/citytools.c: Update to refect change of worked from
player number to city pointer. ifdef'd out some old code that
wasn't used.
Thu Oct 22 17:54:27 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityhand.c: Moved a few things to/from remove_city() and
game_remove_city().
Thu Oct 22 17:43:11 1998 Trent Piepho <xyzzy@u.washington.edu>
* ai/aicity.c: Since worked is now a city pointer instead of a
player number, some code could be made more efficient.
Thu Oct 22 17:41:51 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/map.c, common/map.h: Changed the worked member of the
tile structure to a pointer to the city using the tile instead of
the player number. Knowing what city is using a tile is more
usefull than knowing what player is using it, and pcity->owner
easily gives the player number.
Thu Oct 22 17:38:16 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/game.c, common/game.h: Changed game_remove_city to use a
city pointer instead of a city ID. Put the code from the server's
remove_city() that remove the workers into game_remove_city().
Took the dealloc_id() call out of g_r_c and put it into the
server.
Thu Oct 22 17:34:28 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/city.c, common/city.h: Moved in the set_worker_city()
function from the server code. Added two new functions
map_to_city_[xy](pcity,x y) which convert game map coordinates
into the city map coordinates.
Thu Oct 22 17:31:36 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/climisc.c: Reflected change of game_remove_city from
taking a city id to a city pointer as an argument.
Thu Oct 22 17:29:37 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/mapctrl.c: Made the show workers key on the map show the
city which is using the tile under the mouse instead of just the
city under the mouse.
Thu Oct 22 17:22:35 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/packhand.c: Instead of modifying the city map directly,
use the set_worker_city function like the server.
Wed Oct 21 13:09:00 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/game.c, common/game.h, common/map.h, server/cityturn.c,
server/gamehand.c, server/stdinhand.c: Added server option
aqueductloss; determines percentage of food lost when a city wants
to grow but needs an aqueduct(/sewer). Default is 0. Loss is
halved if city has a granary. Mostly from a patch submitted by
Mark Brown <broonie@tardis.ed.ac.uk>
Tue Oct 20 17:40:49 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/civserver.c: Made global warming messages use the
E_WARMING event.
Tue Oct 20 17:24:46 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h, client/menu.c,
client/messagedlg.c, client/messagedlg.h, client/packhand.c: Added
a new menu item to the Game menu, Msg Filter. This lets you
filter out types of messages you aren't interesed in. Added the
new dialog for it to messagedlg.c, and put the message filtering
code in packhand.c.
Tue Oct 20 15:11:30 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityturn.c: Server sends a message when a city grows.
Patch from Massimo Campostrini, with some small changes by me.
Tue Oct 20 12:53:12 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/stdinhand.c: Added "static char horiz_line[]" to make the
code tidier (IMO).
Tue Oct 20 12:48:56 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* data/europe.sav: Commented out entries which don't get used
(revealed by section_file_check_unused()).
Tue Oct 20 12:47:28 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/civserver.c: Added call to section_file_check_unused();
adjusted calls (was two, now one) to section_file_free() after
load.
Tue Oct 20 12:44:12 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/helpdlg.c, data/helpdata.txt: Modified help system for
new unit flags.
Tue Oct 20 12:32:46 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/advmilitary.c, ai/aiunit.c, client/dialogs.c,
client/mapctrl.c, common/city.c, common/unit.c, common/unit.h,
server/gotohand.c, server/unitfunc.c, server/unithand.c: Added
three new unit flags F_TRIREME, F_NUCLEAR and F_SPY, and modified
relevant code to use these flags instead of checking the
enumerated unit type against U_TRIREME, U_NUCLEAR, U_SPY.
(This is so that all unit special effects are handled with unit
flags.)
Mon Oct 19 09:10:24 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/helpdata.txt: Added a bit about the "t" command.
Mon Oct 19 09:06:38 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h, client/mapctrl.c,
client/mapctrl.h, client/xmain.c: Adds a new command the the map.
Push "t" with the mouse on a city to see what tiles the city is
using.
Sun Oct 18 04:12:43 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* data/helpdata.txt: "Controls" help text: fixed an over-long
line; added "arrow keys: Move unit".
Sun Oct 18 03:11:18 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/gamehand.c, server/maphand.c: Include all of the server
options in the savefile, even those which only have effect at the
start of the game. So now the server options always show the
values which were actually used. Now always save map.xsize and
map.ysize as "map.width" and "map.height" (they used to be saved
as xsize and ysize when PRE_GAME_STATE). Save and reload
game.diplchance. Don't call map_init() in map_load (unnecessary
and over-writes reloaded values). Simplify code used to load:
version, tmp_server_state, metaserver_info_line.
Sun Oct 18 02:59:48 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* ai/aiunit.c, common/city.c, common/game.c, common/player.c,
common/player.h, common/unit.c, server/plrhand.c,
server/unitfunc.c: New function player_find_city_by_id(pplayer,
city_id) which uses the best method depending on global variable
is_server. New function player_owns_active_wonder(pplayer,
improvement_id).
Sun Oct 18 02:43:15 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* data/helpdata.txt: Help text changes: Airport: reduced vertical
space; Nuclear unit: added note about Manhattan Project; Combat:
clarified firepower of defending ships.
Sun Oct 18 02:40:58 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* data/earth-80x50.sav: Fixed English start position so they don't
start on an ocean square. Patch submitted by Daniel Gudlat
<gudlat@informatik.hu-berlin.de>.
Sat Oct 17 12:04:27 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/connectdlg.c: Metaserver window doesn't appear if the
metaserver couldn't be contacted. When it does appear, it's
positioned better on the screen. Also, causing a second (and
third..) metaserver window to appear by clicking on the metaserver
button again is fixed.
Sat Oct 17 02:10:59 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/registry.c, server/registry.h: Extended the "registry"
format to include "vectors" and "tables", and documented the
previous and extended formats. Use tabular format to reduce size
of city and unit sections in savegames: total savegame size can be
reduced by up to factors of a few for large games. Include code
to track how many times values in the registry are looked up, for
example to help notice save/reload mismatch. But
section_file_check_unused() is not yet called anywhere.
Sat Oct 17 01:51:26 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* server/stdinhand.c: Two changes to server command parsing: Don't
strip non-alpha-numeric characters from the start of command
argument. This allows saving to files which start with "/", "..",
etc. Patch submitted by Michael Bickel
<Michael.Bickel@informatik.uni-erlangen.de>. Lines where the
first non-whitespace character is "#" are treated as comment
lines. This allows comments in files which are read in with the
"-r" command-line flag.
Sat Oct 17 00:20:26 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/helpdlg.c: Avoid calling is_wonder() with B_LAST.
Fri Oct 16 13:22:11 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/civclient.c, client/helpdlg.c, client/packhand.c,
common/game.c, data/helpdata.txt: Improved the internals of the
help system to ensure (now and in the future) better consistency
on what units, techs, etc, are shown. There are now well defined
sections in helpdata.txt for the following categories: unit types,
techs, improvements, wonders. Within each category, say units, a
help node which doesn't match any actual unit (in terms of
unit_type_exists(), ie, implemented units), is omitted. Any
actual unit missing in the helpdata.txt has a help node
automatically generated (as if there was an empty entry in
helpdata.txt). Finally each category list is automatically sorted
alphabetically.
I moved the "boottime" stuff in client/packhand.c:
handle_game_info() into client/civclient.c:set_client_state(),
because I think thats more correct in the case that a client
disconnects and then reconnects without quiting. Also now the
help system is rebootable, because it depends (in principle, if
not in practice) on set_civ_style(), and in future will depend on
rulesets, which could change if you quit and then reconnect to a
different game.
I removed the "indent" field of the struct help_item, because it
wasn't actually used. I changed to help nodes data to use a
genlist rather than having its own implementation of a singlely
linked list. (Mainly I wanted to be able to use genlist_sort().)
In helpdata.txt I changed the "@" tags (which I had introduced in
a previous enhancement) to @START_UNITS, @END_UNITS etc to reflect
the new "category sections".
With the new auto-generation of help nodes, any nodes with blank
text in helpdata.txt could in principle be removed. I initially
did that, but then decided to leave them in, so that its easy to
add any extra text for any given node.
Fri Oct 16 13:06:42 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/city.c, common/city.h, common/tech.c, common/tech.h,
common/unit.c, common/unit.h: New convenience functions
find_tech_by_name(), find_improvement_by_name(), and
find_unit_type_by_name(). Just linear search the data arrays to
match a given name. Not used yet, but will be soon.
Fri Oct 16 12:49:50 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* common/city.c, common/city.h, common/tech.c, common/tech.h,
common/unit.c, common/unit.h: New functions unit_type_exists(),
tech_exists(), and improvement_exists(). They do bounds checking,
and then check whether the specified element has been marked as
"removed", eg in the data tables or by set_civ_style(). Replaced
some existing bounds-check code by calls to these functions.
Fri Oct 16 12:22:10 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/inteldlg.c: Fixed bug where if a player is up to Future
Tech, that player's intelligence report regarding other players
would show them all as researching Future Tech even when they are
not. Bug report and fix submitted by Massimo Campostrini
<campo@mailbox.difi.unipi.it>.
Fri Oct 16 12:00:43 1998 David Pfitzner <dwp@mso.anu.edu.au>:
* client/Freeciv.h, client/civclient.c, client/messagewin.c,
data/Freeciv: Added a "Popup City" button to the messages window.
Related fix-ups: Removed some unused file-level variables in
messagewin.c Renamed misnamed variable and function relating to
the "Goto Location" messages button. Deactivate the goto/popup
buttons when messages are cleared. Clear the messages when
connection is terminated or lost (so if the client reconnects to a
different game, the messages from the previous game are not still
there).
Fri Oct 9 07:44:10 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/citytools.c, server/citytools.h, common/city.c,
common/city.h: Moved two functions from the server to common, so
the client can use them.
Thu Oct 8 23:46:05 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/xmain.c: This patch avoids a "convert int to ptr" warning
on an Alpha running Linux. Patch submitted by Alex Rhomberg
<rhomberg@ife.ee.ethz.ch>.
Thu Oct 8 23:43:59 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/repodlgs.c: This patch removes the limit on how many
cities you can have in the city report. Patch submitted by David
Pfitzner <dwp@mso.anu.edu.au>.
Thu Oct 8 23:42:23 1998 Mitch Davis <mjd@alphalink.com.au>:
* ai/aicity.c, ai/aiunit.c: Fixes for some typoes in the AI code.
Patch submitted by David Pfitzner <dwp@mso.anu.edu.au>.
Wed Oct 7 23:41:19 1998 Mitch Davis <mjd@alphalink.com.au>:
* server/civserver.c: The saveturns server option has a problem in
that if you change the value, the new value doesn't take effect
until after the next save caused by the current value. Eg: if
you're playing with saveturns=10, and then decide to change to
saveturns=1, the changeover doesn't occur until _after_ the
current block of 10 turns is finished. This patch fixes the
problem. Patch submitted by David Pfitzner <dwp@mso.anu.edu.au>.
Wed Oct 7 23:26:04 1998 Mitch Davis <mjd@alphalink.com.au>:
* debian/rules: The 'debian/rules' file still references CHANGES
rather than the new (as of 1.6.1) ChangeLog, so building the
package fails. Patch submitted by Robert Donn
<squirk@ihug.co.nz>.
Wed Oct 7 23:20:59 1998 Mitch Davis <mjd@alphalink.com.au>:
* common/city.c, common/city.h, common/genlist.c,
common/genlist.h, common/unit.c, common/unit.h, server/gamehand.c,
server/plrhand.c: This patch preserves city list and unit list
orderings through save/reload, both the trivial fix of
pplayer->units and pplayer->cities, and also a more involved fix
to preserve the ordering in tile.units and city.supported_units.
Patch submitted by David Pfitzner <dwp@mso.anu.edu.au>.
Wed Oct 7 14:29:33 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/colors.c: Changed the yellow color so it actually looks
like yellow and not gray.
Wed Oct 7 13:35:33 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/gamehand.c, server/stdinhand.c: Fixed for some server
variables not being saved right. Patch by David Pfitzner.
Tue Oct 6 23:50:49 1998 Mitch Davis <mjd@alphalink.com.au>:
* server/mapgen.c: Recent CVS mapgen changes didn't seem to
realize the scenario patch is already in CVS, and overwrote the
scenario changes in mapgen.c, breaking scenarios. This patch puts
the scenario changes back in. Patch submitted by David Pfitzner
<dwp@mso.anu.edu.au>.
Mon Oct 5 10:18:30 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h: Cleaned up errors xrdb found in
the resources.
Mon Oct 5 10:11:54 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h, client/xmain.c: Made some of the
widgets look nicer with Xaw3d. Cleaned up the econ buttons
somewhat.
Mon Oct 5 08:04:13 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h: Stuck a Freeciv* infront of all
the resources. I did a survey of Xt based programs, and they seem
split as to how they do their resources. Some begin the resources
with the app class, other just begin with a *. Putting the app
class first seems better to me, as it avoids conflicts with
another app's resources. Well see how this works out.
Sat Oct 3 07:08:23 1998 Mitch Davis <mjd@alphalink.com.au>:
* server/mapgen.c: Improvements to the map generation code, to
make player placement more stable and less predictable. Patch
submitted by Peter Schaefer
<schaefer@malaga.math.uni-augsburg.de>.
Sat Oct 3 07:07:44 1998 Mitch Davis <mjd@alphalink.com.au>:
* Makefile.noimake, client/Freeciv.h, client/Makefile.am,
client/Makefile.in: This patch modifies the (three) makefiles so
that a C style comment is included in client/Freeciv.h to tell
people not to edit it. Patch submitted by Dee Jay Randall
<randal@cs.uregina.ca>.
Thu Oct 1 17:29:12 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/dialogs.c: Minor patch to make a bogus warning go away.
Wed Sep 30 23:18:38 1998 Mitch Davis <mjd@alphalink.com.au>:
* common/log.c, server/stdinhand.c: Yet another fix for Peter
Schaefer's buggy repeated message log stuff. Patch supplied by
David Pfitzner <dwp@mso.anu.edu.au>.
Wed Sep 30 20:26:11 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/tiles.xpm, data/units.xpm: The tiles and units XPM files
used a total of 124 different colors, but most of these colors are
very similar and wasted. I changed them to use a total of 32
colors and then touched them up somewhat. The new graphics are
much more colormap friendly on 8 bit systems and look almost
exactly the same.
Wed Sep 30 07:38:32 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h, client/dialogs.c: Made the unit
select dialog have more than one column, depending on how many
units are in the square. Cleaned up the code some, removed some
global variables which were never used, and took out an extra
include.
Wed Sep 30 01:02:31 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/dialogs.c: Moved an XSetForeground out of a loop, to
reduce unnecessary X events. Took out the explicit setting of the
size of the unit selection buttons. The explict size was wrong
under Xaw3d, and wasn't necessary.
Tue Sep 29 23:27:17 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/repodlgs.c: When city_report_dialog_update_city() is
called to update the text for a single city, the report is not
changed (so no flicker) if the new text is actually the same as
the old text. Patch submitted by David Pfitzner
<dwp@mso.anu.edu.au>.
Tue Sep 29 23:24:44 1998 Mitch Davis <mjd@alphalink.com.au>:
* common/log.c: There is some sloppyness in flog in the last
repeat message. Added a few lines(in a hurry, I must admit).
Patch submitted by Peter Schaefer
<schaefer@malaga.math.uni-augsburg.de>.
Tue Sep 29 23:15:24 1998 Mitch Davis <mjd@alphalink.com.au>
* server/cityhand.c: I added the few lines necessary to make
autoarrange update 'adjacent' cities, too.
While testing, I noticed a quirk - disbanding a unit in a city
that has just been built and failing to change production from
warrior to settler.
Fixed, with the side effect that the did_buy flag won't be set
anymore if there are enough shields to produce anyway.
Patch submitted by Peter Schaefer
<schaefer@malaga.math.uni-augsburg.de>.
Tue Sep 29 23:13:40 1998 Mitch Davis <mjd@alphalink.com.au>:
* common/log.c: This patch detected identical repeating log
messages, and issues a repeating message when this happens. Patch
supplied by Peter Schaefer <schaefer@malaga.math.uni-augsburg.de>.
Mon Sep 28 18:14:46 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/Freeciv.h, client/citydlg.c, data/Freeciv: Added a new
button to the city dialog, which pops up the unit selection list
you would get for stacked units not in a city. From a patch by
Massimo Campostrini.
Mon Sep 28 17:08:25 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/gamehand.c: Patch by David Pfitzner, remove huts on
player start positions.
Wed Sep 23 23:20:10 1998 Mitch Davis <mjd@alphalink.com.au>:
* server/cityturn.c: When city size is 7, and you're on the verge
on expanding into a city of size 8, but you don't have an aqueduct
system set up, your Granary will still have its food supplies
halved. Same for cities of size 12 with Sewer systems. Patch
submitted by Paul Cameron <pmcamero@socs.uts.EDU.AU>. Note, I had
to apply this patch by hand, hope it's alright.
Wed Sep 23 23:09:46 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/citydlg.c: In the same spirit as desensitising the trade
button in the city report, this desensitises the "activate units"
button when there are no units present. Patch supplied by David
Pfitzner <dwp@mso.anu.edu.au>.
Wed Sep 23 23:07:52 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/Makefile.in, client/climisc.c: This patch allow for the
datadir path to be compiled in. Patch submitted by Sergey Shkonda
<serg@bcs.zp.ua> and Matthew Hunt <mph@pobox.com>.
Wed Sep 23 23:02:05 1998 Mitch Davis <mjd@alphalink.com.au>:
* README: This patch describes setting logs and debug levels from
the command-line of the server. Patch submitted by David Pfitzner
<dwp@mso.anu.edu.au>.
Wed Sep 23 23:00:09 1998 Mitch Davis <mjd@alphalink.com.au>:
* server/unitfunc.c: - The effect of Leonardo's Workshop is
special cased to avoid the problem of upgrading a sea unit
carrying passengers to a new unit with a lower transport_capacity
when that would leave some passengers stranded on a ocean square.
(Eg Frigate -> Ironclad) (You could still get upgraded at an
inopportune time, but thats half the fun of Leonardo :-?
- Carriers and Subs can only refuel the appropriate number of air
units each (previously you could stack as many air units onto one
of these as you like, and they would all get refueled (just not
all moved with the Carrier)). Multiple Carriers and/or Subs on
the same square are handled appropriately.
Patch submitted by David Pfitzner <dwp@mso.anu.edu.au>.
Wed Sep 23 22:58:38 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/citydlg.c: In a city dialog, if you select a supported
unit which is not present in the city, and chose "Activate unit,
close dialog" then the dialog doesn't get closed.
This is because present_units_activate_close_callback() is used,
which only closes the dialog of the city where the unit is
present. The attached patch fixes this by adding a separate
callback for supported units.
Patch submitted by David Pfitzner <dwp@mso.anu.edu.au>.
Wed Sep 23 22:54:43 1998 Mitch Davis <mjd@alphalink.com.au>:
* server/cityhand.c: A patch to handle deleting unsupported units
better. Patch submitted by David Pfitzner <dwp@mso.anu.edu.au>.
Wed Sep 23 19:24:40 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/citydlg.c, client/dialogs.c, client/mapview.c,
client/xmain.c: Some changes to clear buttons with unit pixmaps in
them when using non-transparent flags. Changed the client startup
order to load the unit pixmaps before creating the client widgets,
so they can be sized correctly based on the pixmap size.
Wed Sep 23 19:21:35 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h: Removed hardcoded sizes for the
unit pixmap buttons. Also changed the font used in the city
report, which makes the report somewhat smaller.
Tue Sep 22 16:22:24 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/Freeciv.h, client/messagedlg.c, client/optiondlg.c,
client/optiondlg.h, client/repodlgs.c, data/Freeciv: Changed the
way most of the toggles look. They now change label from "Yes" to
"No" depending on their state.
Mon Sep 21 09:35:48 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h: Added default colors for Label,
Command, Text, and Form widgets. Then removed hundreds of color
resources that were no longer necessary.
Mon Sep 21 09:19:27 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/connectdlg.c, client/clinet.c, client/clinet.h,
data/Freeciv: Added a metaserver dialog to the client. It's
currently a little hackish, and gets the server list by reading
the metaserver web page and trying to parse it. It will probably
choke if the web page's format changes.
Mon Sep 21 09:08:09 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/repodlgs.c, data/Freeciv: Might have finally fixed the
city report sizing bug seen on some machines.
Mon Sep 21 08:39:56 1998 Trent Piepho <xyzzy@u.washington.edu>
* Makefile.noimake: The depend stuff has a problem.
Sat Sep 19 16:26:46 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/Freeciv.h, data/Freeciv: This fixes a small mistake with
the On/Off label for the science report help toggle. Patch
submitted by David Pfitzner <dwp@mso.anu.edu.au>.
Sat Sep 19 16:23:26 1998 Mitch Davis <mjd@alphalink.com.au>:
* data/helpdata.txt: This patch revises the About text: It
clarifies the current status of the original authors, James
Blackwell is no longer active as a "Present Administrator", and
the text said "find our email addresses in the About box", but
this _is_ the About box! Patch supplied by David Pfitzner
<dwp@mso.anu.edu.au>.
Sat Sep 19 16:21:00 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/mapctrl.c, common/map.c: This patch improves the
information on a tile when there is a hut or pollution present.
Patch supplied by David Pfitzner <dwp@mso.anu.edu.au>.
Sat Sep 19 16:03:46 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/citydlg.c, client/civclient.c, client/graphics.c,
client/helpdlg.c, client/helpdlg.h, client/repodlgs.c,
client/xmain.c, data/helpdata.txt: This patch makes some
improvements to the help system.
Tags are added to helpdata.txt to say explicitly whether items are
TEXT, UNIT, IMPROVEMENT, WONDER, or TECH. And in the code to
popup a help text, you can ask for a particular type. One effect
this has is that the Government help items Monarchy etc don't need
a "(Gov)" addition to distinguish them from the corresponding
advances.
The help system is slightly more robust and nicer if a help item
doesn't correspond to the specified component of the game
(unit_type etc) or the component has been "removed". Or vice
versa -- if a game component doesn't have a help item for some
reason. One effect of this is that unimplemented Civ2 units etc
can be added back to the help with an explanatory note, so players
coming from Civ2 can see what's missing and possibly why.
Comments for unit types relating to transport_capacity, flags, and
fuel, are generated automatically, ensuring clarity, consistency,
correctness, cetc.
boot_help_texts() was moved to after log_init(), so log messages
in boot_help_texts are actually useful.
client/helpdlgs.c:find_help_item_by_topic() is #if-ed out, as it
appears to me to be unused, and furthermore broken.
changes to helpdlgs.c aren't really as drastic as the patch makes
appear, but I've moved some things around.
citydlg.c:change_help_callback() was pretty weird, and now cleaned
up.
Patch supplied by David Pfitzner <dwp@mso.anu.edu.au>.
Sat Sep 19 15:11:17 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/Freeciv.h, client/citydlg.c, client/packhand.c,
data/Freeciv: This patch makes upgrading individual units from the
city dialog nicer. Now the upgrade button is "greyed out" if you
cannot upgrade that unit type. Also, the patch updates the unit
icon in the city dialog where the unit is present (as well as
where the unit is supported). (This also applies for unit
upgrades from the "active units" dialog.) Patch submitted by
David Pfitzner <dwp@mso.anu.edu.au>.
Sat Sep 19 03:31:50 1998 Mitch Davis <mjd@alphalink.com.au>:
* COPYING, data/helpdata.txt: Updated the mailing addresses for
the FSF. Patch submitted by David Pfitzner <dwp@mso.anu.edu.au>.
Sat Sep 19 02:28:52 1998 Mitch Davis <mjd@alphalink.com.au>:
* server/mapgen.c: A small patch because some players would get
too many rivers and not enough swamps. Patch submitted by Peter
Schaefer <schaefer@malaga.math.uni-augsburg.de>.
Fri Sep 18 16:21:32 1998 Mitch Davis <mjd@alphalink.com.au>:
* common/map.c, common/map.h, server/mapgen.c: This patch fixes
some problems with the 2nd mapgen, and enhances the 3rd mapgen.
Patch supplied by Peter Schaefer
<schaefer@malaga.math.uni-augsburg.de>.
Thu Sep 17 23:46:14 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/Freeciv.h, client/repodlgs.c, data/Freeciv: Here is a
minimalish patch which adds a note which might make the help
button toggle nature a little clearer...
It also makes the science report list of known advances 4 columns,
partly to make more room for the above mentioned note, and partly
because I find the science report too long (at least in its
default pop-up location) for my screen when it contains all the
advances at the end of a game.
Patch supplied by David Pfitzner <dwp@mso.anu.edu.au>.
Thu Sep 17 23:33:24 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/Freeciv.h, client/connectdlg.c, client/resources.h,
client/xmain.c, data/Freeciv, server/civserver.c: Changes to allow
the debug level to be set from the command-line. Patch submitted
by David Pfitzner <dwp@mso.anu.edu.au>.
Thu Sep 17 23:23:52 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/colors.c: The solid colors for Romans and English are too
similar. This changes the English color to dark green. Patch
submitted by Massimo Campostrini <campo@mailbox.difi.unipi.it>
Thu Sep 17 23:19:13 1998 Mitch Davis <mjd@alphalink.com.au>:
* data/europe.sav: Added a Europe scenario. Patch supplied by
Christian Grothoff <ma0035@stud.uni-wuppertal.de>.
Thu Sep 17 23:16:40 1998 Mitch Davis <mjd@alphalink.com.au>:
* client/mapview.c, data/earth-160x90.sav, data/earth-80x50.sav,
server/civserver.c, server/gamehand.c, server/mapgen.c,
server/maphand.c, server/maphand.h, server/stdinhand.c: Patches
and scenario files to support playing on Earth. Patch supplied by
Daniel Gudlat <gudlat@informatik.hu-berlin.de>.
Thu Sep 17 10:12:18 1998 Trent Piepho <xyzzy@u.washington.edu>
* Makefile.noimake: Fixed and largely rewrote. Should work well
now, and be easy to edit to compile on different OSes.
Wed Sep 16 11:58:46 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/Makefile.am, client/Makefile.in, common/Makefile.am,
common/Makefile.in: Some directories were -I included when they
didn't need to be.
Wed Sep 16 11:53:13 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/unithand.c, server/unitfunc.c, common/player.h: Fixed up
some include problems. player.h had aitools.h for no reason,
which meant that the client and common code needed the ai includes
for no reason.
Tue Sep 15 15:21:45 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/xmain.c: Added a missing NULL on an XtVaGetValues() call.
Wed Sep 9 13:00:58 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/registry.c: A better hash function for the registry,
along with a smaller cache size. Creating section files,
ie. saving the game, is now much faster for large files as the
algorithm was changed from O(n^2) to O(n).
Wed Sep 9 12:00:35 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/citydlg.c, common/city.c, common/city.h: Trade button is
grayed out if the city has no trade routes. Inspired by a patch
from David Pfitzner.
Wed Sep 9 11:39:25 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityhand.c: Fix for longstanding bug where the server
could core dump if a city is removed and it has supports both a
transport ship and some unit in the ship. Patch by Paul Cameron.
Sun Sep 6 11:32:12 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/unit.c, server/unithand.c: Cleaned up
can_unit_do_activity()
Sun Sep 6 11:31:39 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityturn.c: Made city incite cost half when there are no
units in the city, rather than when it supports no units.
Sun Sep 6 00:39:35 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c, ai/aiunit.c: Fixing a quirk with exploring
boats, and AI exploring ferryboats in normal mode. Fixing a
possible SIGFPE in findjob of all places. Not discouraging units
to attack enemy units nearby - works great! Eliminating default
want for walls, coastal, etc if not in danger. -- Syela
Sun Sep 6 00:37:39 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c, server/cityturn.c: No longer hijacking
content[0]; trying to get the AI to build more temples and
happy-wonders. Using MORT (instead of ~17) as the threshold for
improvements to pay themselves off, hoping that the AI will not
buy so many improvements. -- Syela
Sun Sep 6 00:31:28 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.c: Teaching autosettlers about changing terrain
types. -- Syela
Wed Sep 2 20:37:06 1998 Mitch Davis <mjd@alphalink.com.au>
* CREDITS, configure, configure.in, client/Freeciv.h,
common/shared.h, data/Freeciv: Bumped version numbers to 1.7.1.
Wed Sep 2 20:12:32 1998 Mitch Davis <mjd@alphalink.com.au>
* NEWS, configure, configure.in: With this patch to configure.in
freeciv will actually configure and compile nicely on Solaris (run
"autoconf" after applying this patch to make a new configure):
Note that according to Johannes Abt
<jsabt@cip.informatik.uni-erlangen.de>, This works with
autoconf-2.12 but not autoconf-2.9.
Patch supplied by Finn Arne Gangstad <finnag@guardian.no>.
Wed Sep 2 19:57:40 1998 Mitch Davis <mjd@alphalink.com.au>
* common/unit.c: This patch prevents settlers from fortifying, in
order to reduce the confusion between fortifying and building
fortresses. Patch supplied by David Pfitzner <dwp@mso.anu.edu.au>.
Wed Sep 2 00:54:52 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h: Changed the layout of the
diplomat and spy dialogs so the buttons are in a two column list
instead of one big long row. Buttons are now the same size with
centered labels, which looks nicer IMHO.
Tue Sep 1 22:08:02 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/civclient.c, common/game.c, server/civserver.c: Bug fix
from Walter Misar to fix alignment problems on solaris with the
used_ids array.
Tue Sep 1 21:57:57 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/dialogs.c: Diplomats bribing units wasn't done right.
Tue Sep 1 21:56:36 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/unit.c: diplomat_can_do_action() was letting non-spies
sabotage units.
Tue Sep 1 14:34:49 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Dealing with GOTOing warships more
intelligently re: enemies_at. -- Syela
Tue Sep 1 14:32:38 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unittools.c: Ignoring units at (i,j) for enemies_at(punit,
i, j). -- Syela
Mon Aug 31 13:12:12 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/repodlgs.c: The "Income" line in the trade report will try
to approximate what your true income will be at the end of the
turn. This means it will not be affected by buying or selling
things. City improvements which will be completed at the end of
the turn can throw things off.
Mon Aug 31 12:59:46 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/unithand.c: Added buffering around the data sent when a
trade route is established.
Mon Aug 31 12:57:46 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/plrhand.c: Made changing tax rates do a gobal city
refresh. This way the client gets instant feedback on how the new
rates effect his cities.
Mon Aug 31 12:54:33 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityturn.c: Buffered the connection during a global city
refresh.
Mon Aug 31 09:23:23 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/repodlgs.c: Fixed bug were the client would crash trying
to update the city report when it didn't exist.
Sat Aug 29 13:18:58 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/Freeciv.h, client/citydlg.c, client/repodlgs.c,
client/repodlgs.h, data/Freeciv: Changed the city report code so
that the whole report isn't generated when a single city is
changed. Changed the way the widgets resize themselves to get
around broken Xt annoyingness so the labels should be centered and
the right size now. There should also be less flickering when the
report is updated.
Sat Aug 29 13:09:43 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/packets.h: The improvements and city_map where called
unsigned char, but they really should be just plain char.
Sat Aug 29 13:08:35 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/stdinhand.c: Took out a comma where there shouldn't have
been one.
Fri Aug 28 10:36:54 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c: Fixing auto-explorers (I broke them yesterday)
-- Syela
Thu Aug 27 09:58:41 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c: Returning 0 for same_pos
handle_unit_move_requests (which often happen when the server
hangs) so movement isn't wasted. Making the check for ai
ferryboats that try to attack much more robust to prevent aberrant
abort()s. Allowing 0-move explorers to change acitivity. -- Syela
Thu Aug 27 09:56:52 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/civserver.c, server/stdinhand.c, server/stdinhand.h:
Proto'ing set_ai_level and setting game.skill_level concurrently --
Syela
Thu Aug 27 09:56:05 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.c: Fixing stupid bug involving auto-settlers and
polar cities. -- Syela
Thu Aug 27 09:55:22 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityhand.c: Adding city name to city_sell message (for AI
debugging) -- Syela
Thu Aug 27 09:54:44 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/mapctrl.c: Allowing players to idle 0-movement explorers
by clicking on them. -- Syela
Thu Aug 27 09:48:08 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Not assuming walls for cities 2-3 turns away unless
owner knows Masonry. -- Syela
Thu Aug 27 09:47:00 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Two bugfixes suggested by Peter Schaefer; preventing
the AI from setting lux=100 and selling buildings, and preventing
extremely high lux rates (for celebrations) that will lead to
selling buildings. -- Syela
Thu Aug 27 09:45:57 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Preventing the AI from buying walls/coastal
unless it's urgent. Not assuming walls until c == 4 if enemy
doesn't know masonry. Adding port_is_within to prevent the AI from
building too many ports and warships; this way saves money and also
ensures enough ground troops for invasions. -- Syela
Thu Aug 27 09:43:27 1998 John Stonebraker <ppaqebb@surfshop.net>
* README.AI: Updated README.AI; recently fixed problems not
included. -- Syela
Thu Aug 27 09:35:04 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/Freeciv.h, client/mapview.c, client/xmain.c, data/Freeciv:
Made the map canvas fill up all the space. Before, if you had a
map with ysize>40 the canvas would have a big gap between the
scroll bar and the message window.
Wed Aug 26 22:57:43 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h, client/gotodlg.c: Added a "All
Cities" toggle to the goto dialog. Default is off. This way the
dialog isn't full of hundreds of enemy cities. Makes airlift much
less of a pain, since it doesn't take as long to find your city.
Wed Aug 26 22:54:53 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/unitfunc.c: Fixed up do_airline() some. It now uses
unit_can_airlift_to() to determine if an airlift is possible rather
than duplicating the code. It also wasn't sending city updates for
the cities involved, so the client wouldn't know that a city had
already airlifted this turn. Added buffering around the four
packets an airlift sends.
Wed Aug 26 00:05:23 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/citydlg.c: De-activated the activate button on diplomat
investigate city dialogs.
Tue Aug 25 22:53:25 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/repodlgs.c, client/repodlgs.h: Added in Cedric Tefft's
scrollbar for the city report patch. Added code for turning of
report updates at the end of the turn.
Tue Aug 25 22:49:16 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/packhand.c: Made handle_unit_info() smarter about
refreshing city dialogs. For instance, moving a unit out of its
homecity would refresh the city dialog twice. Made the client turn
off report updates between during the end of the turn. This
removes the flash in the reports as they would get updates hundreds
(or thousands!) of times.
Tue Aug 25 22:44:08 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/citydlg.c: The city_dialog_refresh() function had a hack
to update the city and trade reports when it was called. However,
this function gets called for things relating to enemy cities that
don't show up in the reports. So I made it only update the reports
for when it's called for the players own cities. This greatly
reduces the number of costly city report refreshes the client does.
Tue Aug 25 22:41:10 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/Freeciv.h, data/Freeciv: Added in Cedric Tefft's patch for
a scrollbar on the city report.
Tue Aug 25 22:39:50 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityhand.c: Fixed a bug where nocity_send wasn't taking
effect. This resulted in two city updates being sent at the end of
the turn for each of your cities. Now it's down to one.
Tue Aug 25 09:15:27 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/civserver.c: Moving before_end_year (which does nothing
but reset message windows) closer to the end_of_sniff to make David
Pfitzner happy. -- Syela
Tue Aug 25 09:10:55 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/stdinhand.c: Applying David P's fix to the recently broken
set_ai_level -- Syela
Tue Aug 25 09:10:21 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/citydlg.c, client/packhand.c: Made the city dialogs get
updated when a unit listed in one (present or supported) changes
status.
Tue Aug 25 09:08:38 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/mapgen.c: Initializing counter j in mapgenerator2 and
3. -- Syela
Tue Aug 25 09:07:44 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c: Removing unneeded duplicate def'n of punit in
wakeup_neighbour -- Syela
Tue Aug 25 08:46:13 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h, client/citydlg.c: Added an
"Activate Units" button to the city dialog that will activate all
units in the city.
Tue Aug 25 08:23:35 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/repodlgs.c: The trade report sell command won't try to
sell improvements in cities that already sold something that turn.
Mon Aug 24 23:40:24 1998 Mitch Davis <mjd@alphalink.com.au>
* server/unithand.c: Added code so that sentried units get woken up
when enemy units come within view. Patch submitted by Trevor
Pering <pering@tongass.EECS.Berkeley.EDU>.
Mon Aug 24 23:32:48 1998 Mitch Davis <mjd@alphalink.com.au>
* server/stdinhand.c: This patch forces AI names to be between 1
and 9 chars long. I chose 9 chars because it seems to be length
you are allowed to use for a human player. Patch submitted by
Markus Linnala <maage@cs.tut.fi>.
Mon Aug 24 21:12:37 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/registry.c: Added code to align the pointer returned by
strbuffermalloc().
Mon Aug 24 10:39:24 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityhand.c: Nothing much really.
Sun Aug 23 23:43:04 1998 Mitch Davis <mjd@alphalink.com.au>
* client/Freeciv.h, client/civclient.c, client/optiondlg.c,
client/packhand.c, data/Freeciv, data/helpdata.txt: This patch
fixes problems with the original wakeup code. (Eg, data/Freeciv
was only partly patched!) Patch submitted by Reinier Post
<reinpost@win.tue.nl>.
Sun Aug 23 23:40:10 1998 Mitch Davis <mjd@alphalink.com.au>
* server/stdinhand.c: Modified the help string for map.seed so it
mentions that 0 gives a random map. Patch submitted by Reinier
Post <reinpost@win.tue.nl>.
Sun Aug 23 23:31:27 1998 Mitch Davis <mjd@alphalink.com.au>
* common/map.h, server/mapgen.c: I took a look at the map generator
and reduced the chance it will hang up, so that it may work with
much more settings.
While I was at it, I added an experimental generator 3, which will
create 1 big island for every player, and 1 small island. Settings
for landmass will affect the changed mapgen 2. Settings for
mountains, etc, won't yet.
Patch submitted by Peter Schaefer
<schaefer@malaga.math.uni-augsburg.de>
Sun Aug 23 23:29:35 1998 Mitch Davis <mjd@alphalink.com.au>
* common/game.c, common/game.h, common/map.h, server/plrhand.c,
server/stdinhand.c: Attached is a small patch that fixes a bug in
the scorelog generation code... I screwed up the starting year (I
used 4000 instead of -4000)... I made that number a constant in an
include file. (Affects game.c, game.h, map.h, and plrhand.c).
Patch submitted by Trevor Pering
<pering@tongass.EECS.Berkeley.EDU>.
Sun Aug 23 23:27:17 1998 Mitch Davis <mjd@alphalink.com.au>
* client/civclient.c, client/clinet.c, client/colors.c,
client/graphics.c, client/helpdlg.c, client/packhand.c,
client/xmain.c, common/log.c, common/log.h, common/packets.c,
common/unit.c, server/cityhand.c, server/civserver.c,
server/maphand.c, server/registry.c, server/sernet.c,
server/stdinhand.c, server/unitfunc.c: Changed all occurances of
"log()" to "flog()", since the GTK port of Freeciv needs the -lm
math library, which also has a log() function. Patch submitted by
Per I. Mathisen <perrin@kvalito.no>.
Fri Aug 21 21:00:37 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/stdinhand.c: The section file wasn't getting freed after a
manual save game.
Fri Aug 21 20:57:04 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/registry.c, server/registry.h: Fixed a bug I had added
earlier where the strbuffer would get freed when it hadn't been
allocated during an auto save game. Used the opportunity to have
the rest of the registry allocations use the strbuffer system,
which reduced memory usage by another 200k for a big saved game.
Fri Aug 21 20:49:39 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/shared.c, common/shared.h: Removed the minstrdup()
function and put it into registry.c, since that is the only place
that used it. Also changed it to use the strbuffer system.
Fri Aug 21 20:34:08 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/civserver.c, server/diplhand.c, server/gamehand.c,
server/gamehand.h, server/maphand.c, server/maphand.h,
server/plrhand.c, server/plrhand.h: Fixed some ugliness with the
includes.
Fri Aug 21 08:17:50 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.c: Not letting auto-settlers go idle as easily.
Christopher Neufeld's ideas, but my own implementation thereof. --
Syela
Thu Aug 20 23:18:06 1998 Mitch Davis <mjd@alphalink.com.au>
* common/city.c, server/plrhand.c: The attached patch makes the
Literacy field of the Demographics report less likely to overflow
(eg at the end of a large game). Patch submitted by David Pfitzner
<dwp@mso.anu.edu.au>.
Thu Aug 20 21:46:04 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/plrhand.c, server/registry.c, server/registry.h: David
Pfitzner's patch to handle new savefile entries, which also handles
the foulness issue much better than my (non-uploaded) kluge. --
Syela
Thu Aug 20 21:44:23 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/citydlg.c, client/dialogs.c, client/packhand.c,
common/city.h, common/packets.c, server/cityhand.c,
server/plrhand.c, server/unitfunc.c: Reimplementing
diplomat_investigate in a less obtrusive way that does not hose
compatibility with 1.7.0. Making create_advances_list more robust
and fixing a lot of other warnings in the spy and scorelog patches.
Adding savefile_options to player_load, but not using it. -- Syela
Thu Aug 20 21:37:55 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/connectdlg.c: Changing an #if to an if() so that -Wall is
happy. -- Syela
Thu Aug 20 21:31:10 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c: Fixing a typo in kill_unit that apparently
crashed the server. -- Syela
Thu Aug 20 11:52:45 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/registry.c: Small change to hash function that decreases
collisions by 50% for huge save files. Made a custom string
allocation function for the strings used by the section file loader
and the hash table. This avoids malloc overhead on each string and
avoids having to iterate over all the hash table buckets to free
them. This decreased load time by %17 and reduced the server's
memory usage by 804k.
Thu Aug 20 11:17:24 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/civserver.c, server/gamehand.c: Moved the load timing
stuff from gamehand to civserver. This way it can time the whole
loading process, including hash table creation. Also used clock()
instead of time() to get CPU time in clock ticks for more accuracy.
Thu Aug 20 05:24:31 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Fixing one of those SIGFPE's I love so very much
(in is_my_turn) -- Syela
Thu Aug 20 04:20:10 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/civserver.c: Added a function prototype for
read_init_script().
Wed Aug 19 23:48:20 1998 Mitch Davis <mjd@alphalink.com.au>
* server/gamehand.c, server/registry.c, server/registry.h: The
attached patch adds a hash table to the registry to speed up
lookups -- to speed up loading the savefile. (The current method
is O(N^2) where N is the "size" of the savefile; this patch should
make it more like O(N).) Patch submitted by David Pfitzner
<dwp@mso.anu.edu.au>.
Wed Aug 19 23:35:10 1998 Mitch Davis <mjd@alphalink.com.au>
* client/Freeciv.h, client/mapctrl.c, client/mapctrl.h,
client/menu.c, client/packhand.c, client/xmain.c, data/Freeciv:
Added a 'wakeup' command (W for a unit - shift/click on tile) to
unsentry all units on a given tile. Patch submitted by Reinier
Post <reinpost@win.tue.nl>.
Wed Aug 19 23:27:43 1998 Mitch Davis <mjd@alphalink.com.au>
* server/civserver.c: Added an '-r' option to the server, which
will read in an initilization script at server startup time. Patch
submitted by Trevor Pering <pering@tongass.EECS.Berkeley.EDU>.
Wed Aug 19 23:24:50 1998 Mitch Davis <mjd@alphalink.com.au>
* configure, configure.in: Removed the explicit check for the
install program, as this is done automatically. Bug reported by
Tony <stuckey@jaka.ece.uiuc.edu>.
Wed Aug 19 23:17:11 1998 Mitch Davis <mjd@alphalink.com.au>
* client/Freeciv.h, client/citydlg.c, client/dialogs.c,
client/mapctrl.c, client/packhand.c, common/city.h,
common/packets.c, common/packets.h, common/unit.c, common/unit.h,
data/Freeciv, data/helpdata.txt, server/cityhand.c,
server/plrhand.c, server/unitfunc.c, server/unitfunc.h,
server/unithand.c: The latest round of spy/diplomat changes from
Kris Bubendorfer <Kris.Bubendorfer@MCS.VUW.AC.NZ>.
Wed Aug 19 23:09:33 1998 Mitch Davis <mjd@alphalink.com.au>
* client/Freeciv.h, client/repodlgs.c, common/city.c, data/Freeciv:
Addition to the city report dialog: (+gold/science/luxury) Patch
supplied by Dee Jay Randall <randal@cs.uregina.ca> and David
Pfitzner <dwp@mso.anu.edu.au>.
Wed Aug 19 22:47:40 1998 Mitch Davis <mjd@alphalink.com.au>
* client/citydlg.c: On some systems (SunOS 4.1.2 is the one in
question), sprintf returns a 'char *' instead of an 'int'. This
fixes that. Patch submitted by Trevor Pering
<pering@tongass.EECS.Berkeley.EDU>.
Wed Aug 19 22:47:11 1998 Mitch Davis <mjd@alphalink.com.au>
* server/gamehand.c: Added capability code for the scorelog. Patch
submitted by Trevor Pering <pering@tongass.EECS.Berkeley.EDU>.
Wed Aug 19 22:45:43 1998 Mitch Davis <mjd@alphalink.com.au>
* common/game.c, common/game.h, common/map.h, server/plrhand.c,
server/stdinhand.c: Some changes so that a score file is generated
which can be used to generate graphs of different statistics over
time. This is very similar to the graphs generated in CivI at the
end of the game.
When the "scorelog" server option is turned on, a file called
"civscore.log" is created and updated every turn. A post-
processing perl script (which can be found in the Freeciv contrib
dir) is then used to parse the log file and generate the output
files, which are formatted for "xgraph".
This was submitted by Trevor Pering
<pering@tongass.EECS.Berkeley.EDU>.
Wed Aug 19 22:43:25 1998 Mitch Davis <mjd@alphalink.com.au>
* data/helpdata.txt: Updated the anarchy help text. Patch
submitted by Peter Schaefer <schaefer@malaga.math.uni-augsburg.de>.
Tue Aug 18 23:53:25 1998 Mitch Davis <mjd@alphalink.com.au>
* ai/aihand.c: Fixed a problem where if a human player is being set
to ai while in ANARCHY, the ai would not go out of it. Patch
submitted by Peter Schaefer <schaefer@malaga.math.uni-augsburg.de>.
Tue Aug 18 23:50:09 1998 Mitch Davis <mjd@alphalink.com.au>
* client/helpdlg.h: Fixed a minor bug in the new, improved Freeciv
1.7.0 help system. In the civclient, when I select Help Playing,
the help system doesn't know where to go. In particular, it
doesn't go to "Strategy and Tactics." It seems that it gets
confused because "Playing" != "Strategy and Tactics". Bug report
by Andrew E. Schulman <andrex@alw.nih.gov>, and patch by David
Pfitzner <dwp@mso.anu.edu.au>.
Tue Aug 18 11:37:53 1998 Trent Piepho <xyzzy@u.washington.edu>
* ai/aiunit.c, common/game.c, common/map.c, common/map.h,
server/gotohand.c, server/plrhand.c, server/settlers.c: The tile
structure had a city ID in it, which is silly because city IDs are
pretty much useless. Changed it to a city pointer which should
make map_get_city() a lot faster. I wonder if this makes the city
cache (actually city id index would be a better name, because it
doesn't really "cache") unnecessary.
Tue Aug 18 11:34:06 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/civserver.c: Initialized the city cache before a saved
game is loaded. Fixed the ID allocation function to ship ID 0.
Tue Aug 18 11:30:28 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityhand.c: Changed the city cache a little bit. Tried a
few hashing algorithms, but no hashing at all worked best.
Sun Aug 16 02:02:01 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unittools.c, server/unittools.h: Renaming rate_unit to
rate_unit_d, and adding rate_unit_a for analogous funct
get_attacker, which findvictim will call. Returning 0 in friendly
cities in enemies_at. -- Syela
Sun Aug 16 02:00:29 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.c: Adding territory array to try to keep
autosettlers safer. The implementation is not very good, but I had
to do something. Allowing ferryboats for very long
intracontinental trips. Checking ZOC legality before trying to
disembark. -- Syela
Sun Aug 16 01:58:38 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Adding could_be_my_zoc to allow paths past
distant enemy units. Discouraging Kaput! in find_a_dir. -- Syela
Sun Aug 16 01:55:52 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/city.h: Adding invasion to city ai struct -- Syela
Sun Aug 16 01:53:44 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Adding util funct tile_is_accessible so explorers
don't keep banging their heads into a ZOC-brick-wall. Doing tricky
things to unit_bellig because get_attack_power is 99% worthless.
Writing invasion_funct, whose purpose is to force the AI to send
warships where its infantry are, and to send its infantry where its
warships are. In reality, it tends not to make enough ground
troops, but it's at least tolerable now. Writing is_my_turn so
that units in a stack attack in order; previously the invader would
attack before the battleships sometimes. Hacking findvic so that
units defending cities attack pests more ambitiously. Hacking
d_val so that fast units don't think they need bodyguards. Keeping
invaders on boats longer so they don't disembark and die.
Preventing warships from looking for charge, since eight of them
would often suddenly try to defend one city. The real problem is
elsewhere, but this kluge is adequate and much easier to program.
Treating fieldunits as non-defenders in findjob. Faking targets in
f_s_t_k so that x and y are set even if there's nothing to kill so
that the AI will understand that steam engine allows actually
useful warships. Doing lots of weird invasion stuff. Removing +40
city-kill bonus for air/sea units unless ground/heli units are
included in the invasion. Hacking sanity so that very long
intracontinental trips allow ferryboats. Preventing long rides by
trireme. Adding 'g' to attacker-want equation so that the AI sends
enough units to flatten a city in one turn. Kluging so that the AI
won't build units just to kill caravans, since that never actually
works. Using funky fprime variable instead of f in the denom, so
that def=1 units are penalized correctly. Adding
find_nearest_friendly_port and telling bored ferryboats and wounded
warships to go there. Teaching the AI that frigates are primarily
warships. Not letting units aboard ferries fortify because weird
things happen in cities then. -- Syela
Sun Aug 16 01:35:14 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Fixing horrible bug in the forced-disband routine.
AI used to disband the only defender of a city in disorder, which
is exactly what I intended to prevent. -- Syela
Sun Aug 16 01:33:38 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.c: Adding the line that makes the AI actually (very
rarely) build Magellan's. Adding a wonder-kluge so that cities
don't abort almost-built wonders. Allowing non-military builds if
want (usually attacker want) is over 100 with no urgency. Fixing
rounding errors in one of those /30 functions. Allowing the AI to
buy non-defensive units a little earlier than before. Adding stuff
to the list of stuff to save up for. Making the AI more frugal.
Forcing the AI to upgrade its triremes. -- Syela
Sun Aug 16 01:29:55 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Fixing almost all the typos and other
discrepancies between f_s_t_k and k_s_w attacker-want equations,
partly as preparation for modularizing that junk. Adding some util
functs, assess_distance, assess_danger_unit. Treating units that
are about to be produced in enemy cities as danger in
assess_danger. Limiting p_d_w to costs <= shield_stock + 40; it
was annoying having the AI insist on using battleships for defense.
Changing unit_desira so that def=1 units are penalized elsewhere
instead. Changing p_a_w to allow overrides of the chosen attacker
in case we need something with more defense or more speed or
something. Doing ugly things to k_s_w that I can't even discern
from the diffs. Fixing more bugs than I can count, or explain - no
one else noticed them since they merely caused suboptimal AI
behavior. Want for military techs and handling of unhap is
standard and as intended now. Fixing bug that caused AI warships
to yoyo. Implementing ai.invasion. Forcing the AI to build
defenders instead of attackers when it's in danger. Forcing the AI
to build barracks before ground attackers. Preventing the AI from
building units it can't upkeep. Treating all unbuilt ground
attackers as vet, which encourages making barracks and ground
attackers. I did a lot, and I probably forgot something. -- Syela
Fri Aug 14 22:52:10 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/civserver.h, server/sernet.c: Removed lots of extra
prototypes from civserver.h for functions that aren't in
civserver.c, then added another include to sernet.c because of a
missing prototype.
Fri Aug 14 22:47:03 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/packets.c: Fixed bug were the client would sometimes not
realize that an improvement was obsoleted by a wonder.
Fri Aug 14 22:45:17 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/city.c: Some small performance improvement to
wonder_replacement().
Fri Aug 14 21:52:45 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/unithand.c: Fixed an old bug so the liberated/conquered
messages show up correctly.
Thu Aug 13 15:40:43 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aitools.c, ai/aitools.h, server/unitfunc.c, server/unithand.c:
Removing unused and broken dist_nearest_enemy_* functs. Creating
and protoing dist_nearest_city, then calling it in the
combat-notify's. Adding minor (almost meaningless) change to let
AI cities building wonders keep doing so. Stopping AI warships on
GOTO. Rewriting the 'Hey idiot' debug code to use abort() and to
abort() only if ai.passenger is nonzero, which should prevent
human-induced crashes. Leaving the abort() in until I'm totally
sure the AI doesn't cause the problem itself. Forcing AI units to
end moves early instead of moving right next to something that will
kill them. -- Syela
Thu Aug 13 09:45:20 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/packhand.c: Last patched used a global variable not
declared in this file, so it didn't even compile. Used the helper
function get_unit_in_focus() rather than punit_focus directory, and
added the include file for update_menus().
Thu Aug 13 09:20:18 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityturn.c: Another bug pointed out by Walter Misar,
PACKET_TILE_INFO should have been TILE_KNOWN.
Thu Aug 13 08:57:37 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/unitfunc.c: Fixed bug pointed out by Walter Misar,
capturing a city didn't give you any techs. This has been around
since the future tech patch, I can't believe no one noticed until
now.
Thu Aug 13 07:31:28 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/stdinhand.c: Bug found by Benjamin Korvemaker, the maximum
map width was actually the max map height.
Wed Aug 12 14:15:40 1998 Mitch Davis <mjd@alphalink.com.au>
* client/menu.c, client/packhand.c: "Build Railroad" never shows up
in the Orders menu, even if it is a valid option. I have rigged
this so that "Build Railroad" replaces "Build Road" in the Options
menu when appropriate.
As I was working on this fix, I noticed a bug: If you click on a
unit which is engaged in some activity (pollution cleanup, road
building, etc.) the Orders menu does not reflect the fact that
this unit is idle and can accept new orders until you click on that
unit a SECOND time. I found a fix for this problem and incorporated
it into this patch as well. Patch submitted by Cedric Tefft
<cedric@earthling.net>.
Tue Aug 11 16:59:24 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/Freeciv.h, client/citydlg.c, client/mapctrl.c,
client/mapctrl.h, client/repodlgs.c, common/packets.c,
common/packets.h, data/Freeciv, server/civserver.c,
server/unithand.c, server/unithand.h: Added a option to upgrade
individual units to the present units menu in the city dialog. Had
to add a new packet type to the server to support doing this.
Sun Aug 9 09:23:47 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/citytools.c: Crashless and more readable (if not
standardly whitespaced) version of transfer_city_units. -- Syela
Fri Aug 7 23:51:45 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/repodlgs.c: The trade report code was looking pretty
crufty, so I fixed it up.
Fri Aug 7 04:48:36 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/repodlgs.c: Removed C++ comments from two lines. Moved a
line around too.
Thu Aug 6 17:16:52 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/Freeciv.h, client/dialogs.c, data/Freeciv: The diplomat
dialog didn't work, it looked like someone forgot to add the
resources necessary for the new button. Fixed it.
Thu Aug 6 12:09:55 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/helpdata.txt: Added the explore command to the help text.
Thu Aug 6 03:27:48 1998 John Stonebraker <ppaqebb@surfshop.net>
* configure: Updating version number to 1.7.0. Good show,
Mitch. -- Syela
Wed Aug 5 20:14:06 1998 John Stonebraker <ppaqebb@surfshop.net>
* ChangeLog, NEWS: Updating NEWS and ChangeLog - Mitch's unenviable
burden -- Syela
Wed Aug 5 20:10:47 1998 John Stonebraker <ppaqebb@surfshop.net>
* README, configure.in, client/Freeciv.h, client/connectdlg.c,
common/shared.h, data/Freeciv, data/helpdata.txt,
debian/civclient.man, debian/civserver.man, debian/copyright,
server/gamehand.c: Committing Mitch Davis's patch to update the
version number to 1.7.0 and add man files and copyright notice in
debian/ -- Syela
Wed Aug 5 20:07:25 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/dialogs.c, common/unit.c, common/unit.h,
data/helpdata.txt, server/citytools.c, server/cityturn.c,
server/gamehand.c, server/unitfunc.c, server/unitfunc.h,
server/unithand.c: Committing Kris Bubendorfer's patch to repair
spy/diplomat bugs, allow spies to poison cities, and to mung
create_unit. -- Syela
Wed Aug 5 20:04:39 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/repodlgs.c: Christian Grothoff's patch to display all
improvements in trade dialog. -- Syela
Wed Aug 5 20:03:48 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gamehand.c: David Pfitzner's patch so early 1.6.4
savefiles will load. -- Syela
Wed Aug 5 20:03:13 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/unit.c: Jason Merrill's patch so that military units can
pillage. -- Syela
Wed Aug 5 20:02:19 1998 John Stonebraker <ppaqebb@surfshop.net>
* CREDITS, README, freeciv_hackers_guide.txt: Correcting typos and
grammatical errors in documentation. Patch supplied by Markus
Linnala. -- Syela
Wed Aug 5 20:01:28 1998 John Stonebraker <ppaqebb@surfshop.net>
* data/helpdata.txt: Clarifying help on Hanging Gardens (Greg
Wooledge again) -- Syela
Wed Aug 5 20:00:08 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/helpdlg.h, client/menu.c, data/helpdata.txt: Adding Greg
Wooledge's help on combat. -- Syela
Wed Aug 5 19:58:24 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c, server/cityturn.c, server/plrhand.c: Implementing
Peter Schaefer's patches to prevent taxes, science, and building
upkeep during anarchy. -- Syela
Wed Aug 5 19:55:03 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unittools.c: Changing enemies_at to be a little more
efficient and less omniscient. -- Syela
Wed Aug 5 19:54:33 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/stdinhand.c: Adding funct set_ai_level, and adding and
doc'ing normal and hard commands to invoke it. -- Syela
Wed Aug 5 19:53:00 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.c: Adding util funct is_wet so that autosettlers
won't want to irrigate tiles they have no reason to know are
irrigable. Adding enemies_at check in findwork; this is not nearly
adequate to stop settlers from going to their deaths, but is better
than nothing. -- Syela
Wed Aug 5 19:51:02 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.h: Adding orig_x and orig_y to warmap (still
unused) -- Syela
Wed Aug 5 19:50:45 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Treating from ocean (presumably ferryboat) to
land moves as 3 instead of something bizarre in LAND_MOVING warmap.
Averaging outgoing and incoming move costs in LAND_MOVING warmap,
since pathological cases led to pathological behavior where the AI
thought danger was much farther away than it was. Adding orig_x
and orig_y to warmap, but not implementing them anywhere. -- Syela
Wed Aug 5 19:48:15 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityturn.c: Quick hack to stop widespread disorder in AI
nations whose Gardens or Oracle become obsolete. -- Syela
Wed Aug 5 19:47:19 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/player.h: Adding more ai handicaps, ones I could actually
implement, and protoing ai_handicap funct. -- Syela
Wed Aug 5 19:44:01 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/player.c: Adding funct ai_handicap. -- Syela
Wed Aug 5 19:43:34 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/city.h: Changing grave_danger back to int. -- Syela
Wed Aug 5 19:38:36 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Implementing H_HUTS so that normal-mode AI explorers
won't move straight to huts on unseen tiles. Increasing ct in
explorer loop (PART TWO) so that fast units explore further.
Teaching exploring boats that exploring coastlines is better than
exploring open sea. This is actually important for the normal-mode
AI. Adding could_unit check so that I don't get annoying ZOC
violation messages. Changing unit_vul so that defenders against
virtual (id=0) attackers are treated as fully healed. Restoring
the city-kill bonus in findvictim which I inadvertently hosed at
some point in the past. Implementing H_TARGETS so that AI in
normal mode won't target anything it hasn't seen. Altering
ai_manage_ferryboat so that ferryboats may explore rather than
going home in normal mode. -- Syela
Wed Aug 5 19:34:08 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Implementing H_RATES, so the AI in normal mode won't
set its rates beyond its government_max_rate. -- Syela
Wed Aug 5 19:33:19 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.c: Giving the AI some clue what to do on fallbacks,
which seem only to occur with techlevel=0. Hosing the DOOMED
clause, since I hosed grave_danger. Telling the AI not to spend
1000 on battleships for defense anymore; I don't know how well this
will work yet, although it seems correct. Not saving money for
B_AQUEDUCT if we only want it because we're celebrating. Saving
money for it hosed the celebration, leading to ridiculous
flipflops. Rewriting worst_elvis_tile, which has been defective
for months, but I only noticed last night when I was doing
last-minute modifications and Boston decided to have disorder N
turns in a row. Adding resolved/unresolved printf to emergency
subroutine. -- Syela
Wed Aug 5 19:30:03 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Adding dangerfunct so that danger amortization
is 2^(1-t) instead of 1/t^2. Treating units adjacent to city as 3
away instead of whatever the warmap thinks. Changing grave_danger
to an int, but not implementing my master plan yet. It needs to
acknowledge that four veteran dragoons outside a city are more than
four times as dangerous as one. Moving the v/=30 to fix a possible
problem where the AI berserkly wants FEUDALISM. Adding a +=
urgency in m_a_c_b so that the AI will buy if danger==def. Adding
emergency-wall code which actually worked when I tried it (once),
but isn't necessarily verified yet. -- Syela
Wed Aug 5 19:25:53 1998 John Stonebraker <ppaqebb@surfshop.net>
* README.AI: Updating AI intro, doc'ing normal and hard modes,
updating list of known and recently resolved problems. -- Syela
Tue Aug 4 22:41:17 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unittools.h: Protoing can_unit_attack_unit_at_tile and
enemies_at. -- Syela
Tue Aug 4 22:40:57 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unittools.c: Changing can_unit_attack_tile into a wrapper
for can_unit_attack_unit_at_tile. Adding enemies_at, which is
mostly-working but not dangerous. -- Syela
Tue Aug 4 22:40:10 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c: Fixing dist_nearest call in unit_versus, and
adding outside %s as a possible notify. Correcting spelling of
successful. Adding ACTIVITY_EXPLORE as a special case in
handle_unit_ac_req. -- Syela
Tue Aug 4 22:38:53 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c: Fixing bug in get_virtual_defense_power so
that ground units on ocean tiles return 0. Implementing
ACTIVITY_EXPLORE in update_unit_ac. Correcting dist_nearest call
in kill_unit and adding 'outside %s' as a possible notification.
-- Syela
Tue Aug 4 22:36:25 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.c: Fixing ancient bug in ai_do_build_city where
punit is freed and then referenced. Initing ww to 99999 in
findwork so that v2=0 activities are not attempted. Doing ZOC
check before settlers try to disembark. Fixing syntax error in a
memset that doesn't matter. -- Syela
Tue Aug 4 22:34:22 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.h: Protoing could_unit_move_to_tile so aiunit
can call it. -- Syela
Tue Aug 4 22:34:02 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Adding arbitrary deterrent for GOTO'ing
through unseen tiles. Tinkering with the passenger in find_the,
which probably has no meaning whatsoever. Adding transport
paranoia code, which mostly works thanks to the new util funct
enemies_at. This isn't perfect and if I figure out why I might
fix it later today. Fixing the 'passenger cannot disembark' thing
which I messed up so badly the first time I couldn't believe it
when I saw it. Adding passenger to find_a_dir for more transport
paranoia. In find_a_dir, avoiding the unknown if we are on our
last move. Allowing -1 to be returned if moving would be into the
jaws of death. Adding same_pos check in goto_is_sane. Aborting
goto's with no moves_left much sooner than before to save CPU
cycles. -- Syela
Tue Aug 4 22:28:47 1998 John Stonebraker <ppaqebb@surfshop.net>
* data/tiles.xpm: Adding X tile for ACTIVITY_EXPLORE. -- Syela
Tue Aug 4 22:27:07 1998 John Stonebraker <ppaqebb@surfshop.net>
* data/Freeciv: Adding <Key>x for key_unit_explore. -- Syela
Tue Aug 4 22:26:16 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/unit.c: Changing MAGELLAN to give 2 moves, not 1. Adding
ACTIVITY_EXPLORE to can_unit_do_activity. -- Syela
Tue Aug 4 22:25:37 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/xmain.c: Adding key_unit_explore. -- Syela
Tue Aug 4 22:25:07 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/menu.c: Adding explore to orders menu. -- Syela
Tue Aug 4 22:24:38 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/mapview.c: Defining X_TILE and displaying it when units
are in explore mode. -- Syela
Tue Aug 4 22:23:30 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/mapctrl.c, client/mapctrl.h: Adding and protoing
key_unit_explore. -- Syela
Tue Aug 4 22:22:59 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/Freeciv.h: Adding <Key>x to put units in explore mode. -- Syela
Tue Aug 4 22:21:56 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.h: Protoing a bunch of functs that now may be called
from other modules: ai_manage_explorer, unit_belligerence, _basic,
unit_vulnerability, _virtual, _quadratic, unit_can_defend. -- Syela
Tue Aug 4 22:17:02 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Correcting unit_move_turns now that MAGELLAN
actually gives 2 moves. Deleting obsolete quick'n'dirty
unit_defensiveness and replacing it with the much smarter new
funct assess_defense_unit. Hacking ai_manage_explorer so that it
can handle non-AI units, including boats. Changing the arbitrary
value in the really slow part so that explorers don't get stuck so
easily, and also calling unit_move_turns instead of assuming our
explorer was an IGTER ground unit. Writing quick'n'dirty
stack_attack_value because the old bodyguard code didn't
acknowledge stacks of muskets as a threat to howitzers. Rewriting
reinforcements_cost and _value to save enormous amounts of CPU
time since the last versions were so badly implemented. Also
changing them to continue if aunit==punit, so taking account of
that in findvictim. Upgrading the need-bodyguard calc using
stack_attack. Fixing bugs in gothere that I can't really explain
but that which were causing AI invaders to either stall or get
stuck for no good reason. Oops; I still have debug printfs in
here; will remove them later today. Using quadratic defense in
look_for_charge and findjob for bodyguards. Using
assess_defense_unit instead of the really bad joke in the
is-it-safe-to-leave calculation. Acknowledging units already
present in the horrible init in f_s_t_k. And I'm not done yet! -- Syela
Tue Aug 4 22:09:03 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aitools.c: Fixing ancient mistake in dist_nearest_enemy_city
that allowed unseen cities to be returned. Also hacking it so it
gives the nearest city on any continent if (x,y) is in the
ocean. -- Syela
Tue Aug 4 22:08:05 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Forcing the AI to save up for citywalls/defenders
it needs even if it's a good time to love the president. -- Syela
Tue Aug 4 22:07:32 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.c: Teaching the AI when to build MAGELLAN. Also
telling it SDI is worth saving money for if it's about to be
nuked. -- Syela
Tue Aug 4 22:06:28 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.h: Protoing new functs assess_defense_unit and
_quadratic. -- Syela
Tue Aug 4 22:06:07 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Fixed some bugs giving an implicit *1.5 to
boats defending cities. Wrote assess_defense_quadratic to stop
the AI from building piles of small units or from reallocating
piles of small units to one city. Wrote assess_defense_unit.
Rewrote assess_defense_backend to handle the new functs. Fixed a
syntax error that caused a memset to misbehave. -- Syela
Mon Aug 3 02:27:42 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Fixing bug where giving AI an empire with missiles
crashes the game. Fixing bug where AI warships can choose
landlocked targets. -- Syela
Sun Aug 2 23:28:37 1998 Mitch Davis <mjd@alphalink.com.au>
* configure, configure.in, client/Freeciv.h, common/shared.h,
data/Freeciv: Bumped all the version numbers to 1.6.6.
Sun Aug 2 20:30:59 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unittools.c: Adding unit name to zone of control notify.
One of my AI functs is misbehaving re: ZOC, and this is useful to
debug it as well as in general. -- Syela
Sun Aug 2 20:30:00 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c: Adding a bunch of ferryboat and bodyguard
stuff to handle_unit_move_request. -- Syela
Sun Aug 2 20:29:14 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c: Preventing nukes from reducing size 1 cities
to size 0. I don't know how The Other Game does this, so this
might need checked. -- Syela
Sun Aug 2 20:27:43 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/stdinhand.c: Adding undoc'd crash command. -- Syela
Sun Aug 2 20:26:52 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.h: Protoing other_passengers, changing proto for
find_boat. -- Syela
Sun Aug 2 20:26:24 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.c: Replacing hardcoded 8 with TRADE_WEIGHTING.
I probably have more of these lurking somewhere. More strongly
encouraging coastal cities to be near lots of water instead of
only a little. Adding rather arbitrary deterrent to using
settlers to help cities grow. No longer zeroing ferryboat in
auto_settler_do_goto; it's in unithand now. Changing find_boat so
that punit is no longer an arg (we just trust the map), but
minimum capacity is. Adding util funct other_passengers, which
I'm probably going to end up obsoleting now that multiple
passengers are handled intelligently. Adding ai_choice to
findwork so that AIs will want Navigation if colony sites exist
outside trireme range. Choosing the best tile to improve if
multiple tiles offer equal opportunity instead of choosing the
NWmost. Refusing to allow settlers to help cities grow if they
can do anything else useful. Otherwise the AI was settling its
settlers, creating workers for unimproved tiles, and then needing
settlers to improve them. Not allowing a settler riding a
warferryboat to divert it. Forcing settlers to disembark early
with other_passengers, but this is probaly no longer necessary. -- Syela
Sun Aug 2 20:18:13 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Adding time_saving abort in generate_warmap
to prevent useless duplication; some of the AI functs would
otherwise generate redundant warmaps. Fixing bug involving dir_ok
halfway around the world from the destination. Acknowledging
passenger ZOC in ferryboat goto paths. Treating rails as free
even for IGTER units finally. Encouraging units to choose
roads/rails in find_a_dir for flexibility later. -- Syela
Sun Aug 2 20:14:51 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/civserver.c: Forcing the AI to manage its units BEFORE
end_turn, not during. -- Syela
Sun Aug 2 20:14:00 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityturn.c: Handling e/luxneed/pwr in worker_loop better
to stop AI emergencies. -- Syela
Sun Aug 2 20:13:17 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/unit.c: Changing is_transporter_with_free space to return
free space. -- Syela
Sun Aug 2 20:12:37 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/city.h: Adding urgency and who's-killing-us temp vars a
and f to city_ai. -- Syela
Sun Aug 2 20:11:27 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.h: Protoing new functs look_for_charge and
find_beachhead. -- Syela
Sun Aug 2 20:07:10 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Reordering functs so that low-level routines come
first and high-level routines come later in the file. Adding util
funct unit_move_turns which actually acknowledges MAGELLAN, but I
need to implement it a dozen more places. Adding bodyguard/charge
stuff. Making bodyguards zero their charge if they should change
homecity. Adding unit_vul_virtual. Changing the desperation
kluge so that units don't attack with certain death, although
probable death is still OK. Hacking findvictim to return an int.
Hacking findvictim so ferryboats do not attack. Adding more
safeguards to prevent SIGFPE's when non-attackers try to attack.
Adding ai_military_bodyguard. Adding find_beachhead for
invasions. Adding bodyguard code to ai_military_gothere. Adding
invasion code to ai_military_gothere. Adding util funct
unit_can_defend for findjob and new funct look_for_charge.
Allowing a lot of defenders to become bodyguards if needed as
such. Calling generate_warmap more than I would like; it seems to
slow the game down some. Adding invasion code to
find_something_to_kill. Using unit_being_aggressive to calc
unhap. Making ai_manage_ferryboat a lot more intelligent
regarding multiple passengers and not leaving shore too soon.
Maybe something else, but with the rearranging of functs, the
diffs are ugly. -- Syela
Sun Aug 2 19:57:40 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Moving ai_manage_units out of ai_do_last so that
units can have their final move before enemy cities get to build
stuff. Fixing stupidity in ai_manage_taxes where it was possible
to feed a negative index to an array - was causing aberrant
behavior, mostly selling buildings during pointless celebrations.
Getting rid of some unused code. Being a little more careful not
to sell stuff because of rounding errors. There is a minor quirk
in this routine that I still need to fix, but I wanted to upload
it in a mostly-working state. -- Syela
Sun Aug 2 19:54:19 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.h: Protoing ai_choose_defender_by_type and changing
proto for ai_choose_defender_limited to match. -- Syela
Sun Aug 2 19:53:47 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.c: AI not buying wonders with have 50 or more
build_points_left. Changing the syntax to
ai_choose_defender_limited so that move_type can be an arg.
Adding ai_choose_defender_by_type. Disbanding unhappy units that
cause unrest in emergency_r_w. -- Syela
Sun Aug 2 19:50:44 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Regarding only ground units and ferryboats as
grave or urgent danger. Fixing huge, important, obvious bug where
the AI didn't comprehend that units on other continents were
dangerous. Caching urgency so that defenders in urgency-0 cities
can become bodyguards. Changing the big ugly want equation in
p_a_w and k_s_w to handle co-ordinated attacks and invasions via
ferryboat. Adding code to m_a_c_b so that the AI might (it very
rarely does, it seems) build defenders purely to become
bodyguards. I think that's everything. -- Syela
Sun Aug 2 19:39:17 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c: Giving the AI appropriate disregard for the
WALL. -- Syela
Sun Aug 2 15:34:46 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/Freeciv.h, client/helpdlg.c, data/Freeciv: Vision range
displayed in the unit help, from David Pfitzner.
Wed Jul 29 21:39:19 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c: Unlinking returning spy from tile->units
before sending her home, then inserting her in her new
tile->units. Also stalling AI military ground units on GOTO,
which is meaningless now but will be useful when I upload the
current aiunit.c. -- Syela
Wed Jul 29 16:22:42 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/dialogs.c, client/dialogs.h, client/packhand.c,
common/packets.c, common/packets.h, server/unitfunc.c,
server/unithand.c: Used the same system I did for revolt inciting
to remove the bribe cost from the unit info packet. Only had to
modify 7 files this time.
Wed Jul 29 16:11:09 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/unit.h, server/plrhand.c: Removed unit_bribe_cost() from
the unit.h header, because it isn't in unit.c any more. Added the
unittools.h header to plrhand.c.
Wed Jul 29 13:30:03 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/civclient.c, client/dialogs.c, client/dialogs.h,
client/packhand.c, client/packhand.h, common/packets.c,
common/packets.h, server/cityhand.c, server/civserver.c,
server/unithand.c, server/unithand.h: Took the incite_revolt_cost
out of the city_info packet. Sounds simple, eh? I needed to
modify 11 files to do it. Since inciting happens only rarely,
it's wasteful to send the data with every city update. Now when a
diplomat tries to incite, a INCITE_INQ packet is sent asking how
much it will cost. Then the client receives an INCITE_COST packet
from the server, and pops up the yes/no dialog. If players with
lagged connections try to incite more than one city very quickly
(before the server INCITE_COST comes back), weird things might
happen. I doubt this will actually happen in a game. This change
also allows incite cost to be updated dynamically. Before the
cost was computed at the beginning of the turn and didn't change.
Now if you do something to change the cost, like kill all the
units in the city and reduce its size, the cost will go down.
Wed Jul 29 01:18:07 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c: Removing destroyed cities from the minimap.
-- Syela
Wed Jul 29 01:14:25 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityturn.c: Removing cities that starve from the
minimap. -- Syela
Wed Jul 29 01:13:22 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityhand.c: Removing brokenly-implemented
remove_city_from_minimap from remove_city; it was corrupting the
minimap. Forcing reset_move_costs in remove_city and create_city.
My stupid failure to do so earlier led to the AI's reluctance to
build boats. -- Syela
Tue Jul 28 23:04:53 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/unit.c: Adding is_ground_unit check in
get_transporter_capacity (David Pfitzner) Adding case for
unimplemented ACTIVITY_EXPLORE in unit_activity_text, and added
the unknown punit->activity in the LOG_FATAL. -- Syela
Tue Jul 28 23:01:54 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.c: Fixing ai_find_elvis_pos so that it doesn't panic
about anticipated famine when dealing with e large. Horrible
mistake on my part. -- Syela
Tue Jul 28 22:59:13 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityturn.c, server/cityturn.h: Protoing
unit_being_aggressive normally so the AI can call it. -- Syela
Tue Jul 28 22:58:33 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gamehand.c: Including capability.h; stops implicit
declaration warnings. -- Syela
Tue Jul 28 22:55:19 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/packets.c: Fix so negative research.researched is
acknowledged as negative. -- Syela
Tue Jul 28 14:30:51 1998 Mitch Davis <mjd@alphalink.com.au>
* NEWS, configure, configure.in, client/Freeciv.h,
common/shared.h, data/Freeciv: Upped the version number to 1.6.5.
Tue Jul 28 12:40:49 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/citydlg.c, client/packhand.c, common/city.c,
common/city.h, common/packets.c, common/packets.h,
server/cityhand.c, server/cityturn.c, server/plrhand.c: Changed
the way trade route value was calculated. The value of a trade
route no longer takes the trade produced by other trade routes
into account. Before it would sometimes depending on which order
the routes were computed in. The value of the trade route is sent
with the CITY_INFO packet to the client. The client uses this
information rather than trying to compute the value isself, since
it doesn't know enough to get it right. The format for the
CITY_INFO packet has been shrunk by 6-14 bytes.
Tue Jul 28 12:37:41 1998 Mitch Davis <mjd@alphalink.com.au>
* Makefile.am, Makefile.in, client/Makefile.am,
client/Makefile.in, server/Makefile.am, server/Makefile.in: Fixing
the broken makefiles that didn't export many files (including
server/gotohand.h and client/*.ico). This is what broke beta
1.6.4.
Tue Jul 28 12:15:12 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/unithand.c: Cities weren't being refreshed when a trade
route was formed. The update for the destination city might not
get sent to the right player. Fixed.
Tue Jul 28 09:49:52 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/helpdata.txt: Some updates to unit help by David Pfitzner.
Mon Jul 27 17:39:24 1998 not sure
* common/packets.c: Reverting to revision 1.12, since 1.13 did
nothing but add bugs.
Mon Jul 27 17:25:33 1998 Mitch Davis <mjd@alphalink.com.au>
* server/civserver.c: Changed the estimated release date from Jul
26 to Aug 5.
Mon Jul 27 17:24:38 1998 Mitch Davis <mjd@alphalink.com.au>
* client/Freeciv.h, data/Freeciv: Changed the estimated release
date for 1.7 from July 26 to August 5.
Mon Jul 27 17:23:12 1998 Mitch Davis <mjd@alphalink.com.au>
* README: Updated file for 1.7. Thanks to James Blackwell for the
patch.
Mon Jul 27 17:21:57 1998 Mitch Davis <mjd@alphalink.com.au>
* NEWS: Removed mention of an irrigation problem which John
assures me has gone.
Mon Jul 27 17:21:05 1998 Mitch Davis <mjd@alphalink.com.au>
* Makefile.noimake: Added a note telling people that the file is
out of date.
Mon Jul 27 17:20:27 1998 Mitch Davis <mjd@alphalink.com.au>
* INSTALL: Updated the INSTALL document so it tells people to use
configure instead of Imake.
Mon Jul 27 17:19:33 1998 Mitch Davis <mjd@alphalink.com.au>
* HOWTOPLAY: Replaced references to 1.6 with Freeciv.
Mon Jul 27 17:18:30 1998 not sure
* ChangeLog: Made a start on the ChangeLog. Need to finish this
for 1.7.
Mon Jul 27 17:00:32 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/packets.c: Removing casting to signed in get_int8; hosed
pinfo->activity. -- Syela
Mon Jul 27 16:25:33 1998 Mitch Davis <mjd@alphalink.com.au>
* CREDITS, NEWS: Updated for 1.7. Thanks to James Blackwell
<innocent@mercury.merconline.com> for the changes.
Mon Jul 27 16:01:37 1998 Mitch Davis <mjd@alphalink.com.au>
* server/plrhand.c: Removed some code I had commented out ages
ago.
Mon Jul 27 15:25:51 1998 Mitch Davis <mjd@alphalink.com.au>
* server/cityturn.c: Added code so that units in fortresses within
a 3-square radius of a city do not cause unhappiness. Patch
submitted by David Pfitzner <dwp@mso.anu.edu.au>.
Mon Jul 27 15:17:53 1998 Mitch Davis <mjd@alphalink.com.au>
* data/helpdata.txt: Updated the help file to include the feature
where units in fortresses around cities do not cause unhappiness.
This allows for much more realistic defense scenarios. Patch
submitted by Greg Wooledge <wooledge@kellnet.com>.
Mon Jul 27 15:10:48 1998 Mitch Davis <mjd@alphalink.com.au>
* common/game.c, common/game.h: Added a "get_player" convenience
function. Patch submitted by David Pfitzner <dwp@mso.anu.edu.au>.
Mon Jul 27 15:03:34 1998 Mitch Davis <mjd@alphalink.com.au>
* client/Freeciv.h, server/plrhand.c: The rate-changing code has a
really stupid bug in it..*sigh* The notify_player call is missing
it's last arg in handle_player_rates
[it should be get_government_name(pplayer->government)] Fix
submitted by Olli Helenius <ollhel@jytol.fi>.
Mon Jul 27 14:29:06 1998 Mitch Davis <mjd@alphalink.com.au>
* client/ratesdlg.c, common/player.c, common/player.h,
data/Freeciv, server/plrhand.c: Made the tax/lux/sci rates work
like in CivII. Patch submitted by Olli Helenius
<ollhel@jytol.fi>.
Mon Jul 27 14:24:56 1998 Mitch Davis <mjd@alphalink.com.au>
* server/gamehand.c: Rewrote the savefile version patch to use
capability strings instead of simple version number. Patch
submitted by Cedric Tefft <cedric@earthling.net>.
Mon Jul 27 12:36:40 1998 Mitch Davis <mjd@alphalink.com.au>
* common/packets.c: Fixes a problem where cities with lack of food
or so are shown to have 65k food surplus. Patch submitted by
Frank Muzzulini <muzz@albatross.pond.sub.org>.
Mon Jul 27 12:20:49 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/menu.c, data/helpdata.txt, client/helpdlg.h: Patches from
Greg Wooledge to add lots of help text for governments and
happiness.
Mon Jul 27 05:15:33 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/unit.c: Changed Partisans to ignore terrain, like in
civ2.
Mon Jul 27 01:11:44 1998 John Stonebraker <ppaqebb@surfshop.net>
* README.AI: Adding short doc describing current AI status to
top-level dir. -- Syela
Mon Jul 27 01:09:25 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.h: Protoing find_boat, since invasion code will
call it. -- Syela
Mon Jul 27 01:06:43 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c, ai/aicity.c, ai/aicity.h: Moving
choose-ferryboat code into ai_choose_ferryboat. -- Syela
Mon Jul 27 01:04:10 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Fixing bug so galleons can GOTO defended
tiles. Setting unit activity to ACTIVITY_GOTO in do_unit_goto as
a failsafe. -- Syela
Mon Jul 27 01:02:35 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/unit.h: Adding ACTIVITY_EXPLORE, which I'll implement
Real Soon Now. -- Syela
Mon Jul 27 01:02:00 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/civserver.c: David Pfitzner's patch to announce when
game-load is complete. -- Syela
Mon Jul 27 00:07:59 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Moving debug printfs that were calling free()d
memory -- Syela
Mon Jul 27 00:05:52 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/civclient.c: David Pfitzner's patch to stop client
crashes on reconnection. -- Syela
Sat Jul 25 16:47:30 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityturn.c: Adding 'e' to better estimate real foodneed
when elvisization is inevitable. This is a quick-n-dirty hack but
it works well. Zeroing specialists prior to worker_loop in
auto_arrange_workers. -- Syela
Sat Jul 25 16:45:58 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.c: Fixing mistaken implementation of settler_eats
(months old) in ai_find_elvis_pos. Adding 'e' to handle
multiple-elvis case so that it doesn't elvisize all its farmers
and starve. Fixing what was probably a typo in ai_fix_unhappy;
doing so fixed a bug with emergency_reallocate. Made the
emergency notification more verbose and got rid of all the other
printfs in reallocate once I fixed the remaining bugs; the
city_refresh turned out to be important. -- Syela
Fri Jul 24 20:49:58 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c: Fixing a dorky typo of mine in g_v_d_p that
David Pfitzner found. -- Syela
Fri Jul 24 20:49:21 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.c: Commenting out debug printfs in ferryboat
code now that it's tested. Using seacost instead of dopey
real_map_distance to calculate distances to possible colony sites.
Letting settlers ride the boat all the way to their destination
instead of getting off too soon. -- Syela
Fri Jul 24 20:47:48 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/plrhand.c: Fixing bug where last available tech was
called 'Future Tech 1'. -- Syela
Fri Jul 24 20:46:51 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.h: Protoing really_generate_warmap since
findwork now calls it. -- Syela
Fri Jul 24 20:46:29 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Better pathfinding for Triremes.
Experimental patch to the stacking algorithm so that stacks in
cities and fortresses are OK. -- Syela
Fri Jul 24 20:45:25 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityturn.c: Fixing a really stupid typo in worker_loop
that hosed conflict[] -- Syela
Fri Jul 24 20:44:56 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/citytools.c: Fixing a bug in city_tile_value that allowed
nonsupport of units. -- Syela
Fri Jul 24 20:43:54 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.h: Redefining find_something_to_kill as an int instead
of void funct. -- Syela
Fri Jul 24 20:43:28 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Allowing certain units to be managed with 0 moves
left. Fixes the wasted turn for caravans and lets ferryboats stop
their GOTOs when their passengers disembark. Rewrote the
unit_belli and unit_vul stuff, reinf_value,
find_something_to_kill, and findvictim in order to make attacker
wants somewhat reasonable instead of craven. -- Syela
Fri Jul 24 20:41:21 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Doing funky stuff in ai_manage_taxes to prevent
famine, disorder, and non-support of units. -- Syela
Fri Jul 24 20:39:48 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.h: Protoing new functs has_a_normal_def and
emergency_realloc_workers. -- Syela
Fri Jul 24 20:37:40 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.c: Spending money wantonly when researching A_NONE.
Fixing isdef in choose_defender_limited so cruisers don't count as
defenders. Adding emergency_reallocate_workers; not fully tested
yet. -- Syela
Fri Jul 24 20:36:00 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Only treating ground units and ferryboats as
grave or urgent danger. Not allowing FIELDUNIT as first defender
in a city. Changing unit attack desires; old ones were right at
the THRESHOLD, but too low for closer targets. Fixing a dorky
typo that only survived because memsetting the virtualunit didn't
set its id to 0. Zeroing it manually. Treating FIELDUNITs in a
city as attackers, like Cannons are. -- Syela
Fri Jul 24 20:33:09 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c: Better pollution understanding. Fixing want
for CAPITAL and DARWIN. -- Syela
Thu Jul 23 22:51:24 1998 Mitch Davis <mjd@alphalink.com.au>
* client/Freeciv.h, client/connectdlg.c, client/graphics.c,
client/graphics.h, common/shared.h, data/Freeciv,
server/civserver.c, server/meta.h: Made some changes so that
versions before 1.7 display a prominent BETA notice.
Thu Jul 23 22:48:47 1998 Mitch Davis <mjd@alphalink.com.au>
* common/shared.h: Added some notes for people updating the
capability string.
Thu Jul 23 00:54:23 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.c: Moving the warmth calculation where it should
have been in the first place. Expanding settling horizon after we
learn Nav. -- Syela
Thu Jul 23 00:52:47 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/citytools.h: Defining POLLUTION_WEIGHTING and
WARMING_FACTOR. -- Syela
Thu Jul 23 00:51:43 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.c: Zeroing tech_want for buildings under primitive
governments. Trying to stop the AI from using FIELDUNITS as
sentry defenders. -- Syela
Thu Jul 23 00:49:54 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c: Correcting stupid mistakes, one involving
B_MASS, two others that were preventing the AI from building
caravans and freight. -- Syela
Wed Jul 22 23:08:15 1998 Mitch Davis <mjd@alphalink.com.au>
* server/cityturn.c: This patch prevents advisors from building
palaces automatically. Patch submitted by Olli Helenius
<ollhel@jytol.fi>.
Wed Jul 22 23:05:24 1998 Mitch Davis <mjd@alphalink.com.au>
* server/plrhand.c: Some formatting changes. Hope I didn't break
anything.
Wed Jul 22 22:59:13 1998 Mitch Davis <mjd@alphalink.com.au>
* server/plrhand.c: This patch fixes a problem with anarchy.
Patch supplied by Peter Schaefer
<schaefer@malaga.math.uni-augsburg.de>.
Wed Jul 22 22:57:28 1998 not sure
* ai/Makefile.in, client/Makefile.in, server/Makefile.in: Grr,
some makefile changes eluded me.
Wed Jul 22 18:42:25 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c, ai/advmilitary.c, ai/aicity.c, ai/aihand.c,
ai/aitools.c, ai/aiunit.c, server/cityturn.c, server/settlers.c,
common/player.h: Fixing a bunch of bugs involving AI behavior with
pyramids. Dealing with simulataneous construction of wonders on
different continents better, and eliminating surplus caravans.
Instituting warmth variable and primitive pollution-awareness.
The pollution stuff isn't adequately tested yet. -- Syela
Wed Jul 22 18:38:19 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/plrhand.c, client/finddlg.c, client/gotodlg.c,
client/repodlgs.c: Casting the fourth arg of qsort as (void *) for
-Wall. -- Syela
Wed Jul 22 13:03:28 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/mapview.c: Some typos that would effect non-square tiles
fixed.
Wed Jul 22 00:15:06 1998 Mitch Davis <mjd@alphalink.com.au>
* Makefile.in, configure, common/Makefile.in, data/Makefile.in,
server/Makefile.in: Regenerated some Makefiles, after Greg's
changes and unchanges.
Wed Jul 22 00:09:29 1998 Mitch Davis <mjd@alphalink.com.au>
* ai/Makefile.am, common/Makefile.am: Reversed some of Greg's
changes, since some people had problems.
Mon Jul 20 23:03:09 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c: Properly indenting and bugfixing
diplomat_leave_city. -- Syela
Mon Jul 20 22:42:50 1998 Mitch Davis <mjd@alphalink.com.au>
* client/helpdlg.h, client/menu.c, data/helpdata.txt:
- adds some basic help for terrain types
- adds boat carrying capacities to the help text
- fixes some other bugs in the help system (most importantly,
clicking "About" didn't find the right section, since
the helpdata.txt file said "About Freeciv")
Patch supplied by Greg Wooledge <wooledge@kellnet.com>.
Mon Jul 20 22:41:31 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c, server/gotohand.c, server/settlers.c: Dealing with
ferryboat gotos more intelligently. -- Syela
Mon Jul 20 22:39:40 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/player.c, common/player.h, server/plrhand.c: Adding
framework for handicapping the AI; not yet implemented. -- Syela
Mon Jul 20 22:35:10 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/packhand.c: Forcing government dialog popup when an AI
nation with out-of-range
(Flag) value for ->revolution is given human control. -- Syela
Mon Jul 20 22:31:00 1998 Mitch Davis <mjd@alphalink.com.au>
* configure.in, ai/Makefile.am, client/Makefile.am,
common/Makefile.am: Some improvements from Reinier Post
<reinpost@win.tue.nl>. I haven't had time to test them.
Mon Jul 20 22:25:02 1998 Mitch Davis <mjd@alphalink.com.au>
* Imakefile: Added server/settlers.o. Reported by Reinier Post
<reinpost@win.tue.nl>.
Mon Jul 20 22:17:49 1998 Mitch Davis <mjd@alphalink.com.au>
* server/unitfunc.c: Fixed two problems. The first was a bug I
introduced by incorrectly joining two ifs. Naughty me. The
second is regarding the behaviour of a spy when she's returned to
her home city. From a patch submitted by Kris Bubendorfer
<Kris.Bubendorfer@MCS.VUW.AC.NZ>.
Mon Jul 20 20:20:57 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityturn.c: Using minimap to handle conflicts in
worker_loop; small win. -- Syela
Mon Jul 20 20:06:22 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/plrhand.c: Removing removed player's cities from the
citycache. -- Syela
Mon Jul 20 20:04:10 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Using add_adjust instead of auto_arr in
manage_taxes. -- Syela
Mon Jul 20 19:57:48 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c, ai/aicity.c, common/city.h, server/settlers.c,
server/settlers.h: Contemplating settlers with a fresh warmap to
save CPU time. -- Syela
Mon Jul 20 14:34:12 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityhand.c, server/cityhand.h, server/unitfunc.c: Updated
city maps and sent out city info packets for nearby cities when
another city adjusts its workers. Also updated city map when a
city is captured.
Mon Jul 20 14:28:45 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/city.h: Removed (incorrect) prototype for non-existant
function.
Mon Jul 20 14:27:57 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/unittools.c, server/unittools.h: Removed
is_sailing_unit_tile because it's no longer needed. Corrected ZOC
so that cities block units, even if the city is empty.
Mon Jul 20 12:08:44 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityhand.c, server/settlers.c, server/settlers.h,
server/unitfunc.c, server/unithand.c: Initializing infrastructure
cache when a city is created, stolen, or conquered. Despite my
-Wall -Werror, yesterday's version was calling uninitialized
variables. -- Syela
Mon Jul 20 00:11:45 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c: Fixing the Teflon Diplomat bug (Greg
Wooledge's patch) -- Syela
Sun Jul 19 23:54:41 1998 not sure
* NEWS, configure, configure.in, ai/advdomestic.c,
ai/advmilitary.c, ai/aicity.c, ai/aihand.c, ai/aitech.c,
ai/aitools.c, ai/aiunit.c, client/Freeciv.h, client/civclient.h,
client/climisc.c, common/city.c, common/city.h, common/game.c,
common/map.h, common/shared.h, data/Freeciv, server/cityhand.c,
server/cityhand.h, server/citytools.c, server/cityturn.c,
server/cityturn.h, server/civserver.c, server/diplhand.c,
server/gotohand.c, server/gotohand.h, server/plrhand.c,
server/plrhand.h, server/sernet.c, server/settlers.c,
server/settlers.h, server/unitfunc.c, server/unithand.c,
server/unithand.h, server/unittools.c:
Implementing city cache and ai_calc cache in the city_ai struct.
This gives a fivefold CPU savings in the benchmark at 800-600 BC,
and should be even more necessary later in games. Deleting old
find_city_by_id, but leaving it proto'd in city.h. Adding new
cache-based find_city_by_id to cityhand, and forcing the client to
use game_find_city_by_id instead since it's the same as the old
one.
In order to make sure I hadn't broken anything, I compiled with
-Wall -Werror, and in order to do so, I had to proto a bunch of
functs and eliminate unused variables in most of the files I'm
committing. My own sloppiness is to blame for most of that.
Fixing typo in city_affected_by_wonder (broke B_WOMENS).
Fixing ZOC bug in is_sailing_unit_tile.
Updating version number to 1.6.4.
Fri Jul 17 12:50:14 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.c: Lots of cool stuff involving settlers and
ferryboats. -- Syela
Fri Jul 17 12:48:36 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c: Fixing my fix to lost Triremes. Zeroing new
unit_ai variables on unit mallocation. -- Syela
Fri Jul 17 12:47:41 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/plrhand.c: Zeroing new unit_ai variables on unit load. -- Syela
Fri Jul 17 12:46:48 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Fixing bug so shipboard units can GOTO land.
Allowing ships to GOTO shore, for shore bombardments and
transports, etc. Fixing dorky typo that hosed GOTO's across the
international date line. Dissuading TRIREMEs from GOTO across
open sea. Modularizing goto_is_sane. -- Syela
Fri Jul 17 12:43:27 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/unit.h: Adding basics of unit co-operation code to
unit_ai struct. -- Syela
Fri Jul 17 12:42:55 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Learning how to manage ferryboats. -- Syela
Fri Jul 17 12:42:29 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c: Learning how to want transports. -- Syela
Thu Jul 16 22:35:41 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/unithand.c: Quick hack to prevent settlers from building
cities when they have zero moves left.
Wed Jul 15 23:51:37 1998 Mitch Davis <mjd@alphalink.com.au>
* client/dialogs.c, client/dialogs.h, client/mapview.c,
client/xmain.c: Changed the main screen so that all three of the
science, luxury and tax rates are shown. Also, it is now possible
to click on them to change them: Clicking on one area reduces
spending in that area by 10%. This patch was supplied by Peter
Schaefer <schaefer@malaga.math.uni-augsburg.de>
Wed Jul 15 09:38:35 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/citytools.c: Acknowledging tax_bonus affects luxury in
city_tile_value. -- Syela
Wed Jul 15 09:36:29 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Fixing a typo that stopped the AI from using lux
rate to stop disorder. -- Syela
Wed Jul 15 08:41:16 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/Makefile.am, server/Makefile.in: Telling make to compile
settlers.c. Pardon me if I messed this up. -- Syela
Wed Jul 15 08:40:21 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/settlers.c, server/settlers.h: Consolidating auto-settler
code in its own module for my sanity. -- Syela
Wed Jul 15 08:35:01 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c, ai/aiunit.h, server/unitfunc.c, server/unitfunc.h,
server/unittools.c, server/unittools.h: Moving all the
auto-settler stuff into settlers.c. Unitfunc was getting too big,
and I had the subroutines strewn everywhere. -- Syela
Wed Jul 15 07:08:53 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c, ai/aiunit.h, server/cityhand.c, server/civserver.c,
server/plrhand.c, server/unitfunc.c: Ignoring corruption in
city_des; caching results in the minimap. Enormous CPU savings,
minor cost in memory. -- Syela
Wed Jul 15 06:59:17 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityturn.c: Taking obsolete junk out of
advisor_choose_build; it was causing stupidity when
ai_advisor_choose_building liked CAPITAL. -- Syela
Tue Jul 14 16:33:07 1998 Mitch Davis <mjd@alphalink.com.au>
* server/unitfunc.c: A small correction to Kris' previous patch.
Tue Jul 14 16:22:32 1998 Mitch Davis <mjd@alphalink.com.au>
* common/game.c, common/game.h, common/map.h, server/citytools.c,
server/citytools.h, server/stdinhand.c, server/unitfunc.c,
server/unitfunc.h, server/unithand.c: This change set concerns
spies and diplomats, making them operate more in line with Civ II.
That is, spies may survive a mission, and units in a bought city
are transferred to the new owner etc. Multiple bugs in the code
in this area were also fixed.
1. Numerous bug fixes of sabotage/steal code, where messages
were being sent incorrectly.
2. Cities were not being razed correctly in diplomat_incite.
Now they aren't razed, as per Civ II.
3. get_a_tech is now called in incite as well as in
unit_enter_city. After all, buying a city should give you
the same opportunity to `discover' new technology as
invading the city does.
4. All units (military and non military) are now transferred to
the player who purchased the city. Units outside of the
city are either deleted, or if in another city, are assigned
that city as their homecity.
This also cures the current bug, where a unit in a bought
city that has a different homecity, remains in the bought
city - even though it is now owned by the purchaser. Thus
the enemy can simply move out and back in - recapturing the
newly bought city.
5. A diplomat now has a chance (ala Civ II) of defeating
defending diplomat/spy units in a city. This chance is set
via the set diplchance command from the server console. It
defaults to a 1/3 chance of the attacking diplomat/spy
killing each defending diplomat/spy.
6. Spies (not diplomats) may now survive their mission (ala Civ
II). The chance that a spy will be returned to it's home
city is also 1/diplchance. This increases the value of
spies over diplomats.
Patch supplied by Kris Bubendorfer
<Kris.Bubendorfer@MCS.VUW.AC.NZ>.
Tue Jul 14 15:25:15 1998 Mitch Davis <mjd@alphalink.com.au>
* data/helpdata.txt: Updated errors in some of the entries. Patch
submitted by Frank Muzzulini <muzz@albatross.pond.sub.org>.
Tue Jul 14 14:44:18 1998 Mitch Davis <mjd@alphalink.com.au>
* client/xmain.c: Added a workaround for if getpwuid returns NULL.
Problem reported by Peter Joachim Unold <pjunold@daimi.aau.dk> and
Peter Schaefer <schaefer@malaga.math.uni-augsburg.de>. Patch
supplied by the second Peter.
Tue Jul 14 03:48:47 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c, ai/advmilitary.c, ai/aicity.c, ai/aihand.c,
ai/aiunit.c, server/cityhand.h, server/citytools.c,
server/citytools.h, server/gotohand.c, server/unitfunc.c:
Eliminating lots of unnecessary divisions in functions I've
written. -- Syela
Tue Jul 14 03:43:16 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/Freeciv.h: Proto for my refresh widget; didn't think this
should be uploaded. -- Syela
Mon Jul 13 22:41:53 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Fixing possible overflow in amortize. I ran this
function millions of times without ever seeing it, but I just
found the problem. -- Syela
Mon Jul 13 11:44:04 1998 John Stonebraker <ppaqebb@surfshop.net>
* data/Freeciv, client/repodlgs.c, common/packets.c,
common/packets.h, server/cityhand.c, server/cityhand.h,
server/cityturn.c, server/civserver.c: Adding Refresh button to
city report. Why must this span eight modules? -- Syela
Sun Jul 12 23:50:33 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Quick fix for empires with zero trade and
disorderly cities. -- Syela
Sun Jul 12 06:54:09 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/packets.c: Fixing a typo of Trent's regarding negative
shield surplus. -- Syela
Sun Jul 12 05:48:17 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Removing debug output. Making preemption of
impossible GOTOs less draconian, more intelligent, and more
comprehensiv. -- Syela
Sun Jul 12 04:19:22 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Making the AI more willing to buy walls (and
coastal/SAM/SDI) -- Syela
Sun Jul 12 04:18:06 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aitech.c: Removing debug output for AI changing tech and
goal. -- Syela
Sat Jul 11 23:45:34 1998 Mitch Davis <mjd@alphalink.com.au>
* Imakefile: Oops, forgot to add capability.o to the Imakefile.
Bug reported by Frank Muzzulini <muzz@albatross.pond.sub.org>
Sat Jul 11 09:08:16 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/packets.c: Fixed a few bugs I introduced when I shrunk
the protocol.
Fri Jul 10 22:35:17 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityturn.c: Calling ai_eval_bu for human cities in
advisor_choose. -- Syela
Fri Jul 10 22:30:31 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c: Adding want = TRADE_WEIGHT * 100 /
SHIELD_WEIGHT for CAPITAL. -- Syela
Fri Jul 10 22:29:40 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Allowing ground units to GOTO adjacent tiles
even if one is land and one is ocean. -- Syela
Fri Jul 10 05:06:27 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Old goto stuff buried. Warmaps moved in.
New warmap-based GOTO routines in and working AFAICT. There was
an infinite-loop-RR bug but I'm 99% sure it's finally gone now.
-- Syela
Fri Jul 10 03:49:28 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.h: Adding gotohand.h to handle defn's and protos
for GOTO. -- Syela
Fri Jul 10 03:46:32 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c, ai/advmilitary.h: Moving warmap stuff into
gotohand.c, .h. -- Syela
Fri Jul 10 03:34:23 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c: Including gotohand.h, removing
now-unnecessary protos. -- Syela
Fri Jul 10 03:25:06 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/map.c: Standardizing ii[] and jj[] arrays so I don't get
confused. -- Syela
Fri Jul 10 03:22:25 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Including gotohand.h since I moved the warmaps.
Standardizing ii[] and jj[] arrays so I don't get confused
again. -- Syela
Fri Jul 10 03:10:26 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.c: Changing int which to enum unit_move_type. -- Syela
Fri Jul 10 03:04:54 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c: Limiting domestic want to 199; allows better
saving for defense. -- Syela
Thu Jul 9 15:59:35 1998 Mitch Davis <mjd@alphalink.com.au>
* .cvsignore, ai/.cvsignore, client/.cvsignore, common/.cvsignore,
data/.cvsignore, server/.cvsignore: Added a line to .cvsignore so
the .deps directory is ignored.
Thu Jul 9 15:58:31 1998 Mitch Davis <mjd@alphalink.com.au>
* server/civserver.c: If you try to select your race and choose
the player name that you initially connected to the server with,
you erroneously get the "Another player has already joined..."
notice. The server doesn't realize that the "other" player IS
you. Patch submitted by Cedric Tefft <cedric@earthling.net>.
Thu Jul 9 15:39:42 1998 Mitch Davis <mjd@alphalink.com.au>
* common/Makefile.am, common/Makefile.in, common/capability.c,
common/capability.h, common/packets.c, common/packets.h,
common/shared.h, client/civclient.c, client/clinet.c,
client/packhand.c, client/packhand.h, client/xmain.c,
server/civserver.c: Added support for capability checking between
the client and the server. This should solve any future problems
with detecting whether the protocol of the client and server are
compatible, without the nebulous practise of incrementing version
numbers.
Thu Jul 9 07:11:58 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/civserver.c, server/civserver.h, server/maphand.c,
server/plrhand.c, server/unithand.c, client/civclient.c,
client/mapctrl.c, client/packhand.c, common/game.c,
common/packets.c, common/packets.h: Massive changes to protocol.
The bandwidth used is about a quarter of what it was. Also does
more buffering to reduce the number of packets sent.
Wed Jul 8 08:53:14 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c, server/unittools.c: Going back to new
is_already_assigned. Adding unit_list_iterates so it can handle
multiple units on the same tile. Assigning virtualunits so that
the AI no longer builds many engineers to handle a single job.
Fixing bugs re: cities and re: mines in ai_calc_irrigate. -- Syela
Tue Jul 7 21:18:13 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c, server/unittools.c: Hacking ai_calc_railroad
to handle benefit of railroad on forest/mine tiles without roads;
related patch to auto_settler_findwork. -- Syela
Tue Jul 7 21:16:22 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/packhand.c: Committing fix to possible client crash
related to aifill. -- Syela
Tue Jul 7 21:15:00 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Adding quick-n-dirty immigration routine to
city_desirability. -- Syela
Tue Jul 7 21:13:45 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Adding danger5 to deal with SDI; not adding to
danger for nuclears; Not wanting attackers with 0 attack (stops
SIGFPE's). -- Syela
Tue Jul 7 21:12:16 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c: Adding tech_want for Electricity if we have
colosseums and for Theology if we have Cathedrals -- Syela
Tue Jul 7 14:35:38 1998 Mitch Davis <mjd@alphalink.com.au>
* common/shared.c: A small change which allows for the compilation
of Freeciv under GNU-Win32. We really should put something in the
autoconfigure stuff... Patch supplied by Sam Holden
<sholden@pgrad.cs.usyd.edu.au>.
Tue Jul 7 06:53:12 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/shared.h: fixed typo in previous patch that kept it from
compiling.
Mon Jul 6 18:10:33 1998 Mitch Davis <mjd@alphalink.com.au>
* common/city.c: Added some more names for American cities. Patch
submitted by Jake Kesinger <kesinger@math.ttu.edu>.
Mon Jul 6 17:35:12 1998 Mitch Davis <mjd@alphalink.com.au>
* client/menu.c: This patch fixes a problem where the Auto Settler
and Build Road options on the Options Menu were permanently greyed
out. Problem found and patch submitted by Cedric Tefft
<cedric@earthling.net>.
Mon Jul 6 17:32:27 1998 Mitch Davis <mjd@alphalink.com.au>
* server/civserver.c: Patch to prevent two people connecting to
the server and using the same name. Patch submitted by Cedric
Tefft <cedric@earthling.net>.
Mon Jul 6 17:24:20 1998 Mitch Davis <mjd@alphalink.com.au>
* Makefile.in, ai/Makefile.in, client/Makefile.in,
common/Makefile.in, data/Makefile.in, server/Makefile.in:
Makefile.in files are normally generated from Makefile.am, but we
provide them for people who don't have automake. In this case,
the Makefile.in files we were shipping did not support the
generation and checking of dependency information. Reran automake
to regenerate them. Done on the good advice of Falk Hueffner
<falk.hueffner@student.uni-tuebingen.de>.
Mon Jul 6 17:18:11 1998 Mitch Davis <mjd@alphalink.com.au>
* common/events.h, server/cityturn.c: Changed the spelling of
"aquaduct" to "aqueduct", as it should be. Patch submitted by
Greg Wooledge <gawooledge@sherwin.com>.
Mon Jul 6 17:16:14 1998 Mitch Davis <mjd@alphalink.com.au>
* client/finddlg.c, client/gotodlg.c, client/repodlgs.c,
common/game.c, common/game.h, common/shared.c, common/shared.h:
This enhancement ensures that the city names in pick-a-city
dialogs are sorted. Patch submitted by Cedric Tefft
<cedric@earthling.net>.
Mon Jul 6 17:10:38 1998 Mitch Davis <mjd@alphalink.com.au>
* common/game.c, common/unit.c, server/civserver.c,
server/gamehand.c: Did a #include <string.h> to prevent a warning
about implicit declaration of strlen and strcpy on the DEC Alpha.
Bug report submitted by ct <turnbull@xserver.sjc.ox.ac.uk>.
Mon Jul 6 17:07:00 1998 Mitch Davis <mjd@alphalink.com.au>
* README, server/stdinhand.c: - Updated the Freeciv server
options. Put in a key for the single-letter placeholders after
server commands which take arguments. - Made mention of
"localhost" for a computer name when playing locally. - Described
how to start an ai player (updated for 1.6.3). Based on a patch
submitted by Carl Bartels <cb@bravo436.chem.mcgill.ca>.
Mon Jul 6 17:01:51 1998 Mitch Davis <mjd@alphalink.com.au>
* data/helpdata.txt: Changed the order of some help items, moving
the general ones to the top. Also, changed the "Freeciv" tag to
"About Freeciv". Patch submitted by Sverker Wiberg
<sverkerw@Update.UU.SE>.
Mon Jul 6 06:42:31 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/game.c, common/game.h, common/map.h, server/civserver.c,
server/civserver.h, server/stdinhand.c: Cedric Tefft's patch to
create 'aifill' variable. It originally sometimes crashed my
client when I was connected as an AI before game-start, but he
sent me a fix that seems to have worked. -- Syela
Sun Jul 5 23:57:25 1998 Mitch Davis <mjd@alphalink.com.au>
* data/helpdata.txt: There are two lines which exceed the
68-character limit, and at least one grammatical mistake. This
patch fixes all three problems. Patch provided by Greg Wooledge
<gawooledge@sherwin.com>
Sun Jul 5 23:50:24 1998 Mitch Davis <mjd@alphalink.com.au>
* client/citydlg.c, client/dialogs.c, client/repodlgs.c,
server/unithand.c: - Replace the phrase "revenues account to" with
"revenues amount to". - Replace "Treasure" with "Treasury".
Patch provided by Greg Wooledge <gawooledge@sherwin.com>.
Sun Jul 5 23:46:29 1998 Mitch Davis <mjd@alphalink.com.au>
* client/mapview.c, common/shared.c, server/civserver.c,
server/sernet.c: Patch for OS/2, supplied by Alexander Mai
<st002279@HRZPUB.tu-darmstadt.de>.
Sun Jul 5 07:36:57 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unittools.h: Removed proto's of removed functs, added
proto's of added functs. -- Syela
Sun Jul 5 07:36:22 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unittools.c: Temporarily disabling
new_is_already_assigned and reverting to old. The RIDICULOUS bug
regarding a unit on goto entering a tile where another settler
works was easily fixed in the old funct, and not easily fixed in
the new one. This wasn't a problem until I made settlers on goto
stop and think every turn.
Obliterated old random-looking ai_calc_* routines and wrote new
ones that follow the pattern set out in ai_eval_bu. These
currently call city_tile_value which gives the right answers but
wastes a lot of CPU time. I wanted to make sure it was right;
later I'll get around to making it efficient as well.
Wrote road_bonus so that the AI blazes trails and doesn't just build
randomly. Rewrote in_city_radius to save CPU time. -- Syela
Sun Jul 5 07:31:11 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c: Changing in_city_radius call since it's been
rewritten. -- Syela
Sun Jul 5 07:30:02 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.h: Changing auto_settler_findwork proto since it
now returns an int. -- Syela
Sun Jul 5 07:29:37 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c: Fixed the bug where settlers aboard
disappearing triremes crash the game. Annihilated old autosettler
code. Rewrote auto_settler_findwork and spent many hours testing
it, taking notes, and making changes. It seems to be OK, so I'm
uploading it, but I wouldn't call it stable. Weightings may need
to be changed. The CPU usage is definitely unacceptable and I
will optimize this further but I need to upload it now. Forcing
gotoing settlers to idle so they can re-evaluate their plans. -- Syela
Sun Jul 5 07:24:59 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/mapgen.c: Removed island_info from yet another module.
-- Syela
Sun Jul 5 07:24:23 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityturn.c: Wrote global_city_refresh, but didn't add any
calls to it yet. -- Syela
Sun Jul 5 07:23:32 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/citytools.h: Proto'd worst_worker_tile_value. -- Syela
Sun Jul 5 07:23:16 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/citytools.c: Made city_tile_value a little smarter about
foodneed and prodneed. Added worst_worker_tile_value for
autosettler code. -- Syela
Sun Jul 5 07:21:47 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityhand.h: Defined FOOD_, SHIELD_, and
TRADE_WEIGHTING. -- Syela
Sun Jul 5 07:21:06 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityhand.c: Deleted ai_calculate_city_value comment, and
added a fnord in case I decide to use this model to save time. I
really hate it and it cripples the AI badly but the CPU savings
may require it. -- Syela
Sun Jul 5 07:19:45 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/player.h: Removed ai_player_island. Made comments about
removing race structs. -- Syela
Sun Jul 5 07:18:41 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/map.c: Map_adjusted x and y in map_set and
map_clear_special. -- Syela
Sun Jul 5 07:18:03 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.h: Defined MORT, and then kluged (in aiunit.c) so that
MORT is sort-of hardcoded. This may be fixed once I figure out
how to get city_des exactly right with the least CPU effort.
Proto'd new functs. -- Syela
Sun Jul 5 07:15:38 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Removed lots of obsolete functions. Wrote new
functions to replace them (relating to settlers). Tidied up
findjob a little. Forced caravans to idle every turn instead of
blindly gotoing cities that are no longer producing wonders.
Wrote amortize, which is very necessary for city_des, and is still
too slow but not as horrible as it was yesterday. Generated
minimaps to include virtual city locations. This is a
quick-n-dirty and may not last the week. Spent days and days
working on city_des, which seems to be right with the current
value for the WAG at the bottom. Forced settlers who are building
cities to remain in BUILD_CITY and others to be in AUTO_SETTLER
because the minimap checks it. -- Syela
Sun Jul 5 07:10:06 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aitools.h: Removed references to obliterated old, obsolete
AI. -- Syela
Sun Jul 5 07:09:22 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aitools.c: Removed all references to island_info! Removed
ai_military_findtarget. Fixed a typo in
ai_advisor_choose_building re: wonder placement. -- Syela
Sun Jul 5 07:07:37 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Removed elements of obsolete AI. Removed
*_weighting arrays and used *_WEIGHTING defines. -- Syela
Sun Jul 5 07:06:42 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.c: Removed remnants of obsolete AI. -- Syela
Sun Jul 5 07:06:06 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Changed maxcost to THRESHOLD * 6 + 2 to
facilitate new settler AI code. Fixed a bug with illegal moves in
warmap when (punit). -- Syela
Sun Jul 5 07:03:45 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c: Adding more .h includes. Fixing the quirk
where lux rate reduced building_wants. Included taxmen in food
surplus estimates. Removed *_weighting arrays to use *_WEIGHTING
defines. Added quick-n-dirty fix to moderate lust for
marketplaces when tax rate jumps. New, smarter want equations for
aqueducts and sewer system. Corrected want for MFG.
Obliterated old settler code, including expand_*. Finding work
for a virtualunit to establish want for settlers. This went
through a lot of trial and error and it seems to be working
acceptably now.
Added SPY as yet another fallback until real diplomacy code is in.
-- Syela
Tue Jun 30 21:22:44 1998 Mitch Davis <mjd@alphalink.com.au>
* ai/Makefile.am, ai/Makefile.in, client/Makefile.am,
client/Makefile.in, common/Makefile.am, common/Makefile.in,
server/Makefile.am, server/Makefile.in: This patch allows you to
build freeciv outside the source directory. Submitted by Jason
Merrill <jason@yorick.cygnus.com>.
Sun Jun 28 08:32:40 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/helpdata.txt, server/citytools.c, common/city.c: Some
gameplay changes to be more like civ2. Made some corrections in
the help file.
Thu Jun 25 09:37:47 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/plrhand.c: Removing a removed player's workers from
->worked. -- Syela
Thu Jun 25 07:56:04 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/unitfunc.c: Patch from Falk Hueffner, bribed units light
up the terrain surrounding them.
Thu Jun 25 07:51:22 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityturn.c: Patch from Falk Hueffner, remove strange test
that kept settler production from being upgraded to engineers.
Thu Jun 25 07:42:47 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/climisc.c, client/helpdlg.c, client/menu.c,
client/repodlgs.c: Fixed warnings: missing #include's, unused
variable, bad printf.
Thu Jun 25 07:33:10 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityturn.c, server/unitfunc.c: Added the map_adjust_x/y
functions to the pollution code, to make sure it doesn't use bad
x/y coordinates.
Wed Jun 24 10:26:32 1998 Trent Piepho <xyzzy@u.washington.edu>
* ai/aitech.c: Fixed crash related to deleted techs.
Wed Jun 24 08:15:47 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/cityhand.c, server/cityturn.c, server/civserver.c,
server/civserver.h, server/unittools.c, ai/aihand.h: More
header/prototypes fixing.
Wed Jun 24 08:01:38 1998 Trent Piepho <xyzzy@u.washington.edu>
* ai/advdomestic.c, ai/advdomestic.h, ai/advmilitary.c,
ai/advmilitary.h, ai/aicity.c, ai/aicity.h, ai/aihand.c,
ai/aitech.c, ai/aitech.h, ai/aitools.h, ai/aiunit.c, ai/aiunit.h,
server/unitfunc.c, server/unitfunc.h: Added function prototypes to
lots of header files, and included header files where needed.
Tue Jun 23 13:19:39 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c: Fixing typo that makes kill_unit kill the
server. Oops. -- Syela
Tue Jun 23 13:18:17 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Fixing act of complete idiocy on my part re:
defense techs -- Syela
Tue Jun 23 13:16:48 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Fixing bugs relating to huts in findvictim. -- Syela
Tue Jun 23 11:38:10 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c: Adding more geographic information to combat
messages in unit_versus_unit. -- Syela
Tue Jun 23 11:35:59 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unitfunc.c: Adding more geographic info to combat
messages in kill_unit. -- Syela
Tue Jun 23 11:32:32 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/plrhand.c: Moving calculate_tech_turns from here into
aihand.c where it belongs. -- Syela
Tue Jun 23 11:31:19 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/gotohand.c: Adding complexity to could_unit_move_to_tile
to handle ZOC issues midway through a goto. Discouraging paths
that require attacks. Warning when we do not find the shortest
path thanks to the above. This module needs a total overhaul,
which I'll be performing this week. -- Syela
Tue Jun 23 11:25:57 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityturn.c: Discounting the city_tile_value of tiles
other cities can use in worker_loop. Faking prodneed and foodneed
to better optimize worker placement until a time-consuming
dramatic rewrite is performed. -- Syela
Tue Jun 23 11:21:37 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/citytools.c: A city that has bought a sewer or aqueduct
now wants_to_be_bigger. -- Syela
Tue Jun 23 11:19:10 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityhand.h: Prototyping really_handle_city_sell. -- Syela
Tue Jun 23 11:18:01 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/cityhand.c: Making handle_city_sell a frontend to new
really_handle_city_sell. -- Syela
Tue Jun 23 11:16:19 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/map.h: Changing move_cost from unsigned to signed
character. -- Syela
Tue Jun 23 11:14:37 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/map.c: Defining move_cost for ocean moves as -3 for the
new seamaps. -- Syela
Tue Jun 23 11:11:36 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/city.h: Adding wallvalue, downtown,
distance_to_wonder_city, and choice to ai_city struct, and
prototyping ai_choice because of it. Also changing grave_danger
from a flag to a unit * -- Syela
Tue Jun 23 11:08:02 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Minor change to avoid redundant warmap generation.
Aborting ai_manage_explorer for non-ground units. Treating cities
as impassable in exploration. Aborting ai_manage_unit for units
with no moves_left. More sophisticated formula for preference to
bash cities in unit_vul. Better formulas for when units can
safely leave their home cities. Adding ifs to handle sailing
units in find_something_to_kill. -- Syela
Tue Jun 23 10:11:14 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aitools.h: Adding ifndef around ai_choice proto because it's
now also in city.h -- Syela
Tue Jun 23 10:09:07 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aitools.c: Locating wonders much more intelligently with
downtown. -- Syela
Tue Jun 23 10:07:24 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aitech.c: Making nonreachable techs count as prerequisites.
Handling goals in ai_select_tech and adding a cache of prereqs to
facilitate it. Deleting horrible old broken ai_select_tech_goal
and its subroutines now that working tech_goal code has been
established. Obliterating failed attempt to over-optimize
tech_turns calculations and just calling tech_goal_turns once per
turn and in ai_next_tech_goal. Handling goal in manage_tech. -- Syela
Tue Jun 23 10:01:48 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aihand.c: Managing units twice, including at end of turn.
Calculating tech turns to save oodles of CPU time. Changing
weightings for shields and food. Fixing bugs that led to
excessive luxury for celebrations. Fixing a goofup that led to
insufficient tax rate. -- Syela
Tue Jun 23 09:57:21 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.h: Prototyping ai_choose_defender_* functions. -- Syela
Tue Jun 23 09:56:24 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aicity.c: Pulling some stuff out of
domestic_advisor_choose_build and moving it elsewhere. Using
pcity->ai.choice to handle spend_gold in a separate routine.
Creating caravan map only as necessary to facilitate re-ordering
of events. Adding utilities ai_city_defender_value and
try_to_sell_stuff. Collecting spend_gold stuff in
ai_new_spend_gold with a lot of new intelligence added, including
disband and upgrade handling and willingness to buy attackers.
Restructuring ai_manage_cities and increasing desire for
government techs. Dealing with boats in ai_choose_attacker.
Adding utility ai_choose_defender_versus. Rewriting
ai_choose_defender_limited to handle boats for defense. Not
selling citywalls anymore! Allowing elvisization that creates
food deficit as long as there won't be famine. -- Syela
Tue Jun 23 09:42:29 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.h: Adding seacost to move_cost_map struct. -- Syela
Tue Jun 23 09:41:22 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Moving init_warmap into a separate routine.
Moving warmap generation into really_generate_warmap, with an
option to create maps for land or sea. Shifting generate_warmap
into a higher-level function. Changing assess_defense to a
higher-level routine with a new backend that can either
acknowledge or ignore walls. Adding danger3 for coastal and
danger4 for sam in assess_danger. Not being afraid of submarines,
and not being afraid of other ships if we are on land. Being more
afraid of ships in walled coastal cities. Including danger
adjustments if city has SAM or COASTAL. Changing grave_danger to
a unit *. Correcting firepower of defending ships to 1 in
unit_desirability. Eliminating pathetic old military_advise_tech.
Adding process_defender_want and process_attacker_want to do this
job more intelligently. Moving other attacker calculations into
kill_something_with. Removing the danger -= def in
military_advisor_choose_build and therefore allowing defender
wants over 100. Building COASTAL and SAM rather than piles of
useless defenders. Minimizing desire for warriors as defenders.
Cleverly creating virtualunit for use in kill_something_with.
establish_city_distances for caravans. -- Syela
Tue Jun 23 09:23:52 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c: Removing warmap. Using
distance_to_wonder_city instead. Changing weightings of food and
shields. Correcting wants for plants. Moderating want for
granaries. Making extreme desire for aqueduct/sewer during
celebrations require positive food_surplus. Wanting barracks for
ground units only. Adding wild guesses for COASTAL and SAM want.
Correcting typo regarding want for supermarkets. Checking for
.researched in want for DARWIN. Making caravan the default if we
can't think of anything useful to build. -- Syela
Sun Jun 21 07:47:19 1998 not sure
* ChangeLog: *** empty log message ***
Sun Jun 21 07:45:42 1998 James Blackwell <innocent@merconline.com>
* README: Modified the readme to update instrutions on AI play
Sat Jun 20 23:51:58 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/citytools.c: Fixing bugs in get_cathedral_power and
get_colosseum power. Changing food_weighting and shield_weighting
in city_tile_value. -- Syela
Sat Jun 20 18:26:55 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/mapctrl.c: The orders menu wasn't getting updated when
the focus unit moved, so some choice would be inproperly
deactivated.
Fri Jun 19 23:46:26 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c, server/unitfunc.c: Fixing disappearing wonder
bug. Adding get_virtual_defense_power. -- Syela
Fri Jun 19 22:31:33 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/clinet.c, client/clinet.h, client/menu.c: Adding
disconnect option to Game menu. -- Syela
Fri Jun 19 22:25:47 1998 John Stonebraker <ppaqebb@surfshop.net>
* client/messagewin.c, client/packhand.c, common/shared.h,
server/plrhand.c, server/plrhand.h: Committing Cedric's patch to
allow explicitly requested dialogs to popup even in AI mode with
popup_windows disabled. -- Syela
Fri Jun 19 09:56:12 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/Freeciv, client/Freeciv.h, client/civclient.c,
client/mapctrl.c, client/optiondlg.c: Added new option to client,
default ON, to auto center on the active unit, either when the
unit gets focus or when it moves. This is the same as the
previous behavior, so really the new feature is the ability to
turn this off.
Fri Jun 19 02:24:58 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/civclient.c: The manual turn done stuff is now done in
the client. The client will send a "turn done" packet at the
start of the turn if it is AI controlled and the AI_MTD option
isn't on.
Fri Jun 19 02:21:09 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/stdinhand.c, client/plrdlg.c: AI controlled players get a
"*" in front of their names in the player dialog.
Fri Jun 19 01:59:34 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/mapview.c, client/optiondlg.c, client/packhand.c,
client/xmain.c: The manual turn done stuff is now done in the
client. The client will send a "turn done" packet at the start of
the turn if it is AI controlled and the AI_MTD option isn't on.
Fri Jun 19 01:57:14 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/stdinhand.c: AI players create with the "create" command
showed up as connected when they weren't. Set
pplayer->is_connected to 0
Fri Jun 19 00:40:41 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/packets.c: Removed the manual turn done stuff from the
protocol. Made the client/server backward compatible.
Fri Jun 19 00:35:07 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/packets.h: Adding in ai control to player info packet,
but NOT manual turn done stuff.
Fri Jun 19 00:22:59 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/plrhand.c: Undid previous manual turn done stuff, but
added in ai control information to player info packet.
Thu Jun 18 18:32:06 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/packets.c: Server will no longer get wedged when it
receives an unknown packet type. It will remove the packet from
the queue and ignore it.
Wed Jun 17 20:20:34 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/Freeciv.h, client/civclient.c, client/mapview.c,
client/messagewin.c, client/optiondlg.c, client/packhand.c,
common/packets.c, data/Freeciv, server/plrhand.h,
server/stdinhand.c: Patches from Cedric Tefft
<cedric@earthling.net>, with some of my own changes. New options
in the client, one to turn off popup dialogs when AI controlled.
Another to have AI controled players not need to manually activate
turn done.
Wed Jun 17 19:17:30 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/stdinhand.c: Fixed spelling error, Affect -> Effect
Tue Jun 16 18:10:18 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/unit.c: Added locations for pictures of missing units.
Mon Jun 15 23:45:48 1998 Mitch Davis <mjd@alphalink.com.au>
* Imakefile: Removed extraneous trailing \. Bug reported by Dylan
Thurston <dpt@math.berkeley.edu>
Mon Jun 15 21:58:54 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/helpdata.txt: Changed to reflect Artillery now longer
ignoring city walls.
Mon Jun 15 20:58:43 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/helpdlg.c: The help system should no longer segfault when
trying to display the tech tree for a tech that has been removed.
Mon Jun 15 20:41:07 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/plrhand.c: Spelling error, report -> Report
Mon Jun 15 20:38:06 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/dialogs.c: Patch from Cedric Tefft <cedric@earthling.net>
The bribe and revolt diplomat options will have the correct title
on their respective dialogs.
Mon Jun 15 20:35:07 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/Freeciv.h, data/Freeciv: Applied Cedric Tefft's
<cedric@earthling.net> patch to add titles to most of the
transient windows.
Mon Jun 15 20:03:28 1998 Trent Piepho <xyzzy@u.washington.edu>
* data/helpdata.txt: Added help text for Barracks II and Barracks
III.
Mon Jun 15 19:52:18 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/xmain.c: Client will no longer crash when the resources
don't define the version. There seemed to be lots of people with
version 1.0 resources that had trouble with seg faults because of
this.
Mon Jun 15 19:44:13 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/repodlgs.c: Added Seth Golub's <seth@thehouse.org> patch
to show celebrating cities in the City Report.
Mon Jun 15 19:32:51 1998 Trent Piepho <xyzzy@u.washington.edu>
* server/unittools.c: Submarines can't attack land at all anymore.
Before they could if they were in a city.
Sat Jun 13 21:12:49 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c: Making sure pdiplomat is non-NULL in
handle_diplomat_action. -- Syela
Tue Jun 9 16:15:41 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/mapctrl.c: When a unit gets focus, the crosshair tile
will flash on it to let you know.
Tue Jun 9 16:10:09 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/mapctrl.c: The client will find the next unit to focus on
better. Before it would pick the lowest numbered unit if the one
that had focus no longer exists. Now it will pick the one closest
to the center of the map.
Mon Jun 8 21:19:47 GMT 1998 Mitch Davis <mjd@alphalink.com.au>
* Released 1.6.3.
Mon Jun 8 21:15:47 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Preventing a division by zero for AI military units
with attack=0. -- Syela
Mon Jun 8 18:49:46 GMT 1998 Mitch Davis <mjd@alphalink.com.au>
* server/unithand.c: Removed a pernicious line added by Olav
Andree Brevik <olavb@ifi.uio.no>. A city should act as if it's
square is irrigated, but the square should not actually _be_
irrigated, otherwise Bad Things Happen, like then the city can be
used as a source for more irrigation. He'll provide a more
complete patch in the fulness of time.
Mon Jun 8 18:19:47 GMT 1998 Mitch Davis <mjd@alphalink.com.au>
* common/unit.c, server/unitfunc.c: A fix so pillage also un-mines
mines. Bug reported and patch supplied by Olav Andree Brevik
<olavb@ifi.uio.no>
Mon Jun 8 15:41:00 GMT 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Making explorers smarter again.
Mon Jun 8 14:51:59 GMT 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unittools.c: Making rate_unit a little less crude.
Mon Jun 8 12:28:57 GMT 1998 John Stonebraker <ppaqebb@surfshop.net>
* server/unithand.c: Calling pnewcity instead of pcity after pcity
has been freed in handle_unit_enter_city; very important, should
have been found earlier.
Mon Jun 8 12:01:54 GMT 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Real fix to explorer problem; had carelessly pasted
in bad code block.
Mon Jun 8 11:21:39 GMT 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aitech.c: Kluging so AI won't switch away from a tech it's
about to get.
Mon Jun 8 11:20:32 GMT 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c: Fixing brain-damage in ai_manage_explorer +
important rescale of danger.
Mon Jun 8 11:19:04 GMT 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advmilitary.c: Not increasing want for B_CITY because of
IGWALL/flying units.
Mon Jun 8 11:18:09 GMT 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/advdomestic.c: Tempering AI's desire for Hoover Dam.
Mon Jun 8 07:13:19 GMT 1998 Trent Piepho <xyzzy@u.washington.edu>
* configure, configure.in: Changed configure.in so it checked for
X11/xpm.h instead of xpm.h, since that's how the file is included.
Also removed cruft that was from when xpm.h was included wrong.
Mon Jun 8 07:09:36 GMT 1998 Trent Piepho <xyzzy@u.washington.edu>
* common/unit.c, common/unit.h: Changed unit stats to match civ2.
Biggest change was knight's HP reduce to 10 from 20.
Mon Jun 8 00:07:53 PDT 1998 Trent Piepho <xyzzy@u.washington.edu>
Changed unit stats to match civ2. Biggest change was knights HP
reduce to 10 from 20.
Sun Jun 7 16:32:33 GMT 1998 Mitch Davis <mjd@alphalink.com.au>
* common/shared.h: Oops, forgot to increment the version number
for 1.6.2. Reported by Nuno <slug@student.dee.uc.pt>.
Sun Jun 7 15:45:58 GMT 1998 Mitch Davis <mjd@alphalink.com.au>
* common/Makefile.am, common/Makefile.in, common/mapgen.c,
server/mapgen.c: Oops, we had two copies of mapgen.c, one in
common/ and one in server/. Since it's only used by the server, I
deleted the one in common/. This bug reported by
schaefer@malaga.math.uni-augsburg.de (Peter Schaefer)
Sat Jun 6 19:19:53 GMT 1998 John Stonebraker <ppaqebb@surfshop.net>
* common/map.h: On some machines, "char" is unsigned, whereas we
were expecting it to be signed. Explicitly defined "worked" as
signed to avoid this happening again.
Sat Jun 6 17:52:05 GMT 1998 John Stonebraker <ppaqebb@surfshop.net>
* ai/aiunit.c, ai/advmilitary.c: Rescaling danger by a factor of
900:1 to stop overflows in assess_danger.
Sat Jun 6 13:52:34 EST 1998 Mitch Davis <mjd@alphalink.com.au>
Released 1.6.2.
Sat Jun 6 13:50:43 EST 1998 Mitch Davis <mjd@alphalink.com.au>
* ai/aihand.c: Removed a comment left over from 1.5.1.
Sat Jun 6 13:44:59 EST 1998 Mitch Davis <mjd@alphalink.com.au>
* NEWS, ChangeLog, configure, configure.in, client/Freeciv.h,
common/shared.h, data/Freeciv: Updated version numbers to 1.6.2.
Fri Jun 5 21:36:21 ??? 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/mapview.c: Added Markus L. Noga's
<ut6e@rz.uni-karlsruhe.de> patch so cities are drawn correctly
with transparent flags.
Fri Jun 5 21:33:55 ??? 1998 Trent Piepho <xyzzy@u.washington.edu>
* client/mapctrl.c: Fix for minor bug in crosshairs display.
Sat Jun 6 03:23:07 EST 1998 Mitch Davis <mjd@alphalink.com.au>
* Makefile.in, aclocal.m4: Updated generated autoconf files to the
ones generated by autoconf 1.3.
* configure, configure.in: Rearranged order to check X libs; the
incorrect link order was causing the client to not be able to gain
focus or read the keyboard.
1.6.1 (mjd)
- Moved the CHANGES file to ChangeLog, to comply with the GNU standard.
- Updated many version numbers to 1.6.
- Added the CREDITS file to the list of files to go into the .tar.gz.
- Updated the web page to http://freeciv.ultraviolet.org
- Made the civ and ser scripts smarter: They now look in two dirs for
the exes to run.
- Removed a whole lot of autogenerated files which should not have been
checked into 1.6.0. This is what caused compilation and library
problems for MANY people who tried 1.6.0.
1.6.0
- *A LOT* of changes from Olav Andree Brevik. Thank you VERY much!
- Helicoptors loose 10% of hp per turn when outside city (Olav)
- 8 bit chatline support for Europeans (Olav)
- Non-ground units in cities regain hp too. (Olav)
- Flying units report moves left (Olav)
- Total moves in change production menu (Olav)
- Railroads now built into city tiles, even when taking a city from an
inferior race. (Olav)
- Future Technologies added. Add 5 points to score (Olav)
- Autoconf added thanks to Falk Hueffner. Now we can configure just like
the big boys!
- Tax/Luxury/Science rates are now visually displayed. needs work still.
thanks to Peter Schaefer
- Instead of picking individual techs, players can now set a tech goal, and
let the actual patch to discovery be automated.
- Fix to Makefile.noimake
- Client option to display tiles sets with transparent flags better
- Granary counter in the city dialog wasn't the right size when foodbox!=10
- Fixes to city dialog so different sized tiles will work
- The connect dialog will pop-up when the connection is lost before the
game starts
- Pop-up windows weren't getting freed in the client, resulting is large
resource leak
- Memory leak fixed in select units pop-up, pixmaps weren't getting freed
- Fixed hardcoded tile size in select units pop-up
- Reorganized tile layout in the XPM files. Client can handle different sized
tile sets.
- A "+" is drawn in the corner of enemy unit stacks
- Crosshair placed on goto destination when unit is inspected with the
middle mouse button. Change to protocol to send goto destination.
- Fixed bug in the selection of the hitpoint bar
- Map canvas had hard coded size, fixed to be correct for different sized tiles
- Fixed bug that messed up game.global_advances when a saved game was loaded
- Fix to make goto code use the same movement cost as the rest of the server
- Invisible AI city bug fixed. Cities created or captured by an AI player
would disappear from other people's maps.
- Added -s option to server, lets you explicity set hostname metaserver reports
- Fix typo in metaserver code, PRE_GAME_STATE instead of CLIENT_PRE_GAME_STATE
- Fixed bugs with partisan creation, make it faster too
- Submarines can no longer attack land based tiles. Thanks Peter Schaeffer!
- Improved AI, reduced CPU usage, and more (Syela) :
-- Changes that matter to regular players:
Allowed non-AI players to set tech goals (goal label, goal widget,
PACKET_PLAYER_TECH_GOAL, pinfo->tech_goal)
Added food supply to city dialog and recentered dialog header
Added 'Export log' option to the Game menu (log_output_window)
Included Darren Smith's patch ('create' command) and changed ai_select_race to
be random unless names matched (Napoleon chooses French, Joe chooses randomly)
Properly initialized the void_tile for map_get_tile with y out of bounds
Changed some implementations of map_distance to real_map_distance
Added more goals to the races[], then almost obsoleted them with tech AI
Set did_buy to -1 in create_city to allow "Can't buy in new cities" message
Displaced the worker already on a tile where a city was created
Fixed a typo in happy_lux that devalued lux in cities with unhappy people
Fixed some typoes involving race_name_plural
Made sure goto started with a zoc-ok, non-attack move
Fixed a typo so triremes have a 50% chance of disappearing (instead of 49%)
Map_adjusted x in create_unit
Made attack messages more detailed
Made first tech a choose_goal_tech (big deal)
Made ai_advisor_choose_building the default in advisor_choose_build
Placed the displaced workers that used to become entertainers
Changed the turn sequence from auto_settlers, sniff_packets, end_turn to
shuffle_players, ai_start_turn, auto_settlers, sniff_packets, end_turn
Wrote most of an AI ...
-- Changes related to reducing CPU usage by slightly increasing memory usage:
Wrote init_move_costs, reset_move_costs, city_shield_bonus, city_tax_bonus,
city_science_bonus, set_city_shield_bonus, set_city_tax_bonus,
set_city_science_bonus, assign_settlers_player, assign_settlers
Added shield_bonus, tax_bonus, science_bonus to city struct
Added worked, assigned, move_cost to tile and implemented them
Obsoleted old is_already_assigned, is_worked_here
-- Changes that matter to code-hackers
Moved ai_do_last_activities to the TOP of update_player_activities
Moved update_city_activities above update_tech so got_tech works now
Used set_worker_city instead of workarounds so ->worked worked
Used set_unit_activity instead of workarounds so ->assigned worked
Commented out some redundant checks in old auto_settler functs
Returned something useful in building_other_wonder
Made snide comments all over the code
Split up ai_manage_city, ai_do_activities, can_build_improvement,
handle_city_buy, set_trade_prod, add_buildings_effect
Wrote real_map_distance, sq_map_distance, could_build_improvement,
shuffle_players, could_unit_move_to_tile, really_handle_city_buy
-- Some behind the scenes elements of the AI
Wrote advdomestic.c, advmilitary.c, ai_manage_buildings,
ai_city_choose_build, ai_choose_attacker, unit_attack_desirability,
ai_choose_defender_limited, many utilities in aitech.c, ai_select_tech,
ai_manage_tech, ai_advisor_choose_building, ai_manage_explorer,
should_unit_change_homecity, unit_belligerence, unit_vulnerability,
reinforcements_value, ai_military_findvictim, ai_military_gothere,
unit_defensiveness, find_something_to_kill, probably more in ai/*.c,
city_tile_value, better_tile, wants_to_be_bigger, probably more.
Obsoleted old ai_city_choose_build, ai_spend_gold, best_tile, best_food_tile
Rewrote worst_elvis_tile, ai_find_elvis_pos, ai_make_elvis,
make_scientists_taxmen, ai_manage_taxes, ai_manage_government,
auto_settler_findwork
Updated somewhat the comments in aihand.c to show what I'd done
Started ai_manage_city with a city_check_workers
Hacked ai_next_tech_goal to use my (not-yet-ready) ai_select_tech_goal
Correctly calculated agression in findtarget so pikemen don't attack
and legions on mountains do
Returned maxbuycost in ai_gold_reserve if the AI really needs money
Worked around savegame/cityspot bug but island_data will be obsolete soon
Forced military units idle at top and bottom of ai_manage_military
Forced military units to fortify if possible at bottom of ai_manage_military
Reset the ai_roles for military units every turn to prevent tunnel-vision
Added AIUNIT_EXPLORE for units to explore
Added building_want, danger, trade_want, grave_danger to city AI
Added maxbuycost, tech_want, tech_turns to player ai
Fixed ai_military_findjob so that the right unit defends cities and others don't
and to allow military units to explore (find huts, map-discover, etc.)
Fixed ai_military_attack to use my AI
Made the AI not place workers that would be unhappy
Aborted goto for AI units instead of attacking without using AI attack functs
Forced asess_danger for ai players and civ_score on game load
Lit all squares in city radius when the AI conquers a city
Hijacked content[0] for my AI (building_want needs it)
Wrote the worker_loop and added prodneed to it
Forced ai_next_tech_goal in update_tech for AI
1.5.4
- Small, very basic ai has been included. It needs a lot of work. Any
volunteers?
1.5.3
- Highlevel genlist iterators for unitlist and citylist iterating
has been introduced.
- The include/ directory has been removed. The include files has been
put into the corresponding common/ server/ client/ dirs.
- Some server files has been split into smaller modules.
- Freeciv Hacker's Guide included.
- Last references to the old Militia unit removed from the help.
1.5.2
- Mitch did alot for this release:
- Added support for none 30x30 sized tiles.
- Removed a bunch of warnings
- Went through the helpdata.tx file and corrected and added alot
- Fixed a nasty spell-bug: goverment -> government
- Much much more
- Jan Echternach fixed a bug in the worker placement code
- AI code has been better structured.
- Some bugs related with the helpbrowser fixed
- Some visual improvements here and there
1.5.1
- The resource file is now version checked
- Fixed bug with long names
- There will be no netscape unit,and the explorer can't be uninstalled!(sue me)
- After loading a game, partisans would only be given to the player with the
lowest index. Keep the fixes and bug reports coming
Due to a missing entry in the save file as Rajala Ilkka reported
and provided a patch for.
- Sorry but due to a missing entry in the save file as Rajala Ilkka reported
and provided a patch for.
After loading a game, partisans would only be given to the player with the
lowest index.
- There was another wrap bug, which resulted in buggy worker assignment.
- Worked alot on the AI, still it plays like a child.
- The AI work has resulted in a better automatic build algorithm, there
is alot of work to here still.
1.5.0
- removed some of the micromanagement, extra prod points are transfered
to the next build.
- Fixed the help texts, now someone needs to fix my grammar..
- Added zoc message as people doesn't understand the rules.
- ai server command, to toggle AI on a player. Now we just need the AI code.
- AI value added to the saveformat, so new minor level is required
Don't think it's doing anything yet...
- automatic worker allocation scheme has been modified further, cities less
than size 4 will go for citygrowth, now prefer 210 tiles over 102.
- new help dialog
- nuke tiles moved. auto tile added.
1.4.6
- Hohensee's pointed out that Beatles sings 'You say you wanna revolution'
- fixed bug with players joined a loaded game with the same name
- autostart when #players==maxplayers after loading
- New server connection dialog
- Now foodbox just have to be full, not overfull to increase city size
- Massimo Campostrini, sent a patch fixing bug with missing gameinfo
- Alpine troops, and explorers now benefits from railroads
- initial steps to AI has been made.
- turns taken to perform irrigation and mining has been altered.
- Airborne units can now goto from one continent to another
- Fixed 2 bugs in autosettlers, 1. they could crash the server, 2. they now
start immediately on their tasks.
- man pages included to please the Debian rules
- Michael Hohensee wrote a very nice HOWTOPLAY text
- Richard Braakman fixes bug related to detecting savefile error
- Removed all warnings reported by gcc -Wall
- Rewrote sniff_packets() main loop to periodically send reports
to the meta-server.
- New 'meta' server command.
1.4.5
- the subject list box in the help-dialog is now properly updated
when an item is selected
- renumber player updated
- subs updated - hate them forever
1.4.4
- Players nolonger starts on top of huts - Mitch
- Spy's now work, and a major bug in diplomacy has been fixed.
- modified settler assignment a bit, weights production a bit higher now.
- Yet more cosmetic changes by Mitch
- Nuke bug spotted by James Blackwell
1.4.3
- Mitch Davis send us 4 patches, which fixes quite a few spelling
mistakes and alot of sourcecode improvements and some Makefile
fixes.
Fixed Submarines, can now carry 8 missiles
Carriers and subs can't carry ground units anymore, still were a bug
1.4.2
- fixed bug with colliding global vars
- fixed bug with missing char, when server vars was set
1.4.1
- fixed bug in load code
- initial metaserver support added
1.4.0
- when players looses connection before the game is started,
they're removed from the game.
- correct end of turn when the last player cuts link
- remove player command added to server
- goto algorithm has been improved thanks to Rene Schalburg
- new random generator, hope things now are more random.
- submarines now works...
- Engineers works as double speed settlers, can't do organizing
- submarines are now invisible
- airlifts and city goto implemented, shortcut is 'l'
- Carriers can only carry planes and missiles now.
- Marine flag added, to add support for amphibious attack
- ground/air unit capability added (helicopter)
Helicopters can take cities etc.. and don't need to refuel.
allthough they will loose 1 hp per round out of city.
- Aegis cruisers got double defense against attack from airborne units.
- leonardo's workshop will now only work if you actually got the damn thing.
- totally redesigned help pages.
- The remaining units has been added..
1.3.1
- Lighthouse now let you produce veteran sea units aswell.
- Got a new neat compiler, that could give more intelligent warnings.
removed alot of unnecessary variables.
- Added a modified version of leonardo's workshop, (invention)
will upgrade 1 unit/round, will remove veteranstatus.
- altered the autoplace worker algorithm yet again, now i think it
works decently (well atleast it suits my playstile)
- veteran status wasn't updated on the client side.
- upgrade units in active units dialog. allows you to upgrade your old out of
date units, that is in a city square to a new and more modern version.
will cost you some gold tho.. the side effect of this is leonardo's workshop
which i'm still not sure if i want to incorporate or not.
- u for unload ship
- 'all' button on the wake up units
- Found one of the ancient gigantic bugs, and a fix for it
as it was, units didn't get a homecity on the server before the game was
saved and reloaded, now this will help alot for the game balance.
- Peter Skov fixed the problem with saving before game has started in a neat
way by saving the settings instead of a game, this means you can make your
favorite settings then save them to a file which you can use later on.
with the -f server switch.
- can't change all the map dependent options after the game has started..
- fixed a little problem with the help button on the science dialog.
- removed a bug that had sneaked into the support of units calculations.
- compiled it with some strict options and found a few minor bugs..
- added a civ1-2 switch but it doesn't do anything yet. need a voluenteer
to do the civ1 tech tree and unit-building dependencies.
- The unit values and the techtree has been checked and has been adjusted
according to civ 2.42 rules.
1.3.0
- Peter Skov added the following client features & server fixes
* help in the city dialog on the units/buildings you can build.
* a help toggle in the science dialog, if you turn it on, you won't change
techs, rather it will show the help for this tech.
* buy and change buttons in the city report, eases the pain of managing
your cities.
* there had sneaked a bug into top-5 cities, which has also been fixed
- port facility added, if naval unit is build in city with port facility
unit will be veteran, repairment of a ship in a city with port facility
only takes 1 turn
- Airport added on server, need to do a client command to activate them
airborne units will be fully repaired in a city with a airport in 1 turn
and will initially be veteran if build in a city with airport
- new techs added radio, machine tools, amphibious warfare
- Shuffles players randomly at new turn, so the first player that connected
doesn't get the wonder when 2 people are building the same wonder in the
same round.
1.2.0
- Extra fast unit info when middle clicking on an unit on the map
(attack, defense, firepower)
- Fortresses wasn't saved correctly in the save file.
- Cities are now properly refreshed at end of turn.
- can't buy units when cities are in disorder anymore.
- buildings unnecessary due to wonders like the granaries to pyramids, don't
show on the build list anymore, if you have an unnecessary building already
it will be marked with (*)
- autobuild needed serious fixing, is better now. Still not ideal
- Made a new mapgenerator, that works on minimum 80x50 maps
which will make 7 equal sized islands. Still alot of fiddling to do with
it but it should make things alot more fair.
So set generator 2 to try the new map generator.
And keep the number of players below 8....
- changed the "auto choose place to put worker algorithm" a bit now it
favors huge amounts of trade and production over food.
1.1.6 (never released)
- SDI now give double defense against missile attacks, thats a
multiplier by 4 together with SAM batteries..
- SAM batteries added. Double defense against aircrafts
- supermarkets added. 50% food bonus on irrigated tiles
- Hoover dam can now be build, an and should have been an or :)
- Fixed problem with king richards crusade.
- Fixed problem with cruise missiles.
- Fixed problem with martial law under communism and monarchy
- Fixed problem with wonders not seemingly working first turn after reload
- think i fixed the change tech stuff, now it's not reset on the client
if you change tech in the round you get one.. Maybe..
1.1.5 (never released (except for 2 persons))
- the city growth can now be adjusted with the foodbox server option
used instead of the standard 10 multiplier of citysize to determine when
a city will grow
- number of buildings that will be razed if you conquer or loose a city is
now a game variable, namely razechance. Palaces will always be destroyed..
- oops fortresses beneath cities gave 100% defense bonus. don't anymore
units in cities and fortresses always count as fortified.
coastal fortresses is needed to protect cities, a citywall just won't do
it anymore. same count for bombers, but there is no defense against them.
since SAM site haven't been made yet.
- Hanging gardens converts content to happy if possible, other wonders
converts unhappy to content.
- Caught in city, a ship used to have 1 in defense, now it has its usual
defense, but only 1 in firepower instead.
- Changed the messages when a unit(s) dies. (tells which city if on a city
square and what units died always)
- Found some crash bugs while debugging, goto could kill server if unit died
while gotoing. (my settler did a goto into a hut with barbarians)
- Changed obsolete tech test, to unit testing in the unit list.
makes things easier, and more readable.
- remaining units, techs, buildings has been added, but looped..
just to make sure future savefiles will be consistent, if we want to have
them in the game.
1.1.4 (beta tested by 4-5 persons)
- new flags:
igwall ignore citywalls, counts for artillery,
generates extra unhappy under republic and democracy (as it has always been)
- happy/content/unhappy fixed according to civ2 rules, be careful out there,
it's harder now to keep cities happy.
(took me a bloody sunday to figure how the exact formula works)
- cruiser missiles was to cheap, costs 60 now instead of 40,
and their firepower is now 3, reduced its hp to 10.
- armor had firepower 2, fixed.
- carriers only 9 defense now, 2 firepower 40 hp's instead.
- got rid of year 0. A nasty hack was needed , but we were getting too many
reports about it.
- percent penalty instead of 0 when changing tech default 100
- foodbox server option default 10
- fixed a few bugs in mapgen.c (landmass and swamp is now used)
o settlers costs 2 food under communism now.
o cities did loose size by naval or air bombardements, doesn't anymore.
o cities did loose size by naval or air bombardements, doesn't anymore.
o can only build fortresses after invention of construction
o can't fortify naval or airborne units anymore.
o happiness calculations was buggy, among other things colloseums gives
+4 instead of +3 after development of electricty.
the luxury and wonder happy calculations has been modified a bit..
o cities only give a 50% bonus on defense, city walls still give a 200% bonus
and since they don't cost much in maintainance. Go Build them.
o movement changes:
- unit move rates, scaled by lost hp's. allthough land based units have
atleast 1 move, naval units 2, and air units isn't affected
- moves and fuel wasn't in the savefiles, they are now.
- discover nuclear power and get + 1 move for naval units.
o getting a city in a goody hut didn't add a road beneath the city.
o ver 1.0k - August 10
o server freeze bug fixed thanks to Stefan Andersson.
o various other bugs fixed too.
o ver 1.0j - Apr 8
o Pillage could be done by settlers only. This isn't correct, actually should
be doable by all land based units, except settlers, caravans & diplomats..
o Now units with 0 attack/defence power will ALWAYS loose in battle.
o Reported By Andrew Donkin and patches aswell :).
- Could make unlimited # of trade routes... Fixed
- Units gained hp by building fortresses not when fortified .... Fixed
o Problem with nukes, could nuke the server :).
Fixed (well not first time i said that)
(Reported By Christian Bricart).
o Problems with list of available tech after getting techs one way or
another is hopefully fixed. (noone has been cheated, tech was correct,
but the researchable list was not updated.)
o Tried to fix rolling thunder tactics. new server option cityfactor which
modify the unhappysize this way:
newunhappysize = unhappysize - #cities/(cityfactor - (5-goverment))
eg. under monarchy with 25 cities, unhappysize 5, cityfactor 14
you'll have a newunhappysize of 5 - 25/(14-(5-2)) = 3 ...
that is lots of cities and low goverment forms, will give unhappiness.
o Diplomat treaties are unbalancing the game. Now you have a new variable
that can reduce the effect of tech-trading, techcost. Whenever you get a
free tech it'll cost you techcost percent of a normal research cost,
to incorporate it in your society. Standard this variable is 25%.
Setting it to 0 will give you the standard behaviour. So don't look
startled if you suddenly have a negative number of tech bulbs.
o Tax-Trade-Luxury calculation tended to favor Tax when distributing. Fixed..
o Goodie huts changed a bit:
- different units in huts depending on tech level.
- no barbarians if hut is in city radius.
- advanced tribes added.
o Seperate Popup windows added (see the Game menu (Mes Options)), more to
be added later.
o Message Window added, with goto location button.
o fixed minor textual details
(eg.when someone you have contact with gains tech)
o autosettlers added, use this option at your own risk..
Press A to activate them.
o New server option cavalry, allows players to start with a number of
cavalry.
o Game will not start before Minplayers has connected.
o buffed lighthouse, now owner will not loose triremes at sea.
o Diplomats will now be able to defend cities, against other diplomats.
o Rivers only costs 1/3 movepoint to travel on.
o Altered the startposition algorithm, should even out things abit.
A side effect of this lets small maps eg 40x25 work, server used to loop..
(well atleast for a reasonable amount of players)
o ver 1.0h - feb 16
Massimo Campostrini once again supplied us with historical correct
citynames - this time for the Aztecs.
Proper error message when the xpm files can't be opened.
Panner widget allow resizing of chat window.
A huge pile of bugs, reported to us by Goswin Brederlow, has been
fixed.
Pedantic detail: Default setting of game-save interval was 1.
Correct value is 10.
Notification added when player with whom you have an embassy invents
something.
Game will end if only one player is alive.
Announcement of building wonders now include which city that builds it.
Notifies attacker if his attack was succesful or not
resets light bulbs at end of turn if player gets a tech.
Check every turn if units on ocean has transporters enough.
If wonder was autobuild it wouldn't be announced. (fixed)
Bug in mapgen.c fixed, start positions could be real close.
Added a steal flag to the city structure, can only be stolen once from
every city now, restarts if the city has been conquered. Don't know if this
is correct..
Trade Routes are now modified according to the continental rules.
(both cities on same continents halfes the output).
Hoover dam and Michelangelo's Chapel only affects the continent
on which they have been built.
Gaining a free tech in huts worked before but gave a wrong message,
this has been fixed aswell.
Fixed bug located by Robert Wilton, in unit_activity_text()
Fixed zone of control bug, now you can always enter and leave a city.
saved alot of cycles in goto, no affect on game play.
o ver 1.0f - jan 26
The X resource leak fixed. Citynames initial go. Now handling the
wm_delete_window event.
Ouch that genlist fix in 1.0e made another bug visible in the
transporter code. Stephan Boettcher patched that and fixed bug
with carriers not carrying planes.
o ver 1.0e - jan 26
Applied patches submited by Massimo Campostrini, concerning citynames
and diplomat action messages.
Fixed nasty leak in the pixcomm widget. Fixed leak in genlist's
unlink().
o ver 1.0d - jan 19
Applied patches submitted by Hans Petter Bieker, to fix bugs in
clinet.c and unithand.c.
Included spanish translation of the help-file - submitted by
Anselmo Perez Serrada.
The city-report now contains some more data.
The main info widget is now clickable, to produce a small
popup, containing some more info.
o ver 1.0c - jan 12
Fixed bug in citydialog introduced in 1.0b. Made the code handling the
overview map much more efficient. Let X parse command line options.
Hopefully fixed problem with viewport widget's width in the diplomacy
dialog on some setups.
o ver 1.0b - jan 11
Fixed problem with Pixcomm widget, which caused the city dialog
to crash on some setups.
o ver 1.0a - jan 8
Applied large patch by Warwick Allison - fixing many spelling mistakes
and lots of other stuff. Fixed problem with units not showing up in the
left bar. Fixed bug with cities with size 0.
o ver 1.0 - jan 5 - 1996
first release
|