Wesnoth 1.10.7

Get help with compiling or installing the game, and discuss announcements of new official releases.

Moderator: Forum Moderators

User avatar
ivanovic
Lord of Translations
Posts: 1149
Joined: September 28th, 2004, 10:10 pm
Location: Germany

Wesnoth 1.10.7

Post by ivanovic »

Wesnoth 1.10.7 is out!

This is a bugfix release for the 1.10.x series and it is compatible with the other 1.10.x versions.

Since the release of 1.10.6 several issues were fixed. Some of the most important ones follow:
  • The cursor in GUI2 textboxes (e.g. Save Game dialog) now behaves correctly on some platforms when writing text that’s longer than the visible width (#17220 [Gna.org]).
  • A long-standing bug affecting the behavior of the [scroll_to], [scroll_to_unit], and [message] WML actions, plus certain user commands such as Next Unit has been fixed (#18793 [Gna.org]). The bug is also fixed in all previous development releases starting from 1.11.2.
  • Invalid memory access issues affecting persistent WML variables using subnamespaces (#20385 [Gna.org]) and the ~CROP() image path function were fixed.
  • Several bugfixes for the wmllint tool including unusual crashes, Windows usability problems, and incorrect underscore removal behavior were backported from 1.11.x.
Additionally, the new portraits for the Heir to the Throne campaigns by kitty and LordBob were backported from 1.11.x to this release.

As usual, there is the full changelog listing (almost) all other changes since 1.10.6. There’s also an alternative players changelog including only notable, user-visible changes .

Known Issues (might be fixed in the next release(s))

There are no known issues at the moment.

Downloads

Source code:
http://sourceforge.net/projects/wesnoth ... 2/download (347.4 MB) md5sum
Here is the XDelta for the sources:
http://sourceforge.net/projects/wesnoth ... a/download (1.10.6 to 1.10.7, 3.8 MB)
Check http://forums.wesnoth.org/viewtopic.php?t=7034 for information on using XDelta.

The Windows package is already available. You can find it on the download page.

The Mac OS X package is not available yet. Once it is you can find it on the download page.

The OpenPandora package is already available. You can find it on the download page.

Many of the Linux packages have already been created, and all known packagers have been contacted. Information about where to get the respective binaries or how to get them to work can be found in the Linux binaries page in the wiki. Download links for other supported systems will be available at the download page once the packages are created and published.

As a fallback you can also get the sources from http://files.wesnoth.org/ — but you should first try to get the files through SourceForge.net to help us save bandwidth. Please get the files from SourceForge.net if possible.

The multiplayer server for 1.9.13, 1.9.14 as well as 1.10.x is up and running. This server can only be used to play with other users of 1.9.13 and later. If you do encounter problems, please report them.

The add-ons server for 1.10.x is already running. It was started during the development of 1.9.0 and it serves content for all 1.9.x and 1.10.x versions. If you encounter any problems with add-ons not working as expected, please notify the content’s author — most of them should be here in the Scenario & Campaign Development forum.

If you find any bugs, don’t hesitate to report them, but please read the instructions on how to report bugs first! As bug reports in the forums tend to be forgotten, you will get better results using the official bug tracker. Again, we require your help for finding and fixing issues, no matter how trivial or complicated they are!

Enjoy!

PS: Within the next seven days anyone asking when the binary for xyz will be ready will be banned and the post will be deleted. Such questions just distract the developers and packagers and don’t do any good, so better not ask them...
User avatar
ivanovic
Lord of Translations
Posts: 1149
Joined: September 28th, 2004, 10:10 pm
Location: Germany

Re: Wesnoth 1.10.7

Post by ivanovic »

Yes, we seem to currently be lacking a packager for OSX. I have no idea what happened to our current packager and if he completely stopped working on Wesnoth or if he is just busy. Also I have no idea how the packages are actually generated, but I guess you at least need OSX with XCode installed. If you want to have OSX packages you should try to give creating those packages a try...
User avatar
Lord-Knightmare
Discord Moderator
Posts: 2340
Joined: May 24th, 2010, 5:26 pm
Location: Somewhere in the depths of Irdya, gathering my army to eventually destroy the known world.
Contact:

Re: Wesnoth 1.10.7

Post by Lord-Knightmare »

ivanovic wrote:Yes, we seem to currently be lacking a packager for OSX. I have no idea what happened to our current packager and if he completely stopped working on Wesnoth or if he is just busy. Also I have no idea how the packages are actually generated, but I guess you at least need OSX with XCode installed. If you want to have OSX packages you should try to give creating those packages a try...
Wait, all I need is X-Code? I'm gonna give packaging a shot then....Must download X-Code now.
Creator of "War of Legends"
Creator of the Isle of Mists survival scenario.
Maintainer of Forward They Cried
User:Knyghtmare | My Medium
User avatar
ivanovic
Lord of Translations
Posts: 1149
Joined: September 28th, 2004, 10:10 pm
Location: Germany

Re: Wesnoth 1.10.7

Post by ivanovic »

Lord-Knightmare wrote:
ivanovic wrote:Yes, we seem to currently be lacking a packager for OSX. I have no idea what happened to our current packager and if he completely stopped working on Wesnoth or if he is just busy. Also I have no idea how the packages are actually generated, but I guess you at least need OSX with XCode installed. If you want to have OSX packages you should try to give creating those packages a try...
Wait, all I need is X-Code? I'm gonna give packaging a shot then....Must download X-Code now.
XCode and the knowledge what to do. Maybe it can be done just using the profile shipped as part of the tarball, but I don't know for sure since I never created packages using XCode and I don't have a Mac to test either.
User avatar
Iris
Site Administrator
Posts: 6797
Joined: November 14th, 2006, 5:54 pm
Location: Chile
Contact:

Re: Wesnoth 1.10.7

Post by Iris »

I have just added a list of the most notable changes to the first post of this thread:
shadowm wrote:Since the release of 1.10.6 several issues were fixed. Some of the most important ones follow:
  • The cursor in GUI2 textboxes (e.g. Save Game dialog) now behaves correctly on some platforms when writing text that’s longer than the visible width (#17220 [Gna.org]).
  • A long-standing bug affecting the behavior of the [scroll_to], [scroll_to_unit], and [message] WML actions, plus certain user commands such as Next Unit has been fixed (#18793 [Gna.org]). The bug is also fixed in all previous development releases starting from 1.11.2.
  • Invalid memory access issues affecting persistent WML variables using subnamespaces (#20385 [Gna.org]) and the ~CROP() image path function were fixed.
  • Several bugfixes for the wmllint tool including unusual crashes, Windows usability problems, and incorrect underscore removal behavior were backported from 1.11.x.
Additionally, the new portraits for the Heir to the Throne campaigns by kitty and LordBob were backported from 1.11.x to this release.
I’ll try to post a list for 1.11.6 later.
Author of the unofficial UtBS sequels Invasion from the Unknown and After the Storm.
User avatar
Iris
Site Administrator
Posts: 6797
Joined: November 14th, 2006, 5:54 pm
Location: Chile
Contact:

Re: Wesnoth 1.10.7

Post by Iris »

The OS X package is now available.
Author of the unofficial UtBS sequels Invasion from the Unknown and After the Storm.
techtonik
Posts: 30
Joined: February 28th, 2008, 7:57 pm

Re: Wesnoth 1.10.7

Post by techtonik »

Archive to update Windows version is also available.
myav
Posts: 85
Joined: August 23rd, 2008, 12:53 pm

Re: Wesnoth 1.10.7

Post by myav »

When will be released version of wesnoth where will be completely removed unknown OOS errors ? (when I said "unknown" I mean - that only 30% of situations when OOS can appear are listed in the wiki and 20% more of them people can find in the forum, but almost most reasons of OOS appearing not listed nowhere)

Method of detecting: "remove part of the code and check again" - not works. Because, these OOS errors can to not appear 5 full games and to appear only in the 6th and impossible to find them with such methods.

And this is realy boring when you create heavy scenario with a lot of interesting things and got OOS... I have posted my problems in the forum and nobody can't find reason why OOS appears (even game coders and developers which answered me).

Only this kind of errors completely ruins this game and shows low level of programming.

Wesnoth is already 7+ years old... and possibility of unknown OOS still not removed from game.

People, pls stop to ingore this kind of errors and please:

Make full list in the wiki (where will be listen all situations that may generate OOS error)

or

Please make stable game code where possibility of OOS will be completely removed.
User avatar
iceiceice
Posts: 1056
Joined: August 23rd, 2013, 2:10 am

Re: Wesnoth 1.10.7

Post by iceiceice »

myav:

In fact, there has been a *huge* improvement to the synchronization system for multiplayer, gfgtdf more or less redesigned the whole thing to make the code rigorous. (That doesn't mean perfect but it is now vastly superior.) Many events that were previously unsafe are now safe, and I'm not aware of any way right now that you can casually create OOS other than doing really silly things like using side.controller, or intentionally using the unsynced random generator and without using wesnoth.synchronize_choice. Also there is now lua code that you can use at runtime to ask the engine if you are currently in a "synced state" and can safely do changes to the gamestate.

https://gna.org/bugs/index.php?21697

However, even with the vast improvements to the system, I would still recommend that if you want to make a large add-on for mp, to test it rigorously while developing from day 1 on! It's very important that you test constantly as you develop, and not only at the end, so that you do not end up with umpteen thousand lines of code which does not work and have no idea why. You must test, even at times when you think you don't have to -- the engine is complicated and almost surely doesn't work exactly as you think it does.
myav
Posts: 85
Joined: August 23rd, 2008, 12:53 pm

Re: Wesnoth 1.10.7

Post by myav »

iceiceice, I hope that you noticed that I'm not criticizing the game and only ask that you focus more of your attention in this part of the code (OOS errors).

Before to write here I have checked all again... In the wiki not added new examples of OOS, and in the game continues to appear these errors with unknown reasons.

But I'll ask you now.
iceiceice wrote:In fact, there has been a *huge* improvement to the synchronization system for multiplayer
When it was? And can you link on changes which OOS was fixed ?
iceiceice wrote:or intentionally using the unsynced random generator
In the wiki is still not written which random is unsynced and which is synched. So, example:

Code: Select all

[set_variable]
   name=random
   rand=1,1,1,1,2,2,2,3,3,1
[/set_variable]
it is synched or no? If no, how to correct write it without oos?
iceiceice wrote:Also there is now lua code that you can use at runtime to ask the engine if you are currently in a "synced state" and can safely do changes to the gamestate.
Can you link on this in the wiki ?
User avatar
iceiceice
Posts: 1056
Joined: August 23rd, 2013, 2:10 am

Re: Wesnoth 1.10.7

Post by iceiceice »

myav wrote: When it was? And can you link on changes which OOS was fixed ?
http://wiki.wesnoth.org/Eventwml#Multiplayer_safety
myav wrote: In the wiki is still not written which random is unsynced and which is synched. So, example:

Code: Select all

[set_variable]
   name=random
   rand=1,1,1,1,2,2,2,3,3,1
[/set_variable]
it is synched or no? If no, how to correct write it without oos?
I think that this one is synced, I don't remember for sure, it might have changed. Normally in 1.10 you should not use [set_variable] rand=, because there are known bugs where it is not properly seeded during start and prestart events. There is plenty of example code on the forums and wiki using lua random, with synchronize_choice, which is always safe: http://forum.wesnoth.org/viewtopic.php? ... 06#p517620
myav wrote:Can you link on this in the wiki ?
http://wiki.wesnoth.org/LuaWML:Misc#wesnoth.current


******************

Edit: I repost to address something else you said:
myav wrote: Method of detecting: "remove part of the code and check again" - not works. Because, these OOS errors can to not appear 5 full games and to appear only in the 6th and impossible to find them with such methods.

And this is realy boring when you create heavy scenario with a lot of interesting things and got OOS... I have posted my problems in the forum and nobody can't find reason why OOS appears (even game coders and developers which answered me).
The problem here is not with wesnoth, rather it is that you are using a flawed software development methodology.

It is insane not to use version control on a large project.

If you use version control and you encounter a bug, you can revert to old versions and test them, and determine rigorously exactly which version introduced the bug.
If you use version control, you can easily compute the diffs between versions and see exactly what changed to show you exactly what introduced the bug.
If you use version control, and you can automate the failing test case, you can tell the compute to automatically identify which revision introduced the bug.

If you use version control you never need to "delete half the code" which, as you rightly point out, doesn't work for a large and tightly interconnected piece of software.

Testing and version control go hand in hand -- when you use version control and you test a revision, you know for all time which tests passed there, and you can easily get back to the state that you tested.

I strongly recommend to use git (or equivalent) for any piece of code of any kind that is larger than your screen. Personally I won't even write a document without using git, if I intend to revise it another day. git is extremely easy to use for every day purposes once you get used to it, and the service it provides is invaluable.

If you find yourself with a large software project that is broken and you don't know why, and you didn't use version control, you are just screwed . IMO the only reasonable option at that point is to rewrite the whole thing from scratch, using version control the second time, and using the first version as a template. And testing at each commit until you figure out what caused the bug.

Code not written using version control is simply unmaintainable. The amount of time that you save in the long run every time you fix a bug will always vastly repay the time you spent on version control, if you are using a good system like git.
AI
Developer
Posts: 2396
Joined: January 31st, 2008, 8:38 pm

Re: Wesnoth 1.10.7

Post by AI »

myav wrote:In the wiki is still not written which random is unsynced and which is synched. So, example:

Code: Select all

[set_variable]
   name=random
   rand=1,1,1,1,2,2,2,3,3,1
[/set_variable]
There used to be a difference between rand and random. This was eventually documented on the wiki. Then the unsynced one was changed to be an exact copy of the synced one. After that, random was removed. The documentation on the wiki was also removed as there is only one WML-based generator now.
In Lua (which was added quite a bit later, IIRC), you can use this generator, or you can use math.rand, which is fully external, and unsynced.
gfgtdf
Developer
Posts: 1432
Joined: February 10th, 2013, 2:25 pm

Re: Wesnoth 1.10.7

Post by gfgtdf »

myav wrote:

Code: Select all

[set_variable]
   name=random
   rand=1,1,1,1,2,2,2,3,3,1
[/set_variable]

This rng is synced. This especiayl means that you have to call it exactly the same amount of times on both clients for example this code

Code: Select all

if(current_team.controller == "human")
  -- helper.rand is equivalent to [set_variable] rand=
  wesnoth.message(helper.rand("Hi, Hello"))
end
will give you OOS erros, becasue controller is unsafe this will only run on one client. And you call rand= even though it doesn't seem to change the gamestate.

A default rule is that for only visual things that doesn't effect the gamestate, you should sometimes consider using math.random
Scenario with Robots SP scenario (1.11/1.12), allows you to build your units with components, PYR No preperation turn 1.12 mp-mod that allows you to select your units immideately after the game begins.
User avatar
zookeeper
WML Wizard
Posts: 9742
Joined: September 11th, 2004, 10:40 pm
Location: Finland

Re: Wesnoth 1.10.7

Post by zookeeper »

iceiceice wrote:
myav wrote: Method of detecting: "remove part of the code and check again" - not works. Because, these OOS errors can to not appear 5 full games and to appear only in the 6th and impossible to find them with such methods.

And this is realy boring when you create heavy scenario with a lot of interesting things and got OOS... I have posted my problems in the forum and nobody can't find reason why OOS appears (even game coders and developers which answered me).
The problem here is not with wesnoth, rather it is that you are using a flawed software development methodology.
To be fair, version control isn't a magic bullet when you got a situation like described, where a bug only manifests occasionally. You can't be expected to bisect an issue with 5 playthroughs per every change you've made anyway, so version control pretty much only helps in making educated guesses about which change might have introduced it. That there are unintuitive pitfalls when writing WML for multiplayer is a genuine problem, although I really can't say how much of this has now been fixed for 1.12.
User avatar
pyrophorus
Posts: 533
Joined: December 1st, 2010, 12:54 pm

Re: Wesnoth 1.10.7

Post by pyrophorus »

zookeeper wrote: To be fair, version control isn't a magic bullet when you got a situation like described, where a bug only manifests occasionally. You can't be expected to bisect an issue with 5 playthroughs per every change you've made anyway, so version control pretty much only helps in making educated guesses about which change might have introduced it. That there are unintuitive pitfalls when writing WML for multiplayer is a genuine problem, although I really can't say how much of this has now been fixed for 1.12.
I strongly second this.
There's no reason to tell myav (s)he has "a flawed software development methodology".
Locked