excellent decition to give WoP another try :).
Here are some answers concerning the game:
(1) Concerning the themes' definition. Yes, you are right, the centralized
declaration of all themes in "themes.conf" turned out to be slightly
unflexible with respect to adding and sharing themes. A organisation in one
file per theme is something we should discuss on the long run. The second
point you mentioned, i.e. one directory containing all graphics and
additional configuration files belonging to one theme is already possible,
because all relative data paths are specified in "themes.conf". Therefore all
path specifications for one theme in "themes.conf" could refere to one
directory containing all data required for this theme.
(2) It is possible to restrict the area containing random mapstuff. You can
define circular or rectangular regions in a theme that will be locked for any
mapstuff. To specify such locked areas you define the configuration file and
the configuration section within this file containing the list of locked
areas using the key "lockedareas". For example
lockedareas = mytheme/areas LOCKED_A
would mean that there is a subdirectory "mytheme" containing a file "areas",
which again contains a section "LOCKED_A". Inside this section you can define
a list of locked "rectangles" and "circles":
circles = <circle1_center_X>, <circle1_center_Y>, <circle1_radius>, \
<circle2_center_X>, <circle2_center_Y>, <circle2_radius> ...
rectangles = \
<rect1_position_X>, <rect1_position_Y>, <rect1_width>, <rect1_heigth>, \
<rect2_position_X>, <rect2_position_Y>, <rect2_width>, <rect2_heigth>, ...
In my developing theme "developuwe" (themes.conf) you can find an example
for such manually defined (for example the static gun defines implicitely a
locked area) locked areas.
(3) Thanks for reporting the bug with the gun coordinates. The fix will be
contained in the next release. If you just don't want to wait, you could have
a look in objectitem.hpp. Here you can find the bug based in a copy-and
-paste-sloppyness. Some "x" should be "y".
Regards and keep on fragging away
Gismo