Here's a summary of (a) what I've gotten done since Sirp gave me
commit access to Wesnoth svn last week, (b) what's still on my list,
and (c) some kinds of help from other people that I would find useful,
if they're interested.
One reason for this post is so other devs can vote on my to-do
items; I've let that influence what I do next.
Tasks accomplished:
(1) Zookeeper gratefully unloaded on me the job of sorting out and
categorizing the utils macros. This is done. Most of them have
been broken out into topic-area files. A few unused and broken ones
have been retired. Some others are formally deprecated.
(2) In order to check that I wasn't breaking anything as I worked on
task (1), I decided to write a cross-reference checker for macro
definitions and calls. That tool, macroscope, achieved
production-level polish over the weekend. I can report that SVN
trunk has zero unresolved macro references (after I fixed some
broken ones) and about 30 unused macros (cd to data/tools and type
'make utils-unused' to see the list).
(3) Subsequently, I extended macroscope to be able to do reference
checking on image and sound files as well. This revealed over 90
broken resource references, of which I was able to fix about 70
(I'll have more to say about the remaining twenty-odd below).
The logic for resource-reference checking is now finished, and
replaces the ancient and rather crufty find-unused-sounds and
find-unused-images scripts (which I have deleted).
(4) I have been working with Taurus on preparing Northern Rebirth
for mainline inclusion. The map refresh is finished, the storyline
text is ready; I expect no substantial modifications before release.
I believe we have successfully dealt with minor design issues brought
up in the forum, and Mordante has agreed to my proposed scheduling of
NR to be mainlined in trunk just after 1.3.2 release.
In progress:
(1) Northern Rebirth needs very minor tweaking and some art
improvements. Specifically, the startup conditions for the Infested
Caves scenario will probably need slight rebalancing on the new map,
neither Taurus nor I really likes the new Tallin portrait, and some
other new portraits need to be colored. None of these are blockers
for the merge into SVN trunk after 1.3.2, and I expect we'll get them
done well before 1.3.3.
(2) I've floated a proposal
https://mail.gna.org/public/wesnoth-dev/2007-04/msg00042.html
to simplify the rules for resource-file resolution in WML. It has
in general been well received, but it's hanging on a specific
technical objection about use of terrain images: see
https://mail.gna.org/public/wesnoth-dev/2007-04/msg00051.html
This issue needs to be resolved before the proposed rework
can go further.
Requests for help:
(1) Artists, if you're listening, we'd like a Tallin portrait for NR that
looks more noble/heroic and a bit less sly and foxy.
(2) There remain 23 unresolved resource references in mainline. They
are still there because they're the references I could not find
matching files for, or the surrounding WML was not clear to me
and I didn't want to risk plugging in the wrong image for what
it was trying to declare.
# Macroscope reporting on Mon Apr 9 19:32:38 2007
# Working directory: /home/esr/svn/wesnoth
# Directory path: ['.']
# Unresolved references:
mask-castle-ne.png at data/tools/exploder/models/castle.cfg:15
mask-castle-e.png at data/tools/exploder/models/castle.cfg:22
mask-castle-se.png at data/tools/exploder/models/castle.cfg:29
mask-castle-sw.png at data/tools/exploder/models/castle.cfg:36
mask-castle-w.png at data/tools/exploder/models/castle.cfg:43
mask-castle-nw.png at data/tools/exploder/models/castle.cfg:50
units/human-magi/arch-mage+female-die-1.png at
data/campaigns/Under_the_Burning_Suns/units/Elyssa_Arch_Mage.cfg:33
units/human-magi/arch-mage+female-die-2.png at
data/campaigns/Under_the_Burning_Suns/units/Elyssa_Arch_Mage.cfg:38
units/human-magi/arch-mage+female-attack-magic-3.png at
data/campaigns/Under_the_Burning_Suns/units/Elyssa_Arch_Mage.cfg:115
units/monsters/cavespider-attack-defend.png at
data/campaigns/Under_the_Burning_Suns/units/Cave_Spider2.cfg:76
units/monsters/cavespider-attack-defend.png at
data/campaigns/Under_the_Burning_Suns/units/Cave_Spider2.cfg:99
units/human-magi/silver-mage+female-attack-melee.png at
data/campaigns/Under_the_Burning_Suns/units/Elyssa_Silver_Mage.cfg:104
units/human-magi/silver-mage+female-attack-melee.png at
data/campaigns/Under_the_Burning_Suns/units/Elyssa_Silver_Mage.cfg:113
units/human-magi/red-mage+female-attack-magic-3.png at
data/campaigns/Under_the_Burning_Suns/units/Elyssa_Red_Mage.cfg:108
units/undead/zombie-troll-die-1.png at
data/campaigns/Under_the_Burning_Suns/units/Troll_Zombie.cfg:27
units/undead/zombie-troll-die-2.png at
data/campaigns/Under_the_Burning_Suns/units/Troll_Zombie.cfg:32
units/undead/zombie-troll-die-3.png at
data/campaigns/Under_the_Burning_Suns/units/Troll_Zombie.cfg:37
alien-core-portrait.png at
data/campaigns/Under_the_Burning_Suns/units/Alien_Body3.cfg:50
alien-core-portrait.png at
data/campaigns/Under_the_Burning_Suns/units/Alien_Body3.cfg:75
units/human-magi/great-mage+female-attack-magic-3.png at
data/campaigns/Under_the_Burning_Suns/units/Elyssa_Great_Mage.cfg:104
units/human-loyalists/general-defend-crossbow.png at
data/units/Human_Loyalist_General.cfg:33
units/human-loyalists/general-defend-crossbow.png at
data/units/Human_Loyalist_General.cfg:33
units/undead-skeletal/deathknight-crossbow-defend.png at
data/units/Undead_Skele_Death_Knight.cfg:131
I'd appreciate it the WML wizards in the crowds would go in and do the
right thing. I've also left some FIXME comments in the WML near other
declarations that may need fixing. The objective here is to clean up
all these reports so that in the future macroscope only displays
warnings about real problems.
(3) I have a feature request in at campgen for a mode of campgen.py
that can be used to place scenery on a map and dump a report to stdout
without the need to create a dummy campaign around it. Anybody who
can push on that, please do -- I'd like to use it to decorate NR.
(4) The castle-cutter and exploder directories under data/tools need
work. I don't see executables in them that obviously correspond to
the steps decribed in the Wiki. I'm not sure who's problem this is,
except that it's not mine :-).
To-do items not yet started:
(1) Yes, I still intend to implement a drop-object command. But that
will required diving into the C++ code, a step I'm not yet quite
ready for.
(2) There might be more macroscope could do. In particular, I might
be able to make it do complete sanity checking on WML file
references. Feedback welcomed on whether that would be a useful
feature; are typoed or unreferenced WML filenames a significant
problem case?
(3) I'd like to run macroscope on the UMC content we care about
and integrity-check *everything* against mainline. To do that,
I need a definition of "what we care about". Is it
(a) Content ported to 1.3 only?
(b) The entire contents of the campaign server?
(c) The contents of WesCamp?
If the answer is (b), a recipe for downloading the entire campaign
server contents to a local directory would be nice. In fact, this
recipe should become a script and part of the distribution, as
macroscope sanity checks are a procedure we'll probably want
to perform regularly.
(4) For completeness, I should mention Ivanovic's request that
I backport the broken-reference fixes to 1.2. I shrink from the
thought, but it is on my list.
--
<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>
An armed society is a polite society. Manners are good when one
may have to back up his acts with his life.
-- Robert A. Heinlein, "Beyond This Horizon", 1942
_______________________________________________
Wesnoth-dev mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-dev