URL:
  <http://gna.org/patch/?3144>

                 Summary: Savegame handling of ACTIVITY_GEN_ROAD and road type
pillage targets
                 Project: Freeciv
            Submitted by: cazfi
            Submitted on: Sun 19 Feb 2012 01:06:10 PM EET
                Category: general
                Priority: 5 - Normal
                  Status: In Progress
                 Privacy: Public
             Assigned to: None
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
         Planned Release: 2.5.0

    _______________________________________________________

Details:

It's not yet ready to be submitted, but I'm working on patch to add savegame
handling of ACTIVITY_GEN_ROAD and pillaging targeted to road type.

Transitional steps from old "2 road types as specials" to generic road types
are quite complicated, so I explain a bit what happens in this step.

What we have before the patch:
Handling of ACTIVITY_GEN_ROAD and pilaging targeted to road type once unit has
such an activity, should be working short of savegame part. Catch is that
there's no way for user to assign such activities to unit. Client (and ai)
still always use old ACTIVITY_ROAD, ACTIVITY_RAILROAD and specials targeted
pillaging.

Saving part:
This is relatively simple. It just saves activities as they are; ACTIVITY_ROAD
as ACTIVITY_ROAD, and ACTIVITY_GEN_ROAD as ACTIVITY_GEN_ROAD. There's no
conversion from ACTIVITY_ROAD to ACTIVITY_GEN_ROAD here since later versions
will not feed it ACTIVITY_ROAD at all. Same goes for road type targeted
pillaging vs special targeted pillaging.

Loading part:
Even when freeciv uses ACTIVITY_GEN_ROAD exclusively, savegame loding part
must be able to handle ACTIVITY_ROAD from old savegames. Thus it always
converts ACTIVITY_ROAD and ACTIVITY_RAILROAD to appropriate ACTIVITY_GEN_ROAD
activities. That happens even if it was this very same transitional version of
freeciv still saving ACTIVITY_ROAD.

What we end with:
User is still unable to directly assign ACTIVITY_GEN_ROAD for units, but
assigns ACTIVITY_ROAD. As long as one plays in one session, ACTIVITY_ROAD is
used. Once user saves the game, activity gets saved as ACTIVITY_ROAD. But when
user then loads such an saved game, activity is converted to
ACTIVITY_GEN_ROAD, and that's used then on. If user saves again,
ACTIVITY_GEN_ROAD gets saved.
Thus one is likely to encounter bugs related to new ACTIVITY_GEN_ROAD handling
code after saving + loading, but never when playing game from the start.




    _______________________________________________________

Reply to this item at:

  <http://gna.org/patch/?3144>

_______________________________________________
  Message sent via/by Gna!
  http://gna.org/


_______________________________________________
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to