just recently I decided to get back on hacking on Widelands and
right now have huge plans for build 19 but little time. My main goal
is to improve the structure of the code, especially the main class
is really a mess right now and there is no clear main loop. To
improve the situation this is my personal roadmap:
1.) Create a GUI class that is responsible for handling the GUI and
is called from the WLApplication main loop to do so. The
Panel::run() method is removed and its purpose is split into the
WLApplication main loop and the GUI class. These changes reduce the
size of the WLApplication file by several hundred lines. I already
have some proof of concept code on my HDD which I will push to
launchpad soon™ to get
some feedback. However this might conflict with the SDL2 changes in
2.) The GUI class also adds the possibility to create GUI elements
from XML files instead of hard coding the GUI. This makes UI
adjustments for small screens and touch devices possible! The idea
is to have the whole GUI written in XML+Lua which also makes it
easier to create special elements and dialog for scenarios. I
already have successfully built the main menu from an XML file as
proof of concept. However it is really necessary to have the GUI
class in place first.
3.) To further clean up the WLApplication class and continue the
work that I wanted to have done for build 18, I will try to figure
out a proper way to handle command line arguments, the config file,
default values and option settings.
That is everything I have planned so far. The main problem I see
right is the interference with other big changes to the Widelands
code, like the SDL2 migration or the ingame help (we should not
create a lot of LUA help files if we decide to create a XML+LUA
Am 22.02.2014 15:08, schrieb Holger
build 18 is out of the door and I can only say again: great job to everybody involved. The feature freeze length was suboptimal this time and generally I felt that new features where not well tested (especially obvious corner cases). I hope that we can improve on that for the next release, but otherwise I’d say this was a damn fine release and we can be proud.
This directly brings us to the cap over mill part of this email. A short reminder what that is: Everybody that feels like working on Widelands in the next time can write what he/she plans to work on for the next build. Just a general plan of what to expect. This time, I want to conserve the statements so that it is easier to see next time what actually got done and which plans became outdated rather quickly. I’ll copy and paste anybodys plans into the document, but you can already read through build 17 analysis here: https://docs.google.com/document/d/1LlpNsWLYO-x7NtXDdkL2MR4D4GreLb03ccMqp4Zph2M/edit#
I’ll grant everybody edit rights on this document that asks for it.
For my part, this is my plan for build 19:
I want to merge the better lua serialization - this will break all safegames. I then want to clean up the code base - remove useless options, fix some style inconsistencies, remove compatibility code for safegames, rework the cmake build files. I also want to revisit the stacked animations idea and finish up this code. And I want to look into adding a proxy to the metaserver, so that no open ports are required on the client side anymore. Oh and I have some plans for a better messages window… but that all sounds like so much already :).
Generally speaking I believe we are moving towards a 1.0 version with build 19 or at the latest build 20.
My biggest project though will be to explore the idea of a Widelands Foundation - essentially a way to sell Widelands on AppStores and collect the money for non-profit charities like Child’s play or WWF or something. I hope that Widelands can do a little more good for the World than just being an awesome time sink. I started talking to lawyers if there is a good organizational structure for such an idea.
I’ll send out a separate Email about the Widelands Foundation idea.
So, what are your plans for b19?
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
Widelands-public mailing list