URL:
  <http://gna.org/bugs/?24098>

                 Summary: multiplayer: Darwin's Voyage gives 4 techs instead
of 2
                 Project: Freeciv
            Submitted by: jtn
            Submitted on: Tue 17 Nov 2015 23:34:01 UTC
                Category: rulesets
                Severity: 3 - Normal
                Priority: 5 - Normal
                  Status: None
             Assigned to: None
        Originator Email: 
             Open/Closed: Open
                 Release: S2_5 r30653
         Discussion Lock: Any
        Operating System: Any
         Planned Release: 

    _______________________________________________________

Details:

While checking the bug #24036 fix I noticed:

In multiplayer ruleset, Darwin's Voyage is defined with a Give_Imm_Tech *and*
a Lua script.

The comments in effects.ruleset imply that the author wasn't expecting the
Give_Imm_Tech to actually take effect:


; This effect is here only to prevent is_building_replaced()
; in common/effects.c from returning TRUE for Darwin's
; Voyage (and consequently having the city production list
; draw it with strike-through).
;
; The actual giving of techs is done in the lua script, so
; that players cannot get the bonus again when rebuliding
; the small wonder.
[effect_darwins_voyage]
type    = "Give_Imm_Tech"
value   = 2
reqs    =
    { "type", "name", "range"
      "Building", "Darwin's Voyage", "Player"
    }


However, I don't see anything in the code that prevents that taking effect
(even though Darwin here is a small wonder).

And indeed, with S2_5 r30653 (artificial test case):
* Wanggomsong has finished building Darwin's Voyage.
* Learned Horseback Riding. Scientists do not know what to research next.
* Darwin's Voyage boosts research; you gain the immediate advances Horseback
Riding and Pottery. [text from script.lua]
* Darwin's Voyage boosts research; you gain 2 immediate advances. [text from
Give_Imm_Tech]
* Acquired Bronze Working from Darwin's Voyage.
* Acquired The Wheel from Darwin's Voyage.

Looking back at old branches, I can't see how this ever worked as intended.
multiplayer goes back to 2.2, and the code back to at least 2.0 should allow
Give_Imm_Tech to work in this situation, I think (untested).

Have I missed something?



    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Tue 17 Nov 2015 23:34:01 UTC  Name: 25_multi_darwin.sav.bz2  Size: 10kB 
 By: jtn

<http://gna.org/bugs/download.php?file_id=25786>

    _______________________________________________________

Reply to this item at:

  <http://gna.org/bugs/?24098>

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


_______________________________________________
Freeciv-dev mailing list
[email protected]
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to