Announcement

Collapse
No announcement yet.

CVS changes Jan-2002 Apolyton report

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • CVS changes Jan-2002 Apolyton report

    CVS Apolyton Report jan 2002

    Once in awhile I decide to take look through the CVS change list to see what the major changes in Freeciv are. It might be helpful for people interested in Freeciv to keep up with this so I post this here. I've shortened the list a bit to only show changes that are (or might be) relevant to pro/semi casual gamers.

    You can check the full list of CVS changes with all the programmers/bughunters/contributors at: ftp://www.freeciv.org/pub/freeciv/latest/changes.txt

    Important changes/additions are in bold


    I've also posted some comments and questions here and there. I'm curious how the Freeciv game engine works. So if someone can help, thanks in advance.


    Sat Feb 2 01:30:03 PST 2002 Raimar Falke

    freeciv/ai Makefile.in
    freeciv/client Makefile.in
    freeciv/client/gui-gtk Makefile.in
    freeciv/client/gui-stub Makefile.in
    freeciv/client/gui-win32 Makefile.in
    freeciv/client/gui-xaw Makefile.in
    freeciv/client/include Makefile.in
    freeciv/common Makefile.in
    freeciv/data Makefile.in
    freeciv/data/civ1 Makefile.in
    freeciv/data/classic Makefile.in
    freeciv/data/civ2 Makefile.in
    freeciv/data/default Makefile.in
    freeciv/data/engels Makefile.in
    freeciv/data/hires Makefile.in
    freeciv/data/misc Makefile.in
    freeciv/data/nation Makefile.in
    freeciv/data/scenario Makefile.in
    freeciv/data/trident Makefile.in
    freeciv/doc Makefile.in
    freeciv/server Makefile.in
    freeciv/client/agents Makefile.in
    freeciv/client/agents .cvsignore

    Add the agents infrastructure. From the readme:

    An agent is a piece of code which is responsible for a certain
    area. An agent will be given a specification by the user of the
    agent and a set of objects which the agent can controll (the
    production queue of a city, a city, a unit, a set of units or the
    whole empire). The user can be a human player or another part of the
    code including another agent. There is no extra interaction between
    the user and the agent needed after the agent got its task
    description.

    Add the citizen management agent (CMA). From the docu:

    The purpose of this agent is to manage the citizens of a city. The
    caller has to provide a goal which determines in which way the
    citizens are allocated and placed. The agent will also avoid
    disorder. The plan defines a minimal surplus. The agent will try to
    get the required surplus. If there are citizens free after
    allocation of the minimal surplus these citizens will get arranged
    to maximize the sum over base*factor. The base depends upon the
    factor_target.

    The agents infrastructure and the core of the CMA were developed by
    me. The GTK frontend and README.cma is from Mike Kaufman
    . Thanks go to Christian Knoke
    for his testing.



    If I understand this correctly you're appointing the equivalent of an adviser to a city, a 'mayor'

    Sat Feb 2 01:21:32 PST 2002 Raimar Falke

    freeciv/client Makefile.am attribute.c attribute.h cityrepdata.c cityrepdata.h civclient.c clinet.c options.c packhand.c
    freeciv/client/agents Makefile.am agents.c agents.h cma_core.c cma_core.h cma_fec.c cma_fec.h
    freeciv/client/gui-gtk cma_fe.c cma_fe.h Makefile.am citydlg.c citydlg.h cityrep.c mapctrl.c
    freeciv/common events.h
    freeciv README.cma README.agents
    freeciv configure.in
    freeciv Makefile.in configure


    Add the agents infrastructure. From the readme:

    An agent is a piece of code which is responsible for a certain
    area. An agent will be given a specification by the user of the
    agent and a set of objects which the agent can controll (the
    production queue of a city, a city, a unit, a set of units or the
    whole empire). The user can be a human player or another part of the
    code including another agent. There is no extra interaction between
    the user and the agent needed after the agent got its task
    description.

    Add the citizen management agent (CMA). From the docu:

    The purpose of this agent is to manage the citizens of a city. The
    caller has to provide a goal which determines in which way the
    citizens are allocated and placed. The agent will also avoid
    disorder. The plan defines a minimal surplus. The agent will try to
    get the required surplus. If there are citizens free after
    allocation of the minimal surplus these citizens will get arranged
    to maximize the sum over base*factor. The base depends upon the
    factor_target.

    The agents infrastructure and the core of the CMA were developed by
    me. The GTK frontend and README.cma is from Mike Kaufman
    . Thanks go to Christian Knoke
    for his testing.


    Sat Feb 2 00:57:36 PST 2002 Raimar Falke

    freeciv/client packhand.c
    freeciv/common capstr.c packets.c packets.h
    freeciv/server citytools.c


    Add the tile_trade field to a packet_short_city. For the exact client
    side calculation of the benefit of trade routes it is necessary to
    know the tile_trade field of the other city. It is possible that the
    other city is an enemy city. Information for enemy cities are send
    using packet_short_city. The change sets the tile_trade field of a
    packet_short_city to non-zero if the receiving player has a city which
    has a traderoute with the city the packet is about. See also the
    change from "Sat Oct 6 21:02:01 2001 (GMT)"

    Reveal the other endpoints of the traderoutes if a city is transfered.


    Sat

    Thu Jan 31 14:48:27 PST 2002 Mike Kaufman

    freeciv/server gotohand.c maphand.c maphand.h

    general cleanup of find_a_direction() as well as make triremes
    safer by having them attempt to find coast if there no alternative.

    add a function is_coast_seen() to take advantage of the knowledge
    that a coastal tile shows a land strip near the edge even if it's
    otherwise unknown. [Note: this is a strong indication that the
    client knows more than it should]


    Patch by Gregory Berkolaiko



    Thu Jan 31 07:17:38 PST 2002 Raimar Falke

    freeciv/common hash.c

    Make compiler happy.

    Reported by Alexander Mai .

    We all like to be happy



    Tue Jan 29 14:06:15 PST 2002 Anthony Stuckey


    freeciv/ai advmilitary.c aiunit.c aiunit.h

    Extract common code into a new function, military_amortize().
    Patch by Gregory Berkolaiko (gberkolaiko@yahoo.co.uk)


    Could someone take a look at this function and see what it does?



    Sat Jan 26 12:14:13 PST 2002 Raimar Falke

    freeciv/common registry.c registry.h

    Add the ability to add comments to entries. Comments are currently
    only supported for output and won't work with the table format.


    Don't know what this does

    Sat Jan 26 11:56:59 PST 2002 Raimar Falke

    freeciv/common city.c city.h

    Export base_city_celebrating.

    Can someone check this out?


    Sat Jan 26 10:10:19 PST 2002 Raimar Falke

    freeciv/client attribute.c attribute.h

    Move documentation of functions from attribute.h to attribute.c.

    Can someone check this out?







    Mon Jan 21 02:19:04 PST 2002 Raimar Falke

    freeciv/common tech.c

    Fix a bug which caused future techs to have a cost of zero.

    Reported by Paul Zastoupil .


    Mon Jan 21 02:16:19 PST 2002 Raimar Falke

    freeciv/client/gui-gtk helpdlg.c inteldlg.c repodlgs.c
    freeciv/client/gui-win32 helpdlg.c inteldlg.c
    freeciv/client/gui-mui helpdlg.c inteldlg.c
    freeciv/client/gui-xaw helpdlg.c inteldlg.c repodlgs.c
    freeciv/po POTFILES.in
    freeciv/common tech.c tech.h
    freeciv/server plrhand.c unittools.c


    Cleanup of the future tech handling. This includes a test function
    (is_future_tech) and a generic method for the generation of the names
    for technologies (get_tech_name).


    Seeing that some hardcore Civ2 players could go into three digits with future techs this is a smart decision




    Thu Jan 17 02:26:29 PST 2002 Raimar Falke

    freeciv/client helpdata.c
    freeciv/common tech.c tech.h


    Extend the information available for a technology in the help system.


    The help system as it stands needs a lot of work. Why isn't there a civilopedia!?



    Thu Jan 17 01:58:27 PST 2002 Raimar Falke

    freeciv/client mapview_common.c

    Handle a special case for tiles which are used by another city.

    Reported as (PR#1198) by Daniel Speyer
    . Patch from Jason Short
    .

    Does this have something to do with ICS?


    Thu Jan 17 00:36:08 PST 2002 Raimar Falke

    freeciv configure.in
    freeciv configure


    Add support for extended plural forms. Some languages have more plural
    forms than English (which only has two forms: singular and plural). To
    allow a translator to translate for example "3 units" correctly the
    PL_ macro is introduced. Usage:
    PL_(singular as a string, plural as a string, number of objects as int)
    Example:
    PL_("%d unit", "%d units", units)


    Patch from Mateusz Stefek with additions from me.

    This is actually important for making a local translation


    Wed Jan 16 21:31:00 PST 2002 Mike Kaufman


    Tue Jan 15 13:23:49 PST 2002 Raimar Falke

    freeciv/client/gui-gtk repodlgs.c
    freeciv/client/gui-mui repodlgs.c
    freeciv/client/gui-win32 repodlgs.c
    freeciv/client/gui-xaw repodlgs.c


    Add a special message if the cities produce no bulbs at all.


    Nice one


    Tue Jan 15 13:15:07 PST 2002 Raimar Falke

    freeciv/server cityturn.c plrhand.c plrhand.h

    Make the usage of generated bulbs more fair. Bulbs which are leftover
    are now added to the next tech and will not be discarded. So the
    distribtion of the bulbs doesn't matter anymore.

    Remove two unused return values.


    This very similar to the method used in Civ2, although i seem to recall it hinged on adding the science prod of cities to the next advance. Who can enlighten me?


    Tue Jan 15 11:36:24 PST 2002 Raimar Falke

    freeciv/common tech.c

    Cleanup and fixing of base_total_bulbs_required. Change the guards
    against divide by zero. Convert if-elseif to switch. Change semantics
    of leakage style 2.

    Reported from Jason Short as (PR#1221) and
    Stefan Schnetter as (PR#1228).


    Tue Jan 15 11:13:15 PST 2002 Raimar Falke

    freeciv/common tech.c

    Correct the mistake that the goal tech isn't included in
    num_unknown_techs_for_goal.

    Reported by Christian Knoke as (PR#1230).




    Tue Jan 15 09:08:09 PST 2002 Raimar Falke

    freeciv/client/gui-gtk citydlg.c

    Add notifier about a non-empty worklist ("(worklist)") to the name of
    the item which the city is building.

    Patch from Mike Kaufman and me.


    Mon Jan 14 09:17:09 PST 2002 Raimar Falke

    freeciv/client helpdata.c
    freeciv/client/gui-gtk citydlg.c happiness.c plrdlg.c repodlgs.c
    freeciv/client/gui-mui citydlg.c plrdlg.c repodlgs.c worklistclass.c
    freeciv/client/gui-win32 citydlg.c plrdlg.c repodlgs.c
    freeciv/client/gui-xaw citydlg.c plrdlg.c repodlgs.c
    freeciv/common fcintl.h
    freeciv/server unittools.c

    Add support for extended plural forms. Some languages have more plural
    forms than English (which only has two forms: singular and plural). To
    allow a translator to translate for example "3 units" correctly the
    PL_ macro is introduced. Usage:
    PL_(singular as a string, plural as a string, number of objects as int)
    Example:
    PL_("%d unit", "%d units", units)

    Patch from Mateusz Stefek with additions from me.


    Mon Jan 14 07:12:29 PST 2002 Raimar Falke

    freeciv/client packhand.c

    Fix a bug where the main map isn't updated if the citizen positions
    are changed from inside a city dialog.

    Reported and patch from Mateusz Stefek .




    Sun Jan 13 20:14:23 PST 2002 Mike Kaufman

    freeciv README.coding_style freeciv_hackers_guide.txt

    Move mini-style guide from freeciv_hackers_guide.txt to its own
    README, with additional guidelines.

    Patch by Mike Kaufman and
    freeciv-dev

    note to self: Must read this



    Fri Jan 11 05:50:48 PST 2002 Raimar Falke

    freeciv/client packhand.c
    freeciv/common capstr.c game.h packets.c packets.h tech.c tech.h
    freeciv/data/civ1 game.ruleset
    freeciv/data/civ2 game.ruleset
    freeciv/data/default game.ruleset
    freeciv/server ruleset.c rulesout.c


    Make the way in which the costs for techs are determined more
    flexible. From game.ruleset:

    Method of calculating technology costs
    0 - Civ (I|II) style. Every new tech add researchcost to cost of next tech.
    1 - Cost of technology is (1+num_parents)*researchcost, where
    num_parents == number of requirement for tech, counted recursively.
    2 - Cost are read from tech.ruleset. Missing costs are generated by
    style 1.

    Technology leak from other civilizations
    0 - No leak
    1 - Tech costs are multiplied by (num_players-civs_with_tech)/num_players
    2 - Same as 1, but civs_with_tech is only counted from players you have
    embassy with


    Patch from Juha Litola .

    Hmmmmm, how does this work in practice if you're ahead?


    Fri Jan 11 03:11:50 PST 2002 Raimar Falke

    freeciv/ai advmilitary.c aihand.c aitech.c aitech.h
    freeciv/client packhand.c
    freeciv/common game.c game.h player.h tech.c tech.h
    freeciv/server diplomats.c plrhand.c plrhand.h report.c unittools.c



    Introduce of the following new functions
    total_bulbs_required_for_goal, is_tech_a_req_for_goal,
    base_total_bulbs_required and found_new_future_tech.

    Move total_bulbs_required from common/game to common/tech.

    Remove TECH_MARKED.

    Generalize the old AI cache (num_unknown_techs). The new cache is in
    struct player_research(required_techs, num_required_techs and
    bulbs_required).



    This AI related, important to know though


    Thu Jan 10 20:24:14 PST 2002 Mike Kaufman

    freeciv/client/gui-xaw mapview.c

    fix nasty bug so things get drawn correctly

    Patch by Jason Dorje Short


    Thu Jan 10 18:35:54 PST 2002 Vasco Alexandre

    Thu Jan 10 15:14:03 PST 2002 Vasco Alexandre da Silva Costa

    freeciv/client climisc.c
    freeciv/common city.c improvement.c improvement.h
    freeciv/server citytools.c


    Commited a big chunk of patch (PR#1142). This patch adds or removes
    effects when improvements are built, transferred or sold.



    Patch by Ben Webb with some changes by me.



    Thu Jan 10 03:07:59 PST 2002 Raimar Falke

    freeciv/server cityturn.c

    [b]
    Reduce the food stock after a population loss. This will allow correct
    estimation of the "turns-till-city-grow" at the client side.
    [b/]

    Reported from Daniel Sjölie as (PR#1134). Patch
    from me.


    Is there a graphical foodbox option by any chance?




    Wed Jan 9 13:49:07 PST 2002 Vasco Alexandre da Silva Costa

    freeciv/common specvec.h specvec_c.h

    Added generic vector (resizeable array) code.


    Wed Jan 9 13:48:08 PST 2002 Vasco Alexandre da Silva Costa

    freeciv/client climisc.c climisc.h packhand.c
    freeciv/common Makefile.am city.h game.c game.h improvement.c improvement.h player.c player.h
    freeciv/server citytools.c gamehand.c mapgen.c maphand.c plrhand.c ruleset.c savegame.c


    Commited patch (PR#1140) which contains code to set up and free lists
    for tracking improvement effects.
    It has been modified to use a new vector type based on allocatable things
    (in astring.c, astring.h).


    Patch by Ben Webb with some changes by me.


    Wed Jan 9 10:44:47 PST 2002 Sebastian Bauer

    freeciv/amiga gettext.c smakefile
    freeciv/client/gui-mui connectdlg.c dialogs.c graphics.c mapclass.c overviewclass.c


    Amiga Version:
    Compiles now again.
    Removed map_adjust_x().
    Fixed some bugs in the gettext support


    I like amiga's, that's why this comment is here!


    Wed Jan 9 08:12:53 PST 2002 Raimar Falke

    freeciv/client civclient.c

    Flush attributes if the user disconnects.

    Patch from Teemu Kurppa .




    Mon Jan 7 13:13:08 PST 2002 Raimar Falke

    freeciv/server stdinhand.c


    Restrict the set of possible values for the maxplayers option to
    disable DoS attacks.


    Reported by Stefan Schnetter as (PR#1103). Patch
    from Petr Mojzisek .



    Sun Jan 6 08:14:43 PST 2002 Raimar Falke

    freeciv/data/scenario british-isles-85x80-v2.77.sav british-isles-80x76-v2.51.sav

    New version from Martin McMahon .

    Another map


    Sun Jan 6 02:35:06 PST 2002 Raimar Falke

    freeciv/server savegame.c


    Restrict the change from DS_NEUTRAL to DS_WAR to AI players. Add
    comments.


    Reported as (PR#957) by Andreas Beckmann
    and as (PR#1146) by Christian
    Knoke . Patch from Thue Janus Kristensen
    .

    AI related it seems, can someone check this out?



    Wed Jan 2 12:55:14 PST 2002 Mike Kaufman

    freeciv/ai advdomestic.c

    cleanup of domestic_advisor_choose_build() in advdomestic.c

    no changes to AI behavior.

    patch by Petr Baudis
    Skeptics should forego any thought of convincing the unconvinced that we hold the torch of truth illuminating the darkness. A more modest, realistic, and achievable goal is to encourage the idea that one may be mistaken. Doubt is humbling and constructive; it leads to rational thought in weighing alternatives and fully reexamining options, and it opens unlimited vistas.

    Elie A. Shneour Skeptical Inquirer
Working...
X