Fri 30 Mar 2012 09:28:33 PM UTC, SVN revision 21078:
Treat self-rooted techs as reachable for players that already have them.
Without this, they were essentially unusable (could never be obtained).
Reported anonymously and by David Fernandez (bardo@gna).
See gna bug #18394.
(Browse SVN revision 21078) |
Fri 30 Mar 2012 09:26:28 PM UTC, SVN revision 21077:
Treat self-rooted techs as reachable for players that already have them.
Without this, they were essentially unusable (could never be obtained).
Reported anonymously and by David Fernandez (bardo@gna).
See gna bug #18394.
(Browse SVN revision 21077) |
Fri 30 Mar 2012 09:20:26 PM UTC, SVN revision 21076:
Treat self-rooted techs as reachable for players that already have them.
Without this, they were essentially unusable (could never be obtained).
Reported anonymously and by David Fernandez (bardo@gna).
See gna bug #18394.
(Browse SVN revision 21076) |
Thu 29 Mar 2012 12:35:57 AM UTC, comment #8:
Ah yes, that'd be it.
Re-verified the problem and fix with S2_3 (same procedure as comment #4).
I can commit this soon; it seems relatively low-risk (should only be able to have any effect in the presence of self-root-req'd techs), and the multiplayer ruleset didn't crash and burn when I tried it.
(However, I think none of this mechanism to prevent multiple Darwin's Voyage wins in multiplayer, referred to in comment #5, is working correctly; in my tests Give_Imm_Tech was active and I could get arbitrary new techs by rebuilding Darwin in different cities. New ticket needed.)
(file #15447)
|
Wed 28 Mar 2012 10:09:58 PM UTC, comment #7:
> I'm not sure by what mechanism it was causing this particular
> symptom.
I think it's tech.c:player_research_update() lines 354-255 (in trunk) that again make tech unknown for everyone:
if (!player_invention_reachable(pplayer, i, FALSE)) {
player_invention_set(pplayer, i, TECH_UNKNOWN);
I think you should commit your fix before 2.3.2 release.
|
Sun 11 Dec 2011 11:45:56 PM UTC, comment #6:
The following patch to player_invention_reachable() seems to fix this for me (still on S2_4). I think it's a correct change we should make, but I'm not sure by what mechanism it was causing this particular symptom.
|
Sun 11 Dec 2011 11:23:20 PM UTC, comment #5:
Testing with the self-rooted "Theory of Evolution" tech in the multiplayer ruleset indicates that it's silently failing there too (at least on S2_4)... so by repeatedly rebuilding Darwin's Voyage, it looks like you can get as many free advances as you like. (Haven't verified on S2_3.)
|
Sun 11 Dec 2011 11:07:24 PM UTC, comment #4:
Trying this with S2_4 (r20647), I think it is (still) broken.
I hacked the default ruleset so that Fusion Power had req1=req2="None" and root_req="Fusion Power". I then changed abkhaz.ruleset so that init_techs="Fusion Power".
On starting the game as the Abkhaz:
- "Fusion Power" does appear in the help
- But it doesn't appear in the (Gtk) tech tree, regardless of "Show all"
- The editor doesn't think we have it either
- Attempting to explicitly give it via script doesn't work either:
Pottery worked as expected; Fusion Power did not.
So it seems that it's not possible to use self-root-req'd techs at the moment.
|
Sat 24 Sep 2011 07:05:08 PM UTC, comment #3:
When I create a new tech with root_req being itself, this tech is showed in the tech tree, in orange colour, but I still do not know how to give such techs to a nation.
Latest time I tested with v2.3, the line "init_techs=" (inside the nation.ruleset) did not work with those self root_req techs.
|
Sat 24 Sep 2011 05:43:42 PM UTC, comment #2:
what exactly did you test? (see also bug #18711)
|
Fri 22 Jul 2011 11:17:11 AM UTC, comment #1:
I agree it did not work with v2.3.0-beta4
I did try to use LUA scripts to give such techs (root req itself) to a nation, but the tech does not appear in the tech tree, and it can not be used to enable other units or techs.
However, I just installed the new 2.3 version and those techs (root req itself) do are showed in the tech tree.
|
Fri 22 Jul 2011 02:59:31 AM UTC, original submission:
self root_req'd techs are removed, even if a nation's init_tech lists it
While toying with learning to mod/create custom civ rulesets, I wanted to create some buildings and units which were unique to specific nations. According to the default techs.ruleset comments:
However, when I did this, the techs were simply removed from the game and became unavailable. Even going in to the in-game editor and trying to add the techs to the nations failed--Upon applying and exiting the editor, the techs were again removed.
Although I do not know LUA or what it is capable of, I suspect that even trying to add the techs via a LUA script will also fail, since the editor can't even add them.
|