mapconv, mapconv & mapconv

mapconv, mapconv & mapconv

Discuss your problems with the latest release of the engine here. Problems with games, maps or other utilities belong in their respective forums.

Moderator: Moderators

Post Reply
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

mapconv, mapconv & mapconv

Post by gajop »

Split from viewtopic.php?f=11&t=36765#p585323 (Silentwings).
Silentwings wrote:Having now played with a few mapconvs, pymapconv wins by a mile, and for those without python+libs it has a Windows binary thanks to turboss (build system already inside https://github.com/Beherith/springrts_smf_compiler). I suggest we deprecate all other mapconvs and make pymapconv "the" mapconv. Any objections?
Needs better Linux support (e.g. cross-platform setup.py) and should be registered on pip. Would then have to check if I can distribute this using package freezing (otherwise complicated distribution of Python programs limits usability)
User avatar
Silentwings
Posts: 3720
Joined: 25 Oct 2008, 00:23

Re: Compiling maps larger than 24x24? (solved)

Post by Silentwings »

For linux:
Python 2.7 Pillow (sudo pip install Pillow)
PyQt4 (sudo apt-get install python-Qt4)
ImageMagick (sudo apt-get install imagemagick)
What's the problem with that?

I can understand Windows users wanting binaries, although they are not really needed - I installed python+libs as instructed and ran the .py file without trouble (I speak no python). For linux users getting python+libs set up looks super easy.
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: Compiling maps larger than 24x24? (solved)

Post by gajop »

1. You should never install Python packages globally.
2. It should be registered on pip, so you could install it with a single command, something like: pip install springrts_smf_compiler
3. Then it needs to be tested if it can be properly frozen with pyinstaller (https://www.pyinstaller.org/). This would allow me to distribute it to SpringBoard users, so they can compile using the SB GUI, without having to know *anything* about what tools, packages or languages are used to compile maps - *this* would make compilation finally more accessible.
User avatar
Silentwings
Posts: 3720
Joined: 25 Oct 2008, 00:23

Re: Compiling maps larger than 24x24? (solved)

Post by Silentwings »

1. User who cares can easily modify.

On the rest, sounds like a shedload of effort for no gain - count me out.
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: Compiling maps larger than 24x24? (solved)

Post by gajop »

You asked if we could deprecate all other compilers. I'm simply telling you why I cannot (as distribution matters most for me).

It's still pretty good for people who want to install it themselves, but it's still out of reach if you want to make the process invisible to the user.
User avatar
Silentwings
Posts: 3720
Joined: 25 Oct 2008, 00:23

Re: Compiling maps larger than 24x24? (solved)

Post by Silentwings »

To make it clearer - since my point seems to have been missed:

Your objection sounds to me like smth to worry about for the future. There is currently no mapconv that does what you've asked for, and none are even close.

Your distribution "feature requests" are not a reason to avoid designating pymapconv as "the" mapconv and get ourselves and anyone currently trying to read wiki out of multi-mapconv hell. They are simply something for someone to bear in mind when working on mapconv(s) in future.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Compiling maps larger than 24x24? (solved)

Post by abma »

Silentwings wrote: I suggest we deprecate all other mapconvs and make pymapconv "the" mapconv. Any objections?
IMHO all mapconvs expect MapConvNG should be deprecated because its the only mapconv which can be easily added to the existing infrastructure / distribution methods:

- works (?) on linux / windows / osx
- gpl2+
- written in c++ as most other stuff in spring universe
- only DevIL as dependency
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: Compiling maps larger than 24x24? (solved)

Post by gajop »

@Silentwings:
Well, I haven't tested it as extensively as you have, but https://github.com/spring/SpringMapConvNG works for me for Linux, and if my memory serves me right (bit fuzzy), I did manage to statically compile it for Linux, on Linux, resulting in a single file that's easy to distribute: this WIP Linux-only setup

So for me, using the Python tool with SpringBoard (my use goal) would right now be a step back => No clear winner.
User avatar
Silentwings
Posts: 3720
Joined: 25 Oct 2008, 00:23

Re: mapconv, mapconv & mapconv

Post by Silentwings »

K, suit yourselves - I've made my choice, it wasn't a difficult one, and I won't be trying any further to sort this mess out.

My advice to current map makers with the usual external tool-chains: use pymapconv, its awesome.
https://github.com/Beherith/springrts_smf_compiler
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: mapconv, mapconv & mapconv

Post by gajop »

@abma: fwiw, I think Python is a better language choice for many tools, as it's so much easier to focus on the core of the problem, without having to spend time reinventing the wheel.

The problem is distribution to end-users. Nothing beats native (staticly linked) programs in their ease of use. I'm working on setting up a "build" (freeze) and distribution system right now, aimed to be used with Python (at least for now). This might make these kind of Python utils more usable.
User avatar
Beherith
Posts: 5145
Joined: 26 Oct 2007, 16:21

Re: mapconv, mapconv & mapconv

Post by Beherith »

I know its not fully cross-platform, but a windows binary for pymapconv is now available at the github repo.
pymapconv.exe

https://github.com/Beherith/springrts_s ... 456397156e

Edit, since its 64bit, it now supports very very large maps (tested 60*40 and worked fine )
Post Reply

Return to “Help & Bugs”