Correct the rulesets civ1 and civ2

Do you want to help out with Freeciv development? Then check out this forum.
nef
Elite
Posts: 324
Joined: Mon Jun 25, 2018 5:01 pm

Re: Correct the rulesets civ1 and civ2

Post by nef »

Well, there is a heap of issues raised here, all of which are worth discussing.
The other side is that developers are not implementing things or fixing bugs they don't know about.
Not being part of the developer community makes it hard for me to fully appreciate the dynamics. It seemed to me that developers are also part of the wider community and I assume that they would also participate in the freeciv.org forum. In particular, I would think it would be prudent for them to do so.
Someone needs, at some point, [to] enter the stuff to the ticket system.
Yes indeed, but the question of who is the big issue. Now I can understand there are two sides to this and perhaps because of this the issue will never be resolved to everyone`s satisfaction. So from my perspective, I too have things to do, and I make my contribution in what seems to me to be the most efficient and effective way. I leave it to developers to pick and choose what they want to work on. If no developer wants to work on a particular issue then why bother with a ticket? This is the primary reason why I shifted my attention to this thread (where I can provide the fix) and away from RIP (where I can`t).
It would be better if it wasn't additional workload for me. As I've recently stated elsewhere, I already spend well over 1000 hours a year developing freeciv,
A few points here:
  • This was the issue I was trying to make with my example. If I had been able to comment, then maybe, you (and other developers) would end up with less work to do.
    The lack of interest in Lua scripting is, I assert, a contributing factor. So as a second example, if the recent change to the unit killed message had been publicly discussed I would have made the observation that data on HP is gratuitous noise in the context of the civ1 ruleset. FURTHERMORE, if instead, the particulars were provided in tolua then I know of at least one person (likely two) who WOULD have written the Lua, customising it for different rulesets (and/or usage). There is a resource out here that you are not using. And if Lua support was better then there is the prospect of that resource growing in number.
How would I know that ticket in question was a "matter of interest to wider community" that should be taken to some other forum, unlike hundreds of other seemingly similar bugs we handle?
Back in Sept. 2018 (shortly after I registered) I sent the following to a developer:
  • Would you consider adding a new set of fora discussing individual (future) releases? This would give the community an opportunity to comment on upcoming changes rather than just a formal notification process like http://forum.freeciv.org/f/viewtopic.php?f=11&t=491. Allowing users to comment more freely might help avoid some of the misadventures (like autooncitycenter for 2.5 city bridges). Each feature would be a new topic (to allow individual replies).

    Something like Board Index < Development < Releases < FC3.1
In the context of the current discussion, I should revise this to suggest ALL releases. So maybe this looks like extra work, but not entirely duplication since this could be used as the announcement. I admit that there is judgement needed here. Some bugs are just plain bugs. But if it is not obvious then posting a short new topic may be of overall benefit. (You win some, you lose some.)
It often seem rather random to me what issues people start making fuss about (very serious ones go without anybody caring, trivial glitches bring angry comments and people marking severity as "critical" like it would absolutely block people from playing the game; equivalent to regular server crash)
I can understand this happening (and I do hope you are not referring to me, because I put effort into being measured). However, I think this serves my point.
  • A public discussion would allow someone in the community to put such issues into perspective.
    The issue of 'marking severity as "critical" ' is a reason for using gatekeepers for raising tickets.
Finally, an amendment to my original example. In my haste I forgot the cities report, so make that 1 out of 4.
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Correct the rulesets civ1 and civ2

Post by cazfi »

nef wrote:Well, there is a heap of issues raised here, all of which are worth discussing.
Sorry I reply only to a couple of things that I have something to say about at the moment. I've not forgotten the rest.
If no developer wants to work on a particular issue then why bother with a ticket?
OTOH: If something is not worth filing a ticket for you, why would a developer bother to work on it?

Even if some request is not feasible at the moment, having it in the ticket system allows one to easily find it later. As lua API as the example, my recent query about tickets with component "Scripting API" does not bring up much. It's going to be much more work to start going through forum posts to see what people have said in the past.
The lack of interest in Lua scripting is, I assert, a contributing factor.
There obviously is a problem with Lua scripting in that nobody seems to have a vision about it (except maybe ihnatus who has been submitting some good tickets). As I've not had time to play much with it, I don't have first hand experience about the pain points. So there's just minor additions to the scripting API, and updates to use latest lua version when ever lua upstream releases one.
So as a second example, if the recent change to the unit killed message had been publicly discussed I would have made the observation that data on HP is gratuitous noise in the context of the civ1 ruleset.
That was contributed to freeciv, so you can hardly say that what you refer as "the developers" (I'm not sure what is your criteria of including people to that group, and leaving other members of the community out - but you say that you're not a developer yourself even though you have provided some lua script snippets for the rulesets) spent time on wrong thing in doing it.
the particulars were provided in tolua then I know of at least one person (likely two) who WOULD have written the Lua, customising it for different rulesets (and/or usage). There is a resource out here that you are not using. And if Lua support was better then there is the prospect of that resource growing in number.
Do you know people who could do that engine side work?


I'm still not convinced that effectively copying content of each new (feature) ticket opened also to forums for having the discussion in two places at the same time would be a really sane way to go. Well, maybe we could even automate that thing so that when ever a new ticket is opened, it's automatically posted to forums, but still...
And I disagree that it would serve as an announcement - discussion still doesn't imply that the feature really got pushed in to the repository in the end.
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Correct the rulesets civ1 and civ2

Post by cazfi »

cazfi wrote:I'm still not convinced that effectively copying content of each new (feature) ticket opened also to forums for having the discussion in two places at the same time would be a really sane way to go. Well, maybe we could even automate that thing so that when ever a new ticket is opened, it's automatically posted to forums, but still...
And I disagree that it would serve as an announcement - discussion still doesn't imply that the feature really got pushed in to the repository in the end.
btw. Should note that part of the reason I'm not that eager to spend resources on developing things towards these forums is that I'm not so sure we can keep these forums going for a very long time.
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Correct the rulesets civ1 and civ2

Post by cazfi »

But maybe we could run a limited trial of posting about some new features in development to the forums, to see if people would comment them more in here. Like that I manually do that about the tickets I open myself (not making promises for anybody else) for next couple of weeks. Maybe under "Contribution" section? (should create a new section for this if it's continued after the trial, but I don't want to create it just for the trial and then either deleted with all the content or left there as a ghost)
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Correct the rulesets civ1 and civ2

Post by cazfi »

cazfi wrote:
nef wrote:
So as a second example, if the recent change to the unit killed message had been publicly discussed I would have made the observation that data on HP is gratuitous noise in the context of the civ1 ruleset.
That was contributed to freeciv, so you can hardly say that what you refer as "the developers" (I'm not sure what is your criteria of including people to that group, and leaving other members of the community out - but you say that you're not a developer yourself even though you have provided some lua script snippets for the rulesets) spent time on wrong thing in doing it.
This is also an interesting example in that I were not sold to that change myself. But majority of the people commenting were, so I ended accepting it. Some ruleset control would be good, both for my own rulesets and now that you mention it, civ1.
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Correct the rulesets civ1 and civ2

Post by cazfi »

cazfi wrote:you say that you're not a developer yourself even though you have provided some lua script snippets for the rulesets
It seems that none of those had made it in before 2.6.5 release where the People document was last updated. But since then there's this commit:
commit 9c4dff723c455e89f1084feafa369ac0c8693902
Author: Marko Lindqvist <cazfi74@gmail.com>
Date: Wed Oct 20 05:22:13 2021 +0300

civ1: Remove infra from city center tile when city destroyed

Based on lua script by nef

Requested by nef

See osdn #43039

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
So when People document gets updated for 2.6.6, you're going to be listed as a developer. Or do you specifically want that your name will not be listed there?
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Correct the rulesets civ1 and civ2

Post by cazfi »

cazfi wrote:But maybe we could run a limited trial of posting about some new features in development to the forums, to see if people would comment them more in here.
And that is ticket osdn #43200
nef
Elite
Posts: 324
Joined: Mon Jun 25, 2018 5:01 pm

Re: Correct the rulesets civ1 and civ2

Post by nef »

cazfi wrote:
nef wrote:If no developer wants to work on a particular issue then why bother with a ticket?
OTOH: If something is not worth filing a ticket for you, why would a developer bother to work on it?
Yes, this is the 'other side'. One factor in considering this is the question of using, or not using, gatekeepers. As I said, I'm not familiar with the dynamics of the development community, so I am not well placed to make a definitive judgement. As for "why would a developer bother to work on it?" I think the issue should be judged on its merits, rather than where it was posted.
Even if some request is not feasible at the moment, having it in the ticket system allows one to easily find it later. As lua API as the example, my recent query about tickets with component "Scripting API" does not bring up much. It's going to be much more work to start going through forum posts to see what people have said in the past.
A gatekeeper could raise a ticket with little more than a reference to the forum post with your own work being examples if not exemplars. Personally, I have kept my ticketable issues localised to just a few threads for this precise reason.
There obviously is a problem with Lua scripting in that nobody seems to have a vision about it (except maybe ihnatus who has been submitting some good tickets). As I've not had time to play much with it, I don't have first hand experience about the pain points. So there's just minor additions to the scripting API, and ... .
Just ask. Seriously though, I think a paradigm shift may help. I see enormous parallels between Lua scripting and artwork, but you wouldn't know it by looking at fc The fundamental similarity between the two (compared to the c coded engine) is that both can be submitted and used in real time, rather than having to wait for a release cycle, and to me, this is what makes it worth while. I`m afraid I don`t have your patience. If I have an idea I want to use it as soon as I cut the code.

So as examples that come to mind of what can be done are (a) to have a forum that is similar to that for artwork and (b) require attribution in the script. In the latter case I have been ambivalent in my own submissions (for a couple of reasons), but I do lament the lack of attribution in what is provided in the distro. I imagine this is in github and/or gna (etc.) but this is work I can do without when a few letters at the beginning of each file would do just fine. In the former case (a) we have a chicken and egg problem. A primitive api means little Lua code. Little Lua code means little imperative to improving the API. Back to the 'Just ask'. I could provide a steady stream of requests, but mostly they arise from current projects. I need them for fc 2.6. Waiting for 3.x is beyond my planning horizon. A much faster (and less ambitious) release cycle may have other merits as well. Artwork has an advantage here because the API has been established. For Lua we may have some work to do to get the ball rolling. Lua can be used for two distinct purposes that I imagine: a) more or less direct replacement or complement to c code, and b) end user scripts such as those published by Ignatus.
That was contributed to freeciv, so you can hardly say that what you refer as "the developers" (I'm not sure what is your criteria of including people to that group, and leaving other members of the community out - but you say that you're not a developer yourself even though you have provided some lua script snippets for the rulesets) spent time on wrong thing in doing it.
I`m not sure I understand most of this. What does "That was contributed to freeciv" mean? By "developer" I mean someone who supplies a patch to github so that the material will (or could) end up in a distro. As for me and those who supply artwork, maps, modpacks and maybe even scenarios even just constructive comments, I would use the word "contributor". But there are more: there are users. Snippets? Granted that fcdb Lua is substantial but who knows about it, who uses it (LT?) I would suggest that the two versions of hut enter code, plus replacements for listenv() and _freeciv_state_dump() are non trivial. "spent time on wrong thing in doing it". Are you referring to where it was submitted, or what was submitted? I disagree on both.
cazfi wrote:
nef wrote:the particulars were provided in tolua then I know of at least one person (likely two) who WOULD have written the Lua, customising it for different rulesets (and/or usage). There is a resource out here that you are not using. And if Lua support was better then there is the prospect of that resource growing in number.
Do you know people who could do that engine side work?
No one interested in fc. But I would have thought Ignatus might consider a commission or two. Do you have enough Lua programmers? I still have projects to work on so I`m easy either way.
I'm still not convinced that effectively copying content of each new (feature) ticket opened also to forums for having the discussion in two places at the same time would be a really sane way to go.
As I said previously, references are quite sufficient and you have already shown various ways to do it. (Often)
And I disagree that it would serve as an announcement - discussion still doesn't imply that the feature really got pushed in to the repository in the end.
Not intended to be quite so literal - abandonment, or even indefinite deferral would always be alternative outcomes.
btw. Should note that part of the reason I'm not that eager to spend resources on developing things towards these forums is that I'm not so sure we can keep these forums going for a very long time.
This is a worry. The Civ I and Civ II fora lost A LOT of valuable material. But I might also ask - how does one comment on a gna ticket?
So when People document gets updated for 2.6.6, you're going to be listed as a developer. Or do you specifically want that your name will not be listed there?
Not fussed either way. I might make a distinction between developer and contributor, but if you use developer for all then that`s ok with me.
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Correct the rulesets civ1 and civ2

Post by cazfi »

nef wrote:A much faster (and less ambitious) release cycle may have other merits as well.
Yes, "Release early, release often". Unfortunately we've ended to current situation where the time between releases seem only grow each time, as all that time that it takes to stabilize the previous version, development of the new version goes forward at full speed. Bigger the previous version to stabilize, longer the new version has time to grow. It doesn't help that development of the future version is fun (more people do that), trying to get the corner cases and other details right for the version to be released is hard and not so fun (seems like nobody but I participates in that).

Here is what I recently wrote about schedules of future versions: https://www.freelists.org/post/freeciv- ... 1-schedule
nef wrote:By "developer" I mean someone who supplies a patch to github so that the material will (or could) end up in a distro. As for me and those who supply artwork, maps, modpacks and maybe even scenarios even just constructive comments, I would use the word "contributor".
So if one works on the code; "developer". If someone works on other assets; "contributor".

If I need to make it clear that someone has a write access to the repository, I use "maintainer" (only members of Maintainers Team has write access). Everybody else providing code (it's a bit fuzzy if ruleset format counts as a programming language) is a "developer". Everybody, except maintainers, providing anything (including code) are "contributors".

As lua is a programming language, it seems that for both you and me someone contributing lua scripts counts as "developer".

Then there is of course all the custom modpacks that are not going to be part of the main distribution.
nef wrote:I would suggest that the two versions of hut enter code, plus replacements for listenv() and _freeciv_state_dump() are non trivial.
Those are meant to be included in the distro as they are? Didn't see the ticket, so assumed them to be still be more in the state of "I use this personally, not ready to be considered for inclusion."
nef wrote:"spent time on wrong thing in doing it". Are you referring to where it was submitted, or what was submitted?
You were the person saying that implementing the detailed combat stats message should have been spent on working on lua side. It was developed by someone who sent his first (and still only) patch.
nef wrote:
btw. Should note that part of the reason I'm not that eager to spend resources on developing things towards these forums is that I'm not so sure we can keep these forums going for a very long time.
This is a worry. The Civ I and Civ II fora lost A LOT of valuable material. But I might also ask - how does one comment on a gna ticket?
We didn't spent time developing our process towards using gna.org more heavily after we had learned that it was going down.
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Correct the rulesets civ1 and civ2

Post by cazfi »

cazfi wrote:
nef wrote:I would suggest that the two versions of hut enter code, plus replacements for listenv() and _freeciv_state_dump() are non trivial.
Those are meant to be included in the distro as they are? Didn't see the ticket, so assumed them to be still be more in the state of "I use this personally, not ready to be considered for inclusion."
http://www.freeciv.org/wiki/How_to_Contribute
Post Reply